API ReferencePublisher Agents

Update the current draft

PATCH
/v1/publisher/agents/{agent_id}/draft

Updates only the supplied fields. Send the ETag from the latest draft response. The response includes current release blockers.

Authorization

bearerAuth
AuthorizationBearer <token>

Send a SimpleServe API key as Authorization: Bearer <key>.

In: header

Path Parameters

agent_id*string

Publisher-owned agent ID.

Match^agent_[A-Za-z0-9]+$

Header Parameters

If-Match*string

ETag from the latest draft response.

Match^"draft-[1-9][0-9]*"$

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Properties1 <= properties

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X PATCH "https://example.com/v1/publisher/agents/string/draft" \  -H "If-Match: "draft-12"" \  -H "Content-Type: application/json" \  -d '{    "instructions": "Compare current forecasts and explain the strongest position.",    "tools": [      "shell"    ]  }'
{  "agent_id": "agent_01JXYZ1234567890",  "object": "agent.draft",  "revision": 12,  "name": "Weather Market Forecaster",  "description": "Compares weather forecasts and prediction-market prices.",  "instructions": "Compare current forecasts and explain the strongest position.",  "tools": [    "shell"  ],  "plugins": [    {      "plugin_id": "plugin_research",      "version": "1.4.0"    }  ],  "pricing": {    "minimum_cost_usd": 0.25,    "maximum_cost_usd": 4,    "rates": [      {        "meter": "model_input_tokens",        "price_usd": 0.000002      },      {        "meter": "model_output_tokens",        "price_usd": 0.000004      },      {        "meter": "sandbox_seconds",        "price_usd": 0.01      },      {        "meter": "tool_calls",        "price_usd": 0.01      }    ]  },  "icon_file_id": "file_01JXYZ1234567890",  "categories": [    "weather",    "prediction-markets"  ],  "example_prompts": [    "Compare the latest forecasts for this market.",    "Find the largest disagreement between the current models."  ],  "validation": {    "private_ready": true,    "public_ready": true,    "errors": []  },  "updated_at": "2026-08-30T15:00:00Z"}