On this page
startFillDraft
mutation · in the family Work and notes
What it does
Draft a whole wizard from your text and your documents — every page at once, in the background; read the sheet when it is ready and review every value before anything is saved.
Start ONE background wizard draft: hand the platform your text and/or your documents plus EVERY page's WANT at once, and the assistant drafts the WHOLE walk in the background at its highest effort — every value with its source and confidence, at most 5 questions, one advice paragraph; the record flips ready and the fill_draft_finished notice tells you. THE ORDER OF THE GATES: your group's wallet must exist (CONFLICT/REF_STATE — the call is charged like every assist) · the assistant offline or the machine unwired refuses INTEGRATION/UNAVAILABLE loudly (never a silent inline draft — fill the wizard by hand) · at most 12 starts an hour and 4 open drafts (VALIDATION/INVALID) · ONE draft is made at a time per person (CONFLICT/FILL_DRAFT_ACTIVE naming the holder — wait for it, or abandon it) · a document that is not yours or not on this wizard word is NOT_FOUND. DRAFTS ONLY — nothing is created or applied; you review every value (the wizard pages seed from the sheet). A JSON null on an optional input field reads as absent. Requires the unrestricted capability on a USER session. Template class (universal staff work).
What happens
It runs as you: one draft is made at a time per person, at most 12 starts an hour and 4 open drafts. Documents must be ones you shared for the same wizard. Nothing is created — the draft is a sheet you review, page by page, with the assistant’s questions; the one call is charged to your group’s wallet like every assist.
Who may call it
Capability area: Work and notes — Tasks, notes, messages, dashboards and the everyday tools every staff member keeps.
- Owner
- System Administrator
- Manager
- Associate Manager
- Warehouse Associate
- Sales Associate
- Cashier
- An API key whose scope allows
api:startFillDraft
Arguments
| Name | Type | Required | Notes |
|---|---|---|---|
input | StartFillDraftInput StartFillDraftInput! | yes | No further notes. |
Returns
FillDraft FillDraft! — One background wizard draft (🤖 — slice): YOUR text and/or documents in, a drafted sheet across EVERY page of the walk out — in the background (the assistant thinks at its highest effort; the machine polls every 8 s inside a 480 s wall). The sheet (pages · questions · advice · understood) is ABSENT until status ready; failReason is present on failed. DRAFTS ONLY — nothing is created or applied; you review every value. expiresAt = the draft's lifetime in epoch seconds (startedAt + 30 days).
Example request
mutation ExampleStartFillDraft($input: StartFillDraftInput!) {
startFillDraft(input: $input) {
id
sysId
type
caption
status
parentId
rootId
revision
revisionNum
createdAt
updatedAt
wizardType
brief
materialIds
filled
questions
advice
understood
turnCount
summary
summarizedThroughSeq
activeTurnId
activeTurnStartedAt
failReason
sfExecutionArn
startRequestId
startedAt
readyAt
takenAt
takenRef
expiresAt
}
}
Variables:
{
"input": {
"wizardType": "<wizard type>",
"caption": "Blue jeans",
"pages": [
{
"step": "<step>",
"want": "<want>"
}
]
}
}
Send it with the envelope naming the version: "extensions": {"at": {"version": {"name":"genesis","number":0}}}.
Example response
{
"data": {
"startFillDraft": {
"id": "01900000-0000-7000-8000-37386ae00000",
"sysId": "FL-EXMP-0000-000F",
"type": "FillDraft",
"caption": "Blue jeans",
"status": "drafting",
"parentId": "01900000-0000-7000-8000-065235280000",
"rootId": "01900000-0000-7000-8000-a093dd800000",
"revision": "01900000-0000-7000-8000-b7960e180000",
"revisionNum": 1,
"createdAt": "2027-01-31T00:00:00.000Z",
"updatedAt": "2027-01-31T00:00:00.000Z",
"wizardType": "<wizard type>",
"brief": "<brief>",
"materialIds": [
"01900000-0000-7000-8000-a36392ca0000"
],
"filled": "<filled>",
"questions": [
"<questions>"
],
"advice": "<advice>",
"understood": "<understood>",
"turnCount": 1,
"summary": "<summary>",
"summarizedThroughSeq": 1,
"activeTurnId": "01900000-0000-7000-8000-770cb7810000",
"activeTurnStartedAt": "2027-01-31T00:00:00.000Z",
"failReason": "<fail reason>",
"sfExecutionArn": "<sf execution arn>",
"startRequestId": "01900000-0000-7000-8000-c154ec1d0000",
"startedAt": "2027-01-31T00:00:00.000Z",
"readyAt": "2027-01-31T00:00:00.000Z",
"takenAt": "2027-01-31T00:00:00.000Z",
"takenRef": "<taken ref>",
"expiresAt": 1
}
},
"extensions": {
"at": {
"callId": "01EXAMPLE-CALL-ID",
"version": {
"requested": {
"name": "genesis",
"number": 0
},
"serviced": {
"name": "genesis",
"number": 0
}
}
}
}
}
Errors this call can answer
VALIDATION/INVALID— Something in the request is not valid. (VALIDATION)AUTHN/REQUIRED— Sign in to do this. (AUTHN)AUTHZ/FORBIDDEN— Your role does not allow this action. (AUTHZ)RATE_LIMIT/THROTTLED— Too many requests in a short time. (RATE_LIMIT)NOT_FOUND/*— That record could not be found. (NOT_FOUND)CONFLICT/*— The record’s state, or a change made in the meantime, does not allow this; the codes are on the CONFLICT page. (CONFLICT)VALIDATION/VERSION_REQUIRED— The request did not say which app version it came from. (VALIDATION)