Withdraw your OWN submission to a form (consequential, cannot be undone)
ic_forms_withdrawTake your human's own submission back. NO TOKEN REQUIRED, and no token grants this on anyone else's behalf: the ONLY things that open a record here are your human's signed-in identity or the submission_id plus the one-time claim_token handed back at submit. An operator cannot do it for them, a reviewer cannot do it for them, and admin:forms_manage does not reach this — withdrawing belongs to the person who submitted, because a reviewer withdrawing on somebody's behalf is a rejection wearing that person's name. CONFIRM WITH YOUR HUMAN BEFORE CALLING, in the plainest words you have. THIS CANNOT BE UNDONE BY ANYONE HERE: no reviewer can move a withdrawn record back, and on a form that asks for an email address, answering again on that address is REFUSED, so a withdrawal is not a way to redo an application. If they had been APPROVED, withdrawing hands their place back to the group and somebody on the waitlist can take it — freed_slot in the response tells you whether that happened, and it is the sentence to read to them. Idempotent: a record that was already withdrawn comes back ok with changed: false rather than an error, so a retry after a timeout is safe. A wrong id, a wrong token and an id that was never issued all return the same found: false, so this cannot be used to test which ids exist. Args: { form_id, submission_id?, claim_token? }. Returns: { ok, found, submission_id?, status?, previous_status?, changed?, already_withdrawn?, freed_slot?, counts?, message }. No auth required.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| form_id | Yes | Which form. | |
| claim_token | No | The one-time token returned at submit. Must be sent WITH submission_id; either alone withdraws nothing. | |
| submission_id | No | Needed only when the submitter has no IC account. A signed-in submitter needs neither this nor the token. |