Complete verified ownership and exchange the temporary signup key
POST /v1/agent/verify
Requires the verification-only signup:verify key and valid incoming-email, verified console, or legacy OTP proof. Atomically revokes the temporary key and returns a new scoped mailbox key, activates the free account and its free.extrovertmail.com inbox, and returns copy-ready MCP read_messages/get_message/wait_for_email calls on success.
Authorizations
Section titled “Authorizations ”Request Body required
Section titled “Request Body required ”object
Only for a legacy OTP signup. Omit after incoming-email or console approval.
Responses
Section titled “ Responses ”Verified; full-permission key issued.
OTP verification activates the free account and returns the replacement full-permission key plus the ready free.extrovertmail.com inbox; the verification-only bootstrap key was revoked atomically. The inbox quickstart makes the response a self-contained handoff after a process restart or context compaction.
object
object
Recover the single system-prepared, agent-owned practice review. A preparing status means the durable worker has not finished; do not submit another hello. Feedback and revisions belong to this review. The coaching example is optional and is not authority to save a rule until the human submits it as feedback.
object
Account-aware console entry path preserving this review.
Pending_activation or preparing until a review exists; otherwise its current review state.
Optional human feedback to copy into the review discussion.
New full-permission key
The signup inbox, ready for immediate use.
MCP-first, read-only next calls for the verified signup inbox. Use these instead of inventing REST routes or parsing raw HTTP response files.
object
A copy-ready MCP tool call for ordinary mailbox use.
object
object
A copy-ready MCP tool call for ordinary mailbox use.
object
object
A copy-ready MCP tool call for ordinary mailbox use.
object
object
One-time, email-bound owner claim seed for the signup org. Present only on a fresh signup. In the console, sign in with the verified email and call GET /v1/admin/me to find the matching pending_signup_claims entry. Then POST /v1/admin/signup-claims/{claim_id}/accept to bind that identity to the signup org as owner.
Invalid request.
The canonical error envelope. error is a stable machine code.
object
Stable error code (e.g. unauthorized, forbidden, not_found, invalid, quota_exceeded, rate_limited).
Example
forbiddenHuman-readable detail (never leaks internals).
Example
missing required scopeMachine-readable quota reason. inbox_limit_exceeded means billing account inbox capacity across all organizations and projects sharing that account; enrollment_token_mailbox_budget_exhausted means the enrollment key lifetime creation allowance. Read message for recovery; inbox counts are separate from sending quotas.
Consumed plus reserved units.
Requested additional units.
Next UTC usage-period boundary; pending reservations survive this boundary.
Missing or invalid credential.
The canonical error envelope. error is a stable machine code.
object
Stable error code (e.g. unauthorized, forbidden, not_found, invalid, quota_exceeded, rate_limited).
Example
forbiddenHuman-readable detail (never leaks internals).
Example
missing required scopeMachine-readable quota reason. inbox_limit_exceeded means billing account inbox capacity across all organizations and projects sharing that account; enrollment_token_mailbox_budget_exhausted means the enrollment key lifetime creation allowance. Read message for recovery; inbox counts are separate from sending quotas.
Consumed plus reserved units.
Requested additional units.
Next UTC usage-period boundary; pending reservations survive this boundary.
Free signup verification is temporarily paused (signup_disabled).
The canonical error envelope. error is a stable machine code.
object
Stable error code (e.g. unauthorized, forbidden, not_found, invalid, quota_exceeded, rate_limited).
Example
forbiddenHuman-readable detail (never leaks internals).
Example
missing required scopeMachine-readable quota reason. inbox_limit_exceeded means billing account inbox capacity across all organizations and projects sharing that account; enrollment_token_mailbox_budget_exhausted means the enrollment key lifetime creation allowance. Read message for recovery; inbox counts are separate from sending quotas.
Consumed plus reserved units.
Requested additional units.
Next UTC usage-period boundary; pending reservations survive this boundary.
Signup availability could not be determined (signup_gate_unavailable).
The canonical error envelope. error is a stable machine code.
object
Stable error code (e.g. unauthorized, forbidden, not_found, invalid, quota_exceeded, rate_limited).
Example
forbiddenHuman-readable detail (never leaks internals).
Example
missing required scopeMachine-readable quota reason. inbox_limit_exceeded means billing account inbox capacity across all organizations and projects sharing that account; enrollment_token_mailbox_budget_exhausted means the enrollment key lifetime creation allowance. Read message for recovery; inbox counts are separate from sending quotas.
Consumed plus reserved units.
Requested additional units.
Next UTC usage-period boundary; pending reservations survive this boundary.