PostHog · Capability
PostHog API — llm_prompts
PostHog API — llm_prompts. 7 operations. Lead operation: llm_prompts. Self-contained Naftiko capability covering one Posthog business surface.
What You Can Do
GET
Llmpromptslist
— llmpromptslist
/v1/api/environments/{project-id}/llm-prompts
POST
Llmpromptscreate
— llmpromptscreate
/v1/api/environments/{project-id}/llm-prompts
GET
Llmpromptsnameretrieve
— llmpromptsnameretrieve
/v1/api/environments/{project-id}/llm-prompts/name/{prompt-name}
PATCH
Llmpromptsnamepartialupdate
— llmpromptsnamepartialupdate
/v1/api/environments/{project-id}/llm-prompts/name/{prompt-name}
POST
Llmpromptsnamearchivecreate
— llmpromptsnamearchivecreate
/v1/api/environments/{project-id}/llm-prompts/name/{prompt-name}/archive
POST
Llmpromptsnameduplicatecreate
— llmpromptsnameduplicatecreate
/v1/api/environments/{project-id}/llm-prompts/name/{prompt-name}/duplicate
GET
Llmpromptsresolvenameretrieve
— llmpromptsresolvenameretrieve
/v1/api/environments/{project-id}/llm-prompts/resolve/name/{prompt-name}
MCP Tools
llmpromptslist
llmpromptslist
read-only
idempotent
llmpromptscreate
llmpromptscreate
llmpromptsnameretrieve
llmpromptsnameretrieve
read-only
idempotent
llmpromptsnamepartialupdate
llmpromptsnamepartialupdate
idempotent
llmpromptsnamearchivecreate
llmpromptsnamearchivecreate
llmpromptsnameduplicatecreate
llmpromptsnameduplicatecreate
llmpromptsresolvenameretrieve
llmpromptsresolvenameretrieve
read-only
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: PostHog API — llm_prompts
description: 'PostHog API — llm_prompts. 7 operations. Lead operation: llm_prompts. Self-contained Naftiko capability covering
one Posthog business surface.'
tags:
- Posthog
- llm_prompts
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
POSTHOG_API_KEY: POSTHOG_API_KEY
capability:
consumes:
- type: http
namespace: posthog-llm-prompts
baseUri: ''
description: PostHog API — llm_prompts business capability. Self-contained, no shared references.
resources:
- name: api-environments-project_id-llm_prompts
path: /api/environments/{project_id}/llm_prompts/
operations:
- name: llmpromptslist
method: GET
description: ''
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: content
in: query
type: string
description: Controls how much prompt content is included in the response. 'full' includes the full prompt, 'preview'
includes a short prompt_preview, and 'none' omits promp
- name: created_by_id
in: query
type: integer
description: Filter prompts by the ID of the user who created them.
- name: limit
in: query
type: integer
description: Number of results to return per page.
- name: offset
in: query
type: integer
description: The initial index from which to return the results.
- name: search
in: query
type: string
description: Optional substring filter applied to prompt names and prompt content.
- name: llmpromptscreate
method: POST
description: ''
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: api-environments-project_id-llm_prompts-name-prompt_name
path: /api/environments/{project_id}/llm_prompts/name/{prompt_name}/
operations:
- name: llmpromptsnameretrieve
method: GET
description: ''
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: content
in: query
type: string
description: Controls how much prompt content is included in the response. 'full' includes the full prompt, 'preview'
includes a short prompt_preview, and 'none' omits promp
- name: prompt_name
in: path
type: string
required: true
- name: version
in: query
type: integer
description: Specific prompt version to fetch. If omitted, the latest version is returned.
- name: llmpromptsnamepartialupdate
method: PATCH
description: ''
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: prompt_name
in: path
type: string
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: false
- name: api-environments-project_id-llm_prompts-name-prompt_name-archive
path: /api/environments/{project_id}/llm_prompts/name/{prompt_name}/archive/
operations:
- name: llmpromptsnamearchivecreate
method: POST
description: ''
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: prompt_name
in: path
type: string
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: api-environments-project_id-llm_prompts-name-prompt_name-duplicate
path: /api/environments/{project_id}/llm_prompts/name/{prompt_name}/duplicate/
operations:
- name: llmpromptsnameduplicatecreate
method: POST
description: ''
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: prompt_name
in: path
type: string
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: api-environments-project_id-llm_prompts-resolve-name-prompt_name
path: /api/environments/{project_id}/llm_prompts/resolve/name/{prompt_name}/
operations:
- name: llmpromptsresolvenameretrieve
method: GET
description: ''
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: before_version
in: query
type: integer
description: Return versions older than this version number. Mutually exclusive with offset.
- name: limit
in: query
type: integer
description: Maximum number of versions to return per page (1-100).
- name: offset
in: query
type: integer
description: Zero-based offset into version history for pagination. Mutually exclusive with before_version.
- name: prompt_name
in: path
type: string
required: true
- name: version
in: query
type: integer
description: Specific prompt version to fetch. If omitted, the latest version is returned.
- name: version_id
in: query
type: string
description: Exact prompt version UUID to resolve. Can be used together with version for extra safety.
authentication:
type: bearer
token: '{{env.POSTHOG_API_KEY}}'
exposes:
- type: rest
namespace: posthog-llm-prompts-rest
port: 8080
description: REST adapter for PostHog API — llm_prompts. One Spectral-compliant resource per consumed operation, prefixed
with /v1.
resources:
- path: /v1/api/environments/{project-id}/llm-prompts
name: api-environments-project-id-llm-prompts
description: REST surface for api-environments-project_id-llm_prompts.
operations:
- method: GET
name: llmpromptslist
description: llmpromptslist
call: posthog-llm-prompts.llmpromptslist
with:
content: rest.content
created_by_id: rest.created_by_id
limit: rest.limit
offset: rest.offset
search: rest.search
outputParameters:
- type: object
mapping: $.
- method: POST
name: llmpromptscreate
description: llmpromptscreate
call: posthog-llm-prompts.llmpromptscreate
with:
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/api/environments/{project-id}/llm-prompts/name/{prompt-name}
name: api-environments-project-id-llm-prompts-name-prompt-name
description: REST surface for api-environments-project_id-llm_prompts-name-prompt_name.
operations:
- method: GET
name: llmpromptsnameretrieve
description: llmpromptsnameretrieve
call: posthog-llm-prompts.llmpromptsnameretrieve
with:
content: rest.content
prompt_name: rest.prompt_name
version: rest.version
outputParameters:
- type: object
mapping: $.
- method: PATCH
name: llmpromptsnamepartialupdate
description: llmpromptsnamepartialupdate
call: posthog-llm-prompts.llmpromptsnamepartialupdate
with:
prompt_name: rest.prompt_name
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/api/environments/{project-id}/llm-prompts/name/{prompt-name}/archive
name: api-environments-project-id-llm-prompts-name-prompt-name-archive
description: REST surface for api-environments-project_id-llm_prompts-name-prompt_name-archive.
operations:
- method: POST
name: llmpromptsnamearchivecreate
description: llmpromptsnamearchivecreate
call: posthog-llm-prompts.llmpromptsnamearchivecreate
with:
prompt_name: rest.prompt_name
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/api/environments/{project-id}/llm-prompts/name/{prompt-name}/duplicate
name: api-environments-project-id-llm-prompts-name-prompt-name-duplicate
description: REST surface for api-environments-project_id-llm_prompts-name-prompt_name-duplicate.
operations:
- method: POST
name: llmpromptsnameduplicatecreate
description: llmpromptsnameduplicatecreate
call: posthog-llm-prompts.llmpromptsnameduplicatecreate
with:
prompt_name: rest.prompt_name
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/api/environments/{project-id}/llm-prompts/resolve/name/{prompt-name}
name: api-environments-project-id-llm-prompts-resolve-name-prompt-name
description: REST surface for api-environments-project_id-llm_prompts-resolve-name-prompt_name.
operations:
- method: GET
name: llmpromptsresolvenameretrieve
description: llmpromptsresolvenameretrieve
call: posthog-llm-prompts.llmpromptsresolvenameretrieve
with:
before_version: rest.before_version
limit: rest.limit
offset: rest.offset
prompt_name: rest.prompt_name
version: rest.version
version_id: rest.version_id
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: posthog-llm-prompts-mcp
port: 9090
transport: http
description: MCP adapter for PostHog API — llm_prompts. One tool per consumed operation, routed inline through this capability's
consumes block.
tools:
- name: llmpromptslist
description: llmpromptslist
hints:
readOnly: true
destructive: false
idempotent: true
call: posthog-llm-prompts.llmpromptslist
with:
content: tools.content
created_by_id: tools.created_by_id
limit: tools.limit
offset: tools.offset
search: tools.search
outputParameters:
- type: object
mapping: $.
- name: llmpromptscreate
description: llmpromptscreate
hints:
readOnly: false
destructive: false
idempotent: false
call: posthog-llm-prompts.llmpromptscreate
with:
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: llmpromptsnameretrieve
description: llmpromptsnameretrieve
hints:
readOnly: true
destructive: false
idempotent: true
call: posthog-llm-prompts.llmpromptsnameretrieve
with:
content: tools.content
prompt_name: tools.prompt_name
version: tools.version
outputParameters:
- type: object
mapping: $.
- name: llmpromptsnamepartialupdate
description: llmpromptsnamepartialupdate
hints:
readOnly: false
destructive: false
idempotent: true
call: posthog-llm-prompts.llmpromptsnamepartialupdate
with:
prompt_name: tools.prompt_name
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: llmpromptsnamearchivecreate
description: llmpromptsnamearchivecreate
hints:
readOnly: false
destructive: false
idempotent: false
call: posthog-llm-prompts.llmpromptsnamearchivecreate
with:
prompt_name: tools.prompt_name
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: llmpromptsnameduplicatecreate
description: llmpromptsnameduplicatecreate
hints:
readOnly: false
destructive: false
idempotent: false
call: posthog-llm-prompts.llmpromptsnameduplicatecreate
with:
prompt_name: tools.prompt_name
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: llmpromptsresolvenameretrieve
description: llmpromptsresolvenameretrieve
hints:
readOnly: true
destructive: false
idempotent: true
call: posthog-llm-prompts.llmpromptsresolvenameretrieve
with:
before_version: tools.before_version
limit: tools.limit
offset: tools.offset
prompt_name: tools.prompt_name
version: tools.version
version_id: tools.version_id
outputParameters:
- type: object
mapping: $.