Starfish Space Template Parts API
Block theme template parts.
Block theme template parts.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/starfish-space-template-parts-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Starfish Space Website Content API (WordPress REST v2) Template Parts API
version: '2'
description: 'The public WordPress REST API served by Starfish Space at https://www.starfishspace.com/wp-json/wp/v2. Starfish Space is a Tukwila, Washington satellite-servicing company building the Otter spacecraft; this API is the content interface behind starfishspace.com (news/press releases, pages, media, taxonomies), not a spacecraft, telemetry or mission-data API. Read operations are available anonymously; write operations require an authenticated WordPress user.
This document was DERIVED by API Evangelist from documents the API itself publishes: the machine-readable route index at /wp-json/wp/v2 and the item JSON Schemas returned by HTTP OPTIONS on each collection route. No paths, parameters or schema properties were invented.'
contact:
name: Starfish Space
url: https://www.starfishspace.com/contact/
x-derived-from:
- https://www.starfishspace.com/wp-json/wp/v2
- https://www.starfishspace.com/wp-json/wp/v2/{resource} (HTTP OPTIONS)
servers:
- url: https://www.starfishspace.com/wp-json
description: Production
tags:
- name: template-parts
description: Block theme template parts.
paths:
/wp/v2/template-parts:
get:
operationId: listTemplateParts
tags:
- template-parts
summary: List template parts
description: Retrieve a collection of template parts from the Starfish Space WordPress REST API.
parameters:
- name: context
in: query
required: false
description: Scope under which the request is made; determines fields present in response.
schema:
type: string
enum:
- view
- embed
- edit
default: view
- name: wp_id
in: query
required: false
description: Limit to the specified post id.
schema:
type: integer
- name: area
in: query
required: false
description: Limit to the specified template part area.
schema:
type: string
- name: post_type
in: query
required: false
description: Post type to get the templates for.
schema:
type: string
responses:
'200':
description: Successful response.
content:
application/json:
schema:
type: object
'400':
description: Invalid parameter.
content:
application/json:
schema:
$ref: '#/components/schemas/RestError'
'401':
description: Authentication required.
content:
application/json:
schema:
$ref: '#/components/schemas/RestError'
'403':
description: Not allowed for the current user.
content:
application/json:
schema:
$ref: '#/components/schemas/RestError'
'404':
description: No route or resource matched the request.
content:
application/json:
schema:
$ref: '#/components/schemas/RestError'
post:
operationId: createTemplateParts
tags:
- template-parts
summary: Create or update template parts
description: Create or update a template part via the Starfish Space WordPress REST API. Requires an authenticated WordPress user with sufficient capabilities.
parameters: []
responses:
'200':
description: Successful response.
content:
application/json:
schema:
type: object
'400':
description: Invalid parameter.
content:
application/json:
schema:
$ref: '#/components/schemas/RestError'
'401':
description: Authentication required.
content:
application/json:
schema:
$ref: '#/components/schemas/RestError'
'403':
description: Not allowed for the current user.
content:
application/json:
schema:
$ref: '#/components/schemas/RestError'
'404':
description: No route or resource matched the request.
content:
application/json:
schema:
$ref: '#/components/schemas/RestError'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
slug:
type: string
minLength: 1
pattern: '[a-zA-Z0-9_\%-]+'
description: Unique slug identifying the template.
theme:
type: string
description: Theme identifier for the template.
type:
type: string
description: Type of template.
content:
default: ''
type:
- object
- string
properties:
raw:
description: Content for the template, as it exists in the database.
type: string
context:
- view
- edit
block_version:
description: Version of the content block format used by the template.
type: integer
context:
- edit
readonly: true
description: Content of template.
title:
default: ''
type:
- object
- string
properties:
raw:
description: Title for the template, as it exists in the database.
type: string
context:
- view
- edit
- embed
rendered:
description: HTML title for the template, transformed for display.
type: string
context:
- view
- edit
- embed
readonly: true
description: Title of template.
description:
default: ''
type: string
description: Description of template.
status:
default: publish
type: string
enum:
- publish
- future
- draft
- pending
- private
- acf-disabled
description: Status of template.
author:
type: integer
description: The ID for the author of the template.
area:
type: string
description: Where the template part is intended for use (header, footer, etc.)
required:
- slug
security:
- basicAuth: []
- cookieNonce: []
/wp/v2/template-parts/lookup:
get:
operationId: listTemplatePartsLookup
tags:
- template-parts
summary: List template parts
description: Retrieve a collection of template parts from the Starfish Space WordPress REST API.
parameters:
- name: slug
in: query
required: true
description: The slug of the template to get the fallback for
schema:
type: string
- name: is_custom
in: query
required: false
description: Indicates if a template is custom or part of the template hierarchy
schema:
type: boolean
- name: template_prefix
in: query
required: false
description: The template prefix for the created template. This is used to extract the main template type, e.g. in `taxonomy-books` extracts the `taxonomy`
schema:
type: string
responses:
'200':
description: Successful response.
content:
application/json:
schema:
type: object
'400':
description: Invalid parameter.
content:
application/json:
schema:
$ref: '#/components/schemas/RestError'
'401':
description: Authentication required.
content:
application/json:
schema:
$ref: '#/components/schemas/RestError'
'403':
description: Not allowed for the current user.
content:
application/json:
schema:
$ref: '#/components/schemas/RestError'
'404':
description: No route or resource matched the request.
content:
application/json:
schema:
$ref: '#/components/schemas/RestError'
/wp/v2/template-parts/{id}:
get:
operationId: getTemplatePartsById
tags:
- template-parts
summary: Retrieve a single template part
description: Retrieve a single template part by route parameter from the Starfish Space WordPress REST API.
parameters:
- name: id
in: path
required: true
description: WordPress route parameter id.
schema:
type: integer
- name: context
in: query
required: false
description: Scope under which the request is made; determines fields present in response.
schema:
type: string
enum:
- view
- embed
- edit
default: view
responses:
'200':
description: Successful response.
content:
application/json:
schema:
type: object
'400':
description: Invalid parameter.
content:
application/json:
schema:
$ref: '#/components/schemas/RestError'
'401':
description: Authentication required.
content:
application/json:
schema:
$ref: '#/components/schemas/RestError'
'403':
description: Not allowed for the current user.
content:
application/json:
schema:
$ref: '#/components/schemas/RestError'
'404':
description: No route or resource matched the request.
content:
application/json:
schema:
$ref: '#/components/schemas/RestError'
post:
operationId: createTemplatePartsById
tags:
- template-parts
summary: Create or update template part
description: Create or update a template part via the Starfish Space WordPress REST API. Requires an authenticated WordPress user with sufficient capabilities.
parameters:
- name: id
in: path
required: true
description: WordPress route parameter id.
schema:
type: integer
responses:
'200':
description: Successful response.
content:
application/json:
schema:
type: object
'400':
description: Invalid parameter.
content:
application/json:
schema:
$ref: '#/components/schemas/RestError'
'401':
description: Authentication required.
content:
application/json:
schema:
$ref: '#/components/schemas/RestError'
'403':
description: Not allowed for the current user.
content:
application/json:
schema:
$ref: '#/components/schemas/RestError'
'404':
description: No route or resource matched the request.
content:
application/json:
schema:
$ref: '#/components/schemas/RestError'
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
slug:
type: string
minLength: 1
pattern: '[a-zA-Z0-9_\%-]+'
description: Unique slug identifying the template.
theme:
type: string
description: Theme identifier for the template.
type:
type: string
description: Type of template.
content:
type:
- object
- string
properties:
raw:
description: Content for the template, as it exists in the database.
type: string
context:
- view
- edit
block_version:
description: Version of the content block format used by the template.
type: integer
context:
- edit
readonly: true
description: Content of template.
title:
type:
- object
- string
properties:
raw:
description: Title for the template, as it exists in the database.
type: string
context:
- view
- edit
- embed
rendered:
description: HTML title for the template, transformed for display.
type: string
context:
- view
- edit
- embed
readonly: true
description: Title of template.
description:
type: string
description: Description of template.
status:
type: string
enum:
- publish
- future
- draft
- pending
- private
- acf-disabled
description: Status of template.
author:
type: integer
description: The ID for the author of the template.
area:
type: string
description: Where the template part is intended for use (header, footer, etc.)
security:
- basicAuth: []
- cookieNonce: []
put:
operationId: updateTemplatePartsById
tags:
- template-parts
summary: Update template part
description: Update a template part via the Starfish Space WordPress REST API. Requires an authenticated WordPress user with sufficient capabilities.
parameters:
- name: id
in: path
required: true
description: WordPress route parameter id.
schema:
type: integer
responses:
'200':
description: Successful response.
content:
application/json:
schema:
type: object
'400':
description: Invalid parameter.
content:
application/json:
schema:
$ref: '#/components/schemas/RestError'
'401':
description: Authentication required.
content:
application/json:
schema:
$ref: '#/components/schemas/RestError'
'403':
description: Not allowed for the current user.
content:
application/json:
schema:
$ref: '#/components/schemas/RestError'
'404':
description: No route or resource matched the request.
content:
application/json:
schema:
$ref: '#/components/schemas/RestError'
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
slug:
type: string
minLength: 1
pattern: '[a-zA-Z0-9_\%-]+'
description: Unique slug identifying the template.
theme:
type: string
description: Theme identifier for the template.
type:
type: string
description: Type of template.
content:
type:
- object
- string
properties:
raw:
description: Content for the template, as it exists in the database.
type: string
context:
- view
- edit
block_version:
description: Version of the content block format used by the template.
type: integer
context:
- edit
readonly: true
description: Content of template.
title:
type:
- object
- string
properties:
raw:
description: Title for the template, as it exists in the database.
type: string
context:
- view
- edit
- embed
rendered:
description: HTML title for the template, transformed for display.
type: string
context:
- view
- edit
- embed
readonly: true
description: Title of template.
description:
type: string
description: Description of template.
status:
type: string
enum:
- publish
- future
- draft
- pending
- private
- acf-disabled
description: Status of template.
author:
type: integer
description: The ID for the author of the template.
area:
type: string
description: Where the template part is intended for use (header, footer, etc.)
security:
- basicAuth: []
- cookieNonce: []
patch:
operationId: updateTemplatePartsById2
tags:
- template-parts
summary: Update template part
description: Update a template part via the Starfish Space WordPress REST API. Requires an authenticated WordPress user with sufficient capabilities.
parameters:
- name: id
in: path
required: true
description: WordPress route parameter id.
schema:
type: integer
responses:
'200':
description: Successful response.
content:
application/json:
schema:
type: object
'400':
description: Invalid parameter.
content:
application/json:
schema:
$ref: '#/components/schemas/RestError'
'401':
description: Authentication required.
content:
application/json:
schema:
$ref: '#/components/schemas/RestError'
'403':
description: Not allowed for the current user.
content:
application/json:
schema:
$ref: '#/components/schemas/RestError'
'404':
description: No route or resource matched the request.
content:
application/json:
schema:
$ref: '#/components/schemas/RestError'
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
slug:
type: string
minLength: 1
pattern: '[a-zA-Z0-9_\%-]+'
description: Unique slug identifying the template.
theme:
type: string
description: Theme identifier for the template.
type:
type: string
description: Type of template.
content:
type:
- object
- string
properties:
raw:
description: Content for the template, as it exists in the database.
type: string
context:
- view
- edit
block_version:
description: Version of the content block format used by the template.
type: integer
context:
- edit
readonly: true
description: Content of template.
title:
type:
- object
- string
properties:
raw:
description: Title for the template, as it exists in the database.
type: string
context:
- view
- edit
- embed
rendered:
description: HTML title for the template, transformed for display.
type: string
context:
- view
- edit
- embed
readonly: true
description: Title of template.
description:
type: string
description: Description of template.
status:
type: string
enum:
- publish
- future
- draft
- pending
- private
- acf-disabled
description: Status of template.
author:
type: integer
description: The ID for the author of the template.
area:
type: string
description: Where the template part is intended for use (header, footer, etc.)
security:
- basicAuth: []
- cookieNonce: []
delete:
operationId: deleteTemplatePartsById
tags:
- template-parts
summary: Delete template part
description: Delete a template part via the Starfish Space WordPress REST API. Requires an authenticated WordPress user with sufficient capabilities.
parameters:
- name: id
in: path
required: true
description: WordPress route parameter id.
schema:
type: integer
- name: force
in: query
required: false
description: Whether to bypass Trash and force deletion.
schema:
type: boolean
default: false
responses:
'200':
description: Successful response.
content:
application/json:
schema:
type: object
'400':
description: Invalid parameter.
content:
application/json:
schema:
$ref: '#/components/schemas/RestError'
'401':
description: Authentication required.
content:
application/json:
schema:
$ref: '#/components/schemas/RestError'
'403':
description: Not allowed for the current user.
content:
application/json:
schema:
$ref: '#/components/schemas/RestError'
'404':
description: No route or resource matched the request.
content:
application/json:
schema:
$ref: '#/components/schemas/RestError'
security:
- basicAuth: []
- cookieNonce: []
/wp/v2/template-parts/{id}/autosaves:
get:
operationId: getTemplatePartsByIdAutosaves
tags:
- template-parts
summary: Retrieve a single template part
description: Retrieve a single template part by route parameter from the Starfish Space WordPress REST API.
parameters:
- name: id
in: path
required: true
description: WordPress route parameter id.
schema:
type: integer
- name: context
in: query
required: false
description: Scope under which the request is made; determines fields present in response.
schema:
type: string
enum:
- view
- embed
- edit
default: view
responses:
'200':
description: Successful response.
content:
application/json:
schema:
type: object
'400':
description: Invalid parameter.
content:
application/json:
schema:
$ref: '#/components/schemas/RestError'
'401':
description: Authentication required.
content:
application/json:
schema:
$ref: '#/components/schemas/RestError'
'403':
description: Not allowed for the current user.
content:
application/json:
schema:
$ref: '#/components/schemas/RestError'
'404':
description: No route or resource matched the request.
content:
application/json:
schema:
$ref: '#/components/schemas/RestError'
post:
operationId: createTemplatePartsByIdAutosaves
tags:
- template-parts
summary: Create or update template part
description: Create or update a template part via the Starfish Space WordPress REST API. Requires an authenticated WordPress user with sufficient capabilities.
parameters:
- name: id
in: path
required: true
description: WordPress route parameter id.
schema:
type: integer
responses:
'200':
description: Successful response.
content:
application/json:
schema:
type: object
'400':
description: Invalid parameter.
content:
application/json:
schema:
$ref: '#/components/schemas/RestError'
'401':
description: Authentication required.
content:
application/json:
schema:
$ref: '#/components/schemas/RestError'
'403':
description: Not allowed for the current user.
content:
application/json:
schema:
$ref: '#/components/schemas/RestError'
'404':
description: No route or resource matched the request.
content:
application/json:
schema:
$ref: '#/components/schemas/RestError'
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
slug:
type: string
minLength: 1
pattern: '[a-zA-Z0-9_\%-]+'
description: Unique slug identifying the template.
theme:
type: string
description: Theme identifier for the template.
type:
type: string
description: Type of template.
content:
type:
- object
- string
properties:
raw:
description: Content for the template, as it exists in the database.
type: string
context:
- view
- edit
block_version:
description: Version of the content block format used by the template.
type: integer
context:
- edit
readonly: true
description: Content of template.
title:
type:
- object
- string
properties:
raw:
description: Title for the template, as it exists in the database.
type: string
context:
- view
- edit
- embed
rendered:
description: HTML title for the template, transformed for display.
type: string
context:
- view
- edit
- embed
readonly: true
description: Title of template.
description:
type: string
description: Description of template.
status:
type: string
enum:
- publish
- future
- draft
- pending
- private
- acf-disabled
description: Status of template.
author:
type: integer
description: The ID for the author of the template.
area:
type: string
description: Where the template part is intended for use (header, footer, etc.)
security:
- basicAuth: []
- cookieNonce: []
/wp/v2/template-parts/{parent}/autosaves/{id}:
get:
operationId: getTemplatePartsByParentAutosavesById
tags:
- template-parts
summary: Retrieve a single template part
description: Retrieve a single template part by route parameter from the Starfish Space WordPress REST API.
parameters:
- name: parent
in: path
required: true
description: WordPress route parameter parent.
schema:
type: integer
- name: id
in: path
required: true
description: WordPress route parameter id.
schema:
type: integer
- name: context
in: query
required: false
description: Scope under which the request is made; determines fields present in response.
schema:
type: string
enum:
- view
- embed
- edit
default: view
responses:
'200':
description: Successful response.
content:
application/json:
schema:
type: object
'400':
description: Invalid parameter.
content:
application/json:
schema:
$ref: '#/components/schemas/RestError'
'401':
description: Authentication required.
content:
application/json:
schema:
$ref: '#/components/schemas/RestError'
'403':
description: Not allowed for the current user.
content:
application/json:
schema:
# --- truncated at 32 KB (40 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/starfish-space/refs/heads/main/openapi/starfish-space-template-parts-api-openapi.yml