Agents

Create a new agent (deploy a pod).

Call once to provision a pod. The call is synchronous and returns once the pod exists, typically within one to two minutes — the engine inside may need a few more seconds, which GET /agents/{id}/liveness tells you. Follow with PATCH /agents/{id}/llm-key: a fresh pod has no model key and answers nothing until one is set.

post/agents

Request

  • Base URL: https://agentspodium.com/api
  • URL: https://agentspodium.com/api/agents
  • Auth: HTTP bearer

Request body

personaIdstring required

Any id from GET /personas.

tier'tiny' | 'small' | 'medium' | 'large' required

Must satisfy the chosen engine's minTier.

namestring

Up to 60 chars; the pod's hostnames are derived from it.

channelsstring[]

Default ["web"].

lang'en' | 'ru'
skillsstring[]
extraSoulstring

Owner instructions appended to the persona's SOUL.

soulstring
domainstring

Your own hostname, e.g. agent.example.com. Names under agentspodium.com are assigned automatically and refused here.

engine'hermes' | 'openclaw' | 'n8n' | 'claude-code' | 'opencode' | 'pi'

Default hermes.

modelstring
webhookUrlstring

Public http(s) URL to POST pod events to. The signing secret comes back once as webhookSecret beside agent.

Example request

{
  "app": {
    "repo": "https://github.com/owner/project",
    "buildCommand": "npm ci && npm run build",
    "outputDir": "dist",
    "startCommand": "node server.js",
    "rootDir": "app"
  }
}

Response

Created — the pod exists and status is "running" (the engine inside may still be booting).

webhookSecretstring

Only when webhookUrl was given: the HMAC secret for verifying deliveries. Shown once.

Example response

{
  "agent": {
    "id": "agt_…",
    "app": {
      "repo": "https://github.com/owner/project",
      "buildCommand": "npm ci && npm run build",
      "outputDir": "dist",
      "startCommand": "node server.js",
      "rootDir": "app"
    }
  }
}

Changes

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