Save article template
Make an authorized change through your connected assistant.
outwrite_save_article_templateoutwrite_save_article_template
Create or update a reusable outline for this brand. Use a new UUID and version 0 to create or duplicate. Edits apply to future campaign articles; queued articles keep their snapshot. New required fields need defaults if existing campaigns cannot supply them. No credits charged. Requires explicit user intent, confirm:true, a UUID idempotencyKey and maximumCredits for this immediate action. Recurring settings require recurringConsent:true after the user approves their ongoing costs. Retry identical arguments with the same key; inspect an uncertain receipt before any new action.
Access and behavior
| Property | Value |
|---|---|
| Permission | pro:write |
| Effect | Can change your workspace |
Read the current workspace state before making a change. Respect the returned proposal, revision and operation state rather than assuming the request has finished.
Parameters
| Parameter | Required | Type | Details |
|---|---|---|---|
workspaceId | Optional | string | Format: uuid. |
input | Required | object | See the complete schema below. |
idempotencyKey | Required | string | Format: uuid. |
confirm | Required | boolean | Value: true. |
maximumCredits | Required | number | Minimum 0. Maximum 100000. |
recurringConsent | Optional | boolean | Default: false. |
Complete input schema
The schema is generated from the registered tool contract. Account permissions, revision checks and cross-field validation also apply on the server.
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"workspaceId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"input": {
"type": "object",
"properties": {
"id": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"version": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"name": {
"type": "string",
"minLength": 1,
"maxLength": 100
},
"description": {
"default": "",
"type": "string",
"maxLength": 240
},
"definition": {
"type": "object",
"properties": {
"instructions": {
"default": "",
"type": "string",
"maxLength": 2000
},
"sections": {
"minItems": 3,
"maxItems": 8,
"type": "array",
"items": {
"type": "object",
"properties": {
"heading": {
"type": "string",
"minLength": 2,
"maxLength": 180
},
"guidance": {
"default": "",
"type": "string",
"maxLength": 800
},
"subsections": {
"default": [],
"maxItems": 6,
"type": "array",
"items": {
"type": "object",
"properties": {
"heading": {
"type": "string",
"minLength": 2,
"maxLength": 180
},
"guidance": {
"default": "",
"type": "string",
"maxLength": 500
}
},
"required": [
"heading"
],
"additionalProperties": false
}
}
},
"required": [
"heading"
],
"additionalProperties": false
}
},
"fields": {
"default": [],
"maxItems": 12,
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]{0,29}$"
},
"label": {
"type": "string",
"minLength": 1,
"maxLength": 80
},
"defaultValue": {
"default": "",
"type": "string",
"maxLength": 300
}
},
"required": [
"key",
"label"
],
"additionalProperties": false
}
}
},
"required": [
"sections"
],
"additionalProperties": false
}
},
"required": [
"id",
"version",
"name",
"definition"
],
"additionalProperties": false
},
"idempotencyKey": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"confirm": {
"type": "boolean",
"const": true
},
"maximumCredits": {
"type": "number",
"minimum": 0,
"maximum": 100000
},
"recurringConsent": {
"default": false,
"type": "boolean"
}
},
"required": [
"input",
"idempotencyKey",
"confirm",
"maximumCredits"
],
"additionalProperties": false
}
Working safely
For an identical retry, reuse its idempotency key. If the saved state changed, read it again and prepare a new request. An operation that is queued or running is not complete.