Skills

Experimental. This resource is still gaining fields and may change without a version bump.

Edits a skill in place. Omitted fields are left alone.

patch/api/v1/skills/{skillId}

Request

  • Base URL
    https://omniapp.co (the document declares no server; this is the origin it was published from)
  • URL
    https://omniapp.co/api/v1/skills/{skillId}
  • Auth
    HTTP bearer

Path parameters

skillIdstring uuid required

Skill UUID

Example:a1b2c3d4-e5f6-7890-abcd-ef1234567890

Query parameters

userIdstring uuid

Target user ID (for org-scoped API keys)

Request body

bodystring

The instructions injected into the agent's context when the skill runs; up to 20000 characters.

descriptionstring

What the skill is for; up to 1024 characters.

identifierstring

Slash-command handle, stored without the slash. Lowercase letters, numbers and hyphens, starting with a letter or number; up to 48 characters.

namestring

Human-readable name; up to 256 characters.

Example request

{
  "body": "Pull revenue by month for the last four quarters, then...",
  "description": "Summarizes the quarter and flags anything off trend.",
  "name": "Quarterly report"
}

Response

The updated skill

createdAtstring date-time required

ISO 8601 timestamp of when the skill was created

descriptionstring required

What the skill is for. Shown in the skills list, and given to the agent when it chooses between skills.

idstring uuid required

Unique identifier for the skill

identifierstring required

Slash-command handle, stored without the slash. Lowercase letters, numbers and hyphens, starting with a letter or number; up to 48 characters.

invocationMode'auto' | 'manual' | 'off'

The requesting member's own invocation mode for the skill. It differs per member; set it with PUT /api/v1/skills/{skillId}/invocation-mode. Present only where invocation settings are enabled for the organization. auto: the agent may use the skill on its own, whenever a request fits. manual: only when the member asks for the skill by name or /identifier. off: the agent never runs it, and the chat menus leave it out. Turning a skill off doesn't change who can edit or delete it.

namestring required

Human-readable name for the skill

updatedAtstring date-time required

ISO 8601 timestamp of the last edit

bodystring required

The instructions injected into the agent's context when the skill runs.

Example response

{
  "createdAt": "2026-01-15T10:00:00.000Z",
  "creator": {
    "id": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
    "name": "Ada Lovelace"
  },
  "description": "Summarizes the quarter and flags anything off trend.",
  "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "identifier": "quarterly-report",
  "invocationMode": "manual",
  "name": "Quarterly report",
  "updatedAt": "2026-02-01T09:30:00.000Z",
  "body": "Pull revenue by month for the last four quarters, then..."
}

Changes