# send_inbox_draft Behavior, inputs, outputs and permissions for send_inbox_draft. Source: https://docs.getridian.com/developers/tools/send_inbox_draft/ Language: en Reviewed: 2026-10-06 This reference is generated from the published tool contract. ## Behavior and boundaries Sends exactly the observed expectedRevision of a saved Agent Mailbox draft from its Ridian address to its explicit To/CC/BCC recipients. Requires at least one To address and nonempty text. Queues an immutable snapshot, removes the draft and reserves the monthly recipient allowance. Full current client send policy is sufficient, with no additional Ridian approval. Reuse the same requestId, inboxId, draft id and expectedRevision after an uncertain tool response; never create another draft/key just to retry. Returns a send id and status: queued/sending is not delivery, accepted is provider acceptance only, unknown must be reconciled without blind retry. Read get_inbox_send_status for progress. Policy is rechecked before dispatch; revocation cancels pending work. Ready attachments are moved into the immutable outgoing snapshot; pending or failed attachments block sending until removed. Sends the sanitized HTML body, when present, together with its derived plain text. ## Permissions Granted scopes, accounts, calendars and visibility rules limit access. Workspace administrators do not automatically gain access to other users’ accounts. `inbox:send` [Consent and boundaries](https://docs.getridian.com/developers/authentication/) ## Input ```json { "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "properties": { "inboxId": { "type": "string", "minLength": 1, "maxLength": 200 }, "id": { "type": "string", "minLength": 1, "maxLength": 200 }, "expectedRevision": { "type": "integer", "minimum": 1, "maximum": 9007199254740991 }, "requestId": { "type": "string", "pattern": "^[a-zA-Z0-9_-]{8,128}$" } }, "required": [ "inboxId", "id", "expectedRevision", "requestId" ], "additionalProperties": false } ``` ## Output ```json { "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "properties": { "id": { "type": "string", "minLength": 1, "maxLength": 200 }, "status": { "type": "string", "enum": [ "queued", "sending", "accepted", "delivered", "failed", "unknown", "cancelled" ] }, "failureCode": { "type": "string" } }, "required": [ "id", "status" ], "additionalProperties": false } ``` ## Errors and retries Check the tool result for errors. Do not blindly retry writes after a timeout. Check the current resource or send status first. [Error handling](https://docs.getridian.com/developers/errors/)