llm_skills

post/api/projects/{project_id}/llm_skills/

Request

  • Base URL: https://us.posthog.com
  • URL: https://us.posthog.com/api/projects/{project_id}/llm_skills/
  • Auth: HTTP bearer

Path parameters

project_idstring required

Project ID of the project you're trying to access. To find the ID of the project, make a call to /api/projects/.

Request body

idstring uuid required
namestring required

Unique skill name. Lowercase letters, numbers, and hyphens only. Max 64 characters. Cannot be the name of a skill PostHog ships.

descriptionstring required

What this skill does and when to use it. Max 1024 characters.

body_total_lengthinteger required

Total length of the full body in characters, independent of any body_offset/body_length paging. Compare against the length of the returned body to detect a truncated response.

body_next_offsetinteger nullable required

When body_length paging stops before the end of the body, the character offset to request next (pass as body_offset). Null when the returned body reaches the end.

bodystring required

The SKILL.md instruction content (markdown).

licensestring

License name or reference to a bundled license file.

compatibilitystring

Environment requirements (intended product, system packages, network access, etc.).

allowed_toolsstring[]

Tools the skill asks to use. Tool names cannot contain whitespace. A harness that reads the skill from a file (zip export, git marketplace, a content=full bundle) treats the list as pre-approved. A harness that loads the skill over MCP, including the default content=stub bundle, ignores the list until the user approves that grant.

metadataobject

Arbitrary key-value metadata.

categorystring required

Server-owned classification — set by the producing system (the Signals harness stamps "scout"), not writable via the API. Empty for an ordinary skill. Groups skills into their own surface (e.g. the Scouts tab) independently of the skill name.

ownersstring[]

User UUIDs to set as the skill's owners. Each must be a member of this project. Defaults to the creating user when omitted; pass an empty list to create with no owners.

versioninteger required
version_descriptionstring nullable required

Optional note describing what changed in this version. Set when the version is published.

created_atstring date-time required
updated_atstring date-time required
deletedboolean required
is_latestboolean required
latest_versioninteger required
version_countinteger required
first_version_created_atstring required

Response

idstring uuid required
namestring required

Unique skill name. Lowercase letters, numbers, and hyphens only. Max 64 characters.

descriptionstring required

What this skill does and when to use it.

body_total_lengthinteger required

Total length of the full body in characters, independent of any body_offset/body_length paging. Compare against the length of the returned body to detect a truncated response.

body_next_offsetinteger nullable required

When body_length paging stops before the end of the body, the character offset to request next (pass as body_offset). Null when the returned body reaches the end.

bodystring required

The SKILL.md instruction content (markdown).

licensestring

License name or reference to a bundled license file.

compatibilitystring

Environment requirements (intended product, system packages, network access, etc.).

allowed_toolsstring[]

Tools the skill asks to use. Tool names cannot contain whitespace. A harness that reads the skill from a file (zip export, git marketplace, a content=full bundle) treats the list as pre-approved. A harness that loads the skill over MCP, including the default content=stub bundle, ignores the list until the user approves that grant.

metadataobject

Arbitrary key-value metadata.

categorystring required

Server-owned classification — set by the producing system (the Signals harness stamps "scout"), not writable via the API. Empty for an ordinary skill. Groups skills into their own surface (e.g. the Scouts tab) independently of the skill name.

versioninteger required
version_descriptionstring nullable required

Optional note describing what changed in this version. Set when the version is published.

created_atstring date-time required
updated_atstring date-time required
deletedboolean required
is_latestboolean required
latest_versioninteger required
version_countinteger required
first_version_created_atstring required

Changes

No recorded changes to this operation across all 1 revision of this API.