POST
/
procedural_agents
Create a procedural agent
curl --request POST \
  --url https://api.operator.xyz/procedural_agents \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --header 'Operator-Version: <operator-version>' \
  --data '{
  "name": "<string>",
  "description": "<string>",
  "config": {
    "filter_statuses": [
      "completed"
    ],
    "filter_condition": null,
    "runtime": {
      "model": "openai/gpt-4o",
      "reasoning_effort": "medium",
      "prompt": {
        "text": "<string>",
        "type": "fixed"
      }
    },
    "tool": {
      "tools": [
        {
          "ns": "syscall",
          "name": "<string>"
        }
      ]
    },
    "output": {
      "slack_channel": null,
      "output_schema": null,
      "post_url": null
    }
  }
}'
{
  "id": "<string>",
  "version_id": "<string>"
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Headers

Operator-Version
enum<string>
required

The API version to use.

Available options:
2025-06-19

Body

application/json
name
string
required

Human-readable name for the procedural agent.

description
string
required

Description of the procedural agent.

config
object
required

Full configuration for the procedural agent (e.g. runtime, tools, output).

Response

Successful response.

id
string
required

Unique identifier for the procedural agent, e.g. pa_8qm9JBCiTe7

version_id
string
required

Version-specific identifier for the procedural agent instance, e.g. pa_8qm9JBCiTe7@v0