Update a custom operator

Saves a new version of a custom operator; the previous version is retained and the new one becomes current. Configurations referencing this operator stay pinned to the version they used until upgraded with the configuration's upgrade-operators endpoint. The name is taken from the path and cannot be changed. Platform operators are read-only (403).

Required scope: intelligence:write

Path Parameters
  • name
    Type: string · Name
    required

    The operator's name (kebab-case).

Body·
required
application/json

Update body — name is taken from the path and may not change. Saving creates a new version.

  • description
    Type: string · Description
    required

    Human-readable statement of what this operator assesses.

  • model_tier
    Type: string · Model Tierenum
    required

    fast or standard.

    values
    • fast
    • standard
  • output_type
    Type: string · Output Typeenum
    required

    The shape of the result this operator emits.

    values
    • classification
    • boolean
    • score
    • multi_tag
    • extraction
    • text
  • prompt
    Type: string · Prompt
    required

    Natural-language instructions for the model.

  • include_reasoning
    Type: boolean · Include Reasoning

    When true, the model is asked to justify its result.

  • output_config
    Type: object · Output Config

    Type-specific output configuration.

  • parameters
    Type: array object[] · Parameters

    Parameters the prompt references.

    A value an operator's prompt references, supplied per configuration rather than baked into the prompt.

Responses
  • application/json
  • application/json
  • application/json
  • application/json
Request Example for put/operators/{name}
curl 'https://api.simwood.com/intelligence/v1/operators/{name}' \
  --request PUT \
  --header 'Content-Type: application/json' \
  --header 'Authorization: Bearer YOUR_SECRET_TOKEN' \
  --data '{
  "description": "",
  "prompt": "",
  "output_type": "classification",
  "output_config": {
    "additionalProperty": "anything"
  },
  "model_tier": "fast",
  "include_reasoning": false,
  "parameters": [
    {
      "name": "",
      "type": "kb_document",
      "description": ""
    }
  ]
}'
{
  "name": "string",
  "description": "string",
  "prompt": "string",
  "output_type": "classification",
  "output_config": {
    "additionalProperty": "anything"
  },
  "model_tier": "fast",
  "include_reasoning": true,
  "parameters": [
    {
      "name": "string",
      "type": "kb_document",
      "description": "string"
    }
  ],
  "account": "string",
  "version": 1,
  "is_current": true,
  "created_at": "string",
  "updated_at": "string"
}