Skip to content

List Post Types

GET
/api/v1/post-types

Lists post type definitions. Default returns active types only. Pass active=false to include inactive. Returns 503 MODULE_DISABLED when CPT is off. Definitions may be Redis-cached unless POST_TYPES_FRESH_CACHE_MODE is true.

Parameters

Query Parameters

active

When false, include inactive types

Type
string
Valid values
"true""false"
Default
"true"

Responses

Type definitions list

application/json
JSON
{
  
"data": [
  
  
{
  
  
  
"id": "string",
  
  
  
"type_key": "case-study",
  
  
  
"type_name": "Case Study",
  
  
  
"description": "string",
  
  
  
"slug_prefix": "string",
  
  
  
"field_schema": [
  
  
  
  
{
  
  
  
  
  
"name": "string",
  
  
  
  
  
"label": "string",
  
  
  
  
  
"type": "string",
  
  
  
  
  
"required": true,
  
  
  
  
  
"options": [
  
  
  
  
  
  
"string"
  
  
  
  
  
],
  
  
  
  
  
"max_length": 0,
  
  
  
  
  
"placeholder": "string"
  
  
  
  
}
  
  
  
],
  
  
  
"behaviors": {
  
  
  
  
"public_by_default": true,
  
  
  
  
"enables_seo": true,
  
  
  
  
"enables_comments": true,
  
  
  
  
"enables_reactions": true,
  
  
  
  
"enables_bookmarks": true,
  
  
  
  
"enables_views": true,
  
  
  
  
"enables_scheduling": true,
  
  
  
  
"requires_approval": true,
  
  
  
  
"allows_password_visibility": true,
  
  
  
  
"default_visibility": "string",
  
  
  
  
"allowed_body_formats": [
  
  
  
  
  
"string"
  
  
  
  
],
  
  
  
  
"max_per_author": 0,
  
  
  
  
"additionalProperties": "string"
  
  
  
},
  
  
  
"icon": "string",
  
  
  
"color": "string",
  
  
  
"is_active": true,
  
  
  
"is_built_in": true,
  
  
  
"sort_order": 0,
  
  
  
"created_at": "string",
  
  
  
"updated_at": "string"
  
  
}
  
],
  
"meta": {
  
  
"additionalProperties": "string"
  
},
  
"user_context": {
  
  
"additionalProperties": "string"
  
}
}

Playground

Server
Variables
Key
Value

Samples

Powered by VitePress OpenAPI

List custom post type definitions.

Auth: public.

Parameters

NameInTypeRequiredDescription
activequerystringNotrue (default) or false to include inactive

Request Body

None.

Response 200

json
{
	"data": [
		{
			"id": "pt_1",
			"type_key": "blog",
			"type_name": "Blog Post",
			"field_schema": [],
			"behaviors": { "public_by_default": true },
			"is_active": true,
			"is_built_in": true,
			"sort_order": 0
		}
	],
	"meta": {},
	"user_context": { "authenticated": false }
}

Response Errors

  • 503 MODULE_DISABLED — Post Types off (POST_TYPES_ENABLED / MCU)

Notes

  • Default returns active types only.
  • Definitions may be Redis-cached unless POST_TYPES_FRESH_CACHE_MODE is true.
  • Requires Blog + CPT enabled; otherwise 503.