Get current content type metadata
Read-only bulk metadata for type generation. Returns one consistent database snapshot of accessible collections and their active effective schemas, including inheritance. Optional entry/tree data requires read:entries in addition to read:collections. Explicit unavailable collection selectors fail. Active schema migrations in the selected collections return a conflict. No entry content is loaded. Schema-free collections use general types without warnings.
Required API key permissions: read:collections. Write permissions also grant read access for the same resource.
Authentication
apiKeyhttp, bearer, Andesine API keyUse an Andesine API key as a Bearer token
oauthhttp, bearer, Andesine OAuth access tokenUse an OAuth access token with andesine:api scope. Send x-workspace-id for workspace operations. Current user permissions apply.
Headers
x-workspace-idstringRequired for OAuth: ID of the workspace to access. API keys use their own workspace.
Request body *
application/jsonBodyobject3 fields
collectionsarray of any ofCollection IDs, name paths, or objects with collectionSlugPath. Includes selected subtrees; empty selects all accessible collections.
[]Options
Any of
Option 1string
Option 2string
Decoded content path, such as /Docs/Page or coll_ID/Page. Names are case-sensitive. Do not URL-encode names before passing them to the SDK.
Option 3object
collectionSlugPath*stringDecoded derived slug path, such as /docs/getting-started or coll_ID/getting-started. Use the returned slugPath without URL encoding.
includeEntriesbooleanInclude entry IDs, names, paths, and schema associations.
falseincludeTreebooleanInclude ordered child IDs for each collection. Also includes entry metadata.
falseResponses
200OKapplication/json
Bodyobject8 fields
formatVersion*constant1workspaceID*stringsource*any ofOptions
Any of
Option 1object
kind*constant"current"Option 2object
kind*constant"published"channel*PublishingChannelCodesnapshotID*stringexpiresAt*any ofOptions
Any of
Option 1string (date-time)
Option 2null
fingerprint*stringDeterministic hash of returned type metadata and source kind. Excludes publication snapshot IDs, expiry, content bodies, and unrequested entry/tree data.
collections*array of TypeMetadataCollection6 fields
id*any ofNull identifies the virtual root at /.
Options
Any of
Option 1string
Option 2null
parentID*any ofOptions
Any of
Option 1string
Option 2null
name*stringpath*stringslugPath*stringschemaRevisionIDs*array of any ofEffective schema revisions for this collection. Null represents schema-free content. An empty array has no recorded schema evidence; use a general type without a warning.
Options
Any of
Option 1string
Option 2null
revisions*array of SchemaRevisionDistinct effective definitions, including inherited fields, referenced by collections or entries.
3 fields
revisionID*stringRecorded effective schema revision
hash*stringHash of the effective schema definition
definition*objectExact effective definition, including inherited fields
2 fields
formatVersion*constant1fields*array of SchemaFieldOptions
Any of
SchemaPropertyobject
id*stringkind*constant"property"label*stringtype*string"text", "number", "checkbox", "date", "url", "select", "multi-select"initialValue*SchemaPropertyValueOptions
Any of
Option 1boolean
Option 2string
Option 3array of string
options*array of stringoptionalbooleanSchemaFragmentobject
id*stringkind*constant"fragment"label*stringallowedBlocks*array of SchemaBlockTypeinitialContent*array of ContentNode5 fields
type*stringattrsobject1 field
{key}anycontentarray of ContentNodemarksarray of ContentMark2 fields
type*stringattrsobject1 field
{key}anytextstringoptionalbooleanentriesarray of TypeMetadataEntry6 fields
id*stringcollectionID*any ofOptions
Any of
Option 1string
Option 2null
name*stringpath*stringslugPath*stringschemaRevisionID*any ofOptions
Any of
Option 1string
Option 2null
treearray of TypeMetadataTree3 fields
collectionID*any ofOptions
Any of
Option 1string
Option 2null
collectionIDs*array of stringSelected direct children in display order.
entryIDs*array of stringDirect entries in display order.
400Bad Requestapplication/json
Bodyone ofOptions
One of
Option 1object
defined*constanttruecode*constant"BAD_REQUEST"status*constant400message*string"Bad Request"dataValidationErrorData2 fields
hintsarray of stringSuggested next steps. Wording can change; use error codes and structured data for program logic.
issuesarray of ValidationIssue3 fields
message*stringcodestringpatharray of any ofOptions
Any of
Option 1string
Option 2number
Option 3object
key*any ofOptions
Any of
Option 1string
Option 2number
Option 2object
defined*constantfalsecode*stringstatus*numbermessage*stringdataany401Unauthorizedapplication/json
Bodyone ofOptions
One of
Option 1object
defined*constanttruecode*constant"UNAUTHORIZED"status*constant401message*string"Unauthorized"dataErrorData1 field
hintsarray of stringSuggested next steps. Wording can change; use error codes and structured data for program logic.
Option 2object
defined*constantfalsecode*stringstatus*numbermessage*stringdataany403Forbiddenapplication/json
Bodyone ofOptions
One of
Option 1object
defined*constanttruecode*constant"FORBIDDEN"status*constant403message*string"Forbidden"dataForbiddenErrorData4 fields
hintsarray of stringSuggested next steps. Wording can change; use error codes and structured data for program logic.
missingPermissionsarray of stringrequiredPlanconstant"pro"actionstringThe requested action that was denied
Option 2object
defined*constantfalsecode*stringstatus*numbermessage*stringdataany404Not Foundapplication/json
Bodyone ofOptions
One of
Option 1object
defined*constanttruecode*constant"NOT_FOUND"status*constant404message*string"Not Found"dataErrorData1 field
hintsarray of stringSuggested next steps. Wording can change; use error codes and structured data for program logic.
Option 2object
defined*constantfalsecode*stringstatus*numbermessage*stringdataany409Conflictapplication/json
Bodyone ofOptions
One of
Option 1object
defined*constanttruecode*constant"CONFLICT"status*constant409message*string"Conflict"dataErrorData1 field
hintsarray of stringSuggested next steps. Wording can change; use error codes and structured data for program logic.
Option 2object
defined*constanttruecode*constant"SCHEMA_FIELD_KEY_CONFLICT"status*constant409message*string"SCHEMA_FIELD_KEY_CONFLICT"data*SchemaFieldKeyConflictErrorData4 fields
hintsarray of stringSuggested next steps. Wording can change; use error codes and structured data for program logic.
key*stringkind*string"fragment", "property"fieldIDs*array of stringOption 3object
defined*constanttruecode*constant"SCHEMA_MIGRATION_IN_PROGRESS"status*constant409message*string"A schema migration is in progress for this collection"data*SchemaMigrationErrorData2 fields
hintsarray of stringSuggested next steps. Wording can change; use error codes and structured data for program logic.
migrationID*stringOption 4object
defined*constantfalsecode*stringstatus*numbermessage*stringdataany429Too Many Requestsapplication/json
Bodyone ofOptions
One of
Option 1object
defined*constanttruecode*constant"TOO_MANY_REQUESTS"status*constant429message*string"Too Many Requests"dataRateLimitErrorData3 fields
hintsarray of stringSuggested next steps. Wording can change; use error codes and structured data for program logic.
limitstringThe limit that was reached: a short-term rate limit, or a monthly API call, AI credit, or spending limit
"rate", "api-calls", "ai-credits", "spending"retryAfterSecondsnumberMinimum delay before another attempt, in seconds. Also sent in Retry-After.
Option 2object
defined*constantfalsecode*stringstatus*numbermessage*stringdataany500Internal Server Errorapplication/json
Bodyone ofOptions
One of
Option 1object
defined*constanttruecode*constant"INTERNAL_SERVER_ERROR"status*constant500message*string"Internal Server Error"dataErrorData1 field
hintsarray of stringSuggested next steps. Wording can change; use error codes and structured data for program logic.
Option 2object
defined*constantfalsecode*stringstatus*numbermessage*stringdataany503Service Unavailableapplication/json
Bodyone ofOptions
One of
Option 1object
defined*constanttruecode*constant"SERVICE_UNAVAILABLE"status*constant503message*string"Service Unavailable"dataErrorData1 field
hintsarray of stringSuggested next steps. Wording can change; use error codes and structured data for program logic.
Option 2object
defined*constantfalsecode*stringstatus*numbermessage*stringdataany