qna_questions_start
# qna_questions_start
Starts a new question in the Q&A app (pApp A00009). Another app code is refused before any request. Called without confirmToken it previews and returns a confirmToken; repeating the same input with it executes once.
## Inputs
| Field | Required here | Contract |
| --- | --- | --- |
| `mode` | Yes | `start` |
| `content` | Yes | string; min length 2; max length 5000 |
| `storyResource` | No | one of: `PLAIN`, `YOUTUBE`, `IMAGE`, `VIDEO` (by `type`) |
| `storyResource.youtubeSrc` | Yes | When `storyResource.type` is `YOUTUBE`: string; max length 4096; format `uri` |
| `storyResource.sources` | Yes | When `storyResource.type` is `IMAGE`: array; min items 1; max items 10; 1–10 images in order, each a completed qna_question_image upload task {kind:upload,uploadTaskId} from qna_files_upload or content_file_upload (uploaded from this computer; a Google Drive or other link is downloaded to this computer first, the server never downloads links). |
| `storyResource.sources[].kind` | Yes | When `storyResource.type` is `IMAGE`: `upload` |
| `storyResource.sources[].uploadTaskId` | Yes | When `storyResource.type` is `IMAGE`: string; pattern `^[A-Za-z0-9_-]{8,80}$` |
| `storyResource.videoUploadTaskId` | Yes | When `storyResource.type` is `VIDEO`: string; pattern `^[A-Za-z0-9_-]{8,80}$`; A verified qna_files_upload task with purpose question_video (MP4/M4V, MOV or MKV, at most 60 seconds and 29,999,999 bytes) for this exact Q&A app. |
| `confirmation` | Yes | `ARCHIVE_PUBLISHED_QUESTIONS` |
| `instanceCode` | No | string; pattern `^A00009$`; Optional: which installed Q&A app to use (its code, such as A00009 or A90109). Omit it when only one is installed; when several are, pick one from the installed list. |
| `confirmToken` | No | string; pattern `^ct[a-f\d]{32}$`; The confirmToken from this tool's preview result. Omit it to preview; repeat the same input with it to execute. |