Update a single archetype
PUT
/
v1
/
archetypes
/
{id}
cURL
curl -X PUT 'https://api.growthbook.io/api/v1/archetypes/abc123' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{"description":"New description"}'import requests
url = "https://api.growthbook.io/api/v1/archetypes/{id}"
payload = {
"name": "<string>",
"description": "<string>",
"isPublic": True,
"attributes": {},
"projects": ["<string>"],
"environments": ["<string>"]
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
description: '<string>',
isPublic: true,
attributes: {},
projects: ['<string>'],
environments: ['<string>']
})
};
fetch('https://api.growthbook.io/api/v1/archetypes/{id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.growthbook.io/api/v1/archetypes/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'name' => '<string>',
'description' => '<string>',
'isPublic' => true,
'attributes' => [
],
'projects' => [
'<string>'
],
'environments' => [
'<string>'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.growthbook.io/api/v1/archetypes/{id}"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"isPublic\": true,\n \"attributes\": {},\n \"projects\": [\n \"<string>\"\n ],\n \"environments\": [\n \"<string>\"\n ]\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.put("https://api.growthbook.io/api/v1/archetypes/{id}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"isPublic\": true,\n \"attributes\": {},\n \"projects\": [\n \"<string>\"\n ],\n \"environments\": [\n \"<string>\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.growthbook.io/api/v1/archetypes/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"isPublic\": true,\n \"attributes\": {},\n \"projects\": [\n \"<string>\"\n ],\n \"environments\": [\n \"<string>\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"archetype": {
"id": "<string>",
"dateCreated": "<string>",
"dateUpdated": "<string>",
"name": "<string>",
"owner": "<string>",
"isPublic": true,
"attributes": {},
"description": "<string>",
"ownerEmail": "<string>",
"projects": [
"<string>"
],
"environments": [
"<string>"
]
}
}Authorizations
bearerAuthbasicAuth
If using Bearer auth, pass the Secret Key as the token:
curl https://api.growthbook.io/api/v1/features -H "Authorization: Bearer secret_abc123DEF456"
Path Parameters
The id of the requested resource
Body
application/json
Maximum string length:
10000Whether to make this Archetype available to other team members
The attributes to set when using this Archetype
Show child attributes
Show child attributes
Limit this Archetype to specific environments. Omit or leave empty to apply to all environments.
Response
200 - application/json
Resource updated
Show child attributes
Show child attributes
Was this page helpful?
⌘I
cURL
curl -X PUT 'https://api.growthbook.io/api/v1/archetypes/abc123' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{"description":"New description"}'import requests
url = "https://api.growthbook.io/api/v1/archetypes/{id}"
payload = {
"name": "<string>",
"description": "<string>",
"isPublic": True,
"attributes": {},
"projects": ["<string>"],
"environments": ["<string>"]
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
description: '<string>',
isPublic: true,
attributes: {},
projects: ['<string>'],
environments: ['<string>']
})
};
fetch('https://api.growthbook.io/api/v1/archetypes/{id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.growthbook.io/api/v1/archetypes/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'name' => '<string>',
'description' => '<string>',
'isPublic' => true,
'attributes' => [
],
'projects' => [
'<string>'
],
'environments' => [
'<string>'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.growthbook.io/api/v1/archetypes/{id}"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"isPublic\": true,\n \"attributes\": {},\n \"projects\": [\n \"<string>\"\n ],\n \"environments\": [\n \"<string>\"\n ]\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.put("https://api.growthbook.io/api/v1/archetypes/{id}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"isPublic\": true,\n \"attributes\": {},\n \"projects\": [\n \"<string>\"\n ],\n \"environments\": [\n \"<string>\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.growthbook.io/api/v1/archetypes/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"isPublic\": true,\n \"attributes\": {},\n \"projects\": [\n \"<string>\"\n ],\n \"environments\": [\n \"<string>\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"archetype": {
"id": "<string>",
"dateCreated": "<string>",
"dateUpdated": "<string>",
"name": "<string>",
"owner": "<string>",
"isPublic": true,
"attributes": {},
"description": "<string>",
"ownerEmail": "<string>",
"projects": [
"<string>"
],
"environments": [
"<string>"
]
}
}
