Replace the kind
PUT
https://forumulate.com/api /orgs/{orgId}/spaces/{spaceId}/shape/kinds/{name} Requires token scope: write (the coarse method gate) for Atlas key (ak_), Personal Access Token (cft_) or OAuth (cfo_) auth — in addition to any catalog scope (GET /pats/scopes) the route’s capability needs. Session/cookie auth is governed by RBAC capabilities instead.
Parameters
orgIdstringpathrequiredspaceIdstringpathrequirednamestringpathrequiredforumulate-versionstringheaderAPI version negotiation. Send
forumulate-version: 2026-12-01 on every request from a new integration; it is optional only so that integrations written before versioning keep working. Each version includes everything before it:Idempotency-KeystringheaderMakes this write safe to retry. Optional — send any unique string (a UUID is ideal) and the first request runs while its response is remembered under that key for 24 hours; an identical retry replays that same status and body instead of acting twice, so a timeout or a 5xx from the edge can be retried without creating a second row. A retry sent while the first request is still in flight is refused with
409. The key is scoped to the method and path, so the same key on a different endpoint is a different request. Error responses of 5xx are never cached — those retries re-run. A key is bound to the BODY it was first used with: reusing it with a different body is a 409 idempotency.key_reused, not a replay, because replaying would tell you a write landed that never ran. Generate one key per request, never per process or per session.Request body application/json
labelstringrequireddescriptionstringpatchobjectrequiredShow child parameters
spaceobjectShow child parameters
indexstringorderstringnavstringwhoCreatesstringsummarystring[]sectionsobjectShow child parameters
addobject[]omitstring[]orderstring[]setobjectunsetobjectparamsobjectShow child parameters
addobject[]omitstring[]orderstring[]setobjectunsetobjectblockTypesobjectShow child parameters
addobject[]omitstring[]orderstring[]setobjectunsetobjectsettingsobjectShow child parameters
singletonbooleanslugFieldstringtitleFieldstringpreviewUrlstringorderablebooleandefaultSortstringlistColumnsstring[]searchableFieldsstring[]strictbooleanversionsobjectShow child parameters
maxintegerroutablebooleanblockLibrarybooleandefaultVisibilitystringiconstringgroupstring{
"label": "string",
"description": "string",
"patch": {
"space": {
"index": "landing",
"order": "manual",
"nav": "tree",
"whoCreates": "staff",
"summary": [
"string"
]
},
"sections": {
"add": [
{
"key": null,
"label": null,
"kind": null,
"required": null,
"hint": null,
"example": null,
"schemaProperty": null,
"render": null
}
],
"omit": [
"string"
],
"order": [
"string"
],
"set": {},
"unset": {}
},
"params": {
"add": [
{
"key": null,
"label": null,
"type": null,
"options": null,
"relationSpaceId": null,
"hint": null,
"placeholder": null,
"internal": null,
"facet": null,
"meta": null,
"required": null,
"default": null,
"schemaProperty": null,
"min": null,
"max": null,
"visibility": null,
"localized": null,
"unique": null,
"indexed": null,
"sortable": null,
"minLength": null,
"maxLength": null,
"pattern": null,
"condition": null,
"expr": null,
"schema": null,
"allowedBlocks": null,
"allowed": null,
"allowedGroups": null,
"to": null,
"hasMany": null,
"rowLabelField": null,
"language": null,
"from": null,
"accept": null,
"admin": null,
"fields": null
}
],
"omit": [
"string"
],
"order": [
"string"
],
"set": {},
"unset": {}
},
"blockTypes": {
"add": [
{
"key": null,
"label": null,
"description": null,
"icon": null,
"group": null,
"fields": null,
"variants": null
}
],
"omit": [
"string"
],
"order": [
"string"
],
"set": {},
"unset": {}
}
},
"settings": {
"singleton": true,
"slugField": "string",
"titleField": "string",
"previewUrl": "string",
"orderable": true,
"defaultSort": "string",
"listColumns": [
"string"
],
"searchableFields": [
"string"
],
"strict": true,
"versions": {
"max": null
},
"routable": true,
"blockLibrary": true,
"defaultVisibility": "public",
"icon": "string",
"group": "string"
}
}Code samples
cURL
curl -X PUT "https://forumulate.com/api/orgs/{orgId}/spaces/{spaceId}/shape/kinds/{name}" \
-H "forumulate-version: <value>" \
-H "Idempotency-Key: <value>" \
-H "Content-Type: application/json" \
-d '{"label":"string","description":"string","patch":{"space":{"index":"landing","order":"manual","nav":"tree","whoCreates":"staff","summary":["string"]},"sections":{"add":[{"key":null,"label":null,"kind":null,"required":null,"hint":null,"example":null,"schemaProperty":null,"render":null}],"omit":["string"],"order":["string"],"set":{},"unset":{}},"params":{"add":[{"key":null,"label":null,"type":null,"options":null,"relationSpaceId":null,"hint":null,"placeholder":null,"internal":null,"facet":null,"meta":null,"required":null,"default":null,"schemaProperty":null,"min":null,"max":null,"visibility":null,"localized":null,"unique":null,"indexed":null,"sortable":null,"minLength":null,"maxLength":null,"pattern":null,"condition":null,"expr":null,"schema":null,"allowedBlocks":null,"allowed":null,"allowedGroups":null,"to":null,"hasMany":null,"rowLabelField":null,"language":null,"from":null,"accept":null,"admin":null,"fields":null}],"omit":["string"],"order":["string"],"set":{},"unset":{}},"blockTypes":{"add":[{"key":null,"label":null,"description":null,"icon":null,"group":null,"fields":null,"variants":null}],"omit":["string"],"order":["string"],"set":{},"unset":{}}},"settings":{"singleton":true,"slugField":"string","titleField":"string","previewUrl":"string","orderable":true,"defaultSort":"string","listColumns":["string"],"searchableFields":["string"],"strict":true,"versions":{"max":null},"routable":true,"blockLibrary":true,"defaultVisibility":"public","icon":"string","group":"string"}}'TypeScript
const res = await fetch('https://forumulate.com/api/orgs/{orgId}/spaces/{spaceId}/shape/kinds/{name}', {
method: 'PUT',
headers: {
'forumulate-version': '<value>',
'Idempotency-Key': '<value>',
'Content-Type': 'application/json',
},
body: JSON.stringify({"label":"string","description":"string","patch":{"space":{"index":"landing","order":"manual","nav":"tree","whoCreates":"staff","summary":["string"]},"sections":{"add":[{"key":null,"label":null,"kind":null,"required":null,"hint":null,"example":null,"schemaProperty":null,"render":null}],"omit":["string"],"order":["string"],"set":{},"unset":{}},"params":{"add":[{"key":null,"label":null,"type":null,"options":null,"relationSpaceId":null,"hint":null,"placeholder":null,"internal":null,"facet":null,"meta":null,"required":null,"default":null,"schemaProperty":null,"min":null,"max":null,"visibility":null,"localized":null,"unique":null,"indexed":null,"sortable":null,"minLength":null,"maxLength":null,"pattern":null,"condition":null,"expr":null,"schema":null,"allowedBlocks":null,"allowed":null,"allowedGroups":null,"to":null,"hasMany":null,"rowLabelField":null,"language":null,"from":null,"accept":null,"admin":null,"fields":null}],"omit":["string"],"order":["string"],"set":{},"unset":{}},"blockTypes":{"add":[{"key":null,"label":null,"description":null,"icon":null,"group":null,"fields":null,"variants":null}],"omit":["string"],"order":["string"],"set":{},"unset":{}}},"settings":{"singleton":true,"slugField":"string","titleField":"string","previewUrl":"string","orderable":true,"defaultSort":"string","listColumns":["string"],"searchableFields":["string"],"strict":true,"versions":{"max":null},"routable":true,"blockLibrary":true,"defaultVisibility":"public","icon":"string","group":"string"}}),
});
const data = await res.json();Python
import requests
res = requests.request(
"PUT",
"https://forumulate.com/api/orgs/{orgId}/spaces/{spaceId}/shape/kinds/{name}",
headers={
"forumulate-version": "<value>",
"Idempotency-Key": "<value>",
"Content-Type": "application/json",
},
json={"label": "string", "description": "string", "patch": {"space": {"index": "landing", "order": "manual", "nav": "tree", "whoCreates": "staff", "summary": ["string"]}, "sections": {"add": [{"key": None, "label": None, "kind": None, "required": None, "hint": None, "example": None, "schemaProperty": None, "render": None}], "omit": ["string"], "order": ["string"], "set": {}, "unset": {}}, "params": {"add": [{"key": None, "label": None, "type": None, "options": None, "relationSpaceId": None, "hint": None, "placeholder": None, "internal": None, "facet": None, "meta": None, "required": None, "default": None, "schemaProperty": None, "min": None, "max": None, "visibility": None, "localized": None, "unique": None, "indexed": None, "sortable": None, "minLength": None, "maxLength": None, "pattern": None, "condition": None, "expr": None, "schema": None, "allowedBlocks": None, "allowed": None, "allowedGroups": None, "to": None, "hasMany": None, "rowLabelField": None, "language": None, "from": None, "accept": None, "admin": None, "fields": None}], "omit": ["string"], "order": ["string"], "set": {}, "unset": {}}, "blockTypes": {"add": [{"key": None, "label": None, "description": None, "icon": None, "group": None, "fields": None, "variants": None}], "omit": ["string"], "order": ["string"], "set": {}, "unset": {}}}, "settings": {"singleton": True, "slugField": "string", "titleField": "string", "previewUrl": "string", "orderable": True, "defaultSort": "string", "listColumns": ["string"], "searchableFields": ["string"], "strict": True, "versions": {"max": None}, "routable": True, "blockLibrary": True, "defaultVisibility": "public", "icon": "string", "group": "string"}},
)
data = res.json()Go
package main
import (
"fmt"
"io"
"net/http"
"strings"
)
func main() {
req, _ := http.NewRequest("PUT", "https://forumulate.com/api/orgs/{orgId}/spaces/{spaceId}/shape/kinds/{name}", strings.NewReader(`{"label":"string","description":"string","patch":{"space":{"index":"landing","order":"manual","nav":"tree","whoCreates":"staff","summary":["string"]},"sections":{"add":[{"key":null,"label":null,"kind":null,"required":null,"hint":null,"example":null,"schemaProperty":null,"render":null}],"omit":["string"],"order":["string"],"set":{},"unset":{}},"params":{"add":[{"key":null,"label":null,"type":null,"options":null,"relationSpaceId":null,"hint":null,"placeholder":null,"internal":null,"facet":null,"meta":null,"required":null,"default":null,"schemaProperty":null,"min":null,"max":null,"visibility":null,"localized":null,"unique":null,"indexed":null,"sortable":null,"minLength":null,"maxLength":null,"pattern":null,"condition":null,"expr":null,"schema":null,"allowedBlocks":null,"allowed":null,"allowedGroups":null,"to":null,"hasMany":null,"rowLabelField":null,"language":null,"from":null,"accept":null,"admin":null,"fields":null}],"omit":["string"],"order":["string"],"set":{},"unset":{}},"blockTypes":{"add":[{"key":null,"label":null,"description":null,"icon":null,"group":null,"fields":null,"variants":null}],"omit":["string"],"order":["string"],"set":{},"unset":{}}},"settings":{"singleton":true,"slugField":"string","titleField":"string","previewUrl":"string","orderable":true,"defaultSort":"string","listColumns":["string"],"searchableFields":["string"],"strict":true,"versions":{"max":null},"routable":true,"blockLibrary":true,"defaultVisibility":"public","icon":"string","group":"string"}}`))
req.Header.Set("forumulate-version", "<value>")
req.Header.Set("Idempotency-Key", "<value>")
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}PHP
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://forumulate.com/api/orgs/{orgId}/spaces/{spaceId}/shape/kinds/{name}');
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PUT');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['forumulate-version: <value>', 'Idempotency-Key: <value>', 'Content-Type: application/json']);
curl_setopt($ch, CURLOPT_POSTFIELDS, '{"label":"string","description":"string","patch":{"space":{"index":"landing","order":"manual","nav":"tree","whoCreates":"staff","summary":["string"]},"sections":{"add":[{"key":null,"label":null,"kind":null,"required":null,"hint":null,"example":null,"schemaProperty":null,"render":null}],"omit":["string"],"order":["string"],"set":{},"unset":{}},"params":{"add":[{"key":null,"label":null,"type":null,"options":null,"relationSpaceId":null,"hint":null,"placeholder":null,"internal":null,"facet":null,"meta":null,"required":null,"default":null,"schemaProperty":null,"min":null,"max":null,"visibility":null,"localized":null,"unique":null,"indexed":null,"sortable":null,"minLength":null,"maxLength":null,"pattern":null,"condition":null,"expr":null,"schema":null,"allowedBlocks":null,"allowed":null,"allowedGroups":null,"to":null,"hasMany":null,"rowLabelField":null,"language":null,"from":null,"accept":null,"admin":null,"fields":null}],"omit":["string"],"order":["string"],"set":{},"unset":{}},"blockTypes":{"add":[{"key":null,"label":null,"description":null,"icon":null,"group":null,"fields":null,"variants":null}],"omit":["string"],"order":["string"],"set":{},"unset":{}}},"settings":{"singleton":true,"slugField":"string","titleField":"string","previewUrl":"string","orderable":true,"defaultSort":"string","listColumns":["string"],"searchableFields":["string"],"strict":true,"versions":{"max":null},"routable":true,"blockLibrary":true,"defaultVisibility":"public","icon":"string","group":"string"}}');
$response = curl_exec($ch);
curl_close($ch);
echo $response;Ruby
require 'net/http'
require 'uri'
uri = URI('https://forumulate.com/api/orgs/{orgId}/spaces/{spaceId}/shape/kinds/{name}')
req = Net::HTTP::Put.new(uri)
req['forumulate-version'] = '<value>'
req['Idempotency-Key'] = '<value>'
req['Content-Type'] = 'application/json'
req.body = '{"label":"string","description":"string","patch":{"space":{"index":"landing","order":"manual","nav":"tree","whoCreates":"staff","summary":["string"]},"sections":{"add":[{"key":null,"label":null,"kind":null,"required":null,"hint":null,"example":null,"schemaProperty":null,"render":null}],"omit":["string"],"order":["string"],"set":{},"unset":{}},"params":{"add":[{"key":null,"label":null,"type":null,"options":null,"relationSpaceId":null,"hint":null,"placeholder":null,"internal":null,"facet":null,"meta":null,"required":null,"default":null,"schemaProperty":null,"min":null,"max":null,"visibility":null,"localized":null,"unique":null,"indexed":null,"sortable":null,"minLength":null,"maxLength":null,"pattern":null,"condition":null,"expr":null,"schema":null,"allowedBlocks":null,"allowed":null,"allowedGroups":null,"to":null,"hasMany":null,"rowLabelField":null,"language":null,"from":null,"accept":null,"admin":null,"fields":null}],"omit":["string"],"order":["string"],"set":{},"unset":{}},"blockTypes":{"add":[{"key":null,"label":null,"description":null,"icon":null,"group":null,"fields":null,"variants":null}],"omit":["string"],"order":["string"],"set":{},"unset":{}}},"settings":{"singleton":true,"slugField":"string","titleField":"string","previewUrl":"string","orderable":true,"defaultSort":"string","listColumns":["string"],"searchableFields":["string"],"strict":true,"versions":{"max":null},"routable":true,"blockLibrary":true,"defaultVisibility":"public","icon":"string","group":"string"}}'
res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: uri.scheme == 'https') do |http|
http.request(req)
end
puts res.bodyJava
import java.net.URI;
import java.net.http.*;
import java.net.http.HttpRequest.BodyPublishers;
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://forumulate.com/api/orgs/{orgId}/spaces/{spaceId}/shape/kinds/{name}"))
.header("forumulate-version", "<value>")
.header("Idempotency-Key", "<value>")
.header("Content-Type", "application/json")
.method("PUT", BodyPublishers.ofString("{\"label\":\"string\",\"description\":\"string\",\"patch\":{\"space\":{\"index\":\"landing\",\"order\":\"manual\",\"nav\":\"tree\",\"whoCreates\":\"staff\",\"summary\":[\"string\"]},\"sections\":{\"add\":[{\"key\":null,\"label\":null,\"kind\":null,\"required\":null,\"hint\":null,\"example\":null,\"schemaProperty\":null,\"render\":null}],\"omit\":[\"string\"],\"order\":[\"string\"],\"set\":{},\"unset\":{}},\"params\":{\"add\":[{\"key\":null,\"label\":null,\"type\":null,\"options\":null,\"relationSpaceId\":null,\"hint\":null,\"placeholder\":null,\"internal\":null,\"facet\":null,\"meta\":null,\"required\":null,\"default\":null,\"schemaProperty\":null,\"min\":null,\"max\":null,\"visibility\":null,\"localized\":null,\"unique\":null,\"indexed\":null,\"sortable\":null,\"minLength\":null,\"maxLength\":null,\"pattern\":null,\"condition\":null,\"expr\":null,\"schema\":null,\"allowedBlocks\":null,\"allowed\":null,\"allowedGroups\":null,\"to\":null,\"hasMany\":null,\"rowLabelField\":null,\"language\":null,\"from\":null,\"accept\":null,\"admin\":null,\"fields\":null}],\"omit\":[\"string\"],\"order\":[\"string\"],\"set\":{},\"unset\":{}},\"blockTypes\":{\"add\":[{\"key\":null,\"label\":null,\"description\":null,\"icon\":null,\"group\":null,\"fields\":null,\"variants\":null}],\"omit\":[\"string\"],\"order\":[\"string\"],\"set\":{},\"unset\":{}}},\"settings\":{\"singleton\":true,\"slugField\":\"string\",\"titleField\":\"string\",\"previewUrl\":\"string\",\"orderable\":true,\"defaultSort\":\"string\",\"listColumns\":[\"string\"],\"searchableFields\":[\"string\"],\"strict\":true,\"versions\":{\"max\":null},\"routable\":true,\"blockLibrary\":true,\"defaultVisibility\":\"public\",\"icon\":\"string\",\"group\":\"string\"}}"))
.build();
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());Responses
200 Success.
Example
{
"base": {
"blockTypes": [
{
"description": null,
"fields": null,
"group": null,
"icon": null,
"key": null,
"label": null,
"variants": null
}
],
"params": [
{
"accept": null,
"admin": null,
"allowed": null,
"allowedBlocks": null,
"allowedGroups": null,
"column": null,
"condition": null,
"default": null,
"expr": null,
"facet": null,
"fields": null,
"from": null,
"hasMany": null,
"hint": null,
"indexed": null,
"internal": null,
"key": null,
"label": null,
"language": null,
"localized": null,
"max": null,
"maxLength": null,
"meta": null,
"min": null,
"minLength": null,
"options": null,
"pattern": null,
"placeholder": null,
"relationSpaceId": null,
"required": null,
"rowLabelField": null,
"schema": null,
"schemaProperty": null,
"sortable": null,
"to": null,
"type": null,
"unique": null,
"visibility": null
}
],
"sections": [
{
"example": null,
"hint": null,
"key": null,
"kind": null,
"label": null,
"render": null,
"required": null,
"role": null,
"schemaProperty": null
}
],
"settings": {
"blockLibrary": true,
"defaultSort": "string",
"defaultVisibility": "internal",
"group": "string",
"icon": "string",
"listColumns": [
null
],
"orderable": true,
"previewUrl": "string",
"routable": true,
"searchableFields": [
null
],
"singleton": true,
"slugField": "string",
"strict": true,
"titleField": "string",
"versions": {
"max": null
}
},
"space": {
"index": "board",
"nav": "categories",
"order": "activity",
"summary": [
null
],
"whoCreates": "anyone"
},
"unknown": [
"string"
]
},
"defaultKind": "string",
"jsonSchema": {},
"override": {
"blockTypes": {
"add": [
null
],
"omit": [
null
],
"order": [
null
],
"set": {},
"unset": {}
},
"params": {
"add": [
null
],
"omit": [
null
],
"order": [
null
],
"set": {},
"unset": {}
},
"sections": {
"add": [
null
],
"omit": [
null
],
"order": [
null
],
"set": {},
"unset": {}
},
"space": {
"index": "board",
"nav": "categories",
"order": "activity",
"summary": [
null
],
"whoCreates": "anyone"
}
},
"presets": [
{
"description": "string",
"label": "string",
"layout": [
null
],
"name": "string",
"own": true,
"sections": [
null
],
"settings": {
"blockLibrary": null,
"defaultSort": null,
"defaultVisibility": null,
"group": null,
"icon": null,
"listColumns": null,
"orderable": null,
"previewUrl": null,
"routable": null,
"searchableFields": null,
"singleton": null,
"slugField": null,
"strict": null,
"titleField": null,
"versions": null
}
}
],
"shape": {
"blockTypes": [
{
"description": null,
"fields": null,
"group": null,
"icon": null,
"key": null,
"label": null,
"variants": null
}
],
"params": [
{
"accept": null,
"admin": null,
"allowed": null,
"allowedBlocks": null,
"allowedGroups": null,
"column": null,
"condition": null,
"default": null,
"expr": null,
"facet": null,
"fields": null,
"from": null,
"hasMany": null,
"hint": null,
"indexed": null,
"internal": null,
"key": null,
"label": null,
"language": null,
"localized": null,
"max": null,
"maxLength": null,
"meta": null,
"min": null,
"minLength": null,
"options": null,
"pattern": null,
"placeholder": null,
"relationSpaceId": null,
"required": null,
"rowLabelField": null,
"schema": null,
"schemaProperty": null,
"sortable": null,
"to": null,
"type": null,
"unique": null,
"visibility": null
}
],
"sections": [
{
"example": null,
"hint": null,
"key": null,
"kind": null,
"label": null,
"render": null,
"required": null,
"role": null,
"schemaProperty": null
}
],
"settings": {
"blockLibrary": true,
"defaultSort": "string",
"defaultVisibility": "internal",
"group": "string",
"icon": "string",
"listColumns": [
null
],
"orderable": true,
"previewUrl": "string",
"routable": true,
"searchableFields": [
null
],
"singleton": true,
"slugField": "string",
"strict": true,
"titleField": "string",
"versions": {
"max": null
}
},
"space": {
"index": "board",
"nav": "categories",
"order": "activity",
"summary": [
null
],
"whoCreates": "anyone"
},
"unknown": [
"string"
]
},
"warnings": [
"tags: \"Launch Day\" is stored as \"launch-day\""
]
}Schema
baseobjectrequiredShow child parameters
blockTypesBlockType[]requiredShow child parameters
descriptionstringfieldsSpaceTypeField[]requiredgroupstringiconstringkeystringrequiredlabelstringrequiredvariantsBlockVariant[]paramsSpaceTypeField[]requiredShow child parameters
acceptstring[]adminobjectallowedstring[]allowedBlocksstring[]allowedGroupsstring[]columnbooleanconditionstring | number | boolean | string | number | boolean | object[] | object[] | objectdefaultobjectexprstring | number | boolean | string | number | boolean | object[] | object[] | objectfacetbooleanfieldsSpaceTypeField[]fromstringhasManybooleanhintstringindexedbooleaninternalbooleankeystringrequiredlabelstringrequiredlanguagestringlocalizedbooleanmaxnumbermaxLengthnumbermetabooleanminnumberminLengthnumberoptionsstring[]patternstringplaceholderstringrelationSpaceIdstringrequiredbooleanrowLabelFieldstringschemaobjectschemaPropertystringsortablebooleantoReferenceTarget[]typestringrequireduniquebooleanvisibilitystringsectionsSpaceTypeSection[]requiredShow child parameters
examplestringhintstringkeystringrequiredkindstringrequiredlabelstringrequiredrenderstringrequiredbooleanrolestringschemaPropertystringsettingsobjectShow child parameters
blockLibrarybooleandefaultSortstringdefaultVisibilitystringgroupstringiconstringlistColumnsstring[]orderablebooleanpreviewUrlstringroutablebooleansearchableFieldsstring[]singletonbooleanslugFieldstringstrictbooleantitleFieldstringversionsobjectspaceobjectrequiredShow child parameters
indexstringrequirednavstringrequiredorderstringrequiredsummarystring[]requiredwhoCreatesstringrequiredunknownstring[]requireddefaultKindstringrequiredjsonSchemaobjectrequiredoverrideobjectrequiredShow child parameters
blockTypesobjectShow child parameters
addBlockType[]omitstring[]orderstring[]setobjectunsetobjectparamsobjectShow child parameters
addSpaceTypeField[]omitstring[]orderstring[]setobjectunsetobjectsectionsobjectShow child parameters
addSpaceTypeSection[]omitstring[]orderstring[]setobjectunsetobjectspaceobjectShow child parameters
indexstringnavstringorderstringsummarystring[]whoCreatesstringpresetsobject[]requiredShow child parameters
descriptionstringrequiredlabelstringrequiredlayoutobject[]namestringrequiredownbooleanrequiredsectionsKindSlot[]requiredShow child parameters
keystringrequiredkindstringrequiredlabelstringrequiredrequiredbooleanrequiredrolestringsettingsobjectShow child parameters
blockLibrarybooleandefaultSortstringdefaultVisibilitystringgroupstringiconstringlistColumnsstring[]orderablebooleanpreviewUrlstringroutablebooleansearchableFieldsstring[]singletonbooleanslugFieldstringstrictbooleantitleFieldstringversionsobjectshapeobjectrequiredShow child parameters
blockTypesBlockType[]requiredShow child parameters
descriptionstringfieldsSpaceTypeField[]requiredgroupstringiconstringkeystringrequiredlabelstringrequiredvariantsBlockVariant[]paramsSpaceTypeField[]requiredShow child parameters
acceptstring[]adminobjectallowedstring[]allowedBlocksstring[]allowedGroupsstring[]columnbooleanconditionstring | number | boolean | string | number | boolean | object[] | object[] | objectdefaultobjectexprstring | number | boolean | string | number | boolean | object[] | object[] | objectfacetboolean400 The request could not be understood — a malformed header, path or query value (
request.malformed). A value that was understood but is not acceptable is a 422 validation.failed.{
"error": {
"code": "string",
"message": "string",
"details": {},
"docs": "string",
"reason": "string",
"slugs": [
"string"
],
"conflict": {
"etag": "string",
"ops": [
null
]
}
},
"requestId": "string"
}401 No credential, or one that is expired or revoked (
auth.required). Send a Bearer token or the session cookie.{
"error": {
"code": "string",
"message": "string",
"details": {},
"docs": "string",
"reason": "string",
"slugs": [
"string"
],
"conflict": {
"etag": "string",
"ops": [
null
]
}
},
"requestId": "string"
}403 Authenticated, and not allowed — always
rbac.forbidden, whether what is missing is the capability, the token scope, or a resource the token is pinned away from. The message names the capability and, for a scope refusal, the scopes that would grant it. A refusal because of the PLAN is a 402 with quota.exceeded, not this.{
"error": {
"code": "string",
"message": "string",
"details": {},
"docs": "string",
"reason": "string",
"slugs": [
"string"
],
"conflict": {
"etag": "string",
"ops": [
null
]
}
},
"requestId": "string"
}404 No such thing — one of the ids in the path does not resolve, or resolves to something this caller may not see (
*.not_found).{
"error": {
"code": "string",
"message": "string",
"details": {},
"docs": "string",
"reason": "string",
"slugs": [
"string"
],
"conflict": {
"etag": "string",
"ops": [
null
]
}
},
"requestId": "string"
}422 The body was understood and a value is unacceptable (
validation.failed). error.details names the field paths.{
"error": {
"code": "string",
"message": "string",
"details": {},
"docs": "string",
"reason": "string",
"slugs": [
"string"
],
"conflict": {
"etag": "string",
"ops": [
null
]
}
},
"requestId": "string"
}429 Rate limited — see the RateLimit-* headers.
{
"error": {
"code": "string",
"message": "string",
"details": {},
"docs": "string",
"reason": "string",
"slugs": [
"string"
],
"conflict": {
"etag": "string",
"ops": [
null
]
}
},
"requestId": "string"
}default Error — the stable { error: { code, message } } envelope.
{
"error": {
"code": "string",
"message": "string",
"details": {},
"docs": "string",
"reason": "string",
"slugs": [
"string"
],
"conflict": {
"etag": "string",
"ops": [
null
]
}
},
"requestId": "string"
}The Forumulate teamUpdated