{"openapi":"3.1.0","info":{"title":"AgentiSend API","version":"0.1.0","description":"AgentiSend is a transactional email API for AI agents.","contact":{"email":"hello@agentisend.com","url":"https://agentisend.com"},"termsOfService":"https://agentisend.com/terms"},"externalDocs":{"description":"AgentiSend docs","url":"https://agentisend.com/docs"},"servers":[{"url":"https://api.agentisend.com"}],"security":[{"bearer":[]}],"x-resend-error-aliases":{"missing_api_key":"missing_api_key","restricted_api_key":"restricted_api_key","invalid_api_key":"invalid_api_key","invalid_attachment":"invalid_attachment","invalid_from_address":"invalid_from_address","daily_quota_exceeded":"daily_quota_exceeded","method_not_allowed":"method_not_allowed","concurrent_idempotent_requests":"idempotency_in_flight","invalid_idempotent_request":"idempotency_payload_mismatch","validation_error":"validation_error","not_found":"not_found","rate_limit_exceeded":"rate_limit_exceeded","internal_server_error":"internal_server_error"},"x-resend-error-names":{"validation_error":"validation_error","invalid_idempotency_key":"application_error","missing_required_field":"missing_required_field","invalid_from_address":"invalid_from_address","invalid_parameter":"validation_error","invalid_cursor":"application_error","invalid_attachment":"invalid_attachment","invalid_region":"application_error","tracking_subdomain_unverified":"application_error","tracking_subdomain_cannot_be_removed":"application_error","domain_field_immutable":"application_error","open_tracking_on_transactional":"application_error","header_replaced":"application_error","html_clipped_by_gmail":"application_error","link_domain_listed":"application_error","domain_already_exists":"application_error","domain_blocklisted":"application_error","mailbox_provider_domain":"application_error","template_name_taken":"application_error","template_alias_taken":"application_error","template_in_use":"application_error","segment_in_use":"application_error","contact_resubscribe_required":"application_error","email_still_scheduled":"application_error","sending_domain_blocked":"application_error","young_domain_held":"application_error","domain_verified_elsewhere":"application_error","domain_not_claimable":"application_error","domain_sending_disabled":"application_error","domain_not_verified":"validation_error","onboarding_recipient_not_a_member":"application_error","onboarding_shape_refused":"application_error","onboarding_daily_cap_reached":"application_error","onboarding_sender_unavailable":"application_error","dns_unreachable":"application_error","dkim_key_mismatch":"application_error","domain_check_window_expired":"application_error","return_path_subdomain_in_use":"application_error","spf_conflict":"application_error","spf_lookup_limit":"application_error","service_unavailable":"application_error","account_suspended":"application_error","account_sandboxed":"application_error","review_sandbox_recipient_only":"application_error","trust_throttled":"application_error","suppressed_recipient":"application_error","content_refused":"application_error","recipient_blocklisted":"application_error","missing_api_key":"missing_api_key","session_required":"application_error","human_action_required":"application_error","csrf_origin_rejected":"application_error","mfa_required":"application_error","billing_not_configured":"application_error","charge_not_this_account":"application_error","plan_not_purchasable":"application_error","overage_cap_reached":"application_error","overage_not_on_plan":"application_error","daily_limit_reached":"application_error","term_not_on_sale":"application_error","subscription_active":"application_error","portal_change_unavailable":"application_error","billing_customer_missing":"application_error","stripe_signature_invalid":"application_error","invalid_api_key":"invalid_api_key","restricted_api_key":"restricted_api_key","insufficient_role":"application_error","last_owner_required":"application_error","seat_limit_reached":"application_error","invite_limit_reached":"application_error","invite_not_valid":"application_error","invite_email_mismatch":"application_error","already_in_account":"application_error","domain_scope_violation":"application_error","not_found":"not_found","session_expired":"application_error","payload_too_large":"application_error","unsupported_media_type":"application_error","method_not_allowed":"method_not_allowed","idempotency_in_flight":"concurrent_idempotent_requests","idempotency_payload_mismatch":"invalid_idempotent_request","agent_budget_exceeded":"monthly_quota_exceeded","plan_limit_reached":"monthly_quota_exceeded","key_budget_exceeds_plan":"application_error","domain_limit_reached":"application_error","dedicated_ip_assigned_by_us":"application_error","webhook_endpoint_limit_reached":"application_error","rate_ceiling_exceeded":"rate_limit_exceeded","daily_quota_exceeded":"daily_quota_exceeded","monthly_quota_exceeded":"application_error","rate_limiter_unavailable":"application_error","rate_limit_exceeded":"rate_limit_exceeded","approval_required":"application_error","approval_expired":"application_error","staff_review_required":"application_error","trust_paused":"application_error","kill_switch_active":"application_error","sending_paused_everywhere":"application_error","internal_server_error":"internal_server_error","support_ticket_not_found":"application_error","support_closed":"application_error","support_reopen_expired":"application_error","support_merge_conflict":"application_error","support_reply_too_soon":"application_error","support_draft_unavailable":"application_error","support_upload_rejected":"application_error","support_upload_too_large":"application_error","support_attachment_expired":"application_error","support_rate_limited":"application_error","sign_in_check_required":"application_error"},"paths":{"/health":{"get":{"summary":"Liveness probe.","operationId":"getHealth","security":[],"tags":["meta"],"x-error-codes":["internal_server_error","rate_limit_exceeded"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}}},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/openapi.json":{"get":{"summary":"OpenAPI 3.1 document generated from the same schemas that validate.","operationId":"getOpenapiJson","security":[],"tags":["meta"],"x-error-codes":["internal_server_error","rate_limit_exceeded"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}}},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/api-keys":{"post":{"summary":"Create an API key.","description":"The token is shown exactly once.","operationId":"createApiKey","tags":["api-keys"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostApi_keysBody"},"example":{"name":"example","permission":"full_access"}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","invalid_parameter","mfa_required","missing_api_key","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"201":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostApi_keysReply"},"example":{"object":"api_key","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","permission":"full_access","domain_scope":"example","scopes":[],"expires_at":"2026-09-04T09:14:00.000Z","token_prefix":"example","system":false,"created_at":"2026-09-04T09:14:00.000Z","last_used_at":"2026-09-04T09:14:00.000Z","request_count_30d":-9007199254740991,"rotated_at":"2026-09-04T09:14:00.000Z","previous_key_expires_at":"2026-09-04T09:14:00.000Z","budget_per_period":-9007199254740991,"period":"hourly","rate_ceiling_per_minute":-9007199254740991,"loop_guard":"off","token":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"get":{"summary":"List API keys with 30-day request counts.","description":"Permission, domain scope and the key’s own budget ceiling are always returned; never the token.","operationId":"getApiKeys","tags":["api-keys"],"parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":500}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","required":false,"schema":{"type":"string"}},{"name":"before","in":"query","required":false,"schema":{"type":"string"}}],"x-error-codes":["internal_server_error","invalid_api_key","invalid_cursor","invalid_parameter","mfa_required","missing_api_key","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetApi_keysReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/api-keys/{id}":{"patch":{"summary":"Rename a key or change its domain scope and scopes.","description":"The token is unchanged — use POST /api-keys/:id/rotate for that.","operationId":"patchApiKeysById","tags":["api-keys"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchApi_keysBy_idBody"}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","invalid_parameter","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchApi_keysBy_idReply"},"example":{"object":"api_key","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","permission":"full_access","domain_scope":"example","scopes":[],"expires_at":"2026-09-04T09:14:00.000Z","token_prefix":"example","system":false,"created_at":"2026-09-04T09:14:00.000Z","last_used_at":"2026-09-04T09:14:00.000Z","request_count_30d":-9007199254740991,"rotated_at":"2026-09-04T09:14:00.000Z","previous_key_expires_at":"2026-09-04T09:14:00.000Z","budget_per_period":-9007199254740991,"period":"hourly","rate_ceiling_per_minute":-9007199254740991,"loop_guard":"off"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"delete":{"summary":"Revoke an API key immediately.","operationId":"deleteApiKeysById","tags":["api-keys"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","invalid_parameter","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteApi_keysBy_idReply"},"example":{"object":"api_key","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","deleted":false}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/api-keys/{id}/rotate":{"post":{"summary":"Rotate an API key.","description":"The new token is returned once; the token it replaces keeps working for grace_hours (0, 1 or 24).","operationId":"postApiKeysByIdRotate","tags":["api-keys"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostApi_keysBy_idRotateBody"},"example":{"grace_hours":0}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","invalid_parameter","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostApi_keysBy_idRotateReply"},"example":{"object":"api_key","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","permission":"full_access","domain_scope":"example","scopes":[],"expires_at":"2026-09-04T09:14:00.000Z","token_prefix":"example","system":false,"created_at":"2026-09-04T09:14:00.000Z","last_used_at":"2026-09-04T09:14:00.000Z","request_count_30d":-9007199254740991,"rotated_at":"2026-09-04T09:14:00.000Z","previous_key_expires_at":"2026-09-04T09:14:00.000Z","budget_per_period":-9007199254740991,"period":"hourly","rate_ceiling_per_minute":-9007199254740991,"loop_guard":"off","token":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/topics":{"post":{"summary":"Create a subscription topic.","description":"default_subscribed=false makes it opt-in: silence means no.","operationId":"postTopics","tags":["topics"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostTopicsBody"},"example":{"name":"example"}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","invalid_parameter","mfa_required","missing_api_key","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"201":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostTopicsReply"},"example":{"object":"topic","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","description":"example","default_subscribed":false,"default_subscription":"opt_in","visibility":"public","created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"get":{"summary":"Every subscription topic on the account, newest first.","operationId":"getTopics","tags":["topics"],"parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":500}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","required":false,"schema":{"type":"string"}},{"name":"before","in":"query","required":false,"schema":{"type":"string"}}],"x-error-codes":["internal_server_error","invalid_api_key","invalid_cursor","invalid_parameter","mfa_required","missing_api_key","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetTopicsReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/topics/{id}":{"get":{"summary":"One topic.","operationId":"getTopicsById","tags":["topics"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostTopicsReply"},"example":{"object":"topic","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","description":"example","default_subscribed":false,"default_subscription":"opt_in","visibility":"public","created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"patch":{"summary":"Rename a topic or change its default.","description":"Changing the default never rewrites an answer a contact already gave.","operationId":"patchTopicsById","tags":["topics"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchTopicsBy_idBody"}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","invalid_parameter","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostTopicsReply"},"example":{"object":"topic","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","description":"example","default_subscribed":false,"default_subscription":"opt_in","visibility":"public","created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"delete":{"summary":"Delete a topic and every recorded answer about it.","operationId":"deleteTopicsById","tags":["topics"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteTopicsBy_idReply"},"example":{"object":"topic","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","deleted":false}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/contacts/{id}/topics":{"get":{"summary":"What this contact has said about every topic.","description":"A topic they never answered reports the topic default, and says so.","operationId":"getContactsByIdTopics","tags":["contacts"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":320}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":500}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","required":false,"schema":{"type":"string"}},{"name":"before","in":"query","required":false,"schema":{"type":"string"}}],"x-error-codes":["internal_server_error","invalid_api_key","invalid_cursor","invalid_parameter","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetContactsBy_idTopicsReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"patch":{"summary":"Record this contact’s answer for one or more topics.","description":"Answers are absolute — nothing is inferred from what is left out.","operationId":"patchContactsByIdTopics","tags":["contacts"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":320,"description":"Contact id or email address."}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchContactsBy_idTopicsBody"},"example":{"topics":[{"topic_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","subscribed":false}]}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_cursor","invalid_idempotency_key","invalid_parameter","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchContactsBy_idTopicsReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example","contact_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","topics":[]}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/metrics":{"get":{"summary":"Send/delivery/engagement KPIs with a daily series, computed from the event spine over a window.","operationId":"getMetrics","tags":["metrics"],"parameters":[{"name":"since","in":"query","required":false,"schema":{"type":"string"}},{"name":"until","in":"query","required":false,"schema":{"type":"string"}},{"name":"start_date","in":"query","required":false,"schema":{"type":"string"}},{"name":"end_date","in":"query","required":false,"schema":{"type":"string"}},{"name":"group_by","in":"query","required":false,"schema":{"description":"One or several comma-separated. One of: domain, api_key.","type":"string"}},{"name":"event","in":"query","required":false,"schema":{"type":"string","enum":["sent","delivered","bounced","complained","opened","clicked"]}},{"name":"domain","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"api_key_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"string","const":"none"}]}}],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetMetricsReply"},"example":{"since":"example","until":"example","event":"sent","totals":{"sent":-9007199254740991,"delivered":-9007199254740991,"bounced":-9007199254740991,"complaints":-9007199254740991,"opens":-9007199254740991,"clicks":-9007199254740991},"previous":{"sent":-9007199254740991,"delivered":-9007199254740991,"bounced":-9007199254740991,"complaints":-9007199254740991,"opens":-9007199254740991,"clicks":-9007199254740991},"series":[],"by_domain":[],"by_api_key":[]}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/emails/metrics":{"get":{"summary":"Account-level email metrics, in Resend's shape: totals for a date range, or broken down by period, domain, email or broadcast.","description":"Counted from the event log; a simulator send is not counted. A call that sends since, until, group_by, event, domain or api_key_id answers as GET /metrics does instead.","operationId":"getEmailsMetrics","tags":["metrics"],"parameters":[{"name":"start_date","in":"query","required":false,"schema":{"description":"The start of the range, an ISO 8601 date or datetime. Defaults to 6 days before end_date.","type":"string"}},{"name":"end_date","in":"query","required":false,"schema":{"description":"The end of the range, an ISO 8601 date or datetime. A date covers that whole day. A future value is clamped to now. Defaults to now.","type":"string"}},{"name":"timezone","in":"query","required":false,"schema":{"description":"IANA timezone that buckets periods when period is a dimension. Defaults to UTC.","type":"string","minLength":1}},{"name":"granularity","in":"query","required":false,"schema":{"description":"Bucket size when period is a dimension. Defaults to daily. At most 10,000 periods.","type":"string","enum":["hourly","daily","weekly","monthly"]}},{"name":"metrics","in":"query","required":false,"schema":{"description":"Metrics to return, comma-separated or repeated. Omit for all. One of: received, sent, delivered, delivery_delayed, failed, suppressed, bounced, bounced_transient, bounced_permanent, bounced_undetermined, opened, unique_opened, clicked, unique_clicked, complained, unsubscribed, delivery_rate, open_rate, click_rate, bounce_rate, complaint_rate, unsubscribe_rate.","anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]}},{"name":"dimensions","in":"query","required":false,"schema":{"description":"Dimensions to break the answer down by, comma-separated or repeated. Omit for one totals row. Any of: period, domain, email, broadcast. email cannot be combined with broadcast.","anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]}},{"name":"domain_id","in":"query","required":false,"schema":{"description":"Sending domain ids to restrict to, up to 100.","anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]}},{"name":"email_id","in":"query","required":false,"schema":{"description":"Email ids to restrict to, up to 100. Not with the broadcast dimension or broadcast_id.","anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]}},{"name":"broadcast_id","in":"query","required":false,"schema":{"description":"Broadcast ids to restrict to, up to 100. Not with the email dimension or email_id.","anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]}},{"name":"since","in":"query","required":false,"schema":{"description":"This API's name for the start of the window. Answers in the GET /metrics shape.","type":"string"}},{"name":"until","in":"query","required":false,"schema":{"description":"This API's name for the end of the window. Answers in the GET /metrics shape.","type":"string"}},{"name":"group_by","in":"query","required":false,"schema":{"description":"One or several comma-separated. One of: domain, api_key.","type":"string"}},{"name":"event","in":"query","required":false,"schema":{"type":"string","enum":["sent","delivered","bounced","complained","opened","clicked"]}},{"name":"domain","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"api_key_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"string","const":"none"}]}}],"x-error-codes":["internal_server_error","invalid_api_key","invalid_parameter","mfa_required","missing_api_key","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetEmailsMetricsReply"},"example":{}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/emails":{"post":{"summary":"Send an email.","description":"Returns the message id; delivery happens on the queue. Before a domain is verified, from onboarding@agentisend.com delivers only to this account's member sign-in addresses (20 per UTC day, no cc/bcc/attachments/tracking/extra headers). Addresses ending in @simulator.agentisend.com cost nothing and reach nobody.","operationId":"sendEmail","tags":["emails"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostEmailsBody"}}}},"x-error-codes":["account_sandboxed","account_suspended","agent_budget_exceeded","approval_required","content_refused","csrf_origin_rejected","daily_limit_reached","domain_not_verified","domain_scope_violation","domain_sending_disabled","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_attachment","invalid_from_address","invalid_idempotency_key","invalid_parameter","kill_switch_active","mfa_required","missing_api_key","not_found","onboarding_daily_cap_reached","onboarding_recipient_not_a_member","onboarding_sender_unavailable","onboarding_shape_refused","overage_cap_reached","payload_too_large","plan_limit_reached","rate_ceiling_exceeded","rate_limit_exceeded","recipient_blocklisted","restricted_api_key","sending_paused_everywhere","staff_review_required","suppressed_recipient","trust_paused","trust_throttled","unsupported_media_type","validation_error","young_domain_held"],"responses":{"201":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostEmailsReply"},"example":{"id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","simulated":false,"warnings":[]}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"402":{"$ref":"#/components/responses/PaymentRequired"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"},"503":{"$ref":"#/components/responses/ServiceUnavailable"}}},"get":{"summary":"List messages.","description":"Every console filter is a query param here.","operationId":"getEmails","tags":["emails"],"parameters":[{"name":"status","in":"query","required":false,"schema":{"description":"One status, or several comma-separated. One of: queued, scheduled, sent, delivered, delivery_delayed, bounced, complained, opened, clicked, failed, canceled, suppressed.","type":"string"}},{"name":"q","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":200}},{"name":"from","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"to","in":"query","required":false,"schema":{"description":"Matches an address on to, cc or bcc.","type":"string","minLength":1}},{"name":"tag","in":"query","required":false,"schema":{"description":"name:value, for example campaign:welcome. Only mail carrying that tag.","type":"string","minLength":1,"maxLength":513}},{"name":"domain","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"bounce_class","in":"query","required":false,"schema":{"description":"Only messages whose bounce falls in this class. Implies status=bounced.","type":"string","enum":["hard","soft","block","policy"]}},{"name":"api_key_id","in":"query","required":false,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"template_id","in":"query","required":false,"schema":{"description":"Only mail rendered from this template.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"since","in":"query","required":false,"schema":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"}},{"name":"until","in":"query","required":false,"schema":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"}},{"name":"limit","in":"query","required":false,"schema":{"default":20,"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"after","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"before","in":"query","required":false,"schema":{"type":"string","minLength":1}}],"x-error-codes":["internal_server_error","invalid_api_key","invalid_cursor","invalid_parameter","mfa_required","missing_api_key","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetEmailsReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/emails/preflight":{"post":{"summary":"Run EVERY send gate without sending: domain, sandbox, trust, suppression, budget, loop, content, verifier.","description":"The report matches what POST /emails would do, byte for byte — one code path.","operationId":"postEmailsPreflight","tags":["emails"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostEmailsBody"}}}},"x-error-codes":["account_sandboxed","account_suspended","agent_budget_exceeded","approval_required","content_refused","csrf_origin_rejected","daily_limit_reached","domain_not_verified","domain_scope_violation","domain_sending_disabled","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_attachment","invalid_from_address","invalid_idempotency_key","invalid_parameter","kill_switch_active","mfa_required","missing_api_key","not_found","onboarding_daily_cap_reached","onboarding_recipient_not_a_member","onboarding_sender_unavailable","onboarding_shape_refused","overage_cap_reached","payload_too_large","plan_limit_reached","rate_ceiling_exceeded","rate_limit_exceeded","recipient_blocklisted","restricted_api_key","sending_paused_everywhere","staff_review_required","suppressed_recipient","trust_paused","trust_throttled","unsupported_media_type","validation_error","young_domain_held"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostEmailsPreflightReply"},"example":{"ok":false,"simulated":false,"error":{"code":"example","message":"example","fix":"example"},"checks":{}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"402":{"$ref":"#/components/responses/PaymentRequired"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"},"503":{"$ref":"#/components/responses/ServiceUnavailable"}}}},"/emails/batch":{"post":{"summary":"Send up to 500 emails.","description":"Each item succeeds or fails on its own — read data[i].status. x-batch-validation: strict (all or none) or permissive (ids and errors).","operationId":"sendBatchEmails","tags":["emails"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostEmailsBatchBody"}}}},"x-error-codes":["account_sandboxed","account_suspended","agent_budget_exceeded","approval_required","content_refused","csrf_origin_rejected","daily_limit_reached","domain_not_verified","domain_scope_violation","domain_sending_disabled","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_attachment","invalid_from_address","invalid_idempotency_key","invalid_parameter","kill_switch_active","mfa_required","missing_api_key","not_found","onboarding_daily_cap_reached","onboarding_recipient_not_a_member","onboarding_sender_unavailable","onboarding_shape_refused","overage_cap_reached","payload_too_large","plan_limit_reached","rate_ceiling_exceeded","rate_limit_exceeded","recipient_blocklisted","restricted_api_key","sending_paused_everywhere","staff_review_required","suppressed_recipient","trust_paused","trust_throttled","unsupported_media_type","validation_error","young_domain_held"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostEmailsBatchReply"},"example":{"data":[]}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"402":{"$ref":"#/components/responses/PaymentRequired"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"},"503":{"$ref":"#/components/responses/ServiceUnavailable"}}}},"/emails/{id}":{"get":{"summary":"Fetch one message with its current status and last event.","operationId":"getEmail","tags":["emails"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetEmailsBy_idReply"},"example":{"object":"email","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","from":"example","to":[],"cc":[],"bcc":[],"reply_to":[],"subject":"example","message_id":"example","html":"example","text":"example","headers":{},"tags":{},"attachments":[],"scheduled_at":"2026-09-04T09:14:00.000Z","status":"queued","last_event":"queued","provider_message_id":"example","api_key_id":"example","template_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","template_version":-9007199254740991,"domain":"example","created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z","warnings":[]}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"delete":{"summary":"Delete one email you sent.","description":"Only a terminal status — a scheduled or queued one must be cancelled first.","operationId":"deleteEmailsById","tags":["emails"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["csrf_origin_rejected","email_still_scheduled","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteEmailsBy_idReply"},"example":{"id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","status":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"patch":{"summary":"Move a scheduled email to a new time — the same act as POST /emails/:id/reschedule, under the verb a Resend integration already uses.","operationId":"patchEmailsById","tags":["emails"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchEmailsBy_idBody"}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","invalid_parameter","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchEmailsBy_idReply"},"example":{"id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","status":"example","scheduled_at":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/emails/{id}/events":{"get":{"summary":"Every event recorded for one message, oldest first, with the provider detail.","operationId":"getEmailsByIdEvents","tags":["emails"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":200}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","required":false,"schema":{"type":"string"}}],"x-error-codes":["internal_server_error","invalid_api_key","invalid_cursor","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetEmailsBy_idEventsReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/emails/{id}/cancel":{"post":{"summary":"Cancel a scheduled or queued email.","description":"Already-sent mail is history, not cancellable.","operationId":"postEmailsByIdCancel","tags":["emails"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","invalid_parameter","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetEmailsBy_idReply"},"example":{"object":"email","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","from":"example","to":[],"cc":[],"bcc":[],"reply_to":[],"subject":"example","message_id":"example","html":"example","text":"example","headers":{},"tags":{},"attachments":[],"scheduled_at":"2026-09-04T09:14:00.000Z","status":"queued","last_event":"queued","provider_message_id":"example","api_key_id":"example","template_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","template_version":-9007199254740991,"domain":"example","created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z","warnings":[]}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/emails/{id}/share":{"post":{"summary":"Make a link anyone can open to read one sent or received email, with no sign-in.","description":"It stops working after expires_in (at most 48 hours; default 48 hours). The page shows the message read-only: no script runs, no image or link in it loads.","operationId":"shareEmail","tags":["emails"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostEmailsBy_idShareBody"},"example":{}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","invalid_parameter","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostEmailsBy_idShareReply"},"example":{"object":"email","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","url":"https://yourapp.com/hooks/agentisend"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/emails/{id}/reschedule":{"post":{"summary":"Move an email to a new time.","description":"Works from scheduled AND canceled — a cancel is never terminal.","operationId":"postEmailsByIdReschedule","tags":["emails"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchEmailsBy_idBody"}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","invalid_parameter","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostEmailsBy_idRescheduleReply"},"example":{"id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","status":"example","scheduled_at":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/emails/{id}/mime":{"get":{"summary":"The exact RFC 5322 source of this email — what Resend never shows you.","operationId":"getEmailsByIdMime","tags":["emails"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetEmailsBy_idMimeReply"},"example":"example"}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/emails/{id}/attachments":{"get":{"summary":"What this email carried, each with a download link that needs no API key and works for an hour.","description":"bytes_available says whether the payload is still retrievable.","operationId":"getEmailsByIdAttachments","tags":["emails"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":500}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","required":false,"schema":{"type":"string"}},{"name":"before","in":"query","required":false,"schema":{"type":"string"}}],"x-error-codes":["internal_server_error","invalid_api_key","invalid_cursor","invalid_parameter","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetEmailsBy_idAttachmentsReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/emails/{id}/attachments/{aid}":{"get":{"summary":"One attachment: the bytes exactly as they were sent, as an inert download, or its JSON view with a download link when the request asks for JSON.","description":"Send Accept: application/json, or Content-Type: application/json as the Resend SDKs do, for the JSON view. Any other request gets the bytes. The id is the attachment uuid; the position (0, 1, …) is accepted too.","operationId":"getEmailsByIdAttachmentsByAid","tags":["emails"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"aid","in":"path","required":true,"schema":{"type":"string","minLength":1}}],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetEmailsBy_idAttachmentsBy_aidReply"},"example":{"id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","filename":"example","content_type":"example","size_bytes":-9007199254740991,"size":-9007199254740991,"content_id":"example","content_disposition":"inline","path":"example","bytes_available":false,"download_url":"https://yourapp.com/hooks/agentisend","expires_at":"2026-09-04T09:14:00.000Z","object":"attachment"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/emails/{id}/eml":{"get":{"summary":"Download this email as.eml.","operationId":"getEmailsByIdEml","tags":["emails"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/emails/bulk-cancel":{"post":{"summary":"Cancel many emails at once: by explicit ids or every scheduled/queued email before a time.","operationId":"postEmailsBulkCancel","tags":["emails"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostEmailsBulk_cancelBody"}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostEmailsBulk_cancelReply"},"example":{"canceled":[],"skipped":[]}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/emails/export.csv":{"get":{"summary":"The message log as CSV — yours, take it with you.","operationId":"getEmailsExportCsv","tags":["emails"],"parameters":[{"name":"status","in":"query","required":false,"schema":{"description":"One status, or several comma-separated. One of: queued, scheduled, sent, delivered, delivery_delayed, bounced, complained, opened, clicked, failed, canceled, suppressed.","type":"string"}},{"name":"q","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":200}},{"name":"from","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"to","in":"query","required":false,"schema":{"description":"Matches an address on to, cc or bcc.","type":"string","minLength":1}},{"name":"tag","in":"query","required":false,"schema":{"description":"name:value, for example campaign:welcome. Only mail carrying that tag.","type":"string","minLength":1,"maxLength":513}},{"name":"domain","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"bounce_class","in":"query","required":false,"schema":{"description":"Only messages whose bounce falls in this class. Implies status=bounced.","type":"string","enum":["hard","soft","block","policy"]}},{"name":"api_key_id","in":"query","required":false,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"template_id","in":"query","required":false,"schema":{"description":"Only mail rendered from this template.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"since","in":"query","required":false,"schema":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"}},{"name":"until","in":"query","required":false,"schema":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"}}],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/emails/receiving":{"get":{"summary":"Not open yet: mail received at this account’s domains, newest first.","description":"Filter by recipient, sender or date range.","operationId":"getEmailsReceiving","tags":["emails"],"parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":500}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","required":false,"schema":{"type":"string"}},{"name":"before","in":"query","required":false,"schema":{"type":"string"}},{"name":"to","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"from","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"q","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":200}},{"name":"since","in":"query","required":false,"schema":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"}},{"name":"until","in":"query","required":false,"schema":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"}}],"x-error-codes":["internal_server_error","invalid_api_key","invalid_cursor","invalid_parameter","mfa_required","missing_api_key","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetEmailsReceivingReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/emails/receiving/threads":{"get":{"summary":"Not open yet: received mail grouped into threads by Message-ID / In-Reply-To / References, newest thread first.","operationId":"getEmailsReceivingThreads","tags":["emails"],"parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":500}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","required":false,"schema":{"type":"string"}},{"name":"before","in":"query","required":false,"schema":{"type":"string"}}],"x-error-codes":["internal_server_error","invalid_api_key","invalid_cursor","invalid_parameter","mfa_required","missing_api_key","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetEmailsReceivingThreadsReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/emails/receiving/{id}":{"get":{"summary":"Not open yet: one received email: headers, text and HTML bodies as data, and the attachments it carried.","operationId":"getEmailsReceivingById","tags":["emails"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetEmailsReceivingBy_idReply"},"example":{"object":"email","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","from":"example","to":"example","subject":"example","received_at":"2026-09-04T09:14:00.000Z","created_at":"2026-09-04T09:14:00.000Z","message_id":"example","cc":[],"bcc":[],"reply_to":[],"size_bytes":-9007199254740991,"attachment_count":-9007199254740991,"attachments":[],"received_for":[],"headers":{},"text":"example","html":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"delete":{"summary":"Not open yet: receiving mail is not open to customers.","description":"Deletes one received email already stored on this account.","operationId":"deleteEmailsReceivingById","tags":["emails"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["idempotency_in_flight","idempotency_payload_mismatch","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteEmailsReceivingBy_idReply"},"example":{"id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","status":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/emails/receiving/{id}/reply":{"post":{"summary":"Not open yet: reply to a received email.","description":"Threads on In-Reply-To and References, and runs every send check.","operationId":"postEmailsReceivingByIdReply","tags":["emails"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostEmailsReceivingBy_idReplyBody"}}}},"x-error-codes":["account_sandboxed","account_suspended","agent_budget_exceeded","approval_required","csrf_origin_rejected","daily_limit_reached","domain_not_verified","domain_scope_violation","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_attachment","invalid_from_address","invalid_idempotency_key","invalid_parameter","kill_switch_active","mfa_required","missing_api_key","missing_required_field","not_found","onboarding_daily_cap_reached","onboarding_recipient_not_a_member","onboarding_sender_unavailable","onboarding_shape_refused","overage_cap_reached","payload_too_large","plan_limit_reached","rate_ceiling_exceeded","rate_limit_exceeded","recipient_blocklisted","restricted_api_key","sending_paused_everywhere","staff_review_required","suppressed_recipient","trust_paused","trust_throttled","unsupported_media_type","validation_error"],"responses":{"201":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostEmailsReceivingBy_idReplyReply"},"example":{"id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","simulated":false,"warnings":[]}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"402":{"$ref":"#/components/responses/PaymentRequired"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"},"503":{"$ref":"#/components/responses/ServiceUnavailable"}}}},"/emails/receiving/{id}/raw":{"get":{"summary":"Not open yet: the stored RFC 5322 source, byte for byte.","description":"Served as an attachment with sniffing off — it is someone else’s content.","operationId":"getEmailsReceivingByIdRaw","tags":["emails"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/emails/receiving/{id}/attachments":{"get":{"summary":"Not open yet: what this received email carried, each with a download link that needs no API key and works for an hour.","operationId":"getEmailsReceivingByIdAttachments","tags":["emails"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":500}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","required":false,"schema":{"type":"string"}},{"name":"before","in":"query","required":false,"schema":{"type":"string"}}],"x-error-codes":["internal_server_error","invalid_api_key","invalid_cursor","invalid_parameter","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetEmailsReceivingBy_idAttachmentsReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/emails/receiving/{id}/attachments/{aid}":{"get":{"summary":"Not open yet: one received attachment.","description":"The bytes as an inert download (always octet-stream, never the sender’s declared type), or its JSON view with a download link when the request asks for JSON. Send Accept: application/json, or Content-Type: application/json as the Resend SDKs do, for the JSON view. Any other request gets the bytes. The id is the attachment uuid; the position (0, 1, …) is accepted too.","operationId":"getEmailsReceivingByIdAttachmentsByAid","tags":["emails"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"aid","in":"path","required":true,"schema":{"type":"string","minLength":1}}],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetEmailsReceivingBy_idAttachmentsBy_aidReply"},"example":{"id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","filename":"example","content_type":"example","size_bytes":-9007199254740991,"size":-9007199254740991,"content_id":"example","content_disposition":"inline","download_url":"https://yourapp.com/hooks/agentisend","expires_at":"2026-09-04T09:14:00.000Z","object":"attachment"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/emails/{id}/explain":{"get":{"summary":"What happened to this email, the evidence, and the exact calls that fix it — machine-readable remediation.","operationId":"getEmailsByIdExplain","tags":["emails"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetEmailsBy_idExplainReply"},"example":{"id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","status":"example","verdict":"example","what_happened":"example","evidence":{},"retryable":false,"actions":[]}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/emails/lint":{"post":{"summary":"Deliverability lint without sending: a 0-100 placement score plus every finding with its fix.","operationId":"postEmailsLint","tags":["emails"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostEmailsLintBody"},"example":{"from":"example","to":["example"]}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostEmailsLintReply"},"example":{"score":0,"findings":[]}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/usage":{"get":{"summary":"This period usage, per key: budget, consumed, remaining, rate window, last used.","description":"The bill, made legible.","operationId":"getUsage","tags":["usage"],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","rate_limit_exceeded","restricted_api_key"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetUsageReply"},"example":{"object":"usage","emails":{"daily":{"used":-9007199254740991,"limit":-9007199254740991,"sent":-9007199254740991,"received":-9007199254740991,"resets_at":"2026-09-04T09:14:00.000Z"},"monthly":{"used":-9007199254740991,"limit":-9007199254740991,"sent":-9007199254740991,"received":-9007199254740991,"resets_at":"2026-09-04T09:14:00.000Z"}},"contacts":{"used":-9007199254740991,"limit":-9007199254740991},"segments":{"used":-9007199254740991,"limit":-9007199254740991},"broadcasts":{"used":-9007199254740991,"limit":null},"automation_runs":{"used":-9007199254740991,"limit":-9007199254740991,"resets_at":"2026-09-04T09:14:00.000Z"},"domains":{"used":-9007199254740991,"limit":-9007199254740991},"rate_limit":{"limit":-9007199254740991,"duration":"example"},"period_started_at":"2026-09-04T09:14:00.000Z","account":{"sent_30d":-9007199254740991,"sent_24h":-9007199254740991,"bounced_30d":-9007199254740991,"complained_30d":-9007199254740991},"keys":[]}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/billing":{"get":{"summary":"Plan, usage against each published limit, and what the next tier changes.","operationId":"getBilling","tags":["usage"],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetBillingReply"},"example":{"currency":"example","pricing_document_version":-9007199254740991,"plan":{"id":"example","name":"example","monthly_price_minor":-9007199254740991,"included_emails_per_month":-9007199254740991,"max_domains":-9007199254740991,"max_seats":-9007199254740991,"retention_days":-9007199254740991,"overage_minor_per_1000_emails":-9007199254740991},"period":{"started_at":"2026-09-04T09:14:00.000Z","resets_at":"2026-09-04T09:14:00.000Z","days":-9007199254740991},"limits":[],"overage":{"policy":"pause","available":false,"enabled":false,"cap_emails":-9007199254740991,"consumed_this_period":-9007199254740991,"rate_minor_per_1000":-9007199254740991,"text":"example","auto_charges":false},"next_tier":{"id":"example","name":"example","monthly_price_minor":-9007199254740991,"included_emails_per_month":-9007199254740991,"max_domains":-9007199254740991,"max_seats":-9007199254740991,"retention_days":-9007199254740991,"overage_minor_per_1000_emails":-9007199254740991},"payment":{"writes_enabled":false,"text":"example"}}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/billing/plan":{"get":{"summary":"The plan in force (Free until one is bought), the plans, volumes and terms on offer, and what the signed-in person may buy.","operationId":"getBillingPlan","tags":["billing"],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetBillingPlanReply"},"example":{"tier":"free","plan_status":"none","needs_plan_selection":false,"plan_source":"free","billing_term":"month","entitlements":{"tier":"free","included_emails_per_month":-9007199254740991,"retention_days":-9007199254740991,"max_domains":-9007199254740991,"max_seats":-9007199254740991,"overage_minor_per_1000_emails":-9007199254740991},"subscription":{"status":"example","price_lookup_key":"example","current_period_end":"2026-09-04T09:14:00.000Z","cancel_at_period_end":false},"billing_configured":false,"terms_on_sale":[],"plans":[],"lifetime":{"tier":"tier1","name":"example","emails_total":-9007199254740991,"emails_used":-9007199254740991,"emails_left":-9007199254740991,"max_emails_per_month":-9007199254740991,"refundable":false},"lifetime_on_sale":false,"lifetime_plans":[],"lifetime_refund_rule":"example","viewer":{"role":"owner","can_purchase":false,"can_purchase_lifetime":false},"purchasable":[]}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"post":{"summary":"Console: choose Free on the plan step.","description":"Paid plans go through POST /billing/checkout. Idempotent; owner only.","operationId":"postBillingPlan","tags":["billing"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostBillingPlanBody"},"example":{"tier":"free"}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_idempotency_key","mfa_required","not_found","payload_too_large","rate_limit_exceeded","session_required","unsupported_media_type","validation_error"],"responses":{"201":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetBillingPlanReply"},"example":{"tier":"free","plan_status":"none","needs_plan_selection":false,"plan_source":"free","billing_term":"month","entitlements":{"tier":"free","included_emails_per_month":-9007199254740991,"retention_days":-9007199254740991,"max_domains":-9007199254740991,"max_seats":-9007199254740991,"overage_minor_per_1000_emails":-9007199254740991},"subscription":{"status":"example","price_lookup_key":"example","current_period_end":"2026-09-04T09:14:00.000Z","cancel_at_period_end":false},"billing_configured":false,"terms_on_sale":[],"plans":[],"lifetime":{"tier":"tier1","name":"example","emails_total":-9007199254740991,"emails_used":-9007199254740991,"emails_left":-9007199254740991,"max_emails_per_month":-9007199254740991,"refundable":false},"lifetime_on_sale":false,"lifetime_plans":[],"lifetime_refund_rule":"example","viewer":{"role":"owner","can_purchase":false,"can_purchase_lifetime":false},"purchasable":[]}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/billing/subscription":{"get":{"summary":"Console: the signed-in account’s plan and subscription state.","operationId":"getBillingSubscription","tags":["billing"],"x-error-codes":["internal_server_error","mfa_required","not_found","rate_limit_exceeded","session_required"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetBillingPlanReply"},"example":{"tier":"free","plan_status":"none","needs_plan_selection":false,"plan_source":"free","billing_term":"month","entitlements":{"tier":"free","included_emails_per_month":-9007199254740991,"retention_days":-9007199254740991,"max_domains":-9007199254740991,"max_seats":-9007199254740991,"overage_minor_per_1000_emails":-9007199254740991},"subscription":{"status":"example","price_lookup_key":"example","current_period_end":"2026-09-04T09:14:00.000Z","cancel_at_period_end":false},"billing_configured":false,"terms_on_sale":[],"plans":[],"lifetime":{"tier":"tier1","name":"example","emails_total":-9007199254740991,"emails_used":-9007199254740991,"emails_left":-9007199254740991,"max_emails_per_month":-9007199254740991,"refundable":false},"lifetime_on_sale":false,"lifetime_plans":[],"lifetime_refund_rule":"example","viewer":{"role":"owner","can_purchase":false,"can_purchase_lifetime":false},"purchasable":[]}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/billing/checkout":{"post":{"summary":"Console: start a Stripe Checkout for a tier, term and volume.","operationId":"postBillingCheckout","tags":["billing"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostBillingCheckoutBody"},"example":{"tier":"starter"}}}},"x-error-codes":["billing_not_configured","csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_idempotency_key","mfa_required","not_found","payload_too_large","plan_not_purchasable","rate_limit_exceeded","session_required","subscription_active","term_not_on_sale","unsupported_media_type","validation_error"],"responses":{"201":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostBillingCheckoutReply"},"example":{"url":"https://yourapp.com/hooks/agentisend","checkout_session_id":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"},"503":{"$ref":"#/components/responses/ServiceUnavailable"}}}},"/billing/checkout/lifetime":{"post":{"summary":"Console: start a one-time Stripe Checkout for a lifetime plan, or an upgrade to a larger one for the difference.","operationId":"postBillingCheckoutLifetime","tags":["billing"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostBillingCheckoutLifetimeBody"},"example":{"tier":"tier1"}}}},"x-error-codes":["billing_not_configured","csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_idempotency_key","mfa_required","not_found","payload_too_large","plan_not_purchasable","rate_limit_exceeded","session_required","subscription_active","unsupported_media_type","validation_error"],"responses":{"201":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostBillingCheckoutLifetimeReply"},"example":{"url":"https://yourapp.com/hooks/agentisend","checkout_session_id":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"},"503":{"$ref":"#/components/responses/ServiceUnavailable"}}}},"/billing/overage":{"put":{"summary":"Console: turn opt-in overage on (with a ceiling of extra emails per period) or off.","description":"Owner only; paid plans only.","operationId":"putBillingOverage","tags":["billing"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PutBillingOverageBody"},"example":{"enabled":false}}}},"x-error-codes":["billing_customer_missing","billing_not_configured","csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_idempotency_key","mfa_required","not_found","overage_not_on_plan","payload_too_large","rate_limit_exceeded","session_required","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PutBillingOverageReply"},"example":{"policy":"pause","available":false,"enabled":false,"cap_emails":-9007199254740991,"consumed_this_period":-9007199254740991,"rate_minor_per_1000":-9007199254740991,"text":"example","auto_charges":false}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"},"503":{"$ref":"#/components/responses/ServiceUnavailable"}}}},"/billing/portal":{"post":{"summary":"Console: open the Stripe customer portal — its home (card, invoices), or straight on the confirm page of one plan change.","operationId":"postBillingPortal","tags":["billing"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostBillingPortalBody"},"example":{}}}},"x-error-codes":["billing_customer_missing","billing_not_configured","csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_idempotency_key","mfa_required","not_found","payload_too_large","plan_not_purchasable","portal_change_unavailable","rate_limit_exceeded","session_required","term_not_on_sale","unsupported_media_type","validation_error"],"responses":{"201":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostBillingPortalReply"},"example":{"url":"https://yourapp.com/hooks/agentisend"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"},"503":{"$ref":"#/components/responses/ServiceUnavailable"}}}},"/webhooks/stripe":{"post":{"summary":"Stripe → AgentiSend: signature-verified, deduplicated by event id.","operationId":"postWebhooksStripe","security":[],"tags":["billing"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["billing_not_configured","idempotency_in_flight","idempotency_payload_mismatch","internal_server_error","invalid_idempotency_key","payload_too_large","rate_limit_exceeded","service_unavailable","stripe_signature_invalid","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostWebhooksStripeReply"},"example":{"received":true,"status":"applied","event_id":"example","event_type":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"},"503":{"$ref":"#/components/responses/ServiceUnavailable"}}}},"/notifications":{"get":{"summary":"Conditions this account should know about.","description":"Open rows are live; resolved ones ended. One row per condition, counted, never one per re-fire.","operationId":"getNotifications","tags":["notifications"],"parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":500}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","required":false,"schema":{"type":"string"}},{"name":"before","in":"query","required":false,"schema":{"type":"string"}},{"name":"state","in":"query","required":false,"schema":{"type":"string","enum":["open","resolved"]}},{"name":"unread","in":"query","required":false,"schema":{"type":"string","enum":["true","false"]}}],"x-error-codes":["internal_server_error","invalid_api_key","invalid_cursor","invalid_parameter","mfa_required","missing_api_key","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetNotificationsReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/notifications/read":{"post":{"summary":"Mark notifications read.","description":"With no ids, every open row on the account is marked — the bell’s \"Mark all read\".","operationId":"postNotificationsRead","tags":["notifications"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostNotificationsReadBody"},"example":{}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostNotificationsReadReply"},"example":{"read":-9007199254740991}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/notifications/{id}/read":{"post":{"summary":"Mark one notification read.","description":"Reading it never resolves it — the condition ends the row, not the reader.","operationId":"postNotificationsByIdRead","tags":["notifications"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostNotificationsBy_idReadReply"},"example":{"id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","type":"budget_exhausted","dedupe_key":"example","state":"open","title":"example","body":"example","console_path":"example","occurrences":-9007199254740991,"first_seen_at":"2026-09-04T09:14:00.000Z","last_seen_at":"2026-09-04T09:14:00.000Z","read_at":"2026-09-04T09:14:00.000Z","resolved_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/notifications/preferences":{"get":{"summary":"Which channels each notification type uses.","description":"A type with no stored row is on for both.","operationId":"getNotificationsPreferences","tags":["notifications"],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","rate_limit_exceeded","restricted_api_key"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetNotificationsPreferencesReply"},"example":{"preferences":[]}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"patch":{"summary":"Turn a notification type on or off per channel.","description":"The gate is the type — there is no severity to mute instead.","operationId":"patchNotificationsPreferences","tags":["notifications"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchNotificationsPreferencesBody"},"example":{"preferences":[{"type":"budget_exhausted"}]}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetNotificationsPreferencesReply"},"example":{"preferences":[]}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/webhooks":{"post":{"summary":"Register an endpoint.","description":"The signing secret is returned exactly once.","operationId":"createWebhook","tags":["webhooks"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostWebhooksBody"}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error","webhook_endpoint_limit_reached"],"responses":{"201":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostWebhooksReply"},"example":{"object":"webhook","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","url":"example","endpoint":"example","events":[],"disabled":false,"status":"enabled","svix_compat":false,"payload_format":"native","last_delivery_status":"pending","created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z","secret":"example","signing_secret":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"get":{"summary":"List endpoints.","description":"Secrets are never returned after creation.","operationId":"getWebhooks","tags":["webhooks"],"parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":500}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","required":false,"schema":{"type":"string"}},{"name":"before","in":"query","required":false,"schema":{"type":"string"}}],"x-error-codes":["internal_server_error","invalid_api_key","invalid_cursor","invalid_parameter","mfa_required","missing_api_key","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetWebhooksReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/webhooks/{id}":{"get":{"summary":"Fetch one endpoint.","operationId":"getWebhooksById","tags":["webhooks"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetWebhooksBy_idReply"},"example":{"object":"webhook","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","url":"example","endpoint":"example","events":[],"disabled":false,"status":"enabled","svix_compat":false,"payload_format":"native","last_delivery_status":"pending","created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"patch":{"summary":"Update url, subscribed events, or the disabled flag.","operationId":"patchWebhooksById","tags":["webhooks"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchWebhooksBy_idBody"}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetWebhooksBy_idReply"},"example":{"object":"webhook","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","url":"example","endpoint":"example","events":[],"disabled":false,"status":"enabled","svix_compat":false,"payload_format":"native","last_delivery_status":"pending","created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"delete":{"summary":"Delete an endpoint and its queued deliveries.","operationId":"deleteWebhooksById","tags":["webhooks"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteWebhooksBy_idReply"},"example":{"object":"webhook","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","deleted":false}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/webhooks/{id}/replay":{"post":{"summary":"Re-send past events to this endpoint, by time range and/or a single event id.","operationId":"postWebhooksByIdReplay","tags":["webhooks"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"since","in":"query","required":false,"schema":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"}},{"name":"until","in":"query","required":false,"schema":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"}},{"name":"event_type","in":"query","required":false,"schema":{"type":"string","enum":["email.queued","email.sent","email.delivered","email.delivery_delayed","email.bounced","email.complained","email.opened","email.clicked","email.failed","email.scheduled","email.canceled","email.suppressed","domain.created","domain.verified","domain.failed","domain.updated","domain.deleted","suppression.added","suppression.removed","limit.warning","limit.exceeded","agent.approval_requested","agent.approved","agent.rejected","agent.killed","contact.created","contact.updated","contact.deleted","segment.joined","segment.left","segment.created","segment.updated","segment.deleted","broadcast.scheduled","broadcast.sent","broadcast.updated","automation.triggered","email.received","topic.created","topic.updated","topic.deleted","contact.subscribed","contact.unsubscribed","trust.warning","trust.throttled","trust.paused","trust.appealed","trust.restored"]}},{"name":"event_id","in":"query","required":false,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"dry_run","in":"query","required":false,"schema":{"anyOf":[{"type":"string","const":"true"},{"type":"string","const":"false"},{"type":"boolean"}]}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostWebhooksBy_idReplayReply"},"example":{"count":-9007199254740991}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/webhooks/{id}/deliveries":{"get":{"summary":"Every delivery to this endpoint, with each attempt and what the receiver answered.","operationId":"getWebhooksByIdDeliveries","tags":["webhooks"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"id","in":"query","required":false,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"event_type","in":"query","required":false,"schema":{"type":"string","enum":["email.queued","email.sent","email.delivered","email.delivery_delayed","email.bounced","email.complained","email.opened","email.clicked","email.failed","email.scheduled","email.canceled","email.suppressed","domain.created","domain.verified","domain.failed","domain.updated","domain.deleted","suppression.added","suppression.removed","limit.warning","limit.exceeded","agent.approval_requested","agent.approved","agent.rejected","agent.killed","contact.created","contact.updated","contact.deleted","segment.joined","segment.left","segment.created","segment.updated","segment.deleted","broadcast.scheduled","broadcast.sent","broadcast.updated","automation.triggered","email.received","topic.created","topic.updated","topic.deleted","contact.subscribed","contact.unsubscribed","trust.warning","trust.throttled","trust.paused","trust.appealed","trust.restored"]}},{"name":"status","in":"query","required":false,"schema":{"type":"string","enum":["pending","retrying","delivered","dead_lettered"]}},{"name":"since","in":"query","required":false,"schema":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"}},{"name":"until","in":"query","required":false,"schema":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"}},{"name":"limit","in":"query","required":false,"schema":{"default":25,"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"after","in":"query","required":false,"schema":{"type":"string","minLength":1}}],"x-error-codes":["internal_server_error","invalid_api_key","invalid_cursor","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetWebhooksBy_idDeliveriesReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/webhooks/{id}/rotate-secret":{"post":{"summary":"Mint a new signing secret.","description":"Returned once. The previous secret keeps verifying for 24 hours, and deliveries in that window are signed with both.","operationId":"postWebhooksByIdRotateSecret","tags":["webhooks"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostWebhooksBy_idRotate_secretReply"},"example":{"object":"webhook","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","secret":"example","signing_secret":"example","rotated_at":"2026-09-04T09:14:00.000Z","previous_secret_expires_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/webhooks/{id}/signing-secret/rotate":{"post":{"summary":"Mint a new signing secret.","description":"Returned once. The previous secret keeps verifying for 24 hours, and deliveries in that window are signed with both.","operationId":"postWebhooksByIdSigningSecretRotate","tags":["webhooks"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostWebhooksBy_idSigning_secretRotateReply"},"example":{"object":"webhook","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","secret":"example","signing_secret":"example","rotated_at":"2026-09-04T09:14:00.000Z","previous_secret_expires_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/webhooks/{id}/events":{"get":{"summary":"Events sent to this endpoint, newest first.","description":"Each is one delivery; /deliveries has the full attempt log.","operationId":"getWebhooksByIdEvents","tags":["webhooks"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"limit","in":"query","required":false,"schema":{"default":25,"type":"integer","minimum":1,"maximum":100}},{"name":"after","in":"query","required":false,"schema":{"type":"string","minLength":1}}],"x-error-codes":["internal_server_error","invalid_api_key","invalid_cursor","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetWebhooksBy_idEventsReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/webhooks/{id}/events/{event_id}":{"get":{"summary":"One event sent to this endpoint, with its payload and when the next attempt is due.","operationId":"getWebhooksByIdEventsByEventId","tags":["webhooks"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"event_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetWebhooksBy_idEventsBy_event_idReply"},"example":{"id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","type":"example","created_at":"2026-09-04T09:14:00.000Z","status":"pending","object":"webhook_event","next_attempt_at":"2026-09-04T09:14:00.000Z","payload":{}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/webhooks/{id}/events/{event_id}/attempts":{"get":{"summary":"Every attempt to deliver one event, with the status code and body the receiver answered.","operationId":"getWebhooksByIdEventsByEventIdAttempts","tags":["webhooks"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"event_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"limit","in":"query","required":false,"schema":{"default":25,"type":"integer","minimum":1,"maximum":100}},{"name":"after","in":"query","required":false,"schema":{"type":"string","minLength":1}}],"x-error-codes":["internal_server_error","invalid_api_key","invalid_cursor","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetWebhooksBy_idEventsBy_event_idAttemptsReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/webhooks/{id}/events/{event_id}/replay":{"post":{"summary":"Send one event to this endpoint again.","description":"The receiver gets it as a new delivery marked as a replay.","operationId":"postWebhooksByIdEventsByEventIdReplay","tags":["webhooks"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"event_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostWebhooksBy_idEventsBy_event_idReplayReply"},"example":{"object":"webhook_event","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/webhooks/{id}/dead-letters":{"get":{"summary":"Deliveries this endpoint exhausted every retry on, with the payload to inspect.","operationId":"getWebhooksByIdDeadLetters","tags":["webhooks"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"limit","in":"query","required":false,"schema":{"default":20,"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"after","in":"query","required":false,"schema":{"type":"string","minLength":1}}],"x-error-codes":["internal_server_error","invalid_api_key","invalid_cursor","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetWebhooksBy_idDead_lettersReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/limits/keys":{"get":{"summary":"The fleet: every key with its budget, ceiling, consumption, identity and current loop state.","operationId":"getLimitsKeys","tags":["limits"],"parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":500}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","required":false,"schema":{"type":"string"}},{"name":"before","in":"query","required":false,"schema":{"type":"string"}}],"x-error-codes":["internal_server_error","invalid_api_key","invalid_cursor","invalid_parameter","mfa_required","missing_api_key","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetLimitsKeysReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/limits/kill-all":{"post":{"summary":"Pause every key on this account at once.","description":"Takes effect on the next request.","operationId":"killAllKeys","tags":["limits"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostLimitsKill_allBody"},"example":{}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostLimitsKill_allReply"},"example":{"paused":false,"affected_key_ids":[],"at":"2026-09-04T09:14:00.000Z","reason":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/limits/resume-all":{"post":{"summary":"Undo the global kill switch.","description":"A person signed in to the console does this; budgets and ceilings are unchanged, and a key killed on its own stays paused.","operationId":"postLimitsResumeAll","tags":["limits"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostLimitsResume_allBody"},"example":{}}}},"x-error-codes":["csrf_origin_rejected","human_action_required","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostLimitsKill_allReply"},"example":{"paused":false,"affected_key_ids":[],"at":"2026-09-04T09:14:00.000Z","reason":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/limits/keys/{id}":{"get":{"summary":"Budget, ceiling and current consumption for one key.","operationId":"getLimitsKeysById","tags":["limits"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetLimitsKeysBy_idReply"},"example":{"api_key_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","budget_per_period":-9007199254740991,"period":"hourly","consumed_in_period":-9007199254740991,"period_started_at":"2026-09-04T09:14:00.000Z","rate_ceiling_per_minute":-9007199254740991,"consumed_in_window":-9007199254740991,"rate_window_started_at":"2026-09-04T09:14:00.000Z","paused":false,"paused_at":"2026-09-04T09:14:00.000Z","paused_reason":"example","updated_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"patch":{"summary":"Set or clear this key’s period budget and per-minute ceiling.","description":"An API key may lower its own; raising one is a person’s decision, made in the console.","operationId":"patchLimitsKeysById","tags":["limits"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchLimitsKeysBy_idBody"}}}},"x-error-codes":["csrf_origin_rejected","human_action_required","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","key_budget_exceeds_plan","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetLimitsKeysBy_idReply"},"example":{"api_key_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","budget_per_period":-9007199254740991,"period":"hourly","consumed_in_period":-9007199254740991,"period_started_at":"2026-09-04T09:14:00.000Z","rate_ceiling_per_minute":-9007199254740991,"consumed_in_window":-9007199254740991,"rate_window_started_at":"2026-09-04T09:14:00.000Z","paused":false,"paused_at":"2026-09-04T09:14:00.000Z","paused_reason":"example","updated_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/limits/keys/{id}/kill":{"post":{"summary":"Stop this key from sending, immediately.","description":"Takes effect on the next request.","operationId":"postLimitsKeysByIdKill","tags":["limits"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostLimitsKeysBy_idKillBody"},"example":{}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetLimitsKeysBy_idReply"},"example":{"api_key_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","budget_per_period":-9007199254740991,"period":"hourly","consumed_in_period":-9007199254740991,"period_started_at":"2026-09-04T09:14:00.000Z","rate_ceiling_per_minute":-9007199254740991,"consumed_in_window":-9007199254740991,"rate_window_started_at":"2026-09-04T09:14:00.000Z","paused":false,"paused_at":"2026-09-04T09:14:00.000Z","paused_reason":"example","updated_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/limits/keys/{id}/resume":{"post":{"summary":"Undo the kill switch.","description":"A person signed in to the console does this; budgets and ceilings are unchanged.","operationId":"postLimitsKeysByIdResume","tags":["limits"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["csrf_origin_rejected","human_action_required","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetLimitsKeysBy_idReply"},"example":{"api_key_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","budget_per_period":-9007199254740991,"period":"hourly","consumed_in_period":-9007199254740991,"period_started_at":"2026-09-04T09:14:00.000Z","rate_ceiling_per_minute":-9007199254740991,"consumed_in_window":-9007199254740991,"rate_window_started_at":"2026-09-04T09:14:00.000Z","paused":false,"paused_at":"2026-09-04T09:14:00.000Z","paused_reason":"example","updated_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/domains":{"post":{"summary":"Register a sending domain.","description":"Region is optional and defaults to us (Oregon); the stored value is returned.","operationId":"createDomain","tags":["domains"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostDomainsBody"},"example":{"name":"example"}}}},"x-error-codes":["csrf_origin_rejected","domain_already_exists","domain_blocklisted","domain_limit_reached","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","invalid_parameter","invalid_region","mailbox_provider_domain","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","return_path_subdomain_in_use","sending_domain_blocked","unsupported_media_type","validation_error"],"responses":{"201":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostDomainsReply"},"example":{"object":"domain","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","zone":"example","region":"us","status":"pending","dkim_selector":"example","click_tracking":false,"open_tracking":false,"tracking_subdomain":"example","return_path_subdomain":"example","tls_mode":"opportunistic","capabilities":{"sending":"enabled","receiving":"enabled"},"records":[],"created_at":"2026-09-04T09:14:00.000Z","verified_at":"2026-09-04T09:14:00.000Z","tracking_issues":[],"provider_hints":{"cloudflare":"example","route53":"example","namecheap":"example","godaddy":"example"},"warnings":[],"recent_events":[]}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"get":{"summary":"List domains.","description":"Items omit records; GET /domains/:id has the DNS sheet.","operationId":"getDomains","tags":["domains"],"parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":500}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","required":false,"schema":{"type":"string"}},{"name":"before","in":"query","required":false,"schema":{"type":"string"}}],"x-error-codes":["internal_server_error","invalid_api_key","invalid_cursor","invalid_parameter","mfa_required","missing_api_key","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetDomainsReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/domains/claim":{"post":{"summary":"Start a claim for a domain another account has verified.","description":"Returns a TXT record to publish; nothing moves until you verify the claim and the safety checks pass.","operationId":"claimDomain","tags":["domains"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostDomainsClaimBody"},"example":{"name":"example"}}}},"x-error-codes":["csrf_origin_rejected","domain_already_exists","domain_blocklisted","domain_limit_reached","domain_not_claimable","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","invalid_parameter","invalid_region","mailbox_provider_domain","mfa_required","missing_api_key","payload_too_large","rate_limit_exceeded","restricted_api_key","return_path_subdomain_in_use","sending_domain_blocked","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostDomainsClaimReply"},"example":{"object":"domain_claim","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","status":"pending","domain_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","region":"us","record":{"type":"TXT","name":"example","value":"example","ttl":"example"},"blocked_reason":"grace_period","failure_reason":"example","created_at":"2026-09-04T09:14:00.000Z","expires_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/domains/{id}/claim":{"get":{"summary":"The latest claim for the placeholder domain a claim created.","description":"Poll it to follow the claim to completed.","operationId":"getDomainsByIdClaim","tags":["domains"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$","description":"The placeholder domain id returned by the claim."}}],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostDomainsClaimReply"},"example":{"object":"domain_claim","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","status":"pending","domain_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","region":"us","record":{"type":"TXT","name":"example","value":"example","ttl":"example"},"blocked_reason":"grace_period","failure_reason":"example","created_at":"2026-09-04T09:14:00.000Z","expires_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/domains/{id}/claim/verify":{"post":{"summary":"Check the claim’s TXT record and, when it is there, run the ownership checks and move the domain.","description":"Answers pending, blocked (with the reason) or completed.","operationId":"verifyDomainClaim","tags":["domains"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$","description":"The placeholder domain id returned by the claim."}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostDomainsClaimReply"},"example":{"object":"domain_claim","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","status":"pending","domain_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","region":"us","record":{"type":"TXT","name":"example","value":"example","ttl":"example"},"blocked_reason":"grace_period","failure_reason":"example","created_at":"2026-09-04T09:14:00.000Z","expires_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/domains/check":{"get":{"summary":"Whether POST /domains would accept this name, and the refusal it would give if not.","description":"Creates nothing.","operationId":"checkDomain","tags":["domains"],"parameters":[{"name":"name","in":"query","required":true,"schema":{"type":"string","minLength":1,"maxLength":253,"description":"The domain to check, as you would send it to POST /domains."}}],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetDomainsCheckReply"},"example":{"name":"example","can_add":false,"blocklist":"listed","problems":[]}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/domains/{id}":{"get":{"summary":"One domain, with the DNS to publish and what each record last resolved to.","operationId":"getDomainsById","tags":["domains"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":253,"description":"Domain id (UUID) or name."}}],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostDomainsReply"},"example":{"object":"domain","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","zone":"example","region":"us","status":"pending","dkim_selector":"example","click_tracking":false,"open_tracking":false,"tracking_subdomain":"example","return_path_subdomain":"example","tls_mode":"opportunistic","capabilities":{"sending":"enabled","receiving":"enabled"},"records":[],"created_at":"2026-09-04T09:14:00.000Z","verified_at":"2026-09-04T09:14:00.000Z","tracking_issues":[],"provider_hints":{"cloudflare":"example","route53":"example","namecheap":"example","godaddy":"example"},"warnings":[],"recent_events":[]}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"patch":{"summary":"Turn click or open tracking on, change the tracking subdomain, or turn sending and receiving on or off.","description":"Name, region and return-path cannot change.","operationId":"patchDomainsById","tags":["domains"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":253,"description":"Domain id (UUID) or name."}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchDomainsBy_idBody"},"example":{}}}},"x-error-codes":["csrf_origin_rejected","domain_field_immutable","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","invalid_parameter","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","tracking_subdomain_cannot_be_removed","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostDomainsReply"},"example":{"object":"domain","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","zone":"example","region":"us","status":"pending","dkim_selector":"example","click_tracking":false,"open_tracking":false,"tracking_subdomain":"example","return_path_subdomain":"example","tls_mode":"opportunistic","capabilities":{"sending":"enabled","receiving":"enabled"},"records":[],"created_at":"2026-09-04T09:14:00.000Z","verified_at":"2026-09-04T09:14:00.000Z","tracking_issues":[],"provider_hints":{"cloudflare":"example","route53":"example","namecheap":"example","godaddy":"example"},"warnings":[],"recent_events":[]}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"delete":{"summary":"Remove a domain and its records.","description":"Messages already sent keep their history.","operationId":"deleteDomainsById","tags":["domains"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":253,"description":"Domain id (UUID) or name."}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["csrf_origin_rejected","human_action_required","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteDomainsBy_idReply"},"example":{"object":"domain","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","deleted":false}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/domains/{id}/events":{"get":{"summary":"Newest-first timeline for one domain.","description":"Rows cover added, the first DNS check, each required record found or lost, verified, no longer verified, the 72-hour window closing, and deleted.","operationId":"getDomainsByIdEvents","tags":["domains"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":253,"description":"Domain id (UUID) or name."}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":500}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","required":false,"schema":{"type":"string"}},{"name":"before","in":"query","required":false,"schema":{"type":"string"}}],"x-error-codes":["internal_server_error","invalid_api_key","invalid_cursor","invalid_parameter","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetDomainsBy_idEventsReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/domains/{id}/verify":{"post":{"summary":"Re-check every record and update the domain’s status.","operationId":"verifyDomain","tags":["domains"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":253,"description":"Domain id (UUID) or name."}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["csrf_origin_rejected","domain_verified_elsewhere","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","sending_domain_blocked","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostDomainsReply"},"example":{"object":"domain","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","zone":"example","region":"us","status":"pending","dkim_selector":"example","click_tracking":false,"open_tracking":false,"tracking_subdomain":"example","return_path_subdomain":"example","tls_mode":"opportunistic","capabilities":{"sending":"enabled","receiving":"enabled"},"records":[],"created_at":"2026-09-04T09:14:00.000Z","verified_at":"2026-09-04T09:14:00.000Z","tracking_issues":[],"provider_hints":{"cloudflare":"example","route53":"example","namecheap":"example","godaddy":"example"},"warnings":[],"recent_events":[]}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/domains/{id}/wait":{"get":{"summary":"Long-poll a domain until it is verified or failed, or until timeout (0–25 seconds).","description":"timeout=0 is a snapshot. Does not re-check DNS; the server checks on its own.","operationId":"getDomainsByIdWait","tags":["domains"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":253,"description":"Domain id (UUID) or name."}},{"name":"timeout","in":"query","required":false,"schema":{"default":25,"type":"integer","minimum":0,"maximum":25}}],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetDomainsBy_idWaitReply"},"example":{"id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","status":"pending","next_poll_seconds":0,"deadline":"2026-09-04T09:14:00.000Z","reason":"ok","progress":{"required_verified":0,"required_total":0}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/domains/{id}/setup":{"get":{"summary":"One-shot DNS setup: zone file, copy-paste commands, provider detection, and every record with host, zone, value_strings.","operationId":"getDomainsByIdSetup","tags":["domains"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":253,"description":"Domain id (UUID) or name."}}],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetDomainsBy_idSetupReply"},"example":{"domain":"example","zone":"example","detected":false,"provider":{"id":"example","name":"example","dnsConsoleUrl":"example"},"nameservers":[],"provider_hints":{"cloudflare":"example","route53":"example","namecheap":"example","godaddy":"example"},"records":[],"zone_file":"example","commands":{"cloudflare":[],"route53":{},"gcloud":[]},"deep_link":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/domains/{id}/connect":{"get":{"summary":"Alias of GET /domains/:id/setup.","description":"Domain Connect: detect the DNS provider and hand back the exact records to add.","operationId":"getDomainsByIdConnect","tags":["domains"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":253,"description":"Domain id (UUID) or name."}}],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetDomainsBy_idSetupReply"},"example":{"domain":"example","zone":"example","detected":false,"provider":{"id":"example","name":"example","dnsConsoleUrl":"example"},"nameservers":[],"provider_hints":{"cloudflare":"example","route53":"example","namecheap":"example","godaddy":"example"},"records":[],"zone_file":"example","commands":{"cloudflare":[],"route53":{},"gcloud":[]},"deep_link":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/trust/thresholds":{"get":{"summary":"The published enforcement thresholds and the ladder they drive.","description":"Same constants the ladder acts on, so nothing that draws a line has to hard-code one.","operationId":"getTrustThresholds","tags":["trust"],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","rate_limit_exceeded"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetTrustThresholdsReply"},"example":{"window_days":-9007199254740991,"min_sample":-9007199254740991,"early_min_events":{"bounce":-9007199254740991,"complaint":-9007199254740991},"throttled_sends_per_minute":-9007199254740991,"ladder":[],"metrics":{"bounce":{"warn":1,"throttle":1,"pause":1},"complaint":{"warn":1,"throttle":1,"pause":1}}}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/trust/standing":{"get":{"summary":"This account’s standing, machine-readable.","description":"An agent can query it and back off before enforcement does it for them.","operationId":"getTrustStanding","tags":["trust"],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","not_found","rate_limit_exceeded"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetTrustStandingReply"},"example":{"state":"ok","streams":{"transactional":{"state":"ok","sent":-9007199254740991,"bounced":-9007199254740991,"complained":-9007199254740991,"bounce_rate":1,"complaint_rate":1},"marketing":{"state":"ok","sent":-9007199254740991,"bounced":-9007199254740991,"complained":-9007199254740991,"bounce_rate":1,"complaint_rate":1}},"window_days":-9007199254740991,"reasons":[],"reason_codes":[],"next_review_at":"2026-09-04T09:14:00.000Z","sla_deadline_at":"2026-09-04T09:14:00.000Z","history":[]}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/trust/appeal":{"post":{"summary":"File an appeal against the current standing.","description":"The reason is recorded verbatim; a human answers by sla_deadline_at, between APPEAL_SLA_MIN_HOURS and APPEAL_SLA_HOURS after filing. Also opens a support ticket (support_ticket_id) — a repeated appeal on the same standing adds to that ticket instead of opening a second one.","operationId":"postTrustAppeal","tags":["trust"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostTrustAppealBody"},"example":{"reason":"examplexxx"}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"201":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostTrustAppealReply"},"example":{"state":"ok","streams":{"transactional":{"state":"ok","sent":-9007199254740991,"bounced":-9007199254740991,"complained":-9007199254740991,"bounce_rate":1,"complaint_rate":1},"marketing":{"state":"ok","sent":-9007199254740991,"bounced":-9007199254740991,"complained":-9007199254740991,"bounce_rate":1,"complaint_rate":1}},"window_days":-9007199254740991,"reasons":[],"reason_codes":[],"next_review_at":"2026-09-04T09:14:00.000Z","sla_deadline_at":"2026-09-04T09:14:00.000Z","history":[],"support_ticket_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/trust/remediation":{"get":{"summary":"The remediation checklist ticks for this account.","description":"Per account, not per browser — the work one person does is done for everyone on it.","operationId":"getTrustRemediation","tags":["trust"],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","rate_limit_exceeded"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetTrustRemediationReply"},"example":{"items":[]}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"post":{"summary":"Tick or untick one remediation item.","description":"Returns the whole checklist.","operationId":"postTrustRemediation","tags":["trust"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostTrustRemediationBody"},"example":{"key":"example","done":false}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetTrustRemediationReply"},"example":{"items":[]}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/account":{"get":{"summary":"This account: lifecycle status, the reason it is in that state, and when it was created.","description":"Sandboxed accounts may only send to their own verified domains.","operationId":"getAccount","tags":["accounts"],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetAccountReply"},"example":{"id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","status":"sandboxed","approval_reason":"example","created_at":"2026-09-04T09:14:00.000Z","is_review_account":false,"onboarding_sender":{"from":"example","delivered_from":"example"},"onboarding":{"contact_name":"example","company":"example","website":"example","website_domain":"example","use_cases":[],"expected_volume":"under_30k","completed_at":"2026-09-04T09:14:00.000Z","checklist_dismissed_at":"2026-09-04T09:14:00.000Z","connect_agent_moment_due":false},"postal_address":"example"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"patch":{"summary":"Change account settings.","description":"postal_address is the sender address printed in every broadcast footer; a broadcast is not sent until it is set. null clears it.","operationId":"patchAccount","tags":["accounts"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchAccountBody"},"example":{"postal_address":"example"}}}},"x-error-codes":["idempotency_in_flight","idempotency_payload_mismatch","internal_server_error","invalid_idempotency_key","payload_too_large","rate_limit_exceeded","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetAccountReply"},"example":{"id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","status":"sandboxed","approval_reason":"example","created_at":"2026-09-04T09:14:00.000Z","is_review_account":false,"onboarding_sender":{"from":"example","delivered_from":"example"},"onboarding":{"contact_name":"example","company":"example","website":"example","website_domain":"example","use_cases":[],"expected_volume":"under_30k","completed_at":"2026-09-04T09:14:00.000Z","checklist_dismissed_at":"2026-09-04T09:14:00.000Z","connect_agent_moment_due":false},"postal_address":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"delete":{"summary":"Close this account: keys stop now.","description":"Everything on the account is deleted after the retention window. Unused prepaid time is refunded.","operationId":"deleteAccount","tags":["accounts"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","invalid_parameter","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","session_required","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteAccountReply"},"example":{"status":"suspended","closed_at":"2026-09-04T09:14:00.000Z","keys_revoked":-9007199254740991,"retention_days":-9007199254740991,"data_removed_after":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/account/onboarding":{"patch":{"summary":"Console: the onboarding answers — your name, the company (which becomes the account name), the website, what you will send and roughly how much.","description":"Send completed: true to finish; only your name is required.","operationId":"patchAccountOnboarding","tags":["accounts"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchAccountOnboardingBody"},"example":{}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","invalid_parameter","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","session_required","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetAccountReply"},"example":{"id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","status":"sandboxed","approval_reason":"example","created_at":"2026-09-04T09:14:00.000Z","is_review_account":false,"onboarding_sender":{"from":"example","delivered_from":"example"},"onboarding":{"contact_name":"example","company":"example","website":"example","website_domain":"example","use_cases":[],"expected_volume":"under_30k","completed_at":"2026-09-04T09:14:00.000Z","checklist_dismissed_at":"2026-09-04T09:14:00.000Z","connect_agent_moment_due":false},"postal_address":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/account/export":{"get":{"summary":"A zip of this account's data, with a row count for every file in manifest.json.","description":"Messages inside the retention window include the body. The zip also holds events, received mail, contacts, templates, webhooks without the signing secret, this account's suppressions, domains, support requests, the audit log, the team and key names. No file is cut short without saying so. No job, no wait.","operationId":"getAccountExport","tags":["accounts"],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","rate_limit_exceeded","session_required"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/support/config":{"get":{"summary":"Topics, hours, attachment limits and any current support notice, for opening a support request.","operationId":"getSupportConfig","tags":["support"],"x-error-codes":["internal_server_error","mfa_required","rate_limit_exceeded","session_required"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetSupportConfigReply"},"example":{"notice":{"markdown":"example","until":"2026-09-04T09:14:00.000Z"},"hours_label":"example","response_time_label":"example","scale_response_time_label":"example","topics":[],"attachment_limits":{"max_files_per_message":-9007199254740991,"max_bytes_per_file":-9007199254740991,"max_bytes_per_message":-9007199254740991}}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/support":{"get":{"summary":"Support requests on this account, newest activity first.","operationId":"getSupport","tags":["support"],"parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":500}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","required":false,"schema":{"type":"string"}},{"name":"before","in":"query","required":false,"schema":{"type":"string"}}],"x-error-codes":["internal_server_error","invalid_cursor","invalid_parameter","mfa_required","rate_limit_exceeded","session_required","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetSupportReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"post":{"summary":"Open a support request.","operationId":"postSupport","tags":["support"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostSupportBody"},"example":{"topic":"sending","subject":"example","message":"example"}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_idempotency_key","mfa_required","payload_too_large","rate_limit_exceeded","session_required","support_rate_limited","support_ticket_not_found","unsupported_media_type","validation_error"],"responses":{"201":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostSupportReply"},"example":{"id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","ref":-9007199254740991,"ref_label":"example","subject":"example","topic":"sending","status":"open","status_label":"example","last_message_at":"2026-09-04T09:14:00.000Z","last_message_preview":"example","has_unread_reply":false,"message_count":-9007199254740991,"created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z","related_type":"example","related_id":"example","resolved_at":"2026-09-04T09:14:00.000Z","closed_at":"2026-09-04T09:14:00.000Z","can_reopen":false,"csat_score":-9007199254740991,"messages":[]}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/support/search":{"get":{"summary":"Search the docs, published answers and open known issues before opening a request.","description":"At most 10 results.","operationId":"getSupportSearch","tags":["support"],"parameters":[{"name":"q","in":"query","required":false,"schema":{"default":"","type":"string","maxLength":200}}],"x-error-codes":["internal_server_error","invalid_parameter","mfa_required","rate_limit_exceeded","session_required","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetSupportSearchReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/support/answers":{"get":{"summary":"Published answers, newest first.","operationId":"getSupportAnswers","tags":["support"],"parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":500}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","required":false,"schema":{"type":"string"}},{"name":"before","in":"query","required":false,"schema":{"type":"string"}}],"x-error-codes":["internal_server_error","invalid_cursor","invalid_parameter","mfa_required","rate_limit_exceeded","session_required","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetSupportAnswersReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/support/answers/{slug}":{"get":{"summary":"One published answer.","operationId":"getSupportAnswersBySlug","tags":["support"],"parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":120}}],"x-error-codes":["internal_server_error","mfa_required","not_found","rate_limit_exceeded","session_required","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetSupportAnswersBy_slugReply"},"example":{"id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","slug":"example","title":"example","body_markdown":"example","helpful_yes":-9007199254740991,"helpful_no":-9007199254740991,"published_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/support/answers/{slug}/helpful":{"post":{"summary":"Say whether a published answer helped.","description":"One vote per person per answer a day.","operationId":"postSupportAnswersBySlugHelpful","tags":["support"],"parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":120}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostSupportAnswersBy_slugHelpfulBody"},"example":{"helpful":false}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_idempotency_key","mfa_required","not_found","payload_too_large","rate_limit_exceeded","session_required","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostSupportAnswersBy_slugHelpfulReply"},"example":{"ok":true,"counted":false}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/support/known-issues":{"get":{"summary":"Known issues we are working on or watching, newest first, and whether you follow each.","operationId":"getSupportKnownIssues","tags":["support"],"x-error-codes":["internal_server_error","mfa_required","rate_limit_exceeded","session_required"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetSupportKnown_issuesReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/support/known-issues/{id}/subscribe":{"post":{"summary":"Get one email when a known issue is resolved.","operationId":"postSupportKnownIssuesByIdSubscribe","tags":["support"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostSupportKnown_issuesBy_idSubscribeBody"},"example":{}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_idempotency_key","mfa_required","not_found","payload_too_large","rate_limit_exceeded","session_required","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostSupportKnown_issuesBy_idSubscribeReply"},"example":{"ok":true}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/support/uploads":{"post":{"summary":"Stage files to attach to a support message.","description":"JSON base64; 5 files, 10 MB each, 25 MB total.","operationId":"postSupportUploads","tags":["support"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostSupportUploadsBody"},"example":{"files":[{"filename":"example","mime_type":"example","content_base64":"example"}]}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_idempotency_key","mfa_required","payload_too_large","rate_limit_exceeded","session_required","support_upload_rejected","support_upload_too_large","unsupported_media_type","validation_error"],"responses":{"201":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostSupportUploadsReply"},"example":{"files":[]}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/support/{ref}":{"get":{"summary":"One support request and its public thread.","operationId":"getSupportByRef","tags":["support"],"parameters":[{"name":"ref","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":64}}],"x-error-codes":["internal_server_error","mfa_required","rate_limit_exceeded","session_required","support_ticket_not_found","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostSupportReply"},"example":{"id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","ref":-9007199254740991,"ref_label":"example","subject":"example","topic":"sending","status":"open","status_label":"example","last_message_at":"2026-09-04T09:14:00.000Z","last_message_preview":"example","has_unread_reply":false,"message_count":-9007199254740991,"created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z","related_type":"example","related_id":"example","resolved_at":"2026-09-04T09:14:00.000Z","closed_at":"2026-09-04T09:14:00.000Z","can_reopen":false,"csat_score":-9007199254740991,"messages":[]}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/support/{ref}/messages":{"post":{"summary":"Reply on a support request.","operationId":"postSupportByRefMessages","tags":["support"],"parameters":[{"name":"ref","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":64}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostSupportBy_refMessagesBody"},"example":{"message":"example"}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_idempotency_key","mfa_required","payload_too_large","rate_limit_exceeded","session_required","support_closed","support_rate_limited","support_ticket_not_found","unsupported_media_type","validation_error"],"responses":{"201":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostSupportBy_refMessagesReply"},"example":{"id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","ticket_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","author_type":"customer","author_name":"example","visibility":"public","channel":"form","body_text":"example","body_html":"example","attachments":[],"created_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/support/{ref}/resolve":{"post":{"summary":"Mark a support request resolved.","operationId":"postSupportByRefResolve","tags":["support"],"parameters":[{"name":"ref","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":64}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostSupportBy_refResolveBody"},"example":{}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_idempotency_key","mfa_required","payload_too_large","rate_limit_exceeded","session_required","support_closed","support_ticket_not_found","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostSupportReply"},"example":{"id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","ref":-9007199254740991,"ref_label":"example","subject":"example","topic":"sending","status":"open","status_label":"example","last_message_at":"2026-09-04T09:14:00.000Z","last_message_preview":"example","has_unread_reply":false,"message_count":-9007199254740991,"created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z","related_type":"example","related_id":"example","resolved_at":"2026-09-04T09:14:00.000Z","closed_at":"2026-09-04T09:14:00.000Z","can_reopen":false,"csat_score":-9007199254740991,"messages":[]}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/support/{ref}/reopen":{"post":{"summary":"Reopen a resolved request within 14 days.","operationId":"postSupportByRefReopen","tags":["support"],"parameters":[{"name":"ref","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":64}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostSupportBy_refReopenBody"},"example":{}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_idempotency_key","mfa_required","payload_too_large","rate_limit_exceeded","session_required","support_closed","support_reopen_expired","support_ticket_not_found","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostSupportReply"},"example":{"id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","ref":-9007199254740991,"ref_label":"example","subject":"example","topic":"sending","status":"open","status_label":"example","last_message_at":"2026-09-04T09:14:00.000Z","last_message_preview":"example","has_unread_reply":false,"message_count":-9007199254740991,"created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z","related_type":"example","related_id":"example","resolved_at":"2026-09-04T09:14:00.000Z","closed_at":"2026-09-04T09:14:00.000Z","can_reopen":false,"csat_score":-9007199254740991,"messages":[]}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/support/{ref}/csat":{"post":{"summary":"Rate a resolved support request, 1 to 5.","operationId":"postSupportByRefCsat","tags":["support"],"parameters":[{"name":"ref","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":64}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostSupportBy_refCsatBody"},"example":{"score":1}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_idempotency_key","mfa_required","payload_too_large","rate_limit_exceeded","session_required","support_closed","support_ticket_not_found","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostSupportBy_refCsatReply"},"example":{"ok":true}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/support/attachments/{id}/download":{"get":{"summary":"Download an attachment on a request this account owns.","operationId":"getSupportAttachmentsByIdDownload","tags":["support"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}],"x-error-codes":["internal_server_error","mfa_required","rate_limit_exceeded","session_required","support_attachment_expired","support_ticket_not_found","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"410":{"$ref":"#/components/responses/Gone"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/audit-log":{"get":{"summary":"Changes made on this account (keys, limits, kill switch, domains, webhooks, suppressions, contacts, segments, topics, templates, broadcasts, automations,…","description":"Changes made on this account (keys, limits, kill switch, domains, webhooks, suppressions, contacts, segments, topics, templates, broadcasts, automations, approvals, team, billing), with the value before and after. Sending an email is its own record, not here. Newest first.","operationId":"getAuditLog","tags":["audit"],"parameters":[{"name":"limit","in":"query","required":false,"schema":{"default":50,"type":"integer","minimum":1,"maximum":200}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"after","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"actor","in":"query","required":false,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"action","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":100}},{"name":"from","in":"query","required":false,"schema":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},{"name":"to","in":"query","required":false,"schema":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}}],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetAudit_logReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/team/members":{"get":{"summary":"Everyone on this account and the role each one holds.","description":"Owner, admin, viewer — three roles, and seats are never billed per seat.","operationId":"getTeamMembers","tags":["team"],"parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":500}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","required":false,"schema":{"type":"string"}},{"name":"before","in":"query","required":false,"schema":{"type":"string"}}],"x-error-codes":["internal_server_error","invalid_api_key","invalid_cursor","invalid_parameter","mfa_required","missing_api_key","rate_limit_exceeded","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetTeamMembersReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"post":{"summary":"Add someone to this account.","description":"Membership begins when they accept, so this returns the pending invitation — the same call as POST /team/invites.","operationId":"postTeamMembers","tags":["team"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostTeamInvitesBody"},"example":{"email":"customer@example.com"}}}},"x-error-codes":["already_in_account","csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","invite_limit_reached","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","seat_limit_reached","session_required","unsupported_media_type","validation_error"],"responses":{"201":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostTeamInvitesReply"},"example":{"id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","email":"example","role":"owner","invited_by":"example","invited_by_email":"example","expires_at":"2026-09-04T09:14:00.000Z","created_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/team/me":{"get":{"summary":"Your membership on this account: your role, and the seats the plan allows.","operationId":"getTeamMe","tags":["team"],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","not_found","rate_limit_exceeded"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetTeamMeReply"},"example":{"user_id":"example","email":"example","role":"owner","seats":{"plan":"example","used":-9007199254740991,"limit":-9007199254740991,"billed_per_seat":false}}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/team/members/{id}":{"patch":{"summary":"Change a member’s role.","description":"The last owner cannot be demoted.","operationId":"patchTeamMembersById","tags":["team"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchTeamMembersBy_idBody"},"example":{"role":"owner"}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","last_owner_required","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","session_required","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchTeamMembersBy_idReply"},"example":{"id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","user_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","email":"example","name":"example","role":"owner","is_you":false,"created_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"delete":{"summary":"Remove a member.","description":"Their sends and keys stay; only their access ends. The last owner cannot be removed.","operationId":"deleteTeamMembersById","tags":["team"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","last_owner_required","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","session_required","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteTeamMembersBy_idReply"},"example":{"id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","removed":true}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/team/invites":{"get":{"summary":"Invitations that have not been accepted, cancelled or expired.","operationId":"getTeamInvites","tags":["team"],"parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":500}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","required":false,"schema":{"type":"string"}},{"name":"before","in":"query","required":false,"schema":{"type":"string"}}],"x-error-codes":["internal_server_error","invalid_api_key","invalid_cursor","invalid_parameter","mfa_required","missing_api_key","rate_limit_exceeded","session_required","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetTeamInvitesReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"post":{"summary":"Invite an address at a role.","description":"The mail carries a link that only works while signed in as that address.","operationId":"postTeamInvites","tags":["team"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostTeamInvitesBody"},"example":{"email":"customer@example.com"}}}},"x-error-codes":["already_in_account","csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","invite_limit_reached","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","seat_limit_reached","session_required","unsupported_media_type","validation_error"],"responses":{"201":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostTeamInvitesReply"},"example":{"id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","email":"example","role":"owner","invited_by":"example","invited_by_email":"example","expires_at":"2026-09-04T09:14:00.000Z","created_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/team/invites/{id}":{"delete":{"summary":"Cancel a pending invitation.","description":"The link in the email stops working immediately.","operationId":"deleteTeamInvitesById","tags":["team"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","invite_not_valid","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","session_required","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteTeamInvitesBy_idReply"},"example":{"id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","cancelled":true}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/invite/{token}/accept":{"post":{"summary":"Accept an invitation.","description":"Requires a session signed in as the invited address; a person who has never signed in before is provisioned into the inviting account, not a new one.","operationId":"postInviteByTokenAccept","security":[],"tags":["team"],"parameters":[{"name":"token","in":"path","required":true,"schema":{"type":"string","minLength":10,"maxLength":200}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["already_in_account","idempotency_in_flight","idempotency_payload_mismatch","internal_server_error","invalid_idempotency_key","invite_email_mismatch","invite_not_valid","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostInviteBy_tokenAcceptReply"},"example":{"account_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","account_name":"example","role":"owner","member_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/suppressions":{"get":{"summary":"Suppressions recorded on this account, with a count of platform-wide rows and none of their addresses.","operationId":"getSuppressions","tags":["suppressions"],"parameters":[{"name":"limit","in":"query","required":false,"schema":{"default":20,"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"after","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"before","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"origin","in":"query","required":false,"schema":{"description":"Only rows from bounce, complaint or manual.","type":"string","enum":["bounce","complaint","manual"]}}],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetSuppressionsReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example","global_applied":0}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"post":{"summary":"Suppress an address or a whole domain (send \"@example.com\").","description":"Idempotent — an existing row is returned.","operationId":"postSuppressions","tags":["suppressions"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostSuppressionsBody"},"example":{"email":"example"}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","invalid_parameter","mfa_required","missing_api_key","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"201":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostSuppressionsReply"},"example":{"object":"suppression","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","email":"example","level":"address","origin":"example","created_at":"2026-09-04T09:14:00.000Z","source_id":"example","stream":"transactional","platform":false}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/suppressions/batch/add":{"post":{"summary":"Suppress up to 500 addresses in one call.","description":"Each item succeeds or fails on its own — read data[i].status.","operationId":"postSuppressionsBatchAdd","tags":["suppressions"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostSuppressionsBatchAddBody"},"example":{"emails":["example"]}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","invalid_parameter","mfa_required","missing_api_key","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostSuppressionsBatchAddReply"},"example":{"data":[]}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/suppressions/batch/remove":{"post":{"summary":"Lift up to 500 suppressions by address.","description":"An address that was not suppressed reads not_found, not an error.","operationId":"postSuppressionsBatchRemove","tags":["suppressions"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostSuppressionsBatchRemoveBody"},"example":{"emails":["former-customer@example.com"]}}}},"x-error-codes":["csrf_origin_rejected","human_action_required","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostSuppressionsBatchRemoveReply"},"example":{"data":[]}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/suppressions/{id}":{"get":{"summary":"One suppression, by its id or by the address.","description":"A platform row is included and marked platform.","operationId":"getSuppressionsById","tags":["suppressions"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","minLength":1}}],"x-error-codes":["internal_server_error","rate_limit_exceeded","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostSuppressionsReply"},"example":{"object":"suppression","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","email":"example","level":"address","origin":"example","created_at":"2026-09-04T09:14:00.000Z","source_id":"example","stream":"transactional","platform":false}}}},"400":{"$ref":"#/components/responses/BadRequest"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"delete":{"summary":"Remove one suppression row.","description":"A hard bounce you have fixed can be cleared with an API key; an unsubscribe or a spam complaint is a person’s to lift, in the console.","operationId":"deleteSuppressionsById","tags":["suppressions"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","minLength":1}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["csrf_origin_rejected","human_action_required","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteSuppressionsBy_idReply"},"example":{"object":"suppression","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","deleted":false}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/templates":{"post":{"summary":"Create a template draft.","operationId":"postTemplates","tags":["templates"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostTemplatesBody"},"example":{"name":"example","content":{"mode":"block","blocks":[{"kind":"text","body":"example"}]}}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_from_address","invalid_idempotency_key","invalid_parameter","mfa_required","missing_api_key","payload_too_large","rate_limit_exceeded","restricted_api_key","template_alias_taken","template_name_taken","unsupported_media_type","validation_error"],"responses":{"201":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostTemplatesReply"},"example":{"object":"template","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","alias":"example","status":"draft","current_version_number":-9007199254740991,"current_version_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","has_unpublished_versions":false,"published_at":"2026-09-04T09:14:00.000Z","from":"example","subject":"example","reply_to":[],"html":"example","text":"example","variables":[],"draft_content":{"mode":"markdown","source":"Thanks — the details are attached."},"draft_variables":[],"draft_subject":"example","created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"get":{"summary":"List this account templates, newest first.","operationId":"getTemplates","tags":["templates"],"parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":500}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","required":false,"schema":{"type":"string"}},{"name":"before","in":"query","required":false,"schema":{"type":"string"}}],"x-error-codes":["internal_server_error","invalid_api_key","invalid_cursor","invalid_parameter","mfa_required","missing_api_key","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetTemplatesReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/templates/{id}":{"get":{"summary":"One template.","operationId":"getTemplatesById","tags":["templates"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":200,"description":"The template id or its alias."}}],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostTemplatesReply"},"example":{"object":"template","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","alias":"example","status":"draft","current_version_number":-9007199254740991,"current_version_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","has_unpublished_versions":false,"published_at":"2026-09-04T09:14:00.000Z","from":"example","subject":"example","reply_to":[],"html":"example","text":"example","variables":[],"draft_content":{"mode":"markdown","source":"Thanks — the details are attached."},"draft_variables":[],"draft_subject":"example","created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"patch":{"summary":"Edit a template.","description":"Name and alias change at once; subject, body, sender and variables edit the draft, and a published template gets a new draft from its live version (the live version keeps sending until you publish).","operationId":"patchTemplatesById","tags":["templates"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":200,"description":"The template id or its alias."}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchTemplatesBy_idBody"}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_from_address","invalid_idempotency_key","invalid_parameter","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","template_alias_taken","template_name_taken","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostTemplatesReply"},"example":{"object":"template","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","alias":"example","status":"draft","current_version_number":-9007199254740991,"current_version_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","has_unpublished_versions":false,"published_at":"2026-09-04T09:14:00.000Z","from":"example","subject":"example","reply_to":[],"html":"example","text":"example","variables":[],"draft_content":{"mode":"markdown","source":"Thanks — the details are attached."},"draft_variables":[],"draft_subject":"example","created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"delete":{"summary":"Delete a template and its versions.","description":"Sent mail keeps its body and template reference. Refused while a broadcast that has not been sent uses it.","operationId":"deleteTemplatesById","tags":["templates"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":200,"description":"The template id or its alias."}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","template_in_use","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteTemplatesBy_idReply"},"example":{"object":"template","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","deleted":false}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/templates/{id}/publish":{"post":{"summary":"Snapshot the draft as an immutable published version.","operationId":"postTemplatesByIdPublish","tags":["templates"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":200,"description":"The template id or its alias."}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","invalid_parameter","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostTemplatesBy_idPublishReply"},"example":{"object":"template","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","template":{"object":"template","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","alias":"example","status":"draft","current_version_number":-9007199254740991,"current_version_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","has_unpublished_versions":false,"published_at":"2026-09-04T09:14:00.000Z","from":"example","subject":"example","reply_to":[],"html":"example","text":"example","variables":[],"draft_content":{"mode":"markdown","source":"Thanks — the details are attached."},"draft_variables":[],"draft_subject":"example","created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z"},"version":{"id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","template_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","version_number":-9007199254740991,"status":"draft","content":{"mode":"markdown","source":"Thanks — the details are attached."},"variables":[],"subject":"example","from":"example","reply_to":[],"text":"example","published_at":"2026-09-04T09:14:00.000Z","rolled_back_from":-9007199254740991,"created_at":"2026-09-04T09:14:00.000Z"}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/templates/{id}/duplicate":{"post":{"summary":"Copy a template into a new editable draft.","description":"The copy carries no version history.","operationId":"postTemplatesByIdDuplicate","tags":["templates"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":200,"description":"The template id or its alias."}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostTemplatesBy_idDuplicateBody"},"example":{}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","invalid_parameter","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","template_name_taken","unsupported_media_type","validation_error"],"responses":{"201":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostTemplatesReply"},"example":{"object":"template","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","alias":"example","status":"draft","current_version_number":-9007199254740991,"current_version_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","has_unpublished_versions":false,"published_at":"2026-09-04T09:14:00.000Z","from":"example","subject":"example","reply_to":[],"html":"example","text":"example","variables":[],"draft_content":{"mode":"markdown","source":"Thanks — the details are attached."},"draft_variables":[],"draft_subject":"example","created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/templates/{id}/versions":{"get":{"summary":"Every immutable version, oldest first.","operationId":"getTemplatesByIdVersions","tags":["templates"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":200,"description":"The template id or its alias."}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":500}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","required":false,"schema":{"type":"string"}},{"name":"before","in":"query","required":false,"schema":{"type":"string"}}],"x-error-codes":["internal_server_error","invalid_api_key","invalid_cursor","invalid_parameter","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetTemplatesBy_idVersionsReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/templates/{id}/versions/{n}":{"get":{"summary":"One version.","operationId":"getTemplatesByIdVersionsByN","tags":["templates"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":200,"description":"The template id or its alias."}},{"name":"n","in":"path","required":true,"schema":{"type":"integer","minimum":1,"maximum":9007199254740991}}],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetTemplatesBy_idVersionsBy_nReply"},"example":{"id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","template_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","version_number":-9007199254740991,"status":"draft","content":{"mode":"block","blocks":[{"kind":"text","body":"example"}]},"variables":[],"subject":"example","from":"example","reply_to":[],"text":"example","published_at":"2026-09-04T09:14:00.000Z","rolled_back_from":-9007199254740991,"created_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/templates/{id}/diff":{"get":{"summary":"Structured diff between two versions, or between a version and the draft.","operationId":"getTemplatesByIdDiff","tags":["templates"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":200,"description":"The template id or its alias."}},{"name":"from","in":"query","required":true,"schema":{"anyOf":[{"type":"string","const":"draft"},{"type":"integer","minimum":1,"maximum":9007199254740991}]}},{"name":"to","in":"query","required":true,"schema":{"anyOf":[{"type":"string","const":"draft"},{"type":"integer","minimum":1,"maximum":9007199254740991}]}}],"x-error-codes":["internal_server_error","invalid_api_key","invalid_parameter","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetTemplatesBy_idDiffReply"},"example":{"template_id":"example","from_version_number":-9007199254740991,"to_version_number":-9007199254740991,"unchanged":false,"changes":[]}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/templates/{id}/rollback":{"post":{"summary":"Start a new draft from an older version.","description":"History is never rewritten; the live version stays until that draft is published.","operationId":"postTemplatesByIdRollback","tags":["templates"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":200,"description":"The template id or its alias."}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostTemplatesBy_idRollbackBody"},"example":{"to_version":1}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"201":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetTemplatesBy_idVersionsBy_nReply"},"example":{"id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","template_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","version_number":-9007199254740991,"status":"draft","content":{"mode":"block","blocks":[{"kind":"text","body":"example"}]},"variables":[],"subject":"example","from":"example","reply_to":[],"text":"example","published_at":"2026-09-04T09:14:00.000Z","rolled_back_from":-9007199254740991,"created_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/templates/{id}/render":{"post":{"summary":"Render a version with variables (defaults to the current published one; pass \"draft\" for the working copy).","description":"Returns the HTML, the subject and, for markdown, the plain-text part. Unknown variables fail with the names listed; a missing required one fails too unless preview is true, which shows its placeholder (such as {{first_name}}) and lists it in missing_variables.","operationId":"postTemplatesByIdRender","tags":["templates"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":200,"description":"The template id or its alias."}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostTemplatesBy_idRenderBody"},"example":{}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","invalid_parameter","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostTemplatesBy_idRenderReply"},"example":{"rendered":"example","subject":"example","text":"example","missing_variables":[]}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/agent-actions":{"get":{"summary":"Every held agent action, newest first — nothing waits invisibly.","description":"Filter by state to read the inbox or the audit trail.","operationId":"getAgentActions","tags":["agent-actions"],"parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":500}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","required":false,"schema":{"type":"string"}},{"name":"before","in":"query","required":false,"schema":{"type":"string"}},{"name":"state","in":"query","required":false,"schema":{"type":"string","enum":["pending","approved","rejected","killed"]}}],"x-error-codes":["internal_server_error","invalid_api_key","invalid_cursor","invalid_parameter","mfa_required","missing_api_key","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetAgent_actionsReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/agent-actions/{id}/approve":{"post":{"summary":"Execute the held send through the normal accept path.","description":"A person signed in to the console decides; the action row records who and when.","operationId":"postAgentActionsByIdApprove","tags":["agent-actions"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["account_sandboxed","account_suspended","agent_budget_exceeded","approval_expired","csrf_origin_rejected","daily_limit_reached","domain_not_verified","domain_scope_violation","human_action_required","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_attachment","invalid_from_address","invalid_idempotency_key","invalid_parameter","kill_switch_active","mfa_required","missing_api_key","not_found","onboarding_daily_cap_reached","onboarding_recipient_not_a_member","onboarding_sender_unavailable","onboarding_shape_refused","overage_cap_reached","payload_too_large","plan_limit_reached","rate_ceiling_exceeded","rate_limit_exceeded","recipient_blocklisted","restricted_api_key","sending_paused_everywhere","staff_review_required","suppressed_recipient","trust_paused","trust_throttled","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostAgent_actionsBy_idApproveReply"},"example":{"action":{"id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","kind":"example","state":"pending","payload":{},"preview":{"to_count":0,"subject":"example","html":"example","text":"example","first_recipients":[],"api_key_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","held_reason":"example"},"decided_by":"example","decision_reason":"example","decided_at":"2026-09-04T09:14:00.000Z","created_at":"2026-09-04T09:14:00.000Z","expires_at":"2026-09-04T09:14:00.000Z"},"message_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","status":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"402":{"$ref":"#/components/responses/PaymentRequired"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"},"503":{"$ref":"#/components/responses/ServiceUnavailable"}}}},"/agent-actions/{id}/reject":{"post":{"summary":"Refuse the held send.","description":"A person signed in to the console decides; the reason is preserved with the row.","operationId":"postAgentActionsByIdReject","tags":["agent-actions"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostAgent_actionsBy_idRejectBody"},"example":{}}}},"x-error-codes":["csrf_origin_rejected","human_action_required","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostAgent_actionsBy_idRejectReply"},"example":{"id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","kind":"example","state":"pending","payload":{},"preview":{"to_count":0,"subject":"example","html":"example","text":"example","first_recipients":[],"api_key_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","held_reason":"example"},"decided_by":"example","decision_reason":"example","decided_at":"2026-09-04T09:14:00.000Z","created_at":"2026-09-04T09:14:00.000Z","expires_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/deliverability/domains":{"get":{"summary":"Every sending domain with its standing over the window, worst first — the failing domain is the first row, not one you have to find.","operationId":"getDeliverabilityDomains","tags":["deliverability"],"parameters":[{"name":"window_days","in":"query","required":false,"schema":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}}],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetDeliverabilityDomainsReply"},"example":{"window_days":-9007199254740991,"thresholds":{"bounce":{"warn":1,"limit":1},"complaint":{"warn":1,"limit":1}},"data":[]}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/deliverability/domains/{id}":{"get":{"summary":"Per-domain reputation: live rates over the rolling window, daily snapshots, the thresholds those rates are judged against, the bounce breakdown by class with…","description":"Per-domain reputation: live rates over the rolling window, daily snapshots, the thresholds those rates are judged against, the bounce breakdown by class with its remediation, and the receiving domains rejecting the most.","operationId":"getDeliverabilityDomainsById","tags":["deliverability"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"window_days","in":"query","required":false,"schema":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}}],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetDeliverabilityDomainsBy_idReply"},"example":{"domain_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","domain_name":"example","window_days":-9007199254740991,"standing":"no_data","thresholds":{"bounce":{"warn":1,"limit":1},"complaint":{"warn":1,"limit":1}},"live":{"sent":-9007199254740991,"delivered":-9007199254740991,"bounced":-9007199254740991,"complained":-9007199254740991,"opened":-9007199254740991,"clicked":-9007199254740991,"bounce_rate":1,"complaint_rate":1,"open_rate":1,"click_rate":1},"snapshots":[],"bounce_classes":[],"top_recipient_domains":[],"postmaster":{},"blocklists":{}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/deliverability/domains/{id}/snapshot":{"post":{"summary":"Persist today rates as a snapshot row.","description":"Idempotent per domain per day.","operationId":"postDeliverabilityDomainsByIdSnapshot","tags":["deliverability"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"201":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostDeliverabilityDomainsBy_idSnapshotReply"},"example":{"domain_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","snapshot_date":"example","rates":{"sent":-9007199254740991,"delivered":-9007199254740991,"bounced":-9007199254740991,"complained":-9007199254740991,"opened":-9007199254740991,"clicked":-9007199254740991,"bounce_rate":1,"complaint_rate":1,"open_rate":1,"click_rate":1}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/deliverability/dmarc":{"get":{"summary":"Authentication reports for verified domains.","description":"Aligned and failing volume per day, and addresses sending as you that are not ours.","operationId":"getDeliverabilityDmarc","tags":["deliverability"],"parameters":[{"name":"domain","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":253}},{"name":"window_days","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":90}}],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetDeliverabilityDmarcReply"},"example":{"window_days":-9007199254740991,"alignment_failure_threshold":1,"days":[],"sources":[]}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/contacts":{"post":{"summary":"Create or update a contact by email.","description":"first_name, last_name and unsubscribed are accepted. Properties are typed from their value and auto-created.","operationId":"postContacts","tags":["contacts"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostContactsBody"},"example":{"email":"customer@example.com"}}}},"x-error-codes":["contact_resubscribe_required","csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"201":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostContactsReply"},"example":{"object":"contact","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","email":"example","status":"example","first_name":"example","last_name":"example","unsubscribed":false,"properties":{},"property_types":{},"consent":{"source":"example","at":"2026-09-04T09:14:00.000Z","ip":"example","text":"example","double_opt_in_confirmed_at":"2026-09-04T09:14:00.000Z"},"created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"get":{"summary":"List contacts, newest first.","description":"email is an exact match; q is a substring.","operationId":"getContacts","tags":["contacts"],"parameters":[{"name":"limit","in":"query","required":false,"schema":{"default":20,"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"after","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"before","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"email","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"q","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":320}}],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetContactsReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/audiences/{audienceId}/contacts":{"post":{"summary":"Alias of POST /contacts.","description":"This account has one contact list, so the audience id does not select another.","operationId":"postAudiencesByAudienceIdContacts","tags":["contacts"],"parameters":[{"name":"audienceId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":200}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostContactsBody"},"example":{"email":"customer@example.com"}}}},"x-error-codes":["contact_resubscribe_required","idempotency_in_flight","idempotency_payload_mismatch","internal_server_error","invalid_idempotency_key","payload_too_large","rate_limit_exceeded","unsupported_media_type","validation_error"],"responses":{"201":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostContactsReply"},"example":{"object":"contact","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","email":"example","status":"example","first_name":"example","last_name":"example","unsubscribed":false,"properties":{},"property_types":{},"consent":{"source":"example","at":"2026-09-04T09:14:00.000Z","ip":"example","text":"example","double_opt_in_confirmed_at":"2026-09-04T09:14:00.000Z"},"created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"get":{"summary":"Alias of GET /contacts.","description":"The audience id is accepted and does not select another list.","operationId":"getAudiencesByAudienceIdContacts","tags":["contacts"],"parameters":[{"name":"audienceId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":200}},{"name":"limit","in":"query","required":false,"schema":{"default":20,"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"after","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"before","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"email","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"q","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":320}}],"x-error-codes":["internal_server_error","rate_limit_exceeded","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetAudiencesBy_audienceIdContactsReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/segments/{id}/contacts":{"get":{"summary":"Contacts in this segment: those its rules match and those added to it.","description":"A segment with neither has no members.","operationId":"getSegmentsByIdContacts","tags":["contacts"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":200}},{"name":"limit","in":"query","required":false,"schema":{"default":20,"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"after","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"before","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"email","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"q","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":320}}],"x-error-codes":["internal_server_error","rate_limit_exceeded","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetSegmentsBy_idContactsReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/contacts/batch":{"post":{"summary":"Update up to 1,000 contacts that already exist.","description":"A new address is rejected.","operationId":"postContactsBatch","tags":["contacts"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostContactsBatchBody"},"example":{"contacts":[{"email":"example"}]}}}},"x-error-codes":["idempotency_in_flight","idempotency_payload_mismatch","internal_server_error","invalid_idempotency_key","payload_too_large","rate_limit_exceeded","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostContactsBatchReply"},"example":{"data":[]}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/contacts/imports":{"post":{"summary":"Create and update contacts from a CSV, sent as a multipart file or as JSON text.","description":"A new address is created; on_conflict decides what happens to one already on the account. rejected lists every failed row with its reason. At most 1,000 data rows.","operationId":"postContactsImports","tags":["contacts"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostContactsImportsBody"},"example":{}},"multipart/form-data":{"schema":{"type":"object","required":["file"],"properties":{"file":{"type":"string","format":"binary","description":"The CSV file. The first row is the header."},"column_map":{"type":"string","description":"JSON-encoded object mapping contact fields and property keys to CSV column names: email, first_name, last_name, unsubscribed and properties (each property as {\"column\": \"...\", \"type\": \"string|number|boolean\"})."},"on_conflict":{"type":"string","enum":["upsert","skip"],"default":"skip"},"segments":{"type":"string","description":"JSON-encoded array of {\"id\": \"<segment id>\"} to add the contacts to."},"topics":{"type":"string","description":"JSON-encoded array of {\"id\": \"<topic id>\", \"subscription\": \"opt_in|opt_out\"}."}}}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","invalid_parameter","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"201":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostContactsImportsReply"},"example":{"object":"contact_import","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","status":"queued","created_at":"2026-09-04T09:14:00.000Z","completed_at":"2026-09-04T09:14:00.000Z","counts":{"total":-9007199254740991,"created":-9007199254740991,"updated":-9007199254740991,"skipped":-9007199254740991,"failed":-9007199254740991},"rejected":[]}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"get":{"summary":"List contact imports, newest first.","description":"status filters by queued, in_progress, completed or failed.","operationId":"getContactsImports","tags":["contacts"],"parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":500}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","required":false,"schema":{"type":"string"}},{"name":"before","in":"query","required":false,"schema":{"type":"string"}},{"name":"status","in":"query","required":false,"schema":{"type":"string","enum":["queued","in_progress","completed","failed"]}}],"x-error-codes":["internal_server_error","invalid_api_key","invalid_cursor","invalid_parameter","mfa_required","missing_api_key","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetContactsImportsReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/contacts/imports/{id}":{"get":{"summary":"One contact import: its status and how many rows were created, updated, skipped and failed.","operationId":"getContactsImportsById","tags":["contacts"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":200}}],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetContactsImportsBy_idReply"},"example":{"object":"contact_import","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","status":"queued","created_at":"2026-09-04T09:14:00.000Z","completed_at":"2026-09-04T09:14:00.000Z","counts":{"total":-9007199254740991,"created":-9007199254740991,"updated":-9007199254740991,"skipped":-9007199254740991,"failed":-9007199254740991}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/contacts/{id}":{"get":{"summary":"One contact with its properties.","description":"The path is the contact id or its email address.","operationId":"getContactsById","tags":["contacts"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":320}}],"x-error-codes":["internal_server_error","rate_limit_exceeded","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostContactsReply"},"example":{"object":"contact","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","email":"example","status":"example","first_name":"example","last_name":"example","unsubscribed":false,"properties":{},"property_types":{},"consent":{"source":"example","at":"2026-09-04T09:14:00.000Z","ip":"example","text":"example","double_opt_in_confirmed_at":"2026-09-04T09:14:00.000Z"},"created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"patch":{"summary":"Edit one contact by id or email.","description":"first_name, last_name and unsubscribed are accepted. Properties merge; null removes one.","operationId":"patchContactsById","tags":["contacts"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":320}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchContactsBy_idBody"}}}},"x-error-codes":["contact_resubscribe_required","idempotency_in_flight","idempotency_payload_mismatch","internal_server_error","invalid_idempotency_key","payload_too_large","rate_limit_exceeded","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostContactsReply"},"example":{"object":"contact","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","email":"example","status":"example","first_name":"example","last_name":"example","unsubscribed":false,"properties":{},"property_types":{},"consent":{"source":"example","at":"2026-09-04T09:14:00.000Z","ip":"example","text":"example","double_opt_in_confirmed_at":"2026-09-04T09:14:00.000Z"},"created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"delete":{"summary":"Delete one contact and its properties.","description":"The path is the contact id or its email address.","operationId":"deleteContactsById","tags":["contacts"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":320}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["idempotency_in_flight","idempotency_payload_mismatch","internal_server_error","invalid_idempotency_key","payload_too_large","rate_limit_exceeded","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteContactsBy_idReply"},"example":{"object":"contact","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","contact":"example","deleted":false}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/audiences/{audienceId}/contacts/{id}":{"get":{"summary":"Alias of GET /contacts/{id}.","operationId":"getAudiencesByAudienceIdContactsById","tags":["contacts"],"parameters":[{"name":"audienceId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":200}},{"name":"id","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":320}}],"x-error-codes":["internal_server_error","rate_limit_exceeded","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostContactsReply"},"example":{"object":"contact","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","email":"example","status":"example","first_name":"example","last_name":"example","unsubscribed":false,"properties":{},"property_types":{},"consent":{"source":"example","at":"2026-09-04T09:14:00.000Z","ip":"example","text":"example","double_opt_in_confirmed_at":"2026-09-04T09:14:00.000Z"},"created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"patch":{"summary":"Alias of PATCH /contacts/{id}.","operationId":"patchAudiencesByAudienceIdContactsById","tags":["contacts"],"parameters":[{"name":"audienceId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":200}},{"name":"id","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":320}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchContactsBy_idBody"}}}},"x-error-codes":["contact_resubscribe_required","idempotency_in_flight","idempotency_payload_mismatch","internal_server_error","invalid_idempotency_key","payload_too_large","rate_limit_exceeded","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostContactsReply"},"example":{"object":"contact","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","email":"example","status":"example","first_name":"example","last_name":"example","unsubscribed":false,"properties":{},"property_types":{},"consent":{"source":"example","at":"2026-09-04T09:14:00.000Z","ip":"example","text":"example","double_opt_in_confirmed_at":"2026-09-04T09:14:00.000Z"},"created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"delete":{"summary":"Alias of DELETE /contacts/{id}.","operationId":"deleteAudiencesByAudienceIdContactsById","tags":["contacts"],"parameters":[{"name":"audienceId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":200}},{"name":"id","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":320}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["idempotency_in_flight","idempotency_payload_mismatch","internal_server_error","invalid_idempotency_key","payload_too_large","rate_limit_exceeded","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteAudiencesBy_audienceIdContactsBy_idReply"},"example":{"object":"contact","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","contact":"example","deleted":false}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/contacts/{id}/resubscribe":{"post":{"summary":"Mark a contact active again after they opt back in.","description":"Requires consent_source and consent_at. Does not lift a spam report or a bounce.","operationId":"postContactsByIdResubscribe","tags":["contacts"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":320}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostContactsBy_idResubscribeBody"},"example":{"consent_source":"example","consent_at":"2026-09-04T09:14:00.000Z"}}}},"x-error-codes":["contact_resubscribe_required","idempotency_in_flight","idempotency_payload_mismatch","internal_server_error","invalid_idempotency_key","payload_too_large","rate_limit_exceeded","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostContactsReply"},"example":{"object":"contact","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","email":"example","status":"example","first_name":"example","last_name":"example","unsubscribed":false,"properties":{},"property_types":{},"consent":{"source":"example","at":"2026-09-04T09:14:00.000Z","ip":"example","text":"example","double_opt_in_confirmed_at":"2026-09-04T09:14:00.000Z"},"created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/contacts/{id}/segments":{"get":{"summary":"Segments this contact is in: those whose rules match it and those it was added to.","operationId":"getContactsByIdSegments","tags":["contacts"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":320}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":500}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","required":false,"schema":{"type":"string"}},{"name":"before","in":"query","required":false,"schema":{"type":"string"}}],"x-error-codes":["internal_server_error","rate_limit_exceeded","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetContactsBy_idSegmentsReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/contacts/{id}/segments/{segment_id}":{"post":{"summary":"Add a contact to a segment.","description":"The contact stays in it, whatever the rules say, until you remove it. Adding a contact that is already added changes nothing.","operationId":"postContactsByIdSegmentsBySegmentId","tags":["contacts"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":320}},{"name":"segment_id","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":200}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostContactsBy_idSegmentsBy_segment_idReply"},"example":{"object":"contact_segment","contact_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","segment_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"delete":{"summary":"Remove a contact you added to a segment.","description":"A contact that is in the segment only because its rules match cannot be removed here: change the rules or the contact instead.","operationId":"deleteContactsByIdSegmentsBySegmentId","tags":["contacts"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":320}},{"name":"segment_id","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":200}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","invalid_parameter","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteContactsBy_idSegmentsBy_segment_idReply"},"example":{"object":"contact_segment","contact_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","segment_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","deleted":true}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/contact-properties":{"get":{"summary":"Properties declared with POST /contact-properties, and the property names contacts already hold.","description":"A declared one carries its fallback_value.","operationId":"getContactProperties","tags":["contacts"],"parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":500}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","required":false,"schema":{"type":"string"}},{"name":"before","in":"query","required":false,"schema":{"type":"string"}}],"x-error-codes":["internal_server_error","rate_limit_exceeded","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetContact_propertiesReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"post":{"summary":"Declare a contact property: its key, its type (string or number) and an optional fallback_value that a broadcast uses for a contact with no value of its own.","operationId":"postContactProperties","tags":["contacts"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostContact_propertiesBody"},"example":{"key":"example","type":"string"}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","invalid_parameter","mfa_required","missing_api_key","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"201":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostContact_propertiesReply"},"example":{"object":"contact_property","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/contact-properties/{id}":{"get":{"summary":"One contact property by id, with its fallback_value.","description":"A property only contacts hold is found by its key.","operationId":"getContactPropertiesById","tags":["contacts"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":200}}],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetContact_propertiesBy_idReply"},"example":{"object":"contact_property","id":"example","key":"example","type":"example","created_at":"2026-09-04T09:14:00.000Z","fallback_value":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"patch":{"summary":"Change a property’s fallback_value.","description":"Its key and type cannot be changed.","operationId":"patchContactPropertiesById","tags":["contacts"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":200}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchContact_propertiesBy_idBody"},"example":{}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","invalid_parameter","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchContact_propertiesBy_idReply"},"example":{"object":"contact_property","id":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"delete":{"summary":"Remove a declared property.","description":"Values contacts already hold under its key stay on those contacts; set a value to null on a contact to remove it there.","operationId":"deleteContactPropertiesById","tags":["contacts"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":200}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","invalid_parameter","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteContact_propertiesBy_idReply"},"example":{"object":"contact_property","id":"example","deleted":true}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/dedicated-ips/ramp":{"get":{"summary":"The PUBLISHED warmup curve — exactly how volume moves and when.","operationId":"getDedicatedIpsRamp","tags":["dedicated-ips"],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","rate_limit_exceeded"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetDedicated_ipsRampReply"},"example":{"curve":[]}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/dedicated-ips":{"get":{"summary":"This account dedicated IPs with live warmup percentages.","operationId":"getDedicatedIps","tags":["dedicated-ips"],"parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":500}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","required":false,"schema":{"type":"string"}},{"name":"before","in":"query","required":false,"schema":{"type":"string"}}],"x-error-codes":["internal_server_error","invalid_api_key","invalid_cursor","invalid_parameter","mfa_required","missing_api_key","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetDedicated_ipsReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"post":{"summary":"Refused: a dedicated IP is assigned by us from the addresses we send from — ask support.","description":"GET /dedicated-ips lists it once assigned.","operationId":"postDedicatedIps","tags":["dedicated-ips"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostDedicated_ipsBody"},"example":{"ip":"example","region":"example"}}}},"x-error-codes":["csrf_origin_rejected","dedicated_ip_assigned_by_us","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"201":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostDedicated_ipsReply"},"example":{"id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","ip":"example","region":"example","state":"example","started_at":"2026-09-04T09:14:00.000Z","warmup_percent":-9007199254740991,"created_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/dedicated-ips/{id}":{"delete":{"summary":"Release a dedicated IP.","description":"Traffic returns to shared automatically.","operationId":"deleteDedicatedIpsById","tags":["dedicated-ips"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteDedicated_ipsBy_idReply"},"example":{"id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","deleted":false}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/dedicated-ips/route-decision/{messageId}":{"get":{"summary":"Which route this message would take RIGHT NOW — reproducible, the same math the send path uses.","operationId":"getDedicatedIpsRouteDecisionByMessageId","tags":["dedicated-ips"],"parameters":[{"name":"messageId","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","rate_limit_exceeded","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetDedicated_ipsRoute_decisionBy_messageIdReply"},"example":{"route":"shared","ip":"example","warmup_percent":-9007199254740991}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/logs":{"get":{"summary":"Every API request this account made, with method, route, status and any refusal.","description":"Filter by date, status, key, source or a search string.","operationId":"getLogs","tags":["logs"],"parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":500}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","required":false,"schema":{"type":"string"}},{"name":"before","in":"query","required":false,"schema":{"type":"string"}},{"name":"since","in":"query","required":false,"schema":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"}},{"name":"until","in":"query","required":false,"schema":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"}},{"name":"status","in":"query","required":false,"schema":{"type":"integer","minimum":100,"maximum":599}},{"name":"status_class","in":"query","required":false,"schema":{"type":"string","enum":["2xx","4xx","5xx"]}},{"name":"method","in":"query","required":false,"schema":{"type":"string","enum":["GET","POST","PATCH","PUT","DELETE"]}},{"name":"route","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"error_code","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"api_key_id","in":"query","required":false,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"source","in":"query","required":false,"schema":{"type":"string","enum":["api","console","all"]}},{"name":"q","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":200}}],"x-error-codes":["internal_server_error","invalid_api_key","invalid_cursor","invalid_parameter","mfa_required","missing_api_key","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetLogsReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/logs/{id}":{"get":{"summary":"One request, by log id.","description":"The x-request-id the caller saw is on the row.","operationId":"getLogsById","tags":["logs"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetLogsBy_idReply"},"example":{"object":"log","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","request_id":"example","method":"example","path":"example","endpoint":"example","route":"example","status":-9007199254740991,"response_status":-9007199254740991,"duration_ms":-9007199254740991,"error_code":"example","api_key_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","api_key_name":"example","source":"api","user_agent":"example","created_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/status":{"get":{"summary":"Public per-component health.","description":"Every component reports what it actually checked; one that cannot be checked says so instead of claiming green.","operationId":"getStatus","security":[],"tags":["meta"],"x-error-codes":["internal_server_error","rate_limit_exceeded"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetStatusReply"},"example":{"status":"operational","time":"2026-09-04T09:14:00.000Z","components":[]}}}},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/status/history":{"get":{"summary":"Daily uptime per component for 90 days, in minutes.","description":"From the first sample, a minute with no reading counts as down, and 3 or more minutes down are an outage.","operationId":"getStatusHistory","security":[],"tags":["meta"],"parameters":[{"name":"days","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":90}}],"x-error-codes":["internal_server_error","rate_limit_exceeded","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetStatusHistoryReply"},"example":{"window_days":-9007199254740991,"from":"example","to":"example","components":[]}}}},"400":{"$ref":"#/components/responses/BadRequest"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/tools/dns/{domain}":{"get":{"summary":"The DNS records a sending domain needs, and the exact records to publish.","description":"No API key. 10 checks a minute from one network. Looks up SPF, DKIM, DMARC and the return-path records only, and stores nothing.","operationId":"getToolsDns","security":[],"tags":["meta"],"parameters":[{"name":"domain","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":253}}],"x-error-codes":["internal_server_error","invalid_parameter","mailbox_provider_domain","rate_limit_exceeded","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetToolsDnsBy_domainReply"},"example":{"domain":"example","records":[]}}}},"400":{"$ref":"#/components/responses/BadRequest"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/segments":{"post":{"summary":"Create a dynamic segment.","description":"Rules AND together over properties and status.","operationId":"postSegments","tags":["segments"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostSegmentsBody"},"example":{"name":"example"}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","invalid_parameter","mfa_required","missing_api_key","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"201":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostSegmentsReply"},"example":{"object":"segment","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","audience_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","rules":[],"created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"get":{"summary":"Every segment on the account.","operationId":"getSegments","tags":["segments"],"parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":500}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","required":false,"schema":{"type":"string"}},{"name":"before","in":"query","required":false,"schema":{"type":"string"}}],"x-error-codes":["internal_server_error","invalid_api_key","invalid_cursor","invalid_parameter","mfa_required","missing_api_key","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetSegmentsReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/segments/{id}":{"get":{"summary":"One segment.","operationId":"getSegmentsById","tags":["segments"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostSegmentsReply"},"example":{"object":"segment","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","audience_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","rules":[],"created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"patch":{"summary":"Rename or change the rules.","description":"Membership re-evaluates immediately.","operationId":"patchSegmentsById","tags":["segments"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchSegmentsBy_idBody"}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","invalid_parameter","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostSegmentsReply"},"example":{"object":"segment","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","audience_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","rules":[],"created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"delete":{"summary":"Delete a segment.","description":"Contacts are untouched. Refused while a broadcast that has not been sent or archived uses it.","operationId":"deleteSegmentsById","tags":["segments"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","segment_in_use","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteSegmentsBy_idReply"},"example":{"object":"segment","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","deleted":false}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/audiences":{"post":{"summary":"Create an audience, the older Resend name for a segment.","description":"It starts with no members; add contacts with POST /contacts/{contact_id}/segments/{segment_id}.","operationId":"postAudiences","tags":["segments"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostAudiencesBody"},"example":{"name":"example"}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","invalid_parameter","mfa_required","missing_api_key","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"201":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostSegmentsReply"},"example":{"object":"segment","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","audience_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","rules":[],"created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"get":{"summary":"List audiences: every segment on the account, under the older Resend name.","operationId":"getAudiences","tags":["segments"],"parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":500}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","required":false,"schema":{"type":"string"}},{"name":"before","in":"query","required":false,"schema":{"type":"string"}}],"x-error-codes":["internal_server_error","invalid_api_key","invalid_cursor","invalid_parameter","mfa_required","missing_api_key","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetAudiencesReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/audiences/{id}":{"get":{"summary":"Retrieve one audience, the older Resend name for a segment.","operationId":"getAudiencesById","tags":["segments"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostSegmentsReply"},"example":{"object":"segment","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","audience_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","rules":[],"created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"delete":{"summary":"Remove an audience, the older Resend name for a segment.","description":"Its contacts are untouched.","operationId":"deleteAudiencesById","tags":["segments"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","segment_in_use","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteAudiencesBy_idReply"},"example":{"object":"segment","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","deleted":false}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/segments/{id}/members":{"get":{"summary":"The segment evaluated RIGHT NOW — live member ids, never a snapshot.","operationId":"getSegmentsByIdMembers","tags":["segments"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetSegmentsBy_idMembersReply"},"example":{"total":-9007199254740991,"member_ids":[],"truncated":false}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/broadcasts":{"post":{"summary":"Draft a broadcast to a segment.","description":"Content comes from a template version or an inline body. With send: true it is sent as soon as it is created, or scheduled when scheduled_at is also given: the same send as POST /broadcasts/{id}/send, with the same checks.","operationId":"postBroadcasts","tags":["broadcasts"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostBroadcastsBody"}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_from_address","invalid_idempotency_key","invalid_parameter","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","staff_review_required","unsupported_media_type","validation_error"],"responses":{"201":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostBroadcastsReply"},"example":{"object":"broadcast","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","status":"example","from_address":"example","from":"example","template_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","segment_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","audience_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","subject":"example","content":{},"html":"example","text":"example","reply_to":[],"preview_text":"example","topic_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","scheduled_at":"2026-09-04T09:14:00.000Z","sent_at":"2026-09-04T09:14:00.000Z","sent_count":-9007199254740991,"archived_at":"2026-09-04T09:14:00.000Z","created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"get":{"summary":"Every broadcast, newest first — archived included.","operationId":"getBroadcasts","tags":["broadcasts"],"parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":500}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","required":false,"schema":{"type":"string"}},{"name":"before","in":"query","required":false,"schema":{"type":"string"}}],"x-error-codes":["internal_server_error","invalid_api_key","invalid_cursor","invalid_parameter","mfa_required","missing_api_key","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetBroadcastsReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/broadcasts/{id}":{"get":{"summary":"One broadcast.","operationId":"getBroadcastsById","tags":["broadcasts"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetBroadcastsBy_idReply"},"example":{"object":"broadcast","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","status":"example","from_address":"example","from":"example","template_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","segment_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","audience_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","subject":"example","content":{},"html":"example","text":"example","reply_to":[],"preview_text":"example","topic_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","scheduled_at":"2026-09-04T09:14:00.000Z","sent_at":"2026-09-04T09:14:00.000Z","sent_count":-9007199254740991,"archived_at":"2026-09-04T09:14:00.000Z","created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"patch":{"summary":"Edit an unsent broadcast, or rename ANY one.","description":"Drafts and scheduled broadcasts are editable; a scheduled_at time schedules it and null returns it to draft. Sent content is immutable.","operationId":"patchBroadcastsById","tags":["broadcasts"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchBroadcastsBy_idBody"},"example":{}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_from_address","invalid_idempotency_key","invalid_parameter","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetBroadcastsBy_idReply"},"example":{"object":"broadcast","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","status":"example","from_address":"example","from":"example","template_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","segment_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","audience_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","subject":"example","content":{},"html":"example","text":"example","reply_to":[],"preview_text":"example","topic_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","scheduled_at":"2026-09-04T09:14:00.000Z","sent_at":"2026-09-04T09:14:00.000Z","sent_count":-9007199254740991,"archived_at":"2026-09-04T09:14:00.000Z","created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"delete":{"summary":"Delete a draft broadcast.","description":"A scheduled or sent broadcast is archived instead, never deleted.","operationId":"deleteBroadcastsById","tags":["broadcasts"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","invalid_parameter","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteBroadcastsBy_idReply"},"example":{"object":"broadcast","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","deleted":false}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/broadcasts/{id}/send":{"post":{"summary":"Send now, or schedule it with scheduled_at/scheduledAt — the same time grammar as PATCH /broadcasts/:id, refused if it is in the past.","description":"Returns 200 when the broadcast has finished or was scheduled, and 202 while it is still sending. A 202 has status sending. warnings names anything worth knowing that did not stop the send — for example, recipients with no consent on file.","operationId":"postBroadcastsByIdSend","tags":["broadcasts"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostBroadcastsBy_idSendBody"},"example":{}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","invalid_parameter","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","staff_review_required","unsupported_media_type","validation_error"],"responses":{"200":{"description":"The send finished, or scheduled_at/scheduledAt scheduled it instead.","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostBroadcastsBy_idSendReply"},"example":{"id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","broadcast":{"object":"broadcast","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","status":"example","from_address":"example","from":"example","template_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","segment_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","audience_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","subject":"example","content":{},"html":"example","text":"example","reply_to":[],"preview_text":"example","topic_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","scheduled_at":"2026-09-04T09:14:00.000Z","sent_at":"2026-09-04T09:14:00.000Z","sent_count":-9007199254740991,"archived_at":"2026-09-04T09:14:00.000Z","created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z"},"sent":-9007199254740991,"skipped":-9007199254740991,"warnings":[]}}}},"202":{"description":"The send is still running. The broadcast status is sending.","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostBroadcastsBy_idSendReply"},"example":{"id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","broadcast":{"object":"broadcast","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","status":"example","from_address":"example","from":"example","template_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","segment_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","audience_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","subject":"example","content":{},"html":"example","text":"example","reply_to":[],"preview_text":"example","topic_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","scheduled_at":"2026-09-04T09:14:00.000Z","sent_at":"2026-09-04T09:14:00.000Z","sent_count":-9007199254740991,"archived_at":"2026-09-04T09:14:00.000Z","created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z"},"sent":-9007199254740991,"skipped":-9007199254740991,"warnings":[]}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/broadcasts/{id}/cancel":{"post":{"summary":"Cancel a scheduled broadcast, or stop one that is still sending.","description":"Mail already handed off is not pulled back. A scheduled broadcast, or one waiting for review, returns to draft.","operationId":"postBroadcastsByIdCancel","tags":["broadcasts"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","invalid_parameter","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetBroadcastsBy_idReply"},"example":{"object":"broadcast","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","status":"example","from_address":"example","from":"example","template_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","segment_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","audience_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","subject":"example","content":{},"html":"example","text":"example","reply_to":[],"preview_text":"example","topic_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","scheduled_at":"2026-09-04T09:14:00.000Z","sent_at":"2026-09-04T09:14:00.000Z","sent_count":-9007199254740991,"archived_at":"2026-09-04T09:14:00.000Z","created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/broadcasts/{id}/archive":{"post":{"summary":"Archive — reversible, any time, sent or draft.","operationId":"postBroadcastsByIdArchive","tags":["broadcasts"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetBroadcastsBy_idReply"},"example":{"object":"broadcast","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","status":"example","from_address":"example","from":"example","template_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","segment_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","audience_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","subject":"example","content":{},"html":"example","text":"example","reply_to":[],"preview_text":"example","topic_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","scheduled_at":"2026-09-04T09:14:00.000Z","sent_at":"2026-09-04T09:14:00.000Z","sent_count":-9007199254740991,"archived_at":"2026-09-04T09:14:00.000Z","created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/broadcasts/{id}/duplicate":{"post":{"summary":"Copy a broadcast into a new draft: From, subject, content or template, segment, reply_to, preview_text and topic_id.","description":"The copy has no schedule, no sends and no recipient history, whatever the source’s status.","operationId":"postBroadcastsByIdDuplicate","tags":["broadcasts"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostBroadcastsBy_idDuplicateBody"},"example":{}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"201":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetBroadcastsBy_idReply"},"example":{"object":"broadcast","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","status":"example","from_address":"example","from":"example","template_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","segment_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","audience_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","subject":"example","content":{},"html":"example","text":"example","reply_to":[],"preview_text":"example","topic_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","scheduled_at":"2026-09-04T09:14:00.000Z","sent_at":"2026-09-04T09:14:00.000Z","sent_count":-9007199254740991,"archived_at":"2026-09-04T09:14:00.000Z","created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/broadcasts/{id}/messages":{"get":{"summary":"Per-member delivery state for this broadcast.","operationId":"getBroadcastsByIdMessages","tags":["broadcasts"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":500}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","required":false,"schema":{"type":"string"}},{"name":"outcome","in":"query","required":false,"schema":{"type":"string","enum":["sent","delivered","opened","clicked","bounced","complained","unsubscribed","skipped"]}}],"x-error-codes":["internal_server_error","invalid_api_key","invalid_cursor","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetBroadcastsBy_idMessagesReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/broadcasts/{id}/stats":{"get":{"summary":"Sent, delivered, opened, clicked, bounced, complained and unsubscribed totals for one broadcast.","description":"A test send is not included.","operationId":"getBroadcastsByIdStats","tags":["broadcasts"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetBroadcastsBy_idStatsReply"},"example":{"sent":-9007199254740991,"delivered":-9007199254740991,"delivered_percent":-9007199254740991,"opened":-9007199254740991,"opened_percent":-9007199254740991,"clicked":-9007199254740991,"clicked_percent":-9007199254740991,"bounced":-9007199254740991,"complained":-9007199254740991,"unsubscribed":-9007199254740991}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/broadcasts/{id}/recipients":{"get":{"summary":"The recipients of a broadcast for one event type: sent, delivered, opened, clicked, bounced, complained, unsubscribed or suppressed.","description":"opened and clicked rows carry count, clicked rows carry clicked_links, bounced rows carry bounce_type. unsubscribed is always empty, because an unsubscribe is recorded against the contact, not against the message that carried the link.","operationId":"getBroadcastsByIdRecipients","tags":["broadcasts"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"type","in":"query","required":true,"schema":{"type":"string","enum":["sent","delivered","opened","clicked","bounced","complained","unsubscribed","suppressed"],"description":"The event to filter recipients by."}},{"name":"email","in":"query","required":false,"schema":{"description":"Keep recipients whose email address contains this value.","type":"string","minLength":1}},{"name":"bounce_type","in":"query","required":false,"schema":{"description":"Keep bounced recipients of this bounce type. Only with type=bounced.","type":"string","enum":["permanent","transient","undetermined"]}},{"name":"limit","in":"query","required":false,"schema":{"description":"Between 1 and 100. Defaults to 20.","type":"integer","minimum":1,"maximum":100}},{"name":"after","in":"query","required":false,"schema":{"description":"The id of the last row of the previous page. Not with before.","type":"string","minLength":1}},{"name":"before","in":"query","required":false,"schema":{"description":"The id of the first row of the next page. Not with after.","type":"string","minLength":1}}],"x-error-codes":["internal_server_error","invalid_api_key","invalid_cursor","invalid_parameter","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetBroadcastsBy_idRecipientsReply"},"example":{"object":"list","has_more":false,"data":[]}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/broadcasts/{id}/clicked-links":{"get":{"summary":"Every link clicked in a broadcast, most clicked first, with total and unique clicks.","operationId":"getBroadcastsByIdClickedLinks","tags":["broadcasts"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"limit","in":"query","required":false,"schema":{"description":"Between 1 and 100. Defaults to 20.","type":"integer","minimum":1,"maximum":100}},{"name":"after","in":"query","required":false,"schema":{"description":"The id of the last row of the previous page. Not with before.","type":"string","minLength":1}},{"name":"before","in":"query","required":false,"schema":{"description":"The id of the first row of the next page. Not with after.","type":"string","minLength":1}}],"x-error-codes":["internal_server_error","invalid_api_key","invalid_cursor","invalid_parameter","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetBroadcastsBy_idClicked_linksReply"},"example":{"object":"list","has_more":false,"data":[]}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/broadcasts/{id}/preview":{"get":{"summary":"Render this broadcast the way a recipient would see it.","description":"Nothing is sent.","operationId":"getBroadcastsByIdPreview","tags":["broadcasts"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}],"x-error-codes":["internal_server_error","invalid_api_key","invalid_parameter","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetBroadcastsBy_idPreviewReply"},"example":{"subject":"example","html":"example","preview_text":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/automations":{"post":{"summary":"Create an automation: a trigger plus ordered steps (email, webhook, A/B split), or Resend’s graph of steps and connections (delay, wait for event, condition,…","description":"Create an automation: a trigger plus ordered steps (email, webhook, A/B split), or Resend’s graph of steps and connections (delay, wait for event, condition, send email, contact update and delete, add to segment).","operationId":"postAutomations","tags":["automations"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostAutomationsBody"},"example":{"name":"example","steps":[{}]}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"201":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostAutomationsReply"},"example":{"object":"automation","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","status":"example","format":"linear","trigger":{"type":"custom_event","event_name":"order.paid"},"steps":[],"connections":[],"current_version":-9007199254740991,"created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"get":{"summary":"Every automation on the account, oldest first.","description":"status filters to enabled or disabled (a draft counts as disabled).","operationId":"getAutomations","tags":["automations"],"parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":500}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","required":false,"schema":{"type":"string"}},{"name":"before","in":"query","required":false,"schema":{"type":"string"}},{"name":"status","in":"query","required":false,"schema":{"description":"Only enabled automations, or only the ones that are not (disabled and drafts).","type":"string","enum":["enabled","disabled"]}}],"x-error-codes":["internal_server_error","invalid_api_key","invalid_cursor","invalid_parameter","mfa_required","missing_api_key","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetAutomationsReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/automations/{id}":{"get":{"summary":"One automation, with its steps and connections.","operationId":"getAutomationsById","tags":["automations"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostAutomationsReply"},"example":{"object":"automation","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","status":"example","format":"linear","trigger":{"type":"custom_event","event_name":"order.paid"},"steps":[],"connections":[],"current_version":-9007199254740991,"created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"patch":{"summary":"Rename, enable or disable an automation, or replace its definition.","description":"The definition of an enabled automation cannot change: disable it first, or duplicate it and edit the copy. Enabling snapshots a version, so a run never executes a half-edited definition.","operationId":"patchAutomationsById","tags":["automations"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchAutomationsBy_idBody"}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","invalid_parameter","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostAutomationsReply"},"example":{"object":"automation","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","status":"example","format":"linear","trigger":{"type":"custom_event","event_name":"order.paid"},"steps":[],"connections":[],"current_version":-9007199254740991,"created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"delete":{"summary":"Delete an automation, its versions and its run history.","description":"Runs still in progress are cancelled first, so nothing it started sends afterwards.","operationId":"deleteAutomationsById","tags":["automations"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteAutomationsBy_idReply"},"example":{"object":"automation","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","deleted":true}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/automations/{id}/duplicate":{"post":{"summary":"Copy an automation, disabled, with \" (copy)\" after its name.","description":"Edit the copy, enable it, then stop the original.","operationId":"postAutomationsByIdDuplicate","tags":["automations"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"201":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostAutomationsReply"},"example":{"object":"automation","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","status":"example","format":"linear","trigger":{"type":"custom_event","event_name":"order.paid"},"steps":[],"connections":[],"current_version":-9007199254740991,"created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/automations/{id}/stop":{"post":{"summary":"Stop an automation: no new runs start.","description":"Runs already in progress finish as they started, as Resend documents; cancel_runs=true cancels them as well.","operationId":"postAutomationsByIdStop","tags":["automations"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"cancel_runs","in":"query","required":false,"schema":{"description":"true also cancels the runs in progress: a waiting step is skipped and nothing after it runs.","type":"string","enum":["true","false"]}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","invalid_parameter","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostAutomationsBy_idStopReply"},"example":{"object":"automation","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","status":"disabled","runs_cancelled":-9007199254740991}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/automations/{id}/enable":{"post":{"summary":"Snapshot trigger+steps as an immutable version and start firing.","operationId":"postAutomationsByIdEnable","tags":["automations"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostAutomationsReply"},"example":{"object":"automation","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","status":"example","format":"linear","trigger":{"type":"custom_event","event_name":"order.paid"},"steps":[],"connections":[],"current_version":-9007199254740991,"created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/automations/{id}/disable":{"post":{"summary":"Stop firing.","description":"Versions stay for audit.","operationId":"postAutomationsByIdDisable","tags":["automations"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostAutomationsReply"},"example":{"object":"automation","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","status":"example","format":"linear","trigger":{"type":"custom_event","event_name":"order.paid"},"steps":[],"connections":[],"current_version":-9007199254740991,"created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/automations/{id}/versions":{"get":{"summary":"Every immutable version, oldest first.","operationId":"getAutomationsByIdVersions","tags":["automations"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":500}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","required":false,"schema":{"type":"string"}},{"name":"before","in":"query","required":false,"schema":{"type":"string"}}],"x-error-codes":["internal_server_error","invalid_api_key","invalid_cursor","invalid_parameter","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetAutomationsBy_idVersionsReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/automations/{id}/runs":{"get":{"summary":"Every time this automation fired, newest first — the answer to \"did it run?\", which the engine used to throw away.","operationId":"getAutomationsByIdRuns","tags":["automations"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":500}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","required":false,"schema":{"type":"string"}},{"name":"before","in":"query","required":false,"schema":{"type":"string"}},{"name":"status","in":"query","required":false,"schema":{"description":"Comma-separated: running, completed, failed, cancelled (succeeded is completed under its linear name).","type":"string","maxLength":200}}],"x-error-codes":["internal_server_error","invalid_api_key","invalid_cursor","invalid_parameter","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetAutomationsBy_idRunsReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/automations/{id}/runs/{run_id}":{"get":{"summary":"One run with every step: what it did, what it returned, and the sentence for the ones that failed.","operationId":"getAutomationsByIdRunsByRunId","tags":["automations"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"run_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetAutomationsBy_idRunsBy_run_idReply"},"example":{"object":"automation_run","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","automation_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","version_number":-9007199254740991,"trigger_type":"example","event_name":"example","contact_id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","status":"running","started_at":"2026-09-04T09:14:00.000Z","finished_at":"2026-09-04T09:14:00.000Z","completed_at":"2026-09-04T09:14:00.000Z","created_at":"2026-09-04T09:14:00.000Z","current_step":"example","waiting_for":{"event":"example","until":"2026-09-04T09:14:00.000Z"}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/events":{"get":{"summary":"Every custom event this account has declared, with its typed schema and when it was last seen.","operationId":"getEvents","tags":["automations"],"parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":500}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","required":false,"schema":{"type":"string"}},{"name":"before","in":"query","required":false,"schema":{"type":"string"}}],"x-error-codes":["internal_server_error","invalid_api_key","invalid_cursor","invalid_parameter","mfa_required","missing_api_key","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetEventsReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"post":{"summary":"Ingest a custom event, or declare one.","description":"With schema it declares the event (201); otherwise matching enabled automations fire (202).","operationId":"postEvents","tags":["automations"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostEventsBody"},"example":{"name":"example"}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"202":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostEventsReply"},"example":{"fired":-9007199254740991}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/events/{id}":{"get":{"summary":"One event definition.","operationId":"getEventsById","tags":["automations"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":200,"description":"The event definition id, or its name."}}],"x-error-codes":["internal_server_error","invalid_api_key","mfa_required","missing_api_key","not_found","rate_limit_exceeded","restricted_api_key","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetEventsBy_idReply"},"example":{"object":"event","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","description":"example","schema":{},"strict":false,"last_seen_at":"2026-09-04T09:14:00.000Z","created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"patch":{"summary":"Declare or re-declare an event’s fields.","description":"Adding a field to a strict event starts refusing payloads that omit it — that is the point.","operationId":"patchEventsById","tags":["automations"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":200,"description":"The event definition id, or its name."}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchEventsBy_idBody"}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetEventsBy_idReply"},"example":{"object":"event","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","name":"example","description":"example","schema":{},"strict":false,"last_seen_at":"2026-09-04T09:14:00.000Z","created_at":"2026-09-04T09:14:00.000Z","updated_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}},"delete":{"summary":"Forget an event definition.","description":"Ingest keeps accepting the event — it just stops being checked.","operationId":"deleteEventsById","tags":["automations"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":200,"description":"The event definition id, or its name."}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteEventsBy_idReply"},"example":{"object":"event","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","deleted":false}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/events/send":{"post":{"summary":"Send a custom event for one contact, by contact_id or email.","description":"Matching enabled automations fire.","operationId":"postEventsSend","tags":["automations"],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostEventsSendBody"},"example":{"event":"example"}}}},"x-error-codes":["csrf_origin_rejected","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","restricted_api_key","unsupported_media_type","validation_error"],"responses":{"202":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostEventsSendReply"},"example":{"object":"event","event":"example","fired":-9007199254740991}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/oauth/grants":{"get":{"summary":"Every assistant connection on this account, newest first.","operationId":"getOauthGrants","tags":["oauth"],"parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":500}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","required":false,"schema":{"type":"string"}},{"name":"before","in":"query","required":false,"schema":{"type":"string"}}],"x-error-codes":["human_action_required","internal_server_error","invalid_api_key","invalid_cursor","invalid_parameter","mfa_required","missing_api_key","rate_limit_exceeded","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetOauthGrantsReply"},"example":{"object":"list","data":[],"has_more":false,"next_cursor":"example"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"422":{"$ref":"#/components/responses/UnprocessableEntity"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}},"/oauth/grants/{id}":{"delete":{"summary":"Revoke one assistant connection.","description":"Tokens and the backing key die immediately.","operationId":"deleteOauthGrantsById","tags":["oauth"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"$ref":"#/components/parameters/IdempotencyKey"},{"$ref":"#/components/parameters/ResendIdempotencyKey"}],"x-error-codes":["csrf_origin_rejected","human_action_required","idempotency_in_flight","idempotency_payload_mismatch","insufficient_role","internal_server_error","invalid_api_key","invalid_idempotency_key","mfa_required","missing_api_key","not_found","payload_too_large","rate_limit_exceeded","unsupported_media_type","validation_error"],"responses":{"200":{"description":"Success","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteOauthGrantsBy_idReply"},"example":{"object":"oauth_grant","id":"9c8f8f0e-3d1a-4d3f-9a1e-2b7c1a0f5e42","deleted":false,"revoked_at":"2026-09-04T09:14:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"413":{"$ref":"#/components/responses/PayloadTooLarge"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/InternalServerError"}}}}},"components":{"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","description":"An API key, sent as Authorization: Bearer as_…"}},"schemas":{"PostApi_keysBody":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":255,"description":"A name you will recognise in the key list."},"permission":{"type":"string","enum":["full_access","sending_access"],"description":"full_access can manage the account. sending_access can send. Omit it and the key is full_access."},"domain_scope":{"description":"Limit the key to one domain on this account, by its id or its name. Same as domain_id. Omit it to allow every domain.","anyOf":[{"type":"string","minLength":1},{"type":"null"}]},"scopes":{"description":"Narrow what the key can call. Omit it and the permission decides.","maxItems":20,"type":"array","items":{"type":"string","enum":["emails:send","emails:read","domains:read","domains:write","webhooks:read","webhooks:write","limits:read","limits:write","trust:read","contacts:read","contacts:write","suppressions:read","suppressions:write","templates:read","templates:write","segments:read","segments:write","topics:read","topics:write","inbound:read"]}},"loop_guard":{"type":"string","enum":["off","repetition-only","full"],"description":"off watches nothing. repetition-only watches near-identical sends. full also watches recipient collapse. Omit it and transactional sends use repetition-only; a marketing send on a key with no setting still uses full."}},"required":["name","permission"]},"PostApi_keysReply":{"type":"object","properties":{"object":{"type":"string","const":"api_key"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"permission":{"type":"string","enum":["full_access","sending_access"]},"domain_scope":{"anyOf":[{"type":"string"},{"type":"null"}]},"scopes":{"type":"array","items":{"type":"string"}},"expires_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"token_prefix":{"type":"string"},"system":{"type":"boolean"},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"last_used_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"request_count_30d":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"rotated_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"previous_key_expires_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"budget_per_period":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"period":{"type":"string","enum":["hourly","daily","monthly"]},"rate_ceiling_per_minute":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"loop_guard":{"type":"string","enum":["off","repetition-only","full"]},"token":{"type":"string"}},"required":["object","id","name","permission","domain_scope","scopes","expires_at","token_prefix","system","created_at","last_used_at","request_count_30d","rotated_at","previous_key_expires_at","budget_per_period","period","rate_ceiling_per_minute","loop_guard","token"]},"GetApi_keysReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"object":{"type":"string","const":"api_key"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"permission":{"type":"string","enum":["full_access","sending_access"]},"domain_scope":{"anyOf":[{"type":"string"},{"type":"null"}]},"scopes":{"type":"array","items":{"type":"string"}},"expires_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"token_prefix":{"type":"string"},"system":{"type":"boolean"},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"last_used_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"request_count_30d":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"rotated_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"previous_key_expires_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"budget_per_period":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"period":{"type":"string","enum":["hourly","daily","monthly"]},"rate_ceiling_per_minute":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"loop_guard":{"type":"string","enum":["off","repetition-only","full"]}},"required":["object","id","name","permission","domain_scope","scopes","expires_at","token_prefix","system","created_at","last_used_at","request_count_30d","rotated_at","previous_key_expires_at","budget_per_period","period","rate_ceiling_per_minute","loop_guard"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"PatchApi_keysBy_idBody":{"type":"object","properties":{"name":{"description":"A new name. Omit it to keep the current one.","type":"string","minLength":1,"maxLength":255},"domain_scope":{"description":"Limit the key to one domain, or null to allow every domain.","anyOf":[{"type":"string","minLength":1},{"type":"null"}]},"scopes":{"description":"Replace the scope list.","maxItems":20,"type":"array","items":{"type":"string","enum":["emails:send","emails:read","domains:read","domains:write","webhooks:read","webhooks:write","limits:read","limits:write","trust:read","contacts:read","contacts:write","suppressions:read","suppressions:write","templates:read","templates:write","segments:read","segments:write","topics:read","topics:write","inbound:read"]}},"loop_guard":{"type":"string","enum":["off","repetition-only","full"],"description":"off watches nothing. repetition-only watches near-identical sends. full also watches recipient collapse. Omit it and transactional sends use repetition-only; a marketing send on a key with no setting still uses full."}}},"PatchApi_keysBy_idReply":{"type":"object","properties":{"object":{"type":"string","const":"api_key"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"permission":{"type":"string","enum":["full_access","sending_access"]},"domain_scope":{"anyOf":[{"type":"string"},{"type":"null"}]},"scopes":{"type":"array","items":{"type":"string"}},"expires_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"token_prefix":{"type":"string"},"system":{"type":"boolean"},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"last_used_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"request_count_30d":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"rotated_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"previous_key_expires_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"budget_per_period":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"period":{"type":"string","enum":["hourly","daily","monthly"]},"rate_ceiling_per_minute":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"loop_guard":{"type":"string","enum":["off","repetition-only","full"]}},"required":["object","id","name","permission","domain_scope","scopes","expires_at","token_prefix","system","created_at","last_used_at","request_count_30d","rotated_at","previous_key_expires_at","budget_per_period","period","rate_ceiling_per_minute","loop_guard"]},"DeleteApi_keysBy_idReply":{"type":"object","properties":{"object":{"type":"string","const":"api_key"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"deleted":{"type":"boolean"}},"required":["object","id","deleted"]},"PostApi_keysBy_idRotateBody":{"type":"object","properties":{"grace_hours":{"anyOf":[{"type":"number","const":0},{"type":"number","const":1},{"type":"number","const":24}],"description":"How long the previous token keeps working: 0, 1 or 24 hours."}},"required":["grace_hours"]},"PostApi_keysBy_idRotateReply":{"type":"object","properties":{"object":{"type":"string","const":"api_key"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"permission":{"type":"string","enum":["full_access","sending_access"]},"domain_scope":{"anyOf":[{"type":"string"},{"type":"null"}]},"scopes":{"type":"array","items":{"type":"string"}},"expires_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"token_prefix":{"type":"string"},"system":{"type":"boolean"},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"last_used_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"request_count_30d":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"rotated_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"previous_key_expires_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"budget_per_period":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"period":{"type":"string","enum":["hourly","daily","monthly"]},"rate_ceiling_per_minute":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"loop_guard":{"type":"string","enum":["off","repetition-only","full"]},"token":{"type":"string"}},"required":["object","id","name","permission","domain_scope","scopes","expires_at","token_prefix","system","created_at","last_used_at","request_count_30d","rotated_at","previous_key_expires_at","budget_per_period","period","rate_ceiling_per_minute","loop_guard","token"]},"PostTopicsBody":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200,"description":"A name for the topic list. Unique on this account."},"description":{"description":"Shown with the topic when a contact chooses.","type":"string","maxLength":2000},"default_subscribed":{"description":"true sends this topic unless the contact opts out. false means silence is no. Same as default_subscription: opt_in is true, opt_out is false.","type":"boolean"},"visibility":{"description":"public lists the topic on every preference page. private lists it only for contacts subscribed to it. Defaults to public.","type":"string","enum":["public","private"]}},"required":["name"]},"PostTopicsReply":{"type":"object","properties":{"object":{"type":"string","const":"topic"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"default_subscribed":{"type":"boolean"},"default_subscription":{"type":"string","enum":["opt_in","opt_out"]},"visibility":{"type":"string","enum":["public","private"]},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"updated_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["object","id","name","description","default_subscribed","default_subscription","visibility","created_at","updated_at"]},"GetTopicsReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"object":{"type":"string","const":"topic"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"default_subscribed":{"type":"boolean"},"default_subscription":{"type":"string","enum":["opt_in","opt_out"]},"visibility":{"type":"string","enum":["public","private"]},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"updated_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["object","id","name","description","default_subscribed","default_subscription","visibility","created_at","updated_at"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"PatchTopicsBy_idBody":{"type":"object","properties":{"id":{"description":"The topic id, as the Resend SDK sends it. Must match the id in the path.","type":"string","minLength":1,"maxLength":200},"name":{"description":"A new name. Omit it to keep the current one.","type":"string","minLength":1,"maxLength":200},"description":{"description":"A new description. Null clears it.","anyOf":[{"type":"string","maxLength":2000},{"type":"null"}]},"default_subscribed":{"description":"Whether a contact who has never answered receives this topic.","type":"boolean"},"visibility":{"description":"public lists the topic on every preference page. private lists it only for contacts subscribed to it. ","type":"string","enum":["public","private"]}}},"DeleteTopicsBy_idReply":{"type":"object","properties":{"object":{"type":"string","const":"topic"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"deleted":{"type":"boolean"}},"required":["object","id","deleted"]},"GetContactsBy_idTopicsReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"subscribed":{"type":"boolean"},"subscription":{"type":"string","enum":["opt_in","opt_out"]},"basis":{"type":"string","enum":["explicit","default"]},"source":{"anyOf":[{"type":"string"},{"type":"null"}]},"updated_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]}},"required":["id","name","description","subscribed","subscription","basis","source","updated_at"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"PatchContactsBy_idTopicsBody":{"anyOf":[{"type":"object","properties":{"topics":{"minItems":1,"maxItems":100,"type":"array","items":{"type":"object","properties":{"topic_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$","description":"The topic."},"subscribed":{"type":"boolean","description":"true opts the contact in. false opts them out."}},"required":["topic_id","subscribed"]},"description":"The topics to set. Each answer replaces the previous one."}},"required":["topics"]},{"minItems":1,"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$","description":"The topic."},"subscription":{"type":"string","enum":["opt_in","opt_out"],"description":"opt_in subscribes. opt_out unsubscribes."}},"required":["id","subscription"]},"description":"The same answers, with id and subscription."}]},"PatchContactsBy_idTopicsReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"subscribed":{"type":"boolean"},"subscription":{"type":"string","enum":["opt_in","opt_out"]},"basis":{"type":"string","enum":["explicit","default"]},"source":{"anyOf":[{"type":"string"},{"type":"null"}]},"updated_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]}},"required":["id","name","description","subscribed","subscription","basis","source","updated_at"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]},"contact_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"topics":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"subscription":{"type":"string","enum":["opt_in","opt_out"]}},"required":["id","subscription"]}}},"required":["object","data","has_more","next_cursor","contact_id","topics"]},"GetMetricsReply":{"type":"object","properties":{"since":{"type":"string"},"until":{"type":"string"},"event":{"anyOf":[{"type":"string","enum":["sent","delivered","bounced","complained","opened","clicked"]},{"type":"null"}]},"totals":{"type":"object","properties":{"sent":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"delivered":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bounced":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"complaints":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"opens":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"clicks":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["sent","delivered","bounced","complaints","opens","clicks"]},"previous":{"type":"object","properties":{"sent":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"delivered":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bounced":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"complaints":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"opens":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"clicks":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["sent","delivered","bounced","complaints","opens","clicks"]},"series":{"type":"array","items":{"type":"object","properties":{"day":{"type":"string"},"sent":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"delivered":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bounced":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"complaints":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"opens":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"clicks":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["day","sent","delivered","bounced","complaints","opens","clicks"]}},"by_domain":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"sent":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"delivered":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bounced":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"complained":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"series":{"type":"array","items":{"type":"object","properties":{"day":{"type":"string"},"sent":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"delivered":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bounced":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"complained":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["day","sent","delivered","bounced","complained"]}}},"required":["id","name","sent","delivered","bounced","complained","series"]}},"by_api_key":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"sent":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"delivered":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bounced":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"complained":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"series":{"type":"array","items":{"type":"object","properties":{"day":{"type":"string"},"sent":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"delivered":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bounced":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"complained":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["day","sent","delivered","bounced","complained"]}}},"required":["id","name","sent","delivered","bounced","complained","series"]}}},"required":["since","until","event","totals","previous","series","by_domain","by_api_key"]},"GetEmailsMetricsReply":{"type":"object","properties":{"object":{"type":"string","const":"metrics"},"start_date":{"description":"The start of the requested range, as an ISO 8601 datetime.","type":"string"},"end_date":{"description":"The end of the requested range, as an ISO 8601 datetime.","type":"string"},"metrics":{"description":"The metrics in the response.","type":"array","items":{"type":"string"}},"dimensions":{"description":"The dimensions the response is broken down by.","type":"array","items":{"type":"string"}},"granularity":{"type":"string","enum":["hourly","daily","weekly","monthly"]},"totals":{"description":"The requested metrics over the whole range.","type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"number"}},"data":{"description":"One row per combination of the requested dimensions. Omitted when there are none.","type":"array","items":{"type":"object","properties":{"period":{"type":"string"},"domain_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"domain_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"email_id":{"type":"string"},"broadcast_id":{"type":"string"},"broadcast_name":{"anyOf":[{"type":"string"},{"type":"null"}]}},"additionalProperties":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"null"}]}}}},"additionalProperties":{}},"PostEmailsBody":{"type":"object","properties":{"from":{"description":"Sender. A verified domain, or the onboarding address while a domain is still pending. Optional only when the template has a default sender; a from here overrides it.","type":"string","minLength":1},"to":{"description":"Recipients. One address or a list.","anyOf":[{"type":"string","minLength":1},{"type":"array","items":{"type":"string","minLength":1}}]},"subject":{"description":"Required unless template or template_id names a published template that has a subject. Overrides the template subject when both exist.","type":"string","minLength":1,"maxLength":998},"cc":{"description":"Copy recipients.","anyOf":[{"type":"string","minLength":1},{"type":"array","items":{"type":"string","minLength":1}}]},"bcc":{"description":"Blind copy recipients.","anyOf":[{"type":"string","minLength":1},{"type":"array","items":{"type":"string","minLength":1}}]},"reply_to":{"description":"Reply-To addresses. Overrides the template default when a template is sent.","anyOf":[{"type":"string","minLength":1},{"type":"array","items":{"type":"string","minLength":1}}]},"replyTo":{"description":"Same as reply_to. reply_to wins if both are sent.","anyOf":[{"type":"string","minLength":1},{"type":"array","items":{"type":"string","minLength":1}}]},"html":{"description":"HTML body. Provide html, text, or a template.","type":"string","maxLength":10485760},"text":{"description":"Plain-text body. Provide html, text, or a template.","type":"string","maxLength":10485760},"headers":{"description":"Extra headers. Names that this API sets itself are replaced.","type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"}},"tags":{"anyOf":[{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"}},{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","description":"Tag name. Letters, digits, _ and -, up to 256 characters."},"value":{"type":"string","description":"Tag value. Same characters, up to 256 characters."}},"required":["name","value"]}}],"description":"Tags as an object of name to value, or a list of {name, value}."},"scheduled_at":{"description":"ISO 8601 or a short phrase (\"in 1 hour\", \"tomorrow 9am\"). Max 30 days ahead.","type":"string","minLength":1},"scheduledAt":{"description":"Resend Node SDK name for scheduled_at.","type":"string","minLength":1},"timezone":{"description":"Time zone for a scheduled_at phrase such as \"tomorrow 9am\". An ISO time ignores this. Example: America/Los_Angeles. Omitted phrases are read in UTC.","type":"string","minLength":1},"attachments":{"description":"Files to attach. At most 100, and 40 MB of base64 content together.","maxItems":100,"type":"array","items":{"type":"object","properties":{"filename":{"description":"File name shown to the recipient.","type":"string","minLength":1,"maxLength":255},"content":{"description":"Base64 text, a byte array, or a Buffer. Provide content or path.","anyOf":[{"type":"string"},{"type":"object","properties":{"type":{"type":"string","const":"Buffer","description":"Buffer, when the file is a Node buffer sent as JSON."},"data":{"type":"array","items":{"type":"integer","minimum":0,"maximum":255},"description":"The file bytes, each from 0 to 255."}},"required":["type","data"]},{"type":"array","items":{"type":"integer","minimum":0,"maximum":255}}]},"path":{"description":"https URL of a hosted file. Fetched when the send is accepted.","type":"string","format":"uri"},"content_type":{"description":"Media type, such as application/pdf. No parameters.","type":"string","minLength":1,"maxLength":255},"contentType":{"description":"Same as content_type. content_type wins if both are sent.","type":"string","minLength":1,"maxLength":255},"content_id":{"description":"Referenced from HTML as cid: this value, for an inline image.","type":"string","minLength":1,"maxLength":255},"contentId":{"description":"Same as content_id. content_id wins if both are sent.","type":"string","minLength":1,"maxLength":255}}}},"topic_id":{"description":"Subscription topic. Recipients who opted out of it are not sent this message.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"topicId":{"description":"Resend Node SDK name for topic_id.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"template_id":{"description":"Id or alias of the published template to render, instead of html or text.","type":"string","minLength":1,"maxLength":200},"template_values":{"description":"Values for the template placeholders.","type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"template":{"type":"object","properties":{"id":{"type":"string","minLength":1,"maxLength":200,"description":"Published template id or alias."},"variables":{"description":"Values for the template placeholders. A string or a number per name.","type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"string"},{"type":"number"}]}}},"required":["id"],"description":"A published template, instead of html or text."},"expires_at":{"description":"When a held send stops waiting for a person. At most 7 days ahead. Ignored when the send is not held.","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"}},"required":["to"]},"PostEmailsReply":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"simulated":{"type":"boolean"},"warnings":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"},"fix":{"type":"string"}},"required":["code","message","fix"]}}},"required":["id","simulated","warnings"]},"PostEmailsPreflightReply":{"type":"object","properties":{"ok":{"type":"boolean"},"simulated":{"type":"boolean"},"error":{"anyOf":[{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"},"fix":{"type":"string"},"action_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["code","message","fix"]},{"type":"null"}]},"checks":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}},"required":["ok","simulated","error","checks"]},"PostEmailsBatchBody":{"minItems":1,"maxItems":500,"type":"array","items":{"type":"object","properties":{"from":{"description":"Sender. A verified domain, or the onboarding address while a domain is still pending. Optional only when the template has a default sender; a from here overrides it.","type":"string","minLength":1},"to":{"description":"Recipients. One address or a list.","anyOf":[{"type":"string","minLength":1},{"type":"array","items":{"type":"string","minLength":1}}]},"subject":{"description":"Required unless template or template_id names a published template that has a subject. Overrides the template subject when both exist.","type":"string","minLength":1,"maxLength":998},"cc":{"description":"Copy recipients.","anyOf":[{"type":"string","minLength":1},{"type":"array","items":{"type":"string","minLength":1}}]},"bcc":{"description":"Blind copy recipients.","anyOf":[{"type":"string","minLength":1},{"type":"array","items":{"type":"string","minLength":1}}]},"reply_to":{"description":"Reply-To addresses. Overrides the template default when a template is sent.","anyOf":[{"type":"string","minLength":1},{"type":"array","items":{"type":"string","minLength":1}}]},"replyTo":{"description":"Same as reply_to. reply_to wins if both are sent.","anyOf":[{"type":"string","minLength":1},{"type":"array","items":{"type":"string","minLength":1}}]},"html":{"description":"HTML body. Provide html, text, or a template.","type":"string","maxLength":10485760},"text":{"description":"Plain-text body. Provide html, text, or a template.","type":"string","maxLength":10485760},"headers":{"description":"Extra headers. Names that this API sets itself are replaced.","type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"}},"tags":{"anyOf":[{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"}},{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","description":"Tag name. Letters, digits, _ and -, up to 256 characters."},"value":{"type":"string","description":"Tag value. Same characters, up to 256 characters."}},"required":["name","value"]}}],"description":"Tags as an object of name to value, or a list of {name, value}."},"scheduled_at":{"description":"ISO 8601 or a short phrase (\"in 1 hour\", \"tomorrow 9am\"). Max 30 days ahead.","type":"string","minLength":1},"scheduledAt":{"description":"Resend Node SDK name for scheduled_at.","type":"string","minLength":1},"timezone":{"description":"Time zone for a scheduled_at phrase such as \"tomorrow 9am\". An ISO time ignores this. Example: America/Los_Angeles. Omitted phrases are read in UTC.","type":"string","minLength":1},"attachments":{"description":"Files to attach. At most 100, and 40 MB of base64 content together.","maxItems":100,"type":"array","items":{"type":"object","properties":{"filename":{"description":"File name shown to the recipient.","type":"string","minLength":1,"maxLength":255},"content":{"description":"Base64 text, a byte array, or a Buffer. Provide content or path.","anyOf":[{"type":"string"},{"type":"object","properties":{"type":{"type":"string","const":"Buffer","description":"Buffer, when the file is a Node buffer sent as JSON."},"data":{"type":"array","items":{"type":"integer","minimum":0,"maximum":255},"description":"The file bytes, each from 0 to 255."}},"required":["type","data"]},{"type":"array","items":{"type":"integer","minimum":0,"maximum":255}}]},"path":{"description":"https URL of a hosted file. Fetched when the send is accepted.","type":"string","format":"uri"},"content_type":{"description":"Media type, such as application/pdf. No parameters.","type":"string","minLength":1,"maxLength":255},"contentType":{"description":"Same as content_type. content_type wins if both are sent.","type":"string","minLength":1,"maxLength":255},"content_id":{"description":"Referenced from HTML as cid: this value, for an inline image.","type":"string","minLength":1,"maxLength":255},"contentId":{"description":"Same as content_id. content_id wins if both are sent.","type":"string","minLength":1,"maxLength":255}}}},"topic_id":{"description":"Subscription topic. Recipients who opted out of it are not sent this message.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"topicId":{"description":"Resend Node SDK name for topic_id.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"template_id":{"description":"Id or alias of the published template to render, instead of html or text.","type":"string","minLength":1,"maxLength":200},"template_values":{"description":"Values for the template placeholders.","type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"template":{"type":"object","properties":{"id":{"type":"string","minLength":1,"maxLength":200,"description":"Published template id or alias."},"variables":{"description":"Values for the template placeholders. A string or a number per name.","type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"string"},{"type":"number"}]}}},"required":["id"],"description":"A published template, instead of html or text."},"expires_at":{"description":"When a held send stops waiting for a person. At most 7 days ahead. Ignored when the send is not held.","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"}},"required":["to"]}},"PostEmailsBatchReply":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","minimum":0,"maximum":9007199254740991},"status":{"type":"string","enum":["accepted","rejected"]},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"simulated":{"type":"boolean"},"error":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"},"fix":{"type":"string"},"docs_url":{"type":"string"},"details":{"type":"array","items":{"type":"object","properties":{"path":{"type":"string"},"message":{"type":"string"}},"required":["path","message"]}}},"required":["code","message","fix","docs_url"]}},"required":["index","status"]}}},"required":["data"]},"GetEmailsBy_idReply":{"type":"object","properties":{"object":{"type":"string","const":"email"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"from":{"type":"string"},"to":{"type":"array","items":{"type":"string"}},"cc":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}]},"bcc":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}]},"reply_to":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}]},"subject":{"type":"string"},"message_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"html":{"anyOf":[{"type":"string"},{"type":"null"}]},"text":{"anyOf":[{"type":"string"},{"type":"null"}]},"headers":{"anyOf":[{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"}},{"type":"null"}]},"tags":{"anyOf":[{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"}},{"type":"null"}]},"attachments":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"filename":{"type":"string"},"content_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"content_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"size_bytes":{"anyOf":[{"type":"number"},{"type":"null"}]},"path":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["filename","content_type","content_id","size_bytes","path"]}},{"type":"null"}]},"scheduled_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"status":{"type":"string","enum":["queued","scheduled","sent","delivered","delivery_delayed","bounced","complained","opened","clicked","failed","canceled","suppressed"]},"last_event":{"anyOf":[{"type":"string","enum":["queued","scheduled","sent","delivered","delivery_delayed","bounced","complained","opened","clicked","failed","canceled","suppressed"]},{"type":"null"}]},"provider_message_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"api_key_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"template_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"template_version":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"domain":{"type":"string"},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"updated_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"warnings":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"},"fix":{"type":"string"}},"required":["code","message","fix"]}}},"required":["object","id","from","to","cc","bcc","reply_to","subject","message_id","html","text","headers","tags","attachments","scheduled_at","status","last_event","provider_message_id","api_key_id","template_id","template_version","domain","created_at","updated_at","warnings"]},"GetEmailsReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"object":{"type":"string","const":"email"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"from":{"type":"string"},"to":{"type":"array","items":{"type":"string"}},"cc":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}]},"bcc":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}]},"reply_to":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}]},"subject":{"type":"string"},"message_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"html":{"anyOf":[{"type":"string"},{"type":"null"}]},"text":{"anyOf":[{"type":"string"},{"type":"null"}]},"headers":{"anyOf":[{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"}},{"type":"null"}]},"tags":{"anyOf":[{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"}},{"type":"null"}]},"attachments":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"filename":{"type":"string"},"content_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"content_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"size_bytes":{"anyOf":[{"type":"number"},{"type":"null"}]},"path":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["filename","content_type","content_id","size_bytes","path"]}},{"type":"null"}]},"scheduled_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"status":{"type":"string","enum":["queued","scheduled","sent","delivered","delivery_delayed","bounced","complained","opened","clicked","failed","canceled","suppressed"]},"last_event":{"anyOf":[{"type":"string","enum":["queued","scheduled","sent","delivered","delivery_delayed","bounced","complained","opened","clicked","failed","canceled","suppressed"]},{"type":"null"}]},"provider_message_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"api_key_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"template_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"template_version":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"domain":{"type":"string"},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"updated_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"warnings":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"},"fix":{"type":"string"}},"required":["code","message","fix"]}}},"required":["object","id","from","to","cc","bcc","reply_to","subject","message_id","html","text","headers","tags","attachments","scheduled_at","status","last_event","provider_message_id","api_key_id","template_id","template_version","domain","created_at","updated_at","warnings"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"GetEmailsBy_idEventsReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string"},"occurred_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"recipient":{"anyOf":[{"type":"string"},{"type":"null"}]},"detail":{"type":"string"},"provider_message_id":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","type","occurred_at","recipient","detail","provider_message_id"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"PostEmailsBy_idShareBody":{"type":"object","properties":{"expires_in":{"description":"How long the link stays valid, such as \"10m\", \"2 hours\" or \"1 day\". Default 48h. At most 48 hours.","type":"string","maxLength":40}}},"PostEmailsBy_idShareReply":{"type":"object","properties":{"object":{"type":"string","const":"email"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$","description":"The email the link opens."},"url":{"type":"string","format":"uri","description":"The link. Anyone who has it can read the email until it expires."}},"required":["object","id","url"]},"DeleteEmailsBy_idReply":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"status":{"type":"string"}},"required":["id","status"]},"PatchEmailsBy_idBody":{"type":"object","properties":{"scheduled_at":{"description":"ISO 8601 or a short phrase (\"in 1 hour\", \"tomorrow 9am\"). Max 30 days ahead.","type":"string","minLength":1},"scheduledAt":{"description":"Resend Node SDK name for scheduled_at.","type":"string","minLength":1},"timezone":{"description":"Time zone for a scheduled_at phrase such as \"tomorrow 9am\". An ISO time ignores this. Example: America/Los_Angeles. Omitted phrases are read in UTC.","type":"string","minLength":1}}},"PatchEmailsBy_idReply":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"status":{"type":"string"},"scheduled_at":{"type":"string"}},"required":["id","status","scheduled_at"]},"PostEmailsBy_idRescheduleReply":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"status":{"type":"string"},"scheduled_at":{"type":"string"}},"required":["id","status","scheduled_at"]},"GetEmailsBy_idMimeReply":{"type":"string"},"GetEmailsBy_idAttachmentsReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"filename":{"type":"string"},"content_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"size_bytes":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"size":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"content_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"content_disposition":{"type":"string","enum":["inline","attachment"]},"path":{"anyOf":[{"type":"string"},{"type":"null"}]},"bytes_available":{"type":"boolean"},"download_url":{"anyOf":[{"type":"string","format":"uri"},{"type":"null"}]},"expires_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]}},"required":["id","filename","content_type","size_bytes","size","content_id","content_disposition","path","bytes_available","download_url","expires_at"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"GetEmailsBy_idAttachmentsBy_aidReply":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"filename":{"type":"string"},"content_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"size_bytes":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"size":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"content_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"content_disposition":{"type":"string","enum":["inline","attachment"]},"path":{"anyOf":[{"type":"string"},{"type":"null"}]},"bytes_available":{"type":"boolean"},"download_url":{"anyOf":[{"type":"string","format":"uri"},{"type":"null"}]},"expires_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"object":{"type":"string","const":"attachment"}},"required":["id","filename","content_type","size_bytes","size","content_id","content_disposition","path","bytes_available","download_url","expires_at","object"]},"PostEmailsBulk_cancelBody":{"type":"object","properties":{"ids":{"description":"Messages to cancel. At most 500.","maxItems":500,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"before":{"description":"Cancel scheduled and queued messages accepted before this time.","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"}}},"PostEmailsBulk_cancelReply":{"type":"object","properties":{"canceled":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"skipped":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"status":{"type":"string"}},"required":["id","status"]}}},"required":["canceled","skipped"]},"GetEmailsReceivingReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"object":{"type":"string","const":"email"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"from":{"type":"string"},"to":{"type":"string"},"subject":{"anyOf":[{"type":"string"},{"type":"null"}]},"received_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"message_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"cc":{"type":"array","items":{"type":"string"}},"bcc":{"type":"array","items":{"type":"string"}},"reply_to":{"type":"array","items":{"type":"string"}},"size_bytes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"attachment_count":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"attachments":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"filename":{"type":"string"},"content_type":{"type":"string"},"size_bytes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"size":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"content_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"content_disposition":{"type":"string","enum":["inline","attachment"]}},"required":["id","filename","content_type","size_bytes","size","content_id","content_disposition"]}}},"required":["object","id","from","to","subject","received_at","created_at","message_id","cc","bcc","reply_to","size_bytes","attachment_count","attachments"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"GetEmailsReceivingThreadsReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"subject":{"anyOf":[{"type":"string"},{"type":"null"}]},"participants":{"type":"array","items":{"type":"string"}},"message_count":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"last_received_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"latest_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["id","subject","participants","message_count","last_received_at","latest_id"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"GetEmailsReceivingBy_idReply":{"type":"object","properties":{"object":{"type":"string","const":"email"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"from":{"type":"string"},"to":{"type":"string"},"subject":{"anyOf":[{"type":"string"},{"type":"null"}]},"received_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"message_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"cc":{"type":"array","items":{"type":"string"}},"bcc":{"type":"array","items":{"type":"string"}},"reply_to":{"type":"array","items":{"type":"string"}},"size_bytes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"attachment_count":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"attachments":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"filename":{"type":"string"},"content_type":{"type":"string"},"size_bytes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"size":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"content_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"content_disposition":{"type":"string","enum":["inline","attachment"]}},"required":["id","filename","content_type","size_bytes","size","content_id","content_disposition"]}},"received_for":{"type":"array","items":{"type":"string"}},"headers":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"}},"text":{"anyOf":[{"type":"string"},{"type":"null"}]},"html":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","id","from","to","subject","received_at","created_at","message_id","cc","bcc","reply_to","size_bytes","attachment_count","attachments","received_for","headers","text","html"]},"DeleteEmailsReceivingBy_idReply":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"status":{"type":"string"}},"required":["id","status"]},"PostEmailsReceivingBy_idReplyBody":{"type":"object","properties":{"from":{"description":"Sender. Omit it to reply from the address the message was sent to.","type":"string","minLength":1},"html":{"description":"HTML body. Provide html or text.","type":"string","maxLength":10485760},"text":{"description":"Plain-text body. Provide html or text.","type":"string","maxLength":10485760},"subject":{"description":"Subject. Omit it and the reply uses Re: plus the original subject.","type":"string","minLength":1,"maxLength":998},"cc":{"description":"Copy recipients.","anyOf":[{"type":"string","minLength":1},{"type":"array","items":{"type":"string","minLength":1}}]},"bcc":{"description":"Blind copy recipients.","anyOf":[{"type":"string","minLength":1},{"type":"array","items":{"type":"string","minLength":1}}]}}},"PostEmailsReceivingBy_idReplyReply":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"simulated":{"type":"boolean"},"warnings":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"},"fix":{"type":"string"}},"required":["code","message","fix"]}}},"required":["id","simulated","warnings"]},"GetEmailsReceivingBy_idAttachmentsReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"filename":{"type":"string"},"content_type":{"type":"string"},"size_bytes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"size":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"content_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"content_disposition":{"type":"string","enum":["inline","attachment"]},"download_url":{"type":"string","format":"uri"},"expires_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["id","filename","content_type","size_bytes","size","content_id","content_disposition","download_url","expires_at"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"GetEmailsReceivingBy_idAttachmentsBy_aidReply":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"filename":{"type":"string"},"content_type":{"type":"string"},"size_bytes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"size":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"content_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"content_disposition":{"type":"string","enum":["inline","attachment"]},"download_url":{"type":"string","format":"uri"},"expires_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"object":{"type":"string","const":"attachment"}},"required":["id","filename","content_type","size_bytes","size","content_id","content_disposition","download_url","expires_at","object"]},"GetEmailsBy_idExplainReply":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"status":{"type":"string"},"verdict":{"type":"string"},"what_happened":{"type":"string"},"evidence":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"retryable":{"type":"boolean"},"actions":{"type":"array","items":{"type":"object","properties":{"do":{"type":"string"},"call":{"type":"object","properties":{"method":{"type":"string","enum":["POST","PATCH","DELETE","GET"]},"path":{"type":"string"},"body":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}},"required":["method","path"]}},"required":["do"]}}},"required":["id","status","verdict","what_happened","evidence","retryable","actions"]},"PostEmailsLintBody":{"type":"object","properties":{"from":{"type":"string","minLength":3,"description":"Sender address the lint reads."},"to":{"minItems":1,"maxItems":50,"type":"array","items":{"type":"string","minLength":3},"description":"Recipient addresses."},"subject":{"default":"","description":"Subject. Empty is allowed here, because this call sends nothing.","type":"string","maxLength":998},"html":{"description":"HTML body to score.","type":"string","maxLength":10485760},"text":{"description":"Plain-text body to score.","type":"string","maxLength":10485760},"headers":{"description":"Headers to score.","type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"}}},"required":["from","to"]},"PostEmailsLintReply":{"type":"object","properties":{"score":{"type":"integer","minimum":0,"maximum":100},"findings":{"type":"array","items":{"type":"object","properties":{"rule":{"type":"string"},"severity":{"type":"string","enum":["error","warning","info"]},"message":{"type":"string"},"fix":{"type":"string"}},"required":["rule","severity","message","fix"]}}},"required":["score","findings"]},"GetUsageReply":{"type":"object","properties":{"object":{"type":"string","const":"usage"},"emails":{"type":"object","properties":{"daily":{"type":"object","properties":{"used":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"limit":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"sent":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"received":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"resets_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["used","limit","sent","received","resets_at"]},"monthly":{"type":"object","properties":{"used":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"limit":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"sent":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"received":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"resets_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["used","limit","sent","received","resets_at"]}},"required":["daily","monthly"]},"contacts":{"type":"object","properties":{"used":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"limit":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]}},"required":["used","limit"]},"segments":{"type":"object","properties":{"used":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"limit":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]}},"required":["used","limit"]},"broadcasts":{"type":"object","properties":{"used":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"limit":{"type":"null"}},"required":["used","limit"]},"automation_runs":{"type":"object","properties":{"used":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"limit":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"resets_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["used","limit","resets_at"]},"domains":{"type":"object","properties":{"used":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"limit":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]}},"required":["used","limit"]},"rate_limit":{"type":"object","properties":{"limit":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"duration":{"type":"string"}},"required":["limit","duration"]},"period_started_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"account":{"type":"object","properties":{"sent_30d":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"sent_24h":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bounced_30d":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"complained_30d":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["sent_30d","sent_24h","bounced_30d","complained_30d"]},"keys":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"budget_per_period":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"consumed_in_period":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"remaining":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"used_percent":{"anyOf":[{"type":"number"},{"type":"null"}]},"rate_ceiling_per_minute":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"consumed_in_window":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"paused":{"type":"boolean"},"last_used_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"period":{"type":"string","enum":["hourly","daily","monthly"]},"period_started_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"resets_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["id","name","budget_per_period","consumed_in_period","remaining","used_percent","rate_ceiling_per_minute","consumed_in_window","paused","last_used_at","period","period_started_at","resets_at"]}}},"required":["object","emails","contacts","segments","broadcasts","automation_runs","domains","rate_limit","period_started_at","account","keys"]},"GetBillingReply":{"type":"object","properties":{"currency":{"type":"string"},"pricing_document_version":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"plan":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"monthly_price_minor":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"included_emails_per_month":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"max_domains":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"max_seats":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"retention_days":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"overage_minor_per_1000_emails":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]}},"required":["id","name","monthly_price_minor","included_emails_per_month","max_domains","max_seats","retention_days","overage_minor_per_1000_emails"]},"period":{"type":"object","properties":{"started_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"resets_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"days":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["started_at","resets_at","days"]},"limits":{"type":"array","items":{"type":"object","properties":{"metric":{"type":"string","enum":["emails_per_month","lifetime_emails","domains","seats","retention_days"]},"label":{"type":"string"},"used":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"limit":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"unit":{"type":"string"},"at_limit":{"type":"string"}},"required":["metric","label","used","limit","unit","at_limit"]}},"overage":{"type":"object","properties":{"policy":{"type":"string","enum":["pause","bill"]},"available":{"type":"boolean"},"enabled":{"type":"boolean"},"cap_emails":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"consumed_this_period":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"rate_minor_per_1000":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"text":{"type":"string"},"auto_charges":{"type":"boolean"}},"required":["policy","available","enabled","cap_emails","consumed_this_period","rate_minor_per_1000","text","auto_charges"]},"next_tier":{"anyOf":[{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"monthly_price_minor":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"included_emails_per_month":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"max_domains":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"max_seats":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"retention_days":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"overage_minor_per_1000_emails":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]}},"required":["id","name","monthly_price_minor","included_emails_per_month","max_domains","max_seats","retention_days","overage_minor_per_1000_emails"]},{"type":"null"}]},"payment":{"type":"object","properties":{"writes_enabled":{"type":"boolean"},"text":{"type":"string"}},"required":["writes_enabled","text"]}},"required":["currency","pricing_document_version","plan","period","limits","overage","next_tier","payment"]},"GetBillingPlanReply":{"type":"object","properties":{"tier":{"type":"string","enum":["free","starter","pro","scale"]},"plan_status":{"type":"string","enum":["none","trialing","active","past_due","canceled"]},"needs_plan_selection":{"type":"boolean"},"plan_source":{"type":"string","enum":["free","subscription","manual","lifetime"]},"billing_term":{"anyOf":[{"type":"string","enum":["month","year"]},{"type":"null"}]},"entitlements":{"type":"object","properties":{"tier":{"type":"string","enum":["free","starter","pro","scale"]},"included_emails_per_month":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"retention_days":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"max_domains":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"max_seats":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"overage_minor_per_1000_emails":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]}},"required":["tier","included_emails_per_month","retention_days","max_domains","max_seats","overage_minor_per_1000_emails"]},"subscription":{"anyOf":[{"type":"object","properties":{"status":{"type":"string"},"price_lookup_key":{"anyOf":[{"type":"string"},{"type":"null"}]},"current_period_end":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"cancel_at_period_end":{"type":"boolean"}},"required":["status","price_lookup_key","current_period_end","cancel_at_period_end"]},{"type":"null"}]},"billing_configured":{"type":"boolean"},"terms_on_sale":{"type":"array","items":{"type":"string","enum":["month","year"]}},"plans":{"type":"array","items":{"type":"object","properties":{"tier":{"type":"string","enum":["starter","pro","scale"]},"name":{"type":"string"},"featured":{"type":"boolean"},"included_emails_per_month":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"max_domains":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"max_seats":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"retention_days":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"prices":{"type":"object","properties":{"month":{"type":"object","properties":{"per_month_minor":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"total_minor":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"months":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"discount_percent":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["per_month_minor","total_minor","months","discount_percent"]},"year":{"type":"object","properties":{"per_month_minor":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"total_minor":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"months":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"discount_percent":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["per_month_minor","total_minor","months","discount_percent"]}},"required":["month","year"]},"volume_rungs":{"type":"array","items":{"type":"object","properties":{"included_emails_per_month":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"monthly_price_minor":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"prices":{"type":"object","properties":{"month":{"type":"object","properties":{"per_month_minor":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"total_minor":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"months":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"discount_percent":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["per_month_minor","total_minor","months","discount_percent"]},"year":{"type":"object","properties":{"per_month_minor":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"total_minor":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"months":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"discount_percent":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["per_month_minor","total_minor","months","discount_percent"]}},"required":["month","year"]}},"required":["included_emails_per_month","monthly_price_minor","prices"]}}},"required":["tier","name","featured","included_emails_per_month","max_domains","max_seats","retention_days","prices","volume_rungs"]}},"lifetime":{"anyOf":[{"type":"object","properties":{"tier":{"type":"string","enum":["tier1","tier2","tier3","tier4"]},"name":{"type":"string"},"emails_total":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"emails_used":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"emails_left":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"max_emails_per_month":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"refundable":{"type":"boolean"}},"required":["tier","name","emails_total","emails_used","emails_left","max_emails_per_month","refundable"]},{"type":"null"}]},"lifetime_on_sale":{"type":"boolean"},"lifetime_plans":{"type":"array","items":{"type":"object","properties":{"tier":{"type":"string","enum":["tier1","tier2","tier3","tier4"]},"name":{"type":"string"},"featured":{"type":"boolean"},"price_minor":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"emails_total":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"max_emails_per_month":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"features_of":{"type":"string","enum":["starter","pro","scale"]},"max_domains":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"max_seats":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"retention_days":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"price_now_minor":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]}},"required":["tier","name","featured","price_minor","emails_total","max_emails_per_month","features_of","max_domains","max_seats","retention_days","price_now_minor"]}},"lifetime_refund_rule":{"type":"string"},"viewer":{"type":"object","properties":{"role":{"anyOf":[{"type":"string","enum":["owner","admin","viewer"]},{"type":"null"}]},"can_purchase":{"type":"boolean"},"can_purchase_lifetime":{"type":"boolean"}},"required":["role","can_purchase","can_purchase_lifetime"]},"purchasable":{"type":"array","items":{"type":"object","properties":{"tier":{"type":"string","enum":["starter","pro","scale"]},"monthly_price_minor":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"included_emails_per_month":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["tier","monthly_price_minor","included_emails_per_month"]}}},"required":["tier","plan_status","needs_plan_selection","plan_source","billing_term","entitlements","subscription","billing_configured","terms_on_sale","plans","lifetime","lifetime_on_sale","lifetime_plans","lifetime_refund_rule","viewer","purchasable"]},"PostBillingPlanBody":{"type":"object","properties":{"tier":{"type":"string","const":"free"}},"required":["tier"]},"PostBillingCheckoutBody":{"type":"object","properties":{"tier":{"type":"string","enum":["starter","pro","scale"]},"term":{"type":"string","enum":["month","year"]},"included_emails_per_month":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["tier"]},"PostBillingCheckoutReply":{"type":"object","properties":{"url":{"type":"string","format":"uri"},"checkout_session_id":{"type":"string"}},"required":["url","checkout_session_id"]},"PostBillingCheckoutLifetimeBody":{"type":"object","properties":{"tier":{"type":"string","enum":["tier1","tier2","tier3","tier4"]}},"required":["tier"]},"PostBillingCheckoutLifetimeReply":{"type":"object","properties":{"url":{"type":"string","format":"uri"},"checkout_session_id":{"type":"string"}},"required":["url","checkout_session_id"]},"PutBillingOverageBody":{"type":"object","properties":{"enabled":{"type":"boolean"},"cap_emails":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["enabled"]},"PutBillingOverageReply":{"type":"object","properties":{"policy":{"type":"string","enum":["pause","bill"]},"available":{"type":"boolean"},"enabled":{"type":"boolean"},"cap_emails":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"consumed_this_period":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"rate_minor_per_1000":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"text":{"type":"string"},"auto_charges":{"type":"boolean"}},"required":["policy","available","enabled","cap_emails","consumed_this_period","rate_minor_per_1000","text","auto_charges"]},"PostBillingPortalBody":{"type":"object","properties":{"tier":{"type":"string","enum":["free","starter","pro","scale"]},"term":{"type":"string","enum":["month","year"]},"included_emails_per_month":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}}},"PostBillingPortalReply":{"type":"object","properties":{"url":{"type":"string","format":"uri"}},"required":["url"]},"PostWebhooksStripeReply":{"type":"object","properties":{"received":{"type":"boolean","const":true},"status":{"type":"string","enum":["applied","ignored","duplicate"]},"event_id":{"type":"string"},"event_type":{"type":"string"}},"required":["received","status","event_id","event_type"]},"GetNotificationsReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string","enum":["budget_exhausted","kill_switch_engaged","approvals_pending","trust_state_changed","webhook_endpoint_disabled","domain_verification_lost","domain_verified","appeal_decided","onboarding","api_key_leaked","dmarc_unaligned_source","welcome","billing","support","trial"]},"dedupe_key":{"type":"string"},"state":{"type":"string","enum":["open","resolved"]},"title":{"type":"string"},"body":{"type":"string"},"console_path":{"type":"string"},"occurrences":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"first_seen_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"last_seen_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"read_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"resolved_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]}},"required":["id","type","dedupe_key","state","title","body","console_path","occurrences","first_seen_at","last_seen_at","read_at","resolved_at"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"PostNotificationsReadBody":{"type":"object","properties":{"ids":{"maxItems":500,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}}},"PostNotificationsReadReply":{"type":"object","properties":{"read":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["read"]},"PostNotificationsBy_idReadReply":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string","enum":["budget_exhausted","kill_switch_engaged","approvals_pending","trust_state_changed","webhook_endpoint_disabled","domain_verification_lost","domain_verified","appeal_decided","onboarding","api_key_leaked","dmarc_unaligned_source","welcome","billing","support","trial"]},"dedupe_key":{"type":"string"},"state":{"type":"string","enum":["open","resolved"]},"title":{"type":"string"},"body":{"type":"string"},"console_path":{"type":"string"},"occurrences":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"first_seen_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"last_seen_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"read_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"resolved_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]}},"required":["id","type","dedupe_key","state","title","body","console_path","occurrences","first_seen_at","last_seen_at","read_at","resolved_at"]},"GetNotificationsPreferencesReply":{"type":"object","properties":{"preferences":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","enum":["budget_exhausted","kill_switch_engaged","approvals_pending","trust_state_changed","webhook_endpoint_disabled","domain_verification_lost","domain_verified","appeal_decided","onboarding","api_key_leaked","dmarc_unaligned_source","welcome","billing","support","trial"]},"in_app":{"type":"boolean"},"email":{"type":"boolean"}},"required":["type","in_app","email"]}}},"required":["preferences"]},"PatchNotificationsPreferencesBody":{"type":"object","properties":{"preferences":{"minItems":1,"type":"array","items":{"type":"object","properties":{"type":{"type":"string","enum":["budget_exhausted","kill_switch_engaged","approvals_pending","trust_state_changed","webhook_endpoint_disabled","domain_verification_lost","domain_verified","appeal_decided","onboarding","api_key_leaked","dmarc_unaligned_source","welcome","billing","support","trial"]},"in_app":{"type":"boolean"},"email":{"type":"boolean"}},"required":["type"]}}},"required":["preferences"]},"PostWebhooksBody":{"type":"object","properties":{"url":{"description":"https URL that receives the events.","type":"string","format":"uri"},"endpoint":{"description":"Same as url. url wins if both are sent.","type":"string","format":"uri"},"events":{"description":"Event types to deliver. * subscribes to every type, including ones added later.","minItems":1,"maxItems":64,"type":"array","items":{"anyOf":[{"type":"string","const":"*"},{"type":"string","enum":["email.queued","email.sent","email.delivered","email.delivery_delayed","email.bounced","email.complained","email.opened","email.clicked","email.failed","email.scheduled","email.canceled","email.suppressed","domain.created","domain.verified","domain.failed","domain.updated","domain.deleted","suppression.added","suppression.removed","limit.warning","limit.exceeded","agent.approval_requested","agent.approved","agent.rejected","agent.killed","contact.created","contact.updated","contact.deleted","segment.joined","segment.left","segment.created","segment.updated","segment.deleted","broadcast.scheduled","broadcast.sent","broadcast.updated","automation.triggered","email.received","topic.created","topic.updated","topic.deleted","contact.subscribed","contact.unsubscribed","trust.warning","trust.throttled","trust.paused","trust.appealed","trust.restored"]}]}},"svix_compat":{"description":"Also sign each delivery the way a Svix receiver already verifies. Off unless set.","type":"boolean"},"payload_format":{"description":"native is this API’s envelope. resend is the envelope a Resend receiver already parses.","type":"string","enum":["native","resend"]}}},"PostWebhooksReply":{"type":"object","properties":{"object":{"type":"string","const":"webhook"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"url":{"type":"string"},"endpoint":{"type":"string"},"events":{"type":"array","items":{"type":"string"}},"disabled":{"type":"boolean"},"status":{"type":"string","enum":["enabled","disabled"]},"svix_compat":{"type":"boolean"},"payload_format":{"type":"string","enum":["native","resend"]},"last_delivery_status":{"anyOf":[{"type":"string","enum":["pending","retrying","delivered","dead_lettered"]},{"type":"null"}]},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"updated_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"secret":{"type":"string","description":"Signing secret, shown once. Store it. Later calls do not return it."},"signing_secret":{"type":"string","description":"Same value as secret. The name a receiver already reads."}},"required":["object","id","url","endpoint","events","disabled","status","svix_compat","payload_format","last_delivery_status","created_at","updated_at","secret","signing_secret"]},"GetWebhooksReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"object":{"type":"string","const":"webhook"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"url":{"type":"string"},"endpoint":{"type":"string"},"events":{"type":"array","items":{"type":"string"}},"disabled":{"type":"boolean"},"status":{"type":"string","enum":["enabled","disabled"]},"svix_compat":{"type":"boolean"},"payload_format":{"type":"string","enum":["native","resend"]},"last_delivery_status":{"anyOf":[{"type":"string","enum":["pending","retrying","delivered","dead_lettered"]},{"type":"null"}]},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"updated_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["object","id","url","endpoint","events","disabled","status","svix_compat","payload_format","last_delivery_status","created_at","updated_at"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"GetWebhooksBy_idReply":{"type":"object","properties":{"object":{"type":"string","const":"webhook"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"url":{"type":"string"},"endpoint":{"type":"string"},"events":{"type":"array","items":{"type":"string"}},"disabled":{"type":"boolean"},"status":{"type":"string","enum":["enabled","disabled"]},"svix_compat":{"type":"boolean"},"payload_format":{"type":"string","enum":["native","resend"]},"last_delivery_status":{"anyOf":[{"type":"string","enum":["pending","retrying","delivered","dead_lettered"]},{"type":"null"}]},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"updated_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["object","id","url","endpoint","events","disabled","status","svix_compat","payload_format","last_delivery_status","created_at","updated_at"]},"PatchWebhooksBy_idBody":{"type":"object","properties":{"url":{"description":"A new https URL. The previous URL stops receiving events.","type":"string","format":"uri"},"endpoint":{"description":"Same as url. url wins if both are sent.","type":"string","format":"uri"},"events":{"description":"Replace the event list. * subscribes to every type.","minItems":1,"maxItems":64,"type":"array","items":{"anyOf":[{"type":"string","const":"*"},{"type":"string","enum":["email.queued","email.sent","email.delivered","email.delivery_delayed","email.bounced","email.complained","email.opened","email.clicked","email.failed","email.scheduled","email.canceled","email.suppressed","domain.created","domain.verified","domain.failed","domain.updated","domain.deleted","suppression.added","suppression.removed","limit.warning","limit.exceeded","agent.approval_requested","agent.approved","agent.rejected","agent.killed","contact.created","contact.updated","contact.deleted","segment.joined","segment.left","segment.created","segment.updated","segment.deleted","broadcast.scheduled","broadcast.sent","broadcast.updated","automation.triggered","email.received","topic.created","topic.updated","topic.deleted","contact.subscribed","contact.unsubscribed","trust.warning","trust.throttled","trust.paused","trust.appealed","trust.restored"]}]}},"disabled":{"description":"true stops delivery without deleting the endpoint.","type":"boolean"},"status":{"description":"Same as disabled: disabled stops delivery, enabled resumes it. disabled wins if both are sent.","type":"string","enum":["enabled","disabled"]},"svix_compat":{"description":"Also sign each delivery the way a Svix receiver already verifies. Off unless set.","type":"boolean"},"payload_format":{"description":"native is this API’s envelope. resend is the envelope a Resend receiver already parses.","type":"string","enum":["native","resend"]}}},"DeleteWebhooksBy_idReply":{"type":"object","properties":{"object":{"type":"string","const":"webhook"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"deleted":{"type":"boolean"}},"required":["object","id","deleted"]},"PostWebhooksBy_idReplayReply":{"anyOf":[{"type":"object","properties":{"count":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["count"]},{"type":"object","properties":{"replayed":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"delivery_ids":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"truncated":{"type":"boolean"}},"required":["replayed","delivery_ids","truncated"]}]},"GetWebhooksBy_idDeliveriesReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"event_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"event_type":{"type":"string"},"status":{"type":"string","enum":["pending","retrying","delivered","dead_lettered"]},"attempts":{"type":"array","items":{"type":"object","properties":{"at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"status_code":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"duration_ms":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"error":{"anyOf":[{"type":"string"},{"type":"null"}]},"response_headers":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"}},"response_body":{"type":"string"}},"required":["at","status_code","duration_ms","error"]}},"payload":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"occurred_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["id","event_id","event_type","status","attempts","payload","occurred_at"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"PostWebhooksBy_idRotate_secretReply":{"type":"object","properties":{"object":{"type":"string","const":"webhook"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"secret":{"type":"string"},"signing_secret":{"type":"string"},"rotated_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"previous_secret_expires_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["object","id","secret","signing_secret","rotated_at","previous_secret_expires_at"]},"PostWebhooksBy_idSigning_secretRotateReply":{"type":"object","properties":{"object":{"type":"string","const":"webhook"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"secret":{"type":"string"},"signing_secret":{"type":"string"},"rotated_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"previous_secret_expires_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["object","id","secret","signing_secret","rotated_at","previous_secret_expires_at"]},"GetWebhooksBy_idEventsReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string"},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"status":{"type":"string","enum":["pending","attempting","success","failed"]}},"required":["id","type","created_at","status"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"GetWebhooksBy_idEventsBy_event_idReply":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string"},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"status":{"type":"string","enum":["pending","attempting","success","failed"]},"object":{"type":"string","const":"webhook_event"},"next_attempt_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"payload":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}},"required":["id","type","created_at","status","object","next_attempt_at","payload"]},"GetWebhooksBy_idEventsBy_event_idAttemptsReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"http_status_code":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"response":{"type":"string"},"sent_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["id","http_status_code","response","sent_at"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"PostWebhooksBy_idEventsBy_event_idReplayReply":{"type":"object","properties":{"object":{"type":"string","const":"webhook_event"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["object","id"]},"GetWebhooksBy_idDead_lettersReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"delivery_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"event_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"event_type":{"type":"string"},"occurred_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"attempts":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"last_status_code":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"last_response_body":{"anyOf":[{"type":"string"},{"type":"null"}]},"reason":{"type":"string"},"payload":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["id","delivery_id","event_id","event_type","occurred_at","attempts","last_status_code","last_response_body","reason","payload","created_at"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"GetLimitsKeysReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"api_key_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"budget_per_period":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"period":{"type":"string","enum":["hourly","daily","monthly"]},"consumed_in_period":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"period_started_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"rate_ceiling_per_minute":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"consumed_in_window":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"rate_window_started_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"paused":{"type":"boolean"},"paused_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"paused_reason":{"anyOf":[{"type":"string"},{"type":"null"}]},"updated_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"name":{"type":"string"},"token_prefix":{"type":"string"},"last_used_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"system":{"type":"boolean"},"loop_state":{"type":"string","enum":["clear","watch","tripped"]},"loop_evidence":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}},"required":["api_key_id","budget_per_period","period","consumed_in_period","period_started_at","rate_ceiling_per_minute","consumed_in_window","rate_window_started_at","paused","paused_at","paused_reason","updated_at","name","token_prefix","last_used_at","system","loop_state","loop_evidence"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"PostLimitsKill_allBody":{"type":"object","properties":{"reason":{"description":"Why, recorded with the change. Optional.","type":"string","minLength":1,"maxLength":500}}},"PostLimitsKill_allReply":{"type":"object","properties":{"paused":{"type":"boolean"},"affected_key_ids":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"reason":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["paused","affected_key_ids","at","reason"]},"PostLimitsResume_allBody":{"type":"object","properties":{"reason":{"description":"Why, recorded with the change. Optional.","type":"string","minLength":1,"maxLength":500}}},"GetLimitsKeysBy_idReply":{"type":"object","properties":{"api_key_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"budget_per_period":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"period":{"type":"string","enum":["hourly","daily","monthly"]},"consumed_in_period":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"period_started_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"rate_ceiling_per_minute":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"consumed_in_window":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"rate_window_started_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"paused":{"type":"boolean"},"paused_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"paused_reason":{"anyOf":[{"type":"string"},{"type":"null"}]},"updated_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["api_key_id","budget_per_period","period","consumed_in_period","period_started_at","rate_ceiling_per_minute","consumed_in_window","rate_window_started_at","paused","paused_at","paused_reason","updated_at"]},"PatchLimitsKeysBy_idBody":{"type":"object","properties":{"budget_per_period":{"description":"Messages this key may accept in the period. Null clears it. A key can only lower its own.","anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]},"period":{"description":"hourly, daily or monthly.","type":"string","enum":["hourly","daily","monthly"]},"rate_ceiling_per_minute":{"description":"Messages this key may accept in one minute. Null clears it.","anyOf":[{"type":"integer","minimum":1,"maximum":9007199254740991},{"type":"null"}]}}},"PostLimitsKeysBy_idKillBody":{"type":"object","properties":{"reason":{"description":"Why, recorded with the change. Optional.","type":"string","minLength":1,"maxLength":500}}},"PostDomainsBody":{"type":"object","properties":{"name":{"type":"string","minLength":3,"maxLength":253,"description":"The domain you send from, such as yourdomain.com."},"region":{"description":"us or eu. Default us. The region is recorded on the domain. All mail is sent from the US today. For one release the legacy names us-east-1, sa-east-1 and ap-northeast-1 map to us; eu-west-1 maps to eu.","type":"string","enum":["us","eu"]},"tracking":{"description":"Whether to publish a tracking host. On by default. Not required to verify the domain.","type":"boolean"},"tracking_subdomain":{"description":"The label of the tracking host. Default links, which publishes links.yourdomain.com.","type":"string","minLength":1,"maxLength":253},"return_path_subdomain":{"description":"The label of the return-path host. Default send. Up to 63 characters, starting with a letter.","type":"string","minLength":1,"maxLength":63,"pattern":"^[a-z](?:[a-z0-9-]{0,61}[a-z0-9])?$"},"tls_mode":{"description":"opportunistic tries TLS and falls back. enforced refuses a receiver that cannot do TLS.","type":"string","enum":["opportunistic","enforced"]},"tls":{"description":"Same as tls_mode. tls_mode wins if both are sent.","type":"string","enum":["opportunistic","enforced"]},"open_tracking":{"description":"Count opens. Off unless you set this.","type":"boolean"},"click_tracking":{"description":"Rewrite links so clicks can be counted. Off unless you set this.","type":"boolean"},"openTracking":{"description":"Same as open_tracking. open_tracking wins if both are sent.","type":"boolean"},"clickTracking":{"description":"Same as click_tracking. click_tracking wins if both are sent.","type":"boolean"},"custom_return_path":{"description":"Same as return_path_subdomain.","type":"string","minLength":1,"maxLength":63},"customReturnPath":{"description":"Same as custom_return_path.","type":"string","minLength":1,"maxLength":63},"capabilities":{"description":"What the domain does: sending (default enabled) and receiving (default disabled), each enabled or disabled. At least one must be enabled.","type":"object","properties":{"sending":{"description":"enabled or disabled. Default enabled. Disabled: mail from this domain is refused and the domain is not signed for.","type":"string","enum":["enabled","disabled"]},"receiving":{"description":"enabled or disabled. Default disabled. Enabled: this domain accepts inbound mail.","type":"string","enum":["enabled","disabled"]}},"additionalProperties":false}},"required":["name"]},"PostDomainsReply":{"type":"object","properties":{"object":{"type":"string","const":"domain"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"zone":{"type":"string"},"region":{"type":"string","enum":["us","eu"]},"status":{"type":"string","enum":["pending","verified","failed","partially_verified","partially_failed"]},"dkim_selector":{"type":"string"},"click_tracking":{"type":"boolean"},"open_tracking":{"type":"boolean"},"tracking_subdomain":{"type":"string"},"return_path_subdomain":{"type":"string"},"tls_mode":{"type":"string","enum":["opportunistic","enforced"]},"capabilities":{"type":"object","properties":{"sending":{"type":"string","enum":["enabled","disabled"]},"receiving":{"type":"string","enum":["enabled","disabled"]}},"required":["sending","receiving"]},"records":{"type":"array","items":{"type":"object","properties":{"record":{"type":"string","enum":["SPF","DKIM","DMARC","RETURN_PATH","TRACKING","RECEIVING","TRACKING_CAA"]},"name":{"type":"string"},"name_relative":{"type":"string"},"host":{"type":"string"},"type":{"type":"string","enum":["TXT","MX","CNAME","CAA"]},"value":{"type":"string"},"value_strings":{"type":"array","items":{"type":"string"}},"value_bind":{"type":"string"},"ttl":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"priority":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"status":{"type":"string","enum":["pending","verified","failed","recommended"]},"required":{"type":"boolean"},"reason":{"anyOf":[{"type":"string","enum":["ok","not_found","unreachable","mismatch","not_published"]},{"type":"null"}]},"observed":{"anyOf":[{"type":"string"},{"type":"null"}]},"checked_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"fix":{"type":"string"}},"required":["record","name","name_relative","host","type","value","value_strings","value_bind","ttl","priority","status","required","reason","observed","checked_at","fix"]}},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"verified_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"tracking_issues":{"type":"array","items":{"type":"object","properties":{"record":{"type":"string","enum":["TRACKING","TRACKING_CAA"]},"message":{"type":"string"},"fix":{"type":"string"}},"required":["record","message","fix"]}},"provider_hints":{"type":"object","properties":{"cloudflare":{"type":"string"},"route53":{"type":"string"},"namecheap":{"type":"string"},"godaddy":{"type":"string"}},"required":["cloudflare","route53","namecheap","godaddy"]},"warnings":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string","enum":["spf_conflict","spf_lookup_limit","legacy_region"]},"message":{"type":"string"},"fix":{"type":"string"},"observed":{"type":"string"},"merged":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["code","message","fix","observed","merged"]}},"recent_events":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"type":{"type":"string","enum":["domain.added","domain.first_check","domain.record_seen","domain.record_lost","domain.verified","domain.demoted","domain.window_closed","domain.deleted"]},"occurred_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"detail":{"type":"string"}},"required":["id","type","occurred_at","detail"]}}},"required":["object","id","name","zone","region","status","dkim_selector","click_tracking","open_tracking","tracking_subdomain","return_path_subdomain","tls_mode","capabilities","records","created_at","verified_at","tracking_issues","provider_hints","warnings","recent_events"]},"PostDomainsClaimBody":{"type":"object","properties":{"name":{"type":"string","minLength":3,"maxLength":253,"description":"The domain you send from, such as yourdomain.com."},"region":{"description":"us or eu. Default us. The region is recorded on the domain. All mail is sent from the US today. For one release the legacy names us-east-1, sa-east-1 and ap-northeast-1 map to us; eu-west-1 maps to eu.","type":"string","enum":["us","eu"]},"tracking":{"description":"Whether to publish a tracking host. On by default. Not required to verify the domain.","type":"boolean"},"tracking_subdomain":{"description":"The label of the tracking host. Default links, which publishes links.yourdomain.com.","type":"string","minLength":1,"maxLength":253},"return_path_subdomain":{"description":"The label of the return-path host. Default send. Up to 63 characters, starting with a letter.","type":"string","minLength":1,"maxLength":63,"pattern":"^[a-z](?:[a-z0-9-]{0,61}[a-z0-9])?$"},"tls_mode":{"description":"opportunistic tries TLS and falls back. enforced refuses a receiver that cannot do TLS.","type":"string","enum":["opportunistic","enforced"]},"tls":{"description":"Same as tls_mode. tls_mode wins if both are sent.","type":"string","enum":["opportunistic","enforced"]},"open_tracking":{"description":"Count opens. Off unless you set this.","type":"boolean"},"click_tracking":{"description":"Rewrite links so clicks can be counted. Off unless you set this.","type":"boolean"},"openTracking":{"description":"Same as open_tracking. open_tracking wins if both are sent.","type":"boolean"},"clickTracking":{"description":"Same as click_tracking. click_tracking wins if both are sent.","type":"boolean"},"custom_return_path":{"description":"Same as return_path_subdomain.","type":"string","minLength":1,"maxLength":63},"customReturnPath":{"description":"Same as custom_return_path.","type":"string","minLength":1,"maxLength":63}},"required":["name"]},"PostDomainsClaimReply":{"type":"object","properties":{"object":{"type":"string","const":"domain_claim"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"status":{"type":"string","enum":["pending","verified","completed","blocked","expired","superseded","canceled","failed"]},"domain_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}],"description":"The placeholder domain created on your account by the claim."},"region":{"anyOf":[{"type":"string","enum":["us","eu"]},{"type":"null"}]},"record":{"type":"object","properties":{"type":{"type":"string","const":"TXT"},"name":{"type":"string"},"value":{"type":"string"},"ttl":{"type":"string"}},"required":["type","name","value","ttl"]},"blocked_reason":{"anyOf":[{"type":"string","enum":["grace_period","recent_owner_activity","pending_scheduled_emails"]},{"type":"null"}]},"failure_reason":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"expires_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["object","id","name","status","domain_id","region","record","blocked_reason","failure_reason","created_at","expires_at"]},"GetDomainsCheckReply":{"type":"object","properties":{"name":{"type":"string"},"can_add":{"type":"boolean"},"blocklist":{"type":"string","enum":["listed","clean","unknown"]},"problems":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"},"fix":{"type":"string"}},"required":["code","message","fix"]}}},"required":["name","can_add","blocklist","problems"]},"GetDomainsReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"zone":{"type":"string"},"region":{"type":"string","enum":["us","eu"]},"status":{"type":"string","enum":["pending","verified","failed","partially_verified","partially_failed"]},"dkim_selector":{"type":"string"},"click_tracking":{"type":"boolean"},"open_tracking":{"type":"boolean"},"tracking_subdomain":{"type":"string"},"return_path_subdomain":{"type":"string"},"tls_mode":{"type":"string","enum":["opportunistic","enforced"]},"capabilities":{"type":"object","properties":{"sending":{"type":"string","enum":["enabled","disabled"]},"receiving":{"type":"string","enum":["enabled","disabled"]}},"required":["sending","receiving"]},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"verified_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]}},"required":["id","name","zone","region","status","dkim_selector","click_tracking","open_tracking","tracking_subdomain","return_path_subdomain","tls_mode","capabilities","created_at","verified_at"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"GetDomainsBy_idEventsReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"type":{"type":"string","enum":["domain.added","domain.first_check","domain.record_seen","domain.record_lost","domain.verified","domain.demoted","domain.window_closed","domain.deleted"]},"occurred_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"detail":{"type":"string"}},"required":["id","type","occurred_at","detail"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"GetDomainsBy_idWaitReply":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"status":{"type":"string","enum":["pending","verified","failed","partially_verified","partially_failed"]},"next_poll_seconds":{"type":"integer","minimum":0,"maximum":9007199254740991},"deadline":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"reason":{"anyOf":[{"type":"string","enum":["ok","not_found","unreachable","mismatch","dkim_key_mismatch","domain_check_window_expired"]},{"type":"null"}]},"progress":{"type":"object","properties":{"required_verified":{"type":"integer","minimum":0,"maximum":9007199254740991},"required_total":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["required_verified","required_total"]}},"required":["id","name","status","next_poll_seconds","deadline","reason","progress"]},"GetDomainsBy_idSetupReply":{"type":"object","properties":{"domain":{"type":"string"},"zone":{"type":"string"},"detected":{"type":"boolean"},"provider":{"anyOf":[{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"dnsConsoleUrl":{"type":"string"}},"required":["id","name","dnsConsoleUrl"]},{"type":"null"}]},"nameservers":{"type":"array","items":{"type":"string"}},"provider_hints":{"type":"object","properties":{"cloudflare":{"type":"string"},"route53":{"type":"string"},"namecheap":{"type":"string"},"godaddy":{"type":"string"}},"required":["cloudflare","route53","namecheap","godaddy"]},"records":{"type":"array","items":{"type":"object","properties":{"record":{"type":"string"},"name":{"type":"string"},"name_relative":{"type":"string"},"host":{"type":"string"},"type":{"type":"string"},"value":{"type":"string"},"value_strings":{"type":"array","items":{"type":"string"}},"value_bind":{"type":"string"},"ttl":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"priority":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"required":{"type":"boolean"},"action":{"type":"string","enum":["add","edit","none","check"],"description":"add: publish value. edit: a record of this kind is already there (current) — change it to value instead of adding a second. none: already in place. check: the current records could not be read; see note."},"current":{"anyOf":[{"type":"string"},{"type":"null"}]},"note":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["record","name","name_relative","host","type","value","value_strings","value_bind","ttl","priority","required","action","current","note"]}},"zone_file":{"type":"string"},"commands":{"type":"object","properties":{"cloudflare":{"type":"array","items":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}},"route53":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"gcloud":{"type":"array","items":{"type":"string"}}},"required":["cloudflare","route53","gcloud"]},"deep_link":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["domain","zone","detected","provider","nameservers","provider_hints","records","zone_file","commands","deep_link"]},"PatchDomainsBy_idBody":{"type":"object","properties":{"click_tracking":{"description":"Rewrite links so clicks can be counted. Off unless you set this.","type":"boolean"},"open_tracking":{"description":"Count opens. Off unless you set this.","type":"boolean"},"tracking_subdomain":{"description":"Change the tracking host label. Null is refused: the host can be renamed, not removed.","anyOf":[{"type":"string"},{"type":"null"}]},"tls_mode":{"description":"opportunistic tries TLS and falls back. enforced refuses a receiver that cannot do TLS.","type":"string","enum":["opportunistic","enforced"]},"tls":{"description":"Same as tls_mode. tls_mode wins if both are sent.","type":"string","enum":["opportunistic","enforced"]},"capabilities":{"description":"What the domain does: sending (default enabled) and receiving (default disabled), each enabled or disabled. At least one must be enabled.","type":"object","properties":{"sending":{"description":"enabled or disabled. Default enabled. Disabled: mail from this domain is refused and the domain is not signed for.","type":"string","enum":["enabled","disabled"]},"receiving":{"description":"enabled or disabled. Default disabled. Enabled: this domain accepts inbound mail.","type":"string","enum":["enabled","disabled"]}},"additionalProperties":false},"name":{"description":"The domain name cannot be changed. Create another domain."},"region":{"description":"The region cannot be changed after the domain is created."},"return_path":{"description":"The return-path label cannot be changed after the domain is created."},"custom_return_path":{"description":"The return-path label cannot be changed after the domain is created."}}},"DeleteDomainsBy_idReply":{"type":"object","properties":{"object":{"type":"string","const":"domain"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"deleted":{"type":"boolean"}},"required":["object","id","deleted"]},"GetTrustThresholdsReply":{"type":"object","properties":{"window_days":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"min_sample":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"early_min_events":{"type":"object","properties":{"bounce":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"complaint":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["bounce","complaint"]},"throttled_sends_per_minute":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"ladder":{"type":"array","items":{"type":"string","enum":["ok","warning","throttled","paused"]}},"metrics":{"type":"object","properties":{"bounce":{"type":"object","properties":{"warn":{"type":"number"},"throttle":{"type":"number"},"pause":{"type":"number"}},"required":["warn","throttle","pause"]},"complaint":{"type":"object","properties":{"warn":{"type":"number"},"throttle":{"type":"number"},"pause":{"type":"number"}},"required":["warn","throttle","pause"]}},"required":["bounce","complaint"]}},"required":["window_days","min_sample","early_min_events","throttled_sends_per_minute","ladder","metrics"]},"GetTrustStandingReply":{"type":"object","properties":{"state":{"type":"string","enum":["ok","warning","throttled","paused"]},"streams":{"type":"object","properties":{"transactional":{"type":"object","properties":{"state":{"type":"string","enum":["ok","warning","throttled","paused"]},"sent":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bounced":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"complained":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bounce_rate":{"anyOf":[{"type":"number"},{"type":"null"}]},"complaint_rate":{"anyOf":[{"type":"number"},{"type":"null"}]}},"required":["state","sent","bounced","complained","bounce_rate","complaint_rate"]},"marketing":{"type":"object","properties":{"state":{"type":"string","enum":["ok","warning","throttled","paused"]},"sent":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bounced":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"complained":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bounce_rate":{"anyOf":[{"type":"number"},{"type":"null"}]},"complaint_rate":{"anyOf":[{"type":"number"},{"type":"null"}]}},"required":["state","sent","bounced","complained","bounce_rate","complaint_rate"]}},"required":["transactional","marketing"]},"window_days":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"reasons":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string"},"stream":{"anyOf":[{"type":"string","enum":["transactional","marketing"]},{"type":"null"}]},"metric":{"anyOf":[{"type":"string","enum":["bounce","complaint"]},{"type":"null"}]},"value":{"anyOf":[{"type":"number"},{"type":"null"}]},"threshold":{"anyOf":[{"type":"number"},{"type":"null"}]},"window":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"message":{"type":"string"},"since":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"samples":{"type":"array","items":{"type":"object","properties":{"email_id":{"type":"string"},"subject":{"type":"string"},"to_domain":{"type":"string"},"status":{"type":"string"}},"required":["email_id","subject","to_domain","status"]}}},"required":["code","stream","metric","value","threshold","window","message","since","samples"]}},"reason_codes":{"type":"array","items":{"type":"string"}},"next_review_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"sla_deadline_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"history":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string"},"reason":{"anyOf":[{"type":"string"},{"type":"null"}]},"occurred_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["type","reason","occurred_at"]}}},"required":["state","streams","window_days","reasons","reason_codes","next_review_at","sla_deadline_at","history"]},"PostTrustAppealBody":{"type":"object","properties":{"reason":{"type":"string","minLength":10,"maxLength":4000}},"required":["reason"]},"PostTrustAppealReply":{"type":"object","properties":{"state":{"type":"string","enum":["ok","warning","throttled","paused"]},"streams":{"type":"object","properties":{"transactional":{"type":"object","properties":{"state":{"type":"string","enum":["ok","warning","throttled","paused"]},"sent":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bounced":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"complained":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bounce_rate":{"anyOf":[{"type":"number"},{"type":"null"}]},"complaint_rate":{"anyOf":[{"type":"number"},{"type":"null"}]}},"required":["state","sent","bounced","complained","bounce_rate","complaint_rate"]},"marketing":{"type":"object","properties":{"state":{"type":"string","enum":["ok","warning","throttled","paused"]},"sent":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bounced":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"complained":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bounce_rate":{"anyOf":[{"type":"number"},{"type":"null"}]},"complaint_rate":{"anyOf":[{"type":"number"},{"type":"null"}]}},"required":["state","sent","bounced","complained","bounce_rate","complaint_rate"]}},"required":["transactional","marketing"]},"window_days":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"reasons":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string"},"stream":{"anyOf":[{"type":"string","enum":["transactional","marketing"]},{"type":"null"}]},"metric":{"anyOf":[{"type":"string","enum":["bounce","complaint"]},{"type":"null"}]},"value":{"anyOf":[{"type":"number"},{"type":"null"}]},"threshold":{"anyOf":[{"type":"number"},{"type":"null"}]},"window":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"message":{"type":"string"},"since":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"samples":{"type":"array","items":{"type":"object","properties":{"email_id":{"type":"string"},"subject":{"type":"string"},"to_domain":{"type":"string"},"status":{"type":"string"}},"required":["email_id","subject","to_domain","status"]}}},"required":["code","stream","metric","value","threshold","window","message","since","samples"]}},"reason_codes":{"type":"array","items":{"type":"string"}},"next_review_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"sla_deadline_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"history":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string"},"reason":{"anyOf":[{"type":"string"},{"type":"null"}]},"occurred_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["type","reason","occurred_at"]}},"support_ticket_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]}},"required":["state","streams","window_days","reasons","reason_codes","next_review_at","sla_deadline_at","history","support_ticket_id"]},"GetTrustRemediationReply":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string"},"done_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]}},"required":["key","done_at"]}}},"required":["items"]},"PostTrustRemediationBody":{"type":"object","properties":{"key":{"type":"string","minLength":1,"maxLength":120},"done":{"type":"boolean"}},"required":["key","done"]},"GetAccountReply":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"status":{"type":"string","enum":["sandboxed","approved","suspended"]},"approval_reason":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"is_review_account":{"type":"boolean"},"onboarding_sender":{"anyOf":[{"type":"object","properties":{"from":{"type":"string","description":"The address to send from: onboarding@agentisend.com."},"delivered_from":{"type":"string","description":"The address the test arrives from."}},"required":["from","delivered_from"]},{"type":"null"}]},"onboarding":{"type":"object","properties":{"contact_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"company":{"type":"string"},"website":{"anyOf":[{"type":"string"},{"type":"null"}]},"website_domain":{"anyOf":[{"type":"string"},{"type":"null"}]},"use_cases":{"type":"array","items":{"type":"string","enum":["transactional","product_lifecycle","ai_agents"]}},"expected_volume":{"anyOf":[{"type":"string","enum":["under_30k","30k_100k","100k_1m","over_1m"]},{"type":"null"}]},"completed_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"checklist_dismissed_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"connect_agent_moment_due":{"type":"boolean"}},"required":["contact_name","company","website","website_domain","use_cases","expected_volume","completed_at","checklist_dismissed_at","connect_agent_moment_due"]},"postal_address":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","status","approval_reason","created_at","is_review_account","onboarding_sender","onboarding","postal_address"]},"PatchAccountBody":{"type":"object","properties":{"postal_address":{"anyOf":[{"type":"string","minLength":5,"maxLength":500},{"type":"null"}]}},"required":["postal_address"]},"PatchAccountOnboardingBody":{"type":"object","properties":{"contact_name":{"type":"string","minLength":1,"maxLength":120},"company":{"type":"string","minLength":1,"maxLength":120},"website":{"anyOf":[{"type":"string","maxLength":2048},{"type":"null"}]},"use_cases":{"maxItems":3,"type":"array","items":{"type":"string","enum":["transactional","product_lifecycle","ai_agents"]}},"expected_volume":{"anyOf":[{"type":"string","enum":["under_30k","30k_100k","100k_1m","over_1m"]},{"type":"null"}]},"completed":{"type":"boolean"},"dismiss_checklist":{"type":"boolean"},"dismiss_connect_agent_moment":{"type":"boolean"}}},"DeleteAccountReply":{"type":"object","properties":{"status":{"type":"string","const":"suspended"},"closed_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"keys_revoked":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"retention_days":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"data_removed_after":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["status","closed_at","keys_revoked","retention_days","data_removed_after"]},"GetSupportConfigReply":{"type":"object","properties":{"notice":{"anyOf":[{"type":"object","properties":{"markdown":{"type":"string"},"until":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]}},"required":["markdown","until"]},{"type":"null"}]},"hours_label":{"type":"string"},"response_time_label":{"type":"string"},"scale_response_time_label":{"type":"string"},"topics":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","enum":["sending","domains","deliverability","guardrails_and_limits","trust_and_appeals","webhooks","api_sdk_mcp","billing","account_and_security","other"]},"label":{"type":"string"}},"required":["id","label"]}},"attachment_limits":{"type":"object","properties":{"max_files_per_message":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"max_bytes_per_file":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"max_bytes_per_message":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["max_files_per_message","max_bytes_per_file","max_bytes_per_message"]}},"required":["notice","hours_label","response_time_label","scale_response_time_label","topics","attachment_limits"]},"GetSupportReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"ref":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"ref_label":{"type":"string"},"subject":{"type":"string"},"topic":{"type":"string","enum":["sending","domains","deliverability","guardrails_and_limits","trust_and_appeals","webhooks","api_sdk_mcp","billing","account_and_security","other"]},"status":{"type":"string","enum":["open","waiting_on_us","waiting_on_customer","resolved","closed"]},"status_label":{"type":"string"},"last_message_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"last_message_preview":{"type":"string"},"has_unread_reply":{"type":"boolean"},"message_count":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"updated_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["id","ref","ref_label","subject","topic","status","status_label","last_message_at","last_message_preview","has_unread_reply","message_count","created_at","updated_at"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"PostSupportBody":{"type":"object","properties":{"topic":{"type":"string","enum":["sending","domains","deliverability","guardrails_and_limits","trust_and_appeals","webhooks","api_sdk_mcp","billing","account_and_security","other"]},"subject":{"type":"string","minLength":1,"maxLength":140},"message":{"type":"string","minLength":1,"maxLength":10000},"related_type":{"anyOf":[{"type":"string","enum":["domain","email","api_key","webhook"]},{"type":"null"}]},"related_id":{"anyOf":[{"type":"string","minLength":1,"maxLength":200},{"type":"null"}]},"attachment_ids":{"maxItems":5,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}},"required":["topic","subject","message"]},"PostSupportReply":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"ref":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"ref_label":{"type":"string"},"subject":{"type":"string"},"topic":{"type":"string","enum":["sending","domains","deliverability","guardrails_and_limits","trust_and_appeals","webhooks","api_sdk_mcp","billing","account_and_security","other"]},"status":{"type":"string","enum":["open","waiting_on_us","waiting_on_customer","resolved","closed"]},"status_label":{"type":"string"},"last_message_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"last_message_preview":{"type":"string"},"has_unread_reply":{"type":"boolean"},"message_count":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"updated_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"related_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"related_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"resolved_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"closed_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"can_reopen":{"type":"boolean"},"csat_score":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"messages":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"ticket_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"author_type":{"type":"string","enum":["customer","operator","system"]},"author_name":{"type":"string"},"visibility":{"type":"string","enum":["public","internal","system"]},"channel":{"type":"string","enum":["form","email","mcp","admin"]},"body_text":{"type":"string"},"body_html":{"anyOf":[{"type":"string"},{"type":"null"}]},"attachments":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"filename":{"type":"string"},"mime_type":{"type":"string"},"size_bytes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"download_url":{"type":"string"},"is_image":{"type":"boolean"},"expired":{"type":"boolean"}},"required":["id","filename","mime_type","size_bytes","is_image","expired"]}},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["id","ticket_id","author_type","author_name","visibility","channel","body_text","body_html","attachments","created_at"]}}},"required":["id","ref","ref_label","subject","topic","status","status_label","last_message_at","last_message_preview","has_unread_reply","message_count","created_at","updated_at","related_type","related_id","resolved_at","closed_at","can_reopen","csat_score","messages"]},"GetSupportSearchReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"kind":{"type":"string","enum":["doc","answer","known_issue"]},"title":{"type":"string"},"snippet":{"type":"string"},"url":{"type":"string"}},"required":["kind","title","snippet","url"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"GetSupportAnswersReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"slug":{"type":"string"},"title":{"type":"string"},"body_markdown":{"type":"string"},"helpful_yes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"helpful_no":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"published_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"updated_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["id","slug","title","body_markdown","helpful_yes","helpful_no","published_at","updated_at"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"GetSupportAnswersBy_slugReply":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"slug":{"type":"string"},"title":{"type":"string"},"body_markdown":{"type":"string"},"helpful_yes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"helpful_no":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"published_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"updated_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["id","slug","title","body_markdown","helpful_yes","helpful_no","published_at","updated_at"]},"PostSupportAnswersBy_slugHelpfulBody":{"type":"object","properties":{"helpful":{"type":"boolean"}},"required":["helpful"]},"PostSupportAnswersBy_slugHelpfulReply":{"type":"object","properties":{"ok":{"type":"boolean","const":true},"counted":{"type":"boolean"}},"required":["ok","counted"]},"GetSupportKnown_issuesReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"title":{"type":"string"},"body_markdown":{"type":"string"},"status":{"type":"string","enum":["open","monitoring","resolved"]},"status_label":{"type":"string"},"started_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"resolved_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"updated_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"subscribed":{"type":"boolean"}},"required":["id","title","body_markdown","status","status_label","started_at","resolved_at","updated_at","subscribed"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"PostSupportKnown_issuesBy_idSubscribeBody":{"type":"object","properties":{}},"PostSupportKnown_issuesBy_idSubscribeReply":{"type":"object","properties":{"ok":{"type":"boolean","const":true}},"required":["ok"]},"PostSupportUploadsBody":{"type":"object","properties":{"files":{"minItems":1,"maxItems":5,"type":"array","items":{"type":"object","properties":{"filename":{"type":"string","minLength":1,"maxLength":255},"mime_type":{"type":"string","minLength":1,"maxLength":200},"content_base64":{"type":"string","minLength":1}},"required":["filename","mime_type","content_base64"]}}},"required":["files"]},"PostSupportUploadsReply":{"type":"object","properties":{"files":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"filename":{"type":"string"},"mime_type":{"type":"string"},"size_bytes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["id","filename","mime_type","size_bytes"]}}},"required":["files"]},"PostSupportBy_refMessagesBody":{"type":"object","properties":{"message":{"type":"string","minLength":1,"maxLength":10000},"attachment_ids":{"maxItems":5,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}},"required":["message"]},"PostSupportBy_refMessagesReply":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"ticket_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"author_type":{"type":"string","enum":["customer","operator","system"]},"author_name":{"type":"string"},"visibility":{"type":"string","enum":["public","internal","system"]},"channel":{"type":"string","enum":["form","email","mcp","admin"]},"body_text":{"type":"string"},"body_html":{"anyOf":[{"type":"string"},{"type":"null"}]},"attachments":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"filename":{"type":"string"},"mime_type":{"type":"string"},"size_bytes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"download_url":{"type":"string"},"is_image":{"type":"boolean"},"expired":{"type":"boolean"}},"required":["id","filename","mime_type","size_bytes","is_image","expired"]}},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["id","ticket_id","author_type","author_name","visibility","channel","body_text","body_html","attachments","created_at"]},"PostSupportBy_refResolveBody":{"type":"object","properties":{}},"PostSupportBy_refReopenBody":{"type":"object","properties":{}},"PostSupportBy_refCsatBody":{"type":"object","properties":{"score":{"type":"integer","minimum":1,"maximum":5},"comment":{"anyOf":[{"type":"string","maxLength":2000},{"type":"null"}]}},"required":["score"]},"PostSupportBy_refCsatReply":{"type":"object","properties":{"ok":{"type":"boolean","const":true}},"required":["ok"]},"GetAudit_logReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"account_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"actor_type":{"type":"string"},"actor_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"actor_user_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"actor_email":{"anyOf":[{"type":"string"},{"type":"null"}]},"action":{"type":"string"},"target_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"target_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"before":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"after":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"reason":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["id","account_id","actor_type","actor_id","actor_user_id","actor_email","action","target_type","target_id","before","after","reason","created_at"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"GetTeamMembersReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"user_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"email":{"type":"string"},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"role":{"type":"string","enum":["owner","admin","viewer"]},"is_you":{"type":"boolean"},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["id","user_id","email","name","role","is_you","created_at"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"GetTeamMeReply":{"type":"object","properties":{"user_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"email":{"anyOf":[{"type":"string"},{"type":"null"}]},"role":{"anyOf":[{"type":"string","enum":["owner","admin","viewer"]},{"type":"null"}]},"seats":{"type":"object","properties":{"plan":{"type":"string"},"used":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"limit":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"billed_per_seat":{"type":"boolean","const":false}},"required":["plan","used","limit","billed_per_seat"]}},"required":["user_id","email","role","seats"]},"PatchTeamMembersBy_idBody":{"type":"object","properties":{"role":{"type":"string","enum":["owner","admin","viewer"]}},"required":["role"]},"PatchTeamMembersBy_idReply":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"user_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"email":{"type":"string"},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"role":{"type":"string","enum":["owner","admin","viewer"]},"is_you":{"type":"boolean"},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["id","user_id","email","name","role","is_you","created_at"]},"DeleteTeamMembersBy_idReply":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"removed":{"type":"boolean","const":true}},"required":["id","removed"]},"GetTeamInvitesReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"email":{"type":"string"},"role":{"type":"string","enum":["owner","admin","viewer"]},"invited_by":{"anyOf":[{"type":"string"},{"type":"null"}]},"invited_by_email":{"anyOf":[{"type":"string"},{"type":"null"}]},"expires_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["id","email","role","invited_by","invited_by_email","expires_at","created_at"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"PostTeamInvitesBody":{"type":"object","properties":{"email":{"type":"string","format":"email","pattern":"^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"},"role":{"default":"viewer","type":"string","enum":["owner","admin","viewer"]}},"required":["email"]},"PostTeamInvitesReply":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"email":{"type":"string"},"role":{"type":"string","enum":["owner","admin","viewer"]},"invited_by":{"anyOf":[{"type":"string"},{"type":"null"}]},"invited_by_email":{"anyOf":[{"type":"string"},{"type":"null"}]},"expires_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["id","email","role","invited_by","invited_by_email","expires_at","created_at"]},"DeleteTeamInvitesBy_idReply":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"cancelled":{"type":"boolean","const":true}},"required":["id","cancelled"]},"PostInviteBy_tokenAcceptReply":{"type":"object","properties":{"account_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"account_name":{"type":"string"},"role":{"type":"string","enum":["owner","admin","viewer"]},"member_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["account_id","account_name","role","member_id"]},"GetSuppressionsReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"object":{"type":"string","const":"suppression"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"email":{"type":"string"},"level":{"type":"string","enum":["address","domain","global"]},"origin":{"type":"string"},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"source_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"stream":{"anyOf":[{"type":"string","enum":["transactional","marketing"]},{"type":"null"}]},"platform":{"type":"boolean"}},"required":["object","id","email","level","origin","created_at","source_id","stream","platform"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]},"global_applied":{"type":"integer","minimum":0,"maximum":9007199254740991,"description":"How many platform-wide suppressions apply. Their addresses are not in this list."}},"required":["object","data","has_more","next_cursor","global_applied"]},"PostSuppressionsBody":{"type":"object","properties":{"email":{"type":"string","minLength":3,"maxLength":320,"description":"An address, or @example.com to suppress a whole domain."},"level":{"description":"address or domain. Inferred from the value when omitted.","type":"string","enum":["address","domain"]},"origin":{"description":"Defaults to manual.","type":"string","enum":["bounce","complaint","manual"]}},"required":["email"]},"PostSuppressionsReply":{"type":"object","properties":{"object":{"type":"string","const":"suppression"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"email":{"type":"string"},"level":{"type":"string","enum":["address","domain","global"]},"origin":{"type":"string"},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"source_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"stream":{"anyOf":[{"type":"string","enum":["transactional","marketing"]},{"type":"null"}]},"platform":{"type":"boolean"}},"required":["object","id","email","level","origin","created_at","source_id","stream","platform"]},"PostSuppressionsBatchAddBody":{"type":"object","properties":{"emails":{"minItems":1,"maxItems":500,"type":"array","items":{"type":"string","minLength":3,"maxLength":320},"description":"Addresses to change. At most 500."},"level":{"description":"address or domain, applied to every item. Inferred when omitted.","type":"string","enum":["address","domain"]},"origin":{"description":"Defaults to manual.","type":"string","enum":["bounce","complaint","manual"]}},"required":["emails"]},"PostSuppressionsBatchAddReply":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"email":{"type":"string"},"status":{"type":"string","enum":["added","removed","not_found","rejected"]},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"error":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"},"fix":{"type":"string"},"docs_url":{"type":"string"}},"required":["code","message","fix","docs_url"]}},"required":["index","email","status"]}}},"required":["data"]},"PostSuppressionsBatchRemoveBody":{"type":"object","properties":{"emails":{"description":"Addresses to lift.","minItems":1,"type":"array","items":{"type":"string","minLength":3,"maxLength":320}},"ids":{"description":"Suppression ids to lift, as GET /suppressions returns them.","minItems":1,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"level":{"description":"address or domain, applied to every item. Inferred when omitted.","type":"string","enum":["address","domain"]},"origin":{"description":"Defaults to manual.","type":"string","enum":["bounce","complaint","manual"]}},"examples":[{"emails":["former-customer@example.com"]}]},"PostSuppressionsBatchRemoveReply":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"email":{"type":"string"},"status":{"type":"string","enum":["added","removed","not_found","rejected"]},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"error":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"},"fix":{"type":"string"},"docs_url":{"type":"string"}},"required":["code","message","fix","docs_url"]}},"required":["index","email","status"]}}},"required":["data"]},"DeleteSuppressionsBy_idReply":{"type":"object","properties":{"object":{"type":"string","const":"suppression"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"deleted":{"type":"boolean"}},"required":["object","id","deleted"]},"PostTemplatesBody":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200,"description":"A name for the template list."},"subject":{"description":"Subject of the message this template sends. Omit it and the draft starts with none.","type":"string","maxLength":998},"alias":{"type":"string","minLength":1,"maxLength":200,"description":"A second handle for the template, unique on the account. Use it wherever an id is taken."},"from":{"type":"string","minLength":1,"maxLength":998,"description":"Default sender, such as \"Acme <hello@acme.com>\". A send that names its own from overrides it."},"reply_to":{"maxItems":50,"type":"array","items":{"type":"string","minLength":1,"maxLength":998},"description":"Default Reply-To addresses. A send that names its own reply_to overrides them."},"text":{"type":"string","maxLength":524288,"description":"The plain-text part. Leave it out and one is made from the HTML. An empty string sends no text part."},"content":{"anyOf":[{"type":"object","properties":{"mode":{"type":"string","const":"block","description":"block, markdown or html."},"blocks":{"minItems":1,"type":"array","items":{"anyOf":[{"type":"object","properties":{"kind":{"type":"string","const":"text","description":"A text block."},"body":{"type":"string","maxLength":524288,"description":"The block text. Placeholders use {{name}}."}},"required":["kind","body"]},{"type":"object","properties":{"kind":{"type":"string","const":"raw","description":"HTML inserted as written."},"html":{"type":"string","maxLength":524288,"description":"HTML for this block."}},"required":["kind","html"]}]},"description":"Blocks, in order. At least one."}},"required":["mode","blocks"]},{"type":"object","properties":{"mode":{"type":"string","enum":["markdown","html"],"description":"markdown or html."},"source":{"type":"string","minLength":1,"maxLength":524288,"description":"The template source. At most 512 KB when writing."}},"required":["mode","source"]}],"description":"The template body: markdown, html, or blocks. Same as html, sent as {mode: \"html\", source}."},"variables":{"description":"Placeholders the body uses. At most 50.","maxItems":50,"type":"array","items":{"type":"object","properties":{"name":{"type":"string","minLength":1,"description":"Placeholder name, without the braces."},"type":{"type":"string","enum":["string","number","boolean"],"description":"string, number or boolean."},"required":{"description":"A missing required value fails the render, unless preview is true.","type":"boolean"},"default":{"description":"Used when the render call omits this name.","type":"string"}},"required":["name","type"]}}},"required":["name","content"]},"PostTemplatesReply":{"type":"object","properties":{"object":{"type":"string","const":"template"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"alias":{"anyOf":[{"type":"string"},{"type":"null"}]},"status":{"type":"string","enum":["draft","published"]},"current_version_number":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"current_version_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"has_unpublished_versions":{"type":"boolean"},"published_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"from":{"anyOf":[{"type":"string"},{"type":"null"}]},"subject":{"type":"string"},"reply_to":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}]},"html":{"type":"string"},"text":{"type":"string"},"variables":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string"},"type":{"type":"string","enum":["string","number","boolean"]},"fallback_value":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"}]}},"required":["key","type"]}},"draft_content":{"anyOf":[{"anyOf":[{"type":"object","properties":{"mode":{"type":"string","const":"block","description":"block, markdown or html."},"blocks":{"minItems":1,"type":"array","items":{"anyOf":[{"type":"object","properties":{"kind":{"type":"string","const":"text","description":"A text block."},"body":{"type":"string","description":"The block text. Placeholders use {{name}}."}},"required":["kind","body"]},{"type":"object","properties":{"kind":{"type":"string","const":"raw","description":"HTML inserted as written."},"html":{"type":"string","description":"HTML for this block."}},"required":["kind","html"]}]},"description":"Blocks, in order. At least one."}},"required":["mode","blocks"]},{"type":"object","properties":{"mode":{"type":"string","enum":["markdown","html"],"description":"markdown or html."},"source":{"type":"string","minLength":1,"description":"The template source. At most 512 KB when writing."}},"required":["mode","source"]}]},{"type":"null"}]},"draft_variables":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","minLength":1,"description":"Placeholder name, without the braces."},"type":{"type":"string","enum":["string","number","boolean"],"description":"string, number or boolean."},"required":{"description":"A missing required value fails the render, unless preview is true.","type":"boolean"},"default":{"description":"Used when the render call omits this name.","type":"string"}},"required":["name","type"]}},{"type":"null"}]},"draft_subject":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"updated_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["object","id","name","alias","status","current_version_number","current_version_id","has_unpublished_versions","published_at","from","subject","reply_to","html","text","variables","draft_content","draft_variables","draft_subject","created_at","updated_at"]},"GetTemplatesReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"object":{"type":"string","const":"template"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"alias":{"anyOf":[{"type":"string"},{"type":"null"}]},"status":{"type":"string","enum":["draft","published"]},"current_version_number":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"current_version_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"has_unpublished_versions":{"type":"boolean"},"published_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"from":{"anyOf":[{"type":"string"},{"type":"null"}]},"subject":{"type":"string"},"reply_to":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}]},"html":{"type":"string"},"text":{"type":"string"},"variables":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string"},"type":{"type":"string","enum":["string","number","boolean"]},"fallback_value":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"}]}},"required":["key","type"]}},"draft_content":{"anyOf":[{"anyOf":[{"type":"object","properties":{"mode":{"type":"string","const":"block","description":"block, markdown or html."},"blocks":{"minItems":1,"type":"array","items":{"anyOf":[{"type":"object","properties":{"kind":{"type":"string","const":"text","description":"A text block."},"body":{"type":"string","description":"The block text. Placeholders use {{name}}."}},"required":["kind","body"]},{"type":"object","properties":{"kind":{"type":"string","const":"raw","description":"HTML inserted as written."},"html":{"type":"string","description":"HTML for this block."}},"required":["kind","html"]}]},"description":"Blocks, in order. At least one."}},"required":["mode","blocks"]},{"type":"object","properties":{"mode":{"type":"string","enum":["markdown","html"],"description":"markdown or html."},"source":{"type":"string","minLength":1,"description":"The template source. At most 512 KB when writing."}},"required":["mode","source"]}]},{"type":"null"}]},"draft_variables":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","minLength":1,"description":"Placeholder name, without the braces."},"type":{"type":"string","enum":["string","number","boolean"],"description":"string, number or boolean."},"required":{"description":"A missing required value fails the render, unless preview is true.","type":"boolean"},"default":{"description":"Used when the render call omits this name.","type":"string"}},"required":["name","type"]}},{"type":"null"}]},"draft_subject":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"updated_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["object","id","name","alias","status","current_version_number","current_version_id","has_unpublished_versions","published_at","from","subject","reply_to","html","text","variables","draft_content","draft_variables","draft_subject","created_at","updated_at"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"PatchTemplatesBy_idBody":{"type":"object","properties":{"name":{"description":"Rename the template. Takes effect at once.","type":"string","minLength":1,"maxLength":200},"alias":{"description":"Set the alias, or null to remove it. Takes effect at once.","anyOf":[{"type":"string","minLength":1,"maxLength":200,"description":"A second handle for the template, unique on the account. Use it wherever an id is taken."},{"type":"null"}]},"subject":{"description":"Replace the draft subject.","type":"string","minLength":1,"maxLength":998},"content":{"description":"Replace the draft body. Same as html, sent as {mode: \"html\", source}.","anyOf":[{"type":"object","properties":{"mode":{"type":"string","const":"block","description":"block, markdown or html."},"blocks":{"minItems":1,"type":"array","items":{"anyOf":[{"type":"object","properties":{"kind":{"type":"string","const":"text","description":"A text block."},"body":{"type":"string","maxLength":524288,"description":"The block text. Placeholders use {{name}}."}},"required":["kind","body"]},{"type":"object","properties":{"kind":{"type":"string","const":"raw","description":"HTML inserted as written."},"html":{"type":"string","maxLength":524288,"description":"HTML for this block."}},"required":["kind","html"]}]},"description":"Blocks, in order. At least one."}},"required":["mode","blocks"]},{"type":"object","properties":{"mode":{"type":"string","enum":["markdown","html"],"description":"markdown or html."},"source":{"type":"string","minLength":1,"maxLength":524288,"description":"The template source. At most 512 KB when writing."}},"required":["mode","source"]}]},"variables":{"description":"Replace the placeholder list. At most 50.","maxItems":50,"type":"array","items":{"type":"object","properties":{"name":{"type":"string","minLength":1,"description":"Placeholder name, without the braces."},"type":{"type":"string","enum":["string","number","boolean"],"description":"string, number or boolean."},"required":{"description":"A missing required value fails the render, unless preview is true.","type":"boolean"},"default":{"description":"Used when the render call omits this name.","type":"string"}},"required":["name","type"]}},"from":{"description":"Replace the default sender, or null to remove it.","anyOf":[{"type":"string","minLength":1,"maxLength":998,"description":"Default sender, such as \"Acme <hello@acme.com>\". A send that names its own from overrides it."},{"type":"null"}]},"reply_to":{"description":"Replace the default Reply-To list, or null to remove it.","anyOf":[{"maxItems":50,"type":"array","items":{"type":"string","minLength":1,"maxLength":998},"description":"Default Reply-To addresses. A send that names its own reply_to overrides them."},{"type":"null"}]},"text":{"description":"Replace the plain-text part, or null to make one from the HTML again.","anyOf":[{"type":"string","maxLength":524288,"description":"The plain-text part. Leave it out and one is made from the HTML. An empty string sends no text part."},{"type":"null"}]}}},"DeleteTemplatesBy_idReply":{"type":"object","properties":{"object":{"type":"string","const":"template"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"deleted":{"type":"boolean"}},"required":["object","id","deleted"]},"PostTemplatesBy_idPublishReply":{"type":"object","properties":{"object":{"type":"string","const":"template"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"template":{"type":"object","properties":{"object":{"type":"string","const":"template"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"alias":{"anyOf":[{"type":"string"},{"type":"null"}]},"status":{"type":"string","enum":["draft","published"]},"current_version_number":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"current_version_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"has_unpublished_versions":{"type":"boolean"},"published_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"from":{"anyOf":[{"type":"string"},{"type":"null"}]},"subject":{"type":"string"},"reply_to":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}]},"html":{"type":"string"},"text":{"type":"string"},"variables":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string"},"type":{"type":"string","enum":["string","number","boolean"]},"fallback_value":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"}]}},"required":["key","type"]}},"draft_content":{"anyOf":[{"anyOf":[{"type":"object","properties":{"mode":{"type":"string","const":"block","description":"block, markdown or html."},"blocks":{"minItems":1,"type":"array","items":{"anyOf":[{"type":"object","properties":{"kind":{"type":"string","const":"text","description":"A text block."},"body":{"type":"string","description":"The block text. Placeholders use {{name}}."}},"required":["kind","body"]},{"type":"object","properties":{"kind":{"type":"string","const":"raw","description":"HTML inserted as written."},"html":{"type":"string","description":"HTML for this block."}},"required":["kind","html"]}]},"description":"Blocks, in order. At least one."}},"required":["mode","blocks"]},{"type":"object","properties":{"mode":{"type":"string","enum":["markdown","html"],"description":"markdown or html."},"source":{"type":"string","minLength":1,"description":"The template source. At most 512 KB when writing."}},"required":["mode","source"]}]},{"type":"null"}]},"draft_variables":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","minLength":1,"description":"Placeholder name, without the braces."},"type":{"type":"string","enum":["string","number","boolean"],"description":"string, number or boolean."},"required":{"description":"A missing required value fails the render, unless preview is true.","type":"boolean"},"default":{"description":"Used when the render call omits this name.","type":"string"}},"required":["name","type"]}},{"type":"null"}]},"draft_subject":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"updated_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["object","id","name","alias","status","current_version_number","current_version_id","has_unpublished_versions","published_at","from","subject","reply_to","html","text","variables","draft_content","draft_variables","draft_subject","created_at","updated_at"]},"version":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"template_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"version_number":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"status":{"type":"string","enum":["draft","published"]},"content":{"anyOf":[{"type":"object","properties":{"mode":{"type":"string","const":"block","description":"block, markdown or html."},"blocks":{"minItems":1,"type":"array","items":{"anyOf":[{"type":"object","properties":{"kind":{"type":"string","const":"text","description":"A text block."},"body":{"type":"string","description":"The block text. Placeholders use {{name}}."}},"required":["kind","body"]},{"type":"object","properties":{"kind":{"type":"string","const":"raw","description":"HTML inserted as written."},"html":{"type":"string","description":"HTML for this block."}},"required":["kind","html"]}]},"description":"Blocks, in order. At least one."}},"required":["mode","blocks"]},{"type":"object","properties":{"mode":{"type":"string","enum":["markdown","html"],"description":"markdown or html."},"source":{"type":"string","minLength":1,"description":"The template source. At most 512 KB when writing."}},"required":["mode","source"]}]},"variables":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","minLength":1,"description":"Placeholder name, without the braces."},"type":{"type":"string","enum":["string","number","boolean"],"description":"string, number or boolean."},"required":{"description":"A missing required value fails the render, unless preview is true.","type":"boolean"},"default":{"description":"Used when the render call omits this name.","type":"string"}},"required":["name","type"]}},"subject":{"type":"string"},"from":{"anyOf":[{"type":"string"},{"type":"null"}]},"reply_to":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}]},"text":{"anyOf":[{"type":"string"},{"type":"null"}]},"published_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"rolled_back_from":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["id","template_id","version_number","status","content","variables","subject","from","reply_to","text","published_at","rolled_back_from","created_at"]}},"required":["object","id","template","version"]},"PostTemplatesBy_idDuplicateBody":{"type":"object","properties":{"name":{"description":"Name of the copy. Omit it to reuse the source name.","type":"string","minLength":1,"maxLength":200}}},"GetTemplatesBy_idVersionsReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"template_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"version_number":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"status":{"type":"string","enum":["draft","published"]},"content":{"anyOf":[{"type":"object","properties":{"mode":{"type":"string","const":"block","description":"block, markdown or html."},"blocks":{"minItems":1,"type":"array","items":{"anyOf":[{"type":"object","properties":{"kind":{"type":"string","const":"text","description":"A text block."},"body":{"type":"string","description":"The block text. Placeholders use {{name}}."}},"required":["kind","body"]},{"type":"object","properties":{"kind":{"type":"string","const":"raw","description":"HTML inserted as written."},"html":{"type":"string","description":"HTML for this block."}},"required":["kind","html"]}]},"description":"Blocks, in order. At least one."}},"required":["mode","blocks"]},{"type":"object","properties":{"mode":{"type":"string","enum":["markdown","html"],"description":"markdown or html."},"source":{"type":"string","minLength":1,"description":"The template source. At most 512 KB when writing."}},"required":["mode","source"]}]},"variables":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","minLength":1,"description":"Placeholder name, without the braces."},"type":{"type":"string","enum":["string","number","boolean"],"description":"string, number or boolean."},"required":{"description":"A missing required value fails the render, unless preview is true.","type":"boolean"},"default":{"description":"Used when the render call omits this name.","type":"string"}},"required":["name","type"]}},"subject":{"type":"string"},"from":{"anyOf":[{"type":"string"},{"type":"null"}]},"reply_to":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}]},"text":{"anyOf":[{"type":"string"},{"type":"null"}]},"published_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"rolled_back_from":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["id","template_id","version_number","status","content","variables","subject","from","reply_to","text","published_at","rolled_back_from","created_at"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"GetTemplatesBy_idVersionsBy_nReply":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"template_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"version_number":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"status":{"type":"string","enum":["draft","published"]},"content":{"anyOf":[{"type":"object","properties":{"mode":{"type":"string","const":"block","description":"block, markdown or html."},"blocks":{"minItems":1,"type":"array","items":{"anyOf":[{"type":"object","properties":{"kind":{"type":"string","const":"text","description":"A text block."},"body":{"type":"string","description":"The block text. Placeholders use {{name}}."}},"required":["kind","body"]},{"type":"object","properties":{"kind":{"type":"string","const":"raw","description":"HTML inserted as written."},"html":{"type":"string","description":"HTML for this block."}},"required":["kind","html"]}]},"description":"Blocks, in order. At least one."}},"required":["mode","blocks"]},{"type":"object","properties":{"mode":{"type":"string","enum":["markdown","html"],"description":"markdown or html."},"source":{"type":"string","minLength":1,"description":"The template source. At most 512 KB when writing."}},"required":["mode","source"]}]},"variables":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","minLength":1,"description":"Placeholder name, without the braces."},"type":{"type":"string","enum":["string","number","boolean"],"description":"string, number or boolean."},"required":{"description":"A missing required value fails the render, unless preview is true.","type":"boolean"},"default":{"description":"Used when the render call omits this name.","type":"string"}},"required":["name","type"]}},"subject":{"type":"string"},"from":{"anyOf":[{"type":"string"},{"type":"null"}]},"reply_to":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}]},"text":{"anyOf":[{"type":"string"},{"type":"null"}]},"published_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"rolled_back_from":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["id","template_id","version_number","status","content","variables","subject","from","reply_to","text","published_at","rolled_back_from","created_at"]},"GetTemplatesBy_idDiffReply":{"type":"object","properties":{"template_id":{"type":"string"},"from_version_number":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"to_version_number":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"unchanged":{"type":"boolean"},"changes":{"type":"array","items":{"type":"object","properties":{"kind":{"type":"string","enum":["added","removed","changed"]},"path":{"type":"string"},"before":{},"after":{}},"required":["kind","path"]}}},"required":["template_id","from_version_number","to_version_number","unchanged","changes"]},"PostTemplatesBy_idRollbackBody":{"type":"object","properties":{"to_version":{"type":"integer","minimum":1,"maximum":9007199254740991,"description":"The published version number to copy into a new draft."}},"required":["to_version"]},"PostTemplatesBy_idRenderBody":{"type":"object","properties":{"values":{"description":"Placeholder values for this render.","type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"variables":{"description":"Same as values. values wins if both are sent.","type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"version_number":{"description":"A published version number, or draft. Omit it for the current published version.","anyOf":[{"type":"string","const":"draft"},{"type":"integer","minimum":1,"maximum":9007199254740991}]},"preview":{"description":"true shows a missing required placeholder instead of refusing the render.","type":"boolean"}}},"PostTemplatesBy_idRenderReply":{"type":"object","properties":{"rendered":{"type":"string"},"subject":{"type":"string"},"text":{"anyOf":[{"type":"string"},{"type":"null"}]},"missing_variables":{"type":"array","items":{"type":"string"}}},"required":["rendered","subject","text","missing_variables"]},"GetAgent_actionsReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"kind":{"type":"string"},"state":{"type":"string","enum":["pending","approved","rejected","killed"]},"payload":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"preview":{"type":"object","properties":{"to_count":{"type":"integer","minimum":0,"maximum":9007199254740991},"subject":{"type":"string"},"html":{"anyOf":[{"type":"string"},{"type":"null"}]},"text":{"anyOf":[{"type":"string"},{"type":"null"}]},"first_recipients":{"type":"array","items":{"type":"string"}},"api_key_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"held_reason":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["to_count","subject","html","text","first_recipients","api_key_id","held_reason"]},"decided_by":{"anyOf":[{"type":"string"},{"type":"null"}]},"decision_reason":{"anyOf":[{"type":"string"},{"type":"null"}]},"decided_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"expires_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]}},"required":["id","kind","state","payload","preview","decided_by","decision_reason","decided_at","created_at","expires_at"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"PostAgent_actionsBy_idApproveReply":{"type":"object","properties":{"action":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"kind":{"type":"string"},"state":{"type":"string","enum":["pending","approved","rejected","killed"]},"payload":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"preview":{"type":"object","properties":{"to_count":{"type":"integer","minimum":0,"maximum":9007199254740991},"subject":{"type":"string"},"html":{"anyOf":[{"type":"string"},{"type":"null"}]},"text":{"anyOf":[{"type":"string"},{"type":"null"}]},"first_recipients":{"type":"array","items":{"type":"string"}},"api_key_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"held_reason":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["to_count","subject","html","text","first_recipients","api_key_id","held_reason"]},"decided_by":{"anyOf":[{"type":"string"},{"type":"null"}]},"decision_reason":{"anyOf":[{"type":"string"},{"type":"null"}]},"decided_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"expires_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]}},"required":["id","kind","state","payload","preview","decided_by","decision_reason","decided_at","created_at","expires_at"]},"message_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"status":{"type":"string"}},"required":["action","message_id","status"]},"PostAgent_actionsBy_idRejectBody":{"type":"object","properties":{"reason":{"type":"string","minLength":1,"maxLength":500}}},"PostAgent_actionsBy_idRejectReply":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"kind":{"type":"string"},"state":{"type":"string","enum":["pending","approved","rejected","killed"]},"payload":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"preview":{"type":"object","properties":{"to_count":{"type":"integer","minimum":0,"maximum":9007199254740991},"subject":{"type":"string"},"html":{"anyOf":[{"type":"string"},{"type":"null"}]},"text":{"anyOf":[{"type":"string"},{"type":"null"}]},"first_recipients":{"type":"array","items":{"type":"string"}},"api_key_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"held_reason":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["to_count","subject","html","text","first_recipients","api_key_id","held_reason"]},"decided_by":{"anyOf":[{"type":"string"},{"type":"null"}]},"decision_reason":{"anyOf":[{"type":"string"},{"type":"null"}]},"decided_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"expires_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]}},"required":["id","kind","state","payload","preview","decided_by","decision_reason","decided_at","created_at","expires_at"]},"GetDeliverabilityDomainsReply":{"type":"object","properties":{"window_days":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"thresholds":{"type":"object","properties":{"bounce":{"type":"object","properties":{"warn":{"type":"number"},"limit":{"type":"number"}},"required":["warn","limit"]},"complaint":{"type":"object","properties":{"warn":{"type":"number"},"limit":{"type":"number"}},"required":["warn","limit"]}},"required":["bounce","complaint"]},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"standing":{"type":"string","enum":["no_data","ok","warning","over_limit"]},"bounce_rate":{"anyOf":[{"type":"number"},{"type":"null"}]},"complaint_rate":{"anyOf":[{"type":"number"},{"type":"null"}]},"sent":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["id","name","standing","bounce_rate","complaint_rate","sent"]}}},"required":["window_days","thresholds","data"]},"GetDeliverabilityDomainsBy_idReply":{"type":"object","properties":{"domain_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"domain_name":{"type":"string"},"window_days":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"standing":{"type":"string","enum":["no_data","ok","warning","over_limit"]},"thresholds":{"type":"object","properties":{"bounce":{"type":"object","properties":{"warn":{"type":"number"},"limit":{"type":"number"}},"required":["warn","limit"]},"complaint":{"type":"object","properties":{"warn":{"type":"number"},"limit":{"type":"number"}},"required":["warn","limit"]}},"required":["bounce","complaint"]},"live":{"type":"object","properties":{"sent":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"delivered":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bounced":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"complained":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"opened":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"clicked":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bounce_rate":{"anyOf":[{"type":"number"},{"type":"null"}]},"complaint_rate":{"anyOf":[{"type":"number"},{"type":"null"}]},"open_rate":{"anyOf":[{"type":"number"},{"type":"null"}]},"click_rate":{"anyOf":[{"type":"number"},{"type":"null"}]}},"required":["sent","delivered","bounced","complained","opened","clicked","bounce_rate","complaint_rate","open_rate","click_rate"]},"snapshots":{"type":"array","items":{"type":"object","properties":{"snapshot_date":{"type":"string"},"rates":{"type":"object","properties":{"sent":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"delivered":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bounced":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"complained":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"opened":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"clicked":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bounce_rate":{"anyOf":[{"type":"number"},{"type":"null"}]},"complaint_rate":{"anyOf":[{"type":"number"},{"type":"null"}]},"open_rate":{"anyOf":[{"type":"number"},{"type":"null"}]},"click_rate":{"anyOf":[{"type":"number"},{"type":"null"}]}},"required":["sent","delivered","bounced","complained","opened","clicked","bounce_rate","complaint_rate","open_rate","click_rate"]},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["snapshot_date","rates","created_at"]}},"bounce_classes":{"type":"array","items":{"type":"object","properties":{"class":{"type":"string","enum":["hard","soft","block","policy"]},"count":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"share":{"type":"number"},"remediation":{"type":"object","properties":{"meaning":{"type":"string"},"fix":{"type":"string"},"docs_anchor":{"type":"string"}},"required":["meaning","fix","docs_anchor"]}},"required":["class","count","share","remediation"]}},"top_recipient_domains":{"type":"array","items":{"type":"object","properties":{"domain":{"type":"string"},"sent":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bounced":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bounce_rate":{"anyOf":[{"type":"number"},{"type":"null"}]},"top_reason":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["domain","sent","bounced","bounce_rate","top_reason"]}},"postmaster":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"blocklists":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}},"required":["domain_id","domain_name","window_days","standing","thresholds","live","snapshots","bounce_classes","top_recipient_domains","postmaster","blocklists"]},"PostDeliverabilityDomainsBy_idSnapshotReply":{"type":"object","properties":{"domain_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"snapshot_date":{"type":"string"},"rates":{"type":"object","properties":{"sent":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"delivered":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bounced":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"complained":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"opened":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"clicked":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bounce_rate":{"anyOf":[{"type":"number"},{"type":"null"}]},"complaint_rate":{"anyOf":[{"type":"number"},{"type":"null"}]},"open_rate":{"anyOf":[{"type":"number"},{"type":"null"}]},"click_rate":{"anyOf":[{"type":"number"},{"type":"null"}]}},"required":["sent","delivered","bounced","complained","opened","clicked","bounce_rate","complaint_rate","open_rate","click_rate"]}},"required":["domain_id","snapshot_date","rates"]},"GetDeliverabilityDmarcReply":{"type":"object","properties":{"window_days":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"alignment_failure_threshold":{"type":"number"},"days":{"type":"array","items":{"type":"object","properties":{"domain":{"type":"string"},"day":{"type":"string"},"total":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"aligned":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"failing":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"failure_rate":{"anyOf":[{"type":"number"},{"type":"null"}]}},"required":["domain","day","total","aligned","failing","failure_rate"]}},"sources":{"type":"array","items":{"type":"object","properties":{"domain":{"type":"string"},"source_ip":{"type":"string"},"message_count":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"aligned":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"failing":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"ours":{"type":"boolean"},"last_seen_day":{"type":"string"}},"required":["domain","source_ip","message_count","aligned","failing","ours","last_seen_day"]}}},"required":["window_days","alignment_failure_threshold","days","sources"]},"PostContactsBody":{"type":"object","properties":{"email":{"type":"string","maxLength":320,"format":"email","pattern":"^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$","description":"The contact address. An existing address is updated."},"first_name":{"description":"Given name. Null clears it.","anyOf":[{"type":"string","maxLength":1000},{"type":"null"}]},"last_name":{"description":"Family name. Null clears it.","anyOf":[{"type":"string","maxLength":1000},{"type":"null"}]},"unsubscribed":{"description":"true stops marketing mail to this address.","type":"boolean"},"status":{"description":"active, or unsubscribed to stop marketing mail.","type":"string","enum":["active","unsubscribed"]},"properties":{"description":"Named values stored on the contact. A new name is created.","type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"consent":{"type":"object","properties":{"source":{"type":"string","minLength":1,"maxLength":200,"description":"Where and how the person agreed — for example \"signup form\" or \"imported list, existing customer\"."},"at":{"description":"When they agreed, as UTC. Defaults to now.","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"ip":{"description":"The IP address the agreement was captured from, if known.","type":"string","maxLength":64},"text":{"description":"The exact wording they agreed to, if it is on file.","type":"string","maxLength":2000},"double_opt_in_confirmed_at":{"description":"When a confirmation email or click completed double opt-in.","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["source"],"description":"Optional consent provenance for this address. Stored, shown and exported; never a reason to refuse."},"segments":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","minLength":1,"maxLength":200,"description":"The segment id."}},"required":["id"]},"description":"Segments to add the contact to. Each must be a segment on this account."},"topics":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","minLength":1,"maxLength":200,"description":"The topic id."},"subscription":{"type":"string","enum":["opt_in","opt_out"],"description":"opt_in subscribes the contact. opt_out unsubscribes them."}},"required":["id","subscription"]},"description":"Topic subscriptions to record for the contact. Each must be a topic on this account."},"audience_id":{"description":"Accepted for Resend callers. This account has one contact list, so it does not select another.","type":"string","minLength":1,"maxLength":200}},"required":["email"]},"PostContactsReply":{"type":"object","properties":{"object":{"type":"string","const":"contact"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"email":{"type":"string"},"status":{"type":"string"},"first_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"last_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"unsubscribed":{"type":"boolean"},"properties":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"string"},{"type":"null"}]}},"property_types":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"}},"consent":{"type":"object","properties":{"source":{"anyOf":[{"type":"string"},{"type":"null"}]},"at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"ip":{"anyOf":[{"type":"string"},{"type":"null"}]},"text":{"anyOf":[{"type":"string"},{"type":"null"}]},"double_opt_in_confirmed_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]}},"required":["source","at","ip","text","double_opt_in_confirmed_at"]},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"updated_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["object","id","email","status","first_name","last_name","unsubscribed","properties","property_types","consent","created_at","updated_at"]},"GetContactsReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"object":{"type":"string","const":"contact"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"email":{"type":"string"},"status":{"type":"string"},"first_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"last_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"unsubscribed":{"type":"boolean"},"properties":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"string"},{"type":"null"}]}},"property_types":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"}},"consent":{"type":"object","properties":{"source":{"anyOf":[{"type":"string"},{"type":"null"}]},"at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"ip":{"anyOf":[{"type":"string"},{"type":"null"}]},"text":{"anyOf":[{"type":"string"},{"type":"null"}]},"double_opt_in_confirmed_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]}},"required":["source","at","ip","text","double_opt_in_confirmed_at"]},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"updated_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["object","id","email","status","first_name","last_name","unsubscribed","properties","property_types","consent","created_at","updated_at"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"GetAudiencesBy_audienceIdContactsReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"object":{"type":"string","const":"contact"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"email":{"type":"string"},"status":{"type":"string"},"first_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"last_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"unsubscribed":{"type":"boolean"},"properties":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"string"},{"type":"null"}]}},"property_types":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"}},"consent":{"type":"object","properties":{"source":{"anyOf":[{"type":"string"},{"type":"null"}]},"at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"ip":{"anyOf":[{"type":"string"},{"type":"null"}]},"text":{"anyOf":[{"type":"string"},{"type":"null"}]},"double_opt_in_confirmed_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]}},"required":["source","at","ip","text","double_opt_in_confirmed_at"]},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"updated_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["object","id","email","status","first_name","last_name","unsubscribed","properties","property_types","consent","created_at","updated_at"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"GetSegmentsBy_idContactsReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"object":{"type":"string","const":"contact"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"email":{"type":"string"},"status":{"type":"string"},"first_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"last_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"unsubscribed":{"type":"boolean"},"properties":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"string"},{"type":"null"}]}},"property_types":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"}},"consent":{"type":"object","properties":{"source":{"anyOf":[{"type":"string"},{"type":"null"}]},"at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"ip":{"anyOf":[{"type":"string"},{"type":"null"}]},"text":{"anyOf":[{"type":"string"},{"type":"null"}]},"double_opt_in_confirmed_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]}},"required":["source","at","ip","text","double_opt_in_confirmed_at"]},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"updated_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["object","id","email","status","first_name","last_name","unsubscribed","properties","property_types","consent","created_at","updated_at"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"PostContactsBatchBody":{"type":"object","properties":{"contacts":{"minItems":1,"maxItems":1000,"type":"array","items":{"type":"object","properties":{"email":{"type":"string","maxLength":320,"description":"The contact address. A new address is rejected; an existing one is updated."},"first_name":{"description":"Given name. Null clears it.","anyOf":[{"type":"string","maxLength":1000},{"type":"null"}]},"last_name":{"description":"Family name. Null clears it.","anyOf":[{"type":"string","maxLength":1000},{"type":"null"}]},"unsubscribed":{"description":"true stops marketing mail to this address.","type":"boolean"},"status":{"description":"active, or unsubscribed to stop marketing mail.","type":"string","enum":["active","unsubscribed"]},"properties":{"description":"Named values stored on the contact. A new name is created.","type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}},"required":["email"]},"description":"Contacts to update. At most 1,000. A new address is rejected."}},"required":["contacts"]},"PostContactsBatchReply":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"status":{"type":"string","enum":["created","updated","rejected"]},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"email":{"type":"string"},"error":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"},"fix":{"type":"string"},"docs_url":{"type":"string"}},"required":["code","message","fix","docs_url"]}},"required":["index","status"]}}},"required":["data"]},"PostContactsImportsBody":{"type":"object","properties":{"csv":{"description":"CSV text in a JSON body. The first row is the header and must include email.","type":"string","minLength":1,"maxLength":2000000},"file":{"description":"The CSV, as the multipart file field. In a JSON body, the CSV text.","type":"string","minLength":1,"maxLength":2000000},"column_map":{"description":"Maps contact fields to CSV columns the way Resend's does: {\"email\":\"Email\",\"first_name\":\"First Name\",\"properties\":{\"plan\":{\"column\":\"Plan\",\"type\":\"string\"}}}. Multipart sends it as a JSON string. A map from a CSV header to a field, {\"Email Address\":\"email\"}, also works.","anyOf":[{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},{"type":"string"}]},"on_conflict":{"description":"What happens to a contact that already exists: skip (the default) leaves it unchanged, upsert updates it. New addresses are always created.","type":"string","enum":["upsert","skip"]},"segments":{"description":"Segments to add the imported contacts to: [{\"id\": \"...\"}]. Multipart sends it as a JSON string.","anyOf":[{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","minLength":1,"maxLength":200,"description":"The segment id."}},"required":["id"]},"description":"Segments to add the contact to. Each must be a segment on this account."},{"type":"string"}]},"topics":{"description":"Topic subscriptions to record for the imported contacts. Multipart sends it as a JSON string.","anyOf":[{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","minLength":1,"maxLength":200,"description":"The topic id."},"subscription":{"type":"string","enum":["opt_in","opt_out"],"description":"opt_in subscribes the contact. opt_out unsubscribes them."}},"required":["id","subscription"]},"description":"Topic subscriptions to record for the contact. Each must be a topic on this account."},{"type":"string"}]}}},"PostContactsImportsReply":{"type":"object","properties":{"object":{"type":"string","const":"contact_import"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"status":{"type":"string","enum":["queued","in_progress","completed","failed"]},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"completed_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"counts":{"type":"object","properties":{"total":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"created":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"updated":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"skipped":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"failed":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["total","created","updated","skipped","failed"]},"rejected":{"type":"array","items":{"type":"object","properties":{"row":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991,"description":"The CSV line the row is on; the header is line 1."},"email":{"type":"string"},"code":{"type":"string"},"message":{"type":"string"},"fix":{"type":"string"}},"required":["row","email","code","message","fix"]}}},"required":["object","id","status","created_at","completed_at","counts","rejected"]},"GetContactsImportsReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"object":{"type":"string","const":"contact_import"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"status":{"type":"string","enum":["queued","in_progress","completed","failed"]},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"completed_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"counts":{"type":"object","properties":{"total":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"created":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"updated":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"skipped":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"failed":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["total","created","updated","skipped","failed"]}},"required":["object","id","status","created_at","completed_at","counts"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"GetContactsImportsBy_idReply":{"type":"object","properties":{"object":{"type":"string","const":"contact_import"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"status":{"type":"string","enum":["queued","in_progress","completed","failed"]},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"completed_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"counts":{"type":"object","properties":{"total":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"created":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"updated":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"skipped":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"failed":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["total","created","updated","skipped","failed"]}},"required":["object","id","status","created_at","completed_at","counts"]},"PatchContactsBy_idBody":{"type":"object","properties":{"email":{"description":"A new address for this contact.","type":"string","maxLength":320,"format":"email","pattern":"^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"},"first_name":{"description":"Given name. Null clears it.","anyOf":[{"type":"string","maxLength":1000},{"type":"null"}]},"last_name":{"description":"Family name. Null clears it.","anyOf":[{"type":"string","maxLength":1000},{"type":"null"}]},"unsubscribed":{"description":"true stops marketing mail to this address.","type":"boolean"},"status":{"description":"active, or unsubscribed to stop marketing mail.","type":"string","enum":["active","unsubscribed"]},"properties":{"description":"Values to merge. Null removes that property.","type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"consent":{"type":"object","properties":{"source":{"type":"string","minLength":1,"maxLength":200,"description":"Where and how the person agreed — for example \"signup form\" or \"imported list, existing customer\"."},"at":{"description":"When they agreed, as UTC. Defaults to now.","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"ip":{"description":"The IP address the agreement was captured from, if known.","type":"string","maxLength":64},"text":{"description":"The exact wording they agreed to, if it is on file.","type":"string","maxLength":2000},"double_opt_in_confirmed_at":{"description":"When a confirmation email or click completed double opt-in.","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["source"],"description":"Optional consent provenance for this address. Stored, shown and exported; never a reason to refuse."}}},"DeleteContactsBy_idReply":{"type":"object","properties":{"object":{"type":"string","const":"contact"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"contact":{"type":"string"},"deleted":{"type":"boolean"}},"required":["object","id","contact","deleted"]},"DeleteAudiencesBy_audienceIdContactsBy_idReply":{"type":"object","properties":{"object":{"type":"string","const":"contact"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"contact":{"type":"string"},"deleted":{"type":"boolean"}},"required":["object","id","contact","deleted"]},"PostContactsBy_idResubscribeBody":{"type":"object","properties":{"consent_source":{"type":"string","minLength":1,"maxLength":200,"description":"Where the person opted back in."},"consent_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$","description":"When they opted back in, as UTC. Not in the future."}},"required":["consent_source","consent_at"]},"GetContactsBy_idSegmentsReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["id","name","created_at"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"PostContactsBy_idSegmentsBy_segment_idReply":{"type":"object","properties":{"object":{"type":"string","const":"contact_segment"},"contact_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"segment_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["object","contact_id","segment_id"]},"DeleteContactsBy_idSegmentsBy_segment_idReply":{"type":"object","properties":{"object":{"type":"string","const":"contact_segment"},"contact_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"segment_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"deleted":{"type":"boolean","const":true}},"required":["object","contact_id","segment_id","deleted"]},"GetContact_propertiesReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"object":{"type":"string","const":"contact_property"},"id":{"type":"string"},"key":{"type":"string"},"type":{"type":"string"},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"fallback_value":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"type":"null"}]}},"required":["object","id","key","type","created_at","fallback_value"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"PostContact_propertiesBody":{"type":"object","properties":{"key":{"type":"string","minLength":1,"maxLength":200,"description":"The property key. At most 50 characters: letters, digits and underscores."},"type":{"type":"string","enum":["string","number"],"description":"The property type. It cannot be changed later."},"fallback_value":{"description":"Used for a contact that holds no value for this property. It must match the type.","anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"type":"null"}]}},"required":["key","type"]},"PostContact_propertiesReply":{"type":"object","properties":{"object":{"type":"string","const":"contact_property"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["object","id"]},"GetContact_propertiesBy_idReply":{"type":"object","properties":{"object":{"type":"string","const":"contact_property"},"id":{"type":"string"},"key":{"type":"string"},"type":{"type":"string"},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"fallback_value":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"type":"null"}]}},"required":["object","id","key","type","created_at","fallback_value"]},"PatchContact_propertiesBy_idBody":{"type":"object","properties":{"fallback_value":{"description":"The new fallback. null removes it. It must match the property’s type.","anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"type":"null"}]}}},"PatchContact_propertiesBy_idReply":{"type":"object","properties":{"object":{"type":"string","const":"contact_property"},"id":{"type":"string"}},"required":["object","id"]},"DeleteContact_propertiesBy_idReply":{"type":"object","properties":{"object":{"type":"string","const":"contact_property"},"id":{"type":"string"},"deleted":{"type":"boolean","const":true}},"required":["object","id","deleted"]},"GetDedicated_ipsRampReply":{"type":"object","properties":{"curve":{"type":"array","items":{"type":"object","properties":{"up_to_day":{"type":"number"},"percent":{"type":"number"}},"required":["up_to_day","percent"]}}},"required":["curve"]},"GetDedicated_ipsReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"ip":{"type":"string"},"region":{"type":"string"},"state":{"type":"string"},"started_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"warmup_percent":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["id","ip","region","state","started_at","warmup_percent","created_at"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"PostDedicated_ipsBody":{"type":"object","properties":{"ip":{"type":"string","minLength":7,"maxLength":45},"region":{"type":"string","minLength":1,"maxLength":64}},"required":["ip","region"]},"PostDedicated_ipsReply":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"ip":{"type":"string"},"region":{"type":"string"},"state":{"type":"string"},"started_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"warmup_percent":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["id","ip","region","state","started_at","warmup_percent","created_at"]},"DeleteDedicated_ipsBy_idReply":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"deleted":{"type":"boolean"}},"required":["id","deleted"]},"GetDedicated_ipsRoute_decisionBy_messageIdReply":{"type":"object","properties":{"route":{"type":"string","enum":["shared","dedicated"]},"ip":{"anyOf":[{"type":"string"},{"type":"null"}]},"warmup_percent":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]}},"required":["route","ip","warmup_percent"]},"GetLogsReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"object":{"type":"string","const":"log"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"request_id":{"type":"string"},"method":{"type":"string"},"path":{"type":"string"},"endpoint":{"type":"string"},"route":{"anyOf":[{"type":"string"},{"type":"null"}]},"status":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"response_status":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"duration_ms":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"error_code":{"anyOf":[{"type":"string"},{"type":"null"}]},"api_key_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"api_key_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"source":{"type":"string","enum":["api","console"]},"user_agent":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["object","id","request_id","method","path","endpoint","route","status","response_status","duration_ms","error_code","api_key_id","api_key_name","source","user_agent","created_at"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"GetLogsBy_idReply":{"type":"object","properties":{"object":{"type":"string","const":"log"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"request_id":{"type":"string"},"method":{"type":"string"},"path":{"type":"string"},"endpoint":{"type":"string"},"route":{"anyOf":[{"type":"string"},{"type":"null"}]},"status":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"response_status":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"duration_ms":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"error_code":{"anyOf":[{"type":"string"},{"type":"null"}]},"api_key_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"api_key_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"source":{"type":"string","enum":["api","console"]},"user_agent":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["object","id","request_id","method","path","endpoint","route","status","response_status","duration_ms","error_code","api_key_id","api_key_name","source","user_agent","created_at"]},"GetStatusReply":{"type":"object","properties":{"status":{"type":"string","enum":["operational","degraded","outage"]},"time":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"components":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"state":{"type":"string","enum":["operational","degraded","down","unknown"]},"detail":{"type":"string"}},"required":["name","state","detail"]}}},"required":["status","time","components"]},"GetStatusHistoryReply":{"type":"object","properties":{"window_days":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"from":{"type":"string"},"to":{"type":"string"},"components":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"availability":{"anyOf":[{"type":"number"},{"type":"null"}]},"days":{"type":"array","items":{"type":"object","properties":{"date":{"type":"string"},"samples":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"missing":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"up":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"uptime":{"anyOf":[{"type":"number"},{"type":"null"}]}},"required":["date","samples","missing","up","uptime"]}},"outages":{"type":"array","items":{"type":"object","properties":{"from":{"type":"string"},"to":{"type":"string"},"minutes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["from","to","minutes"]}}},"required":["name","availability","days","outages"]}}},"required":["window_days","from","to","components"]},"GetToolsDnsBy_domainReply":{"type":"object","properties":{"domain":{"type":"string"},"records":{"type":"array","items":{"type":"object","properties":{"record":{"type":"string","enum":["SPF","DKIM","DMARC","RETURN_PATH"]},"name":{"type":"string"},"type":{"type":"string","enum":["TXT","MX"]},"value":{"anyOf":[{"type":"string"},{"type":"null"}]},"ttl":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"priority":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"required":{"type":"boolean"},"action":{"type":"string","enum":["add","edit","none","check"]},"current":{"anyOf":[{"type":"string"},{"type":"null"}]},"note":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["record","name","type","value","ttl","priority","required","action","current","note"]}}},"required":["domain","records"]},"PostSegmentsBody":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200,"description":"A name for the segment list."},"rules":{"description":"Rules that AND together. Omit them and only the contacts you add to the segment are in it.","type":"array","items":{"type":"object","properties":{"field":{"type":"string","minLength":1,"description":"A property name, or status."},"op":{"type":"string","enum":["equals","not_equals","contains","greater_than","less_than","in","exists"],"description":"equals, not_equals, contains, greater_than, less_than, in or exists."},"value":{"description":"The value to compare. Omitted for exists."}},"required":["field","op"]}},"audience_id":{"description":"Accepted for Resend callers. This account has one contact list, so it changes nothing.","type":"string","minLength":1,"maxLength":200},"filter":{"description":"Accepted when empty. Conditions are written as rules here.","anyOf":[{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},{"type":"null"}]}},"required":["name"]},"PostSegmentsReply":{"type":"object","properties":{"object":{"type":"string","enum":["segment","audience"]},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"audience_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"rules":{"type":"array","items":{"type":"object","properties":{"field":{"type":"string","minLength":1,"description":"A property name, or status."},"op":{"type":"string","enum":["equals","not_equals","contains","greater_than","less_than","in","exists"],"description":"equals, not_equals, contains, greater_than, less_than, in or exists."},"value":{"description":"The value to compare. Omitted for exists."}},"required":["field","op"]}},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"updated_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["object","id","audience_id","name","rules","created_at","updated_at"]},"GetSegmentsReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"object":{"type":"string","enum":["segment","audience"]},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"audience_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"rules":{"type":"array","items":{"type":"object","properties":{"field":{"type":"string","minLength":1,"description":"A property name, or status."},"op":{"type":"string","enum":["equals","not_equals","contains","greater_than","less_than","in","exists"],"description":"equals, not_equals, contains, greater_than, less_than, in or exists."},"value":{"description":"The value to compare. Omitted for exists."}},"required":["field","op"]}},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"updated_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["object","id","audience_id","name","rules","created_at","updated_at"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"PostAudiencesBody":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200,"description":"A name for the segment list."},"rules":{"description":"Rules that AND together. Omit them and only the contacts you add to the segment are in it.","type":"array","items":{"type":"object","properties":{"field":{"type":"string","minLength":1,"description":"A property name, or status."},"op":{"type":"string","enum":["equals","not_equals","contains","greater_than","less_than","in","exists"],"description":"equals, not_equals, contains, greater_than, less_than, in or exists."},"value":{"description":"The value to compare. Omitted for exists."}},"required":["field","op"]}},"audience_id":{"description":"Accepted for Resend callers. This account has one contact list, so it changes nothing.","type":"string","minLength":1,"maxLength":200},"filter":{"description":"Accepted when empty. Conditions are written as rules here.","anyOf":[{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},{"type":"null"}]}},"required":["name"]},"GetAudiencesReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"object":{"type":"string","enum":["segment","audience"]},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"audience_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"rules":{"type":"array","items":{"type":"object","properties":{"field":{"type":"string","minLength":1,"description":"A property name, or status."},"op":{"type":"string","enum":["equals","not_equals","contains","greater_than","less_than","in","exists"],"description":"equals, not_equals, contains, greater_than, less_than, in or exists."},"value":{"description":"The value to compare. Omitted for exists."}},"required":["field","op"]}},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"updated_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["object","id","audience_id","name","rules","created_at","updated_at"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"GetSegmentsBy_idMembersReply":{"type":"object","properties":{"total":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"member_ids":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"truncated":{"type":"boolean"}},"required":["total","member_ids","truncated"]},"PatchSegmentsBy_idBody":{"type":"object","properties":{"name":{"description":"A new name. Omit it to keep the current one.","type":"string","minLength":1,"maxLength":200},"rules":{"description":"Replace the rules. Membership is evaluated again immediately.","type":"array","items":{"type":"object","properties":{"field":{"type":"string","minLength":1,"description":"A property name, or status."},"op":{"type":"string","enum":["equals","not_equals","contains","greater_than","less_than","in","exists"],"description":"equals, not_equals, contains, greater_than, less_than, in or exists."},"value":{"description":"The value to compare. Omitted for exists."}},"required":["field","op"]}}}},"DeleteSegmentsBy_idReply":{"type":"object","properties":{"object":{"type":"string","enum":["segment","audience"]},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"deleted":{"type":"boolean"}},"required":["object","id","deleted"]},"DeleteAudiencesBy_idReply":{"type":"object","properties":{"object":{"type":"string","enum":["segment","audience"]},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"deleted":{"type":"boolean"}},"required":["object","id","deleted"]},"PostBroadcastsBody":{"type":"object","properties":{"name":{"description":"A name for your own reference. Omit it to use the subject.","type":"string","minLength":1,"maxLength":200},"from_address":{"type":"string","minLength":3,"maxLength":320,"description":"Same as from."},"template_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"segment_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"subject":{"type":"string","minLength":1,"maxLength":998},"content":{"description":"Same as html, sent as {mode: \"html\", source}.","anyOf":[{"type":"object","properties":{"mode":{"type":"string","const":"block","description":"block, markdown or html."},"blocks":{"minItems":1,"type":"array","items":{"anyOf":[{"type":"object","properties":{"kind":{"type":"string","const":"text","description":"A text block."},"body":{"type":"string","maxLength":524288,"description":"The block text. Placeholders use {{name}}."}},"required":["kind","body"]},{"type":"object","properties":{"kind":{"type":"string","const":"raw","description":"HTML inserted as written."},"html":{"type":"string","maxLength":524288,"description":"HTML for this block."}},"required":["kind","html"]}]},"description":"Blocks, in order. At least one."}},"required":["mode","blocks"]},{"type":"object","properties":{"mode":{"type":"string","enum":["markdown","html"],"description":"markdown or html."},"source":{"type":"string","minLength":1,"maxLength":524288,"description":"The template source. At most 512 KB when writing."}},"required":["mode","source"]}]},"text":{"description":"The plain-text body, sent as the plain part of every message. Placeholders work as in html. Omit it to have one derived from the body; an empty string sends no plain-text part.","type":"string","maxLength":1000000},"reply_to":{"description":"Reply-To on every message. One address or a list, checked like POST /emails.","anyOf":[{"type":"string","minLength":1},{"type":"array","items":{"type":"string","minLength":1}}]},"replyTo":{"description":"Resend Node SDK name for reply_to.","anyOf":[{"type":"string","minLength":1},{"type":"array","items":{"type":"string","minLength":1}}]},"preview_text":{"description":"The line an inbox shows after the subject. Hidden at the top of the HTML; not shown in the body.","type":"string","maxLength":500},"previewText":{"description":"Resend Node SDK name for preview_text.","type":"string","maxLength":500},"topic_id":{"description":"A topic on this account. Contacts who unsubscribed from it are skipped, and each message carries a one-click unsubscribe for this topic.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"topicId":{"description":"Resend Node SDK name for topic_id.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"send":{"description":"Send the broadcast as soon as it is created. With scheduled_at it is scheduled instead. Defaults to false: the broadcast stays a draft.","type":"boolean"},"scheduled_at":{"description":"When to send. With send: true, an ISO 8601 time or a phrase such as \"in 1 hour\". Without send, an ISO 8601 time: the broadcast is saved as scheduled.","type":"string","minLength":1}},"required":["from_address","segment_id"]},"PostBroadcastsReply":{"type":"object","properties":{"object":{"type":"string","const":"broadcast"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"status":{"type":"string"},"from_address":{"anyOf":[{"type":"string"},{"type":"null"}]},"from":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Same as from_address, under the name Resend uses."},"template_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"segment_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"audience_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}],"description":"Deprecated: the name Resend gave segment_id before segments. Same value."},"subject":{"anyOf":[{"type":"string"},{"type":"null"}]},"content":{"anyOf":[{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},{"type":"null"}]},"html":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The HTML body as written, placeholders unfilled. null for a broadcast that takes its body from a template."},"text":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The plain-text body as written. null: none written, so the send derives one. An empty string: opted out of a plain-text part."},"reply_to":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"Reply-To on every message the broadcast sends."},"preview_text":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The line an inbox shows after the subject."},"topic_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}],"description":"The topic whose opt-outs the send honours. A contact who unsubscribed from it is skipped."},"scheduled_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"sent_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"sent_count":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"archived_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"updated_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"sent":{"description":"Messages handed off, when send was true and the broadcast was not scheduled.","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"skipped":{"description":"Contacts left out, when send was true.","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"warnings":{"description":"Anything worth knowing that did not stop the send, when send was true.","type":"array","items":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"},"count":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["code","message","count"]}}},"required":["object","id","name","status","from_address","from","template_id","segment_id","audience_id","subject","content","html","text","reply_to","preview_text","topic_id","scheduled_at","sent_at","sent_count","archived_at","created_at","updated_at"]},"GetBroadcastsReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"object":{"type":"string","const":"broadcast"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"status":{"type":"string"},"from_address":{"anyOf":[{"type":"string"},{"type":"null"}]},"from":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Same as from_address, under the name Resend uses."},"template_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"segment_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"audience_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}],"description":"Deprecated: the name Resend gave segment_id before segments. Same value."},"subject":{"anyOf":[{"type":"string"},{"type":"null"}]},"content":{"anyOf":[{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},{"type":"null"}]},"html":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The HTML body as written, placeholders unfilled. null for a broadcast that takes its body from a template."},"text":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The plain-text body as written. null: none written, so the send derives one. An empty string: opted out of a plain-text part."},"reply_to":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"Reply-To on every message the broadcast sends."},"preview_text":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The line an inbox shows after the subject."},"topic_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}],"description":"The topic whose opt-outs the send honours. A contact who unsubscribed from it is skipped."},"scheduled_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"sent_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"sent_count":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"archived_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"updated_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["object","id","name","status","from_address","from","template_id","segment_id","audience_id","subject","content","html","text","reply_to","preview_text","topic_id","scheduled_at","sent_at","sent_count","archived_at","created_at","updated_at"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"GetBroadcastsBy_idReply":{"type":"object","properties":{"object":{"type":"string","const":"broadcast"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"status":{"type":"string"},"from_address":{"anyOf":[{"type":"string"},{"type":"null"}]},"from":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Same as from_address, under the name Resend uses."},"template_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"segment_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"audience_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}],"description":"Deprecated: the name Resend gave segment_id before segments. Same value."},"subject":{"anyOf":[{"type":"string"},{"type":"null"}]},"content":{"anyOf":[{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},{"type":"null"}]},"html":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The HTML body as written, placeholders unfilled. null for a broadcast that takes its body from a template."},"text":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The plain-text body as written. null: none written, so the send derives one. An empty string: opted out of a plain-text part."},"reply_to":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"Reply-To on every message the broadcast sends."},"preview_text":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The line an inbox shows after the subject."},"topic_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}],"description":"The topic whose opt-outs the send honours. A contact who unsubscribed from it is skipped."},"scheduled_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"sent_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"sent_count":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"archived_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"updated_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["object","id","name","status","from_address","from","template_id","segment_id","audience_id","subject","content","html","text","reply_to","preview_text","topic_id","scheduled_at","sent_at","sent_count","archived_at","created_at","updated_at"]},"PatchBroadcastsBy_idBody":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200},"from_address":{"description":"Same as from. A display name is allowed: \"Acme Updates <news@acme.com>\".","type":"string","minLength":3,"maxLength":320},"subject":{"type":"string","minLength":1,"maxLength":998},"content":{"description":"Same as html, sent as {mode: \"html\", source}.","anyOf":[{"type":"object","properties":{"mode":{"type":"string","const":"block","description":"block, markdown or html."},"blocks":{"minItems":1,"type":"array","items":{"anyOf":[{"type":"object","properties":{"kind":{"type":"string","const":"text","description":"A text block."},"body":{"type":"string","maxLength":524288,"description":"The block text. Placeholders use {{name}}."}},"required":["kind","body"]},{"type":"object","properties":{"kind":{"type":"string","const":"raw","description":"HTML inserted as written."},"html":{"type":"string","maxLength":524288,"description":"HTML for this block."}},"required":["kind","html"]}]},"description":"Blocks, in order. At least one."}},"required":["mode","blocks"]},{"type":"object","properties":{"mode":{"type":"string","enum":["markdown","html"],"description":"markdown or html."},"source":{"type":"string","minLength":1,"maxLength":524288,"description":"The template source. At most 512 KB when writing."}},"required":["mode","source"]}]},"segment_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"reply_to":{"description":"Reply-To on every message. null clears it.","anyOf":[{"description":"One address, or a list of them. At most 50 recipients across to, cc and bcc.","anyOf":[{"type":"string","minLength":1},{"type":"array","items":{"type":"string","minLength":1}}]},{"type":"null"}]},"replyTo":{"description":"Resend Node SDK name for reply_to.","anyOf":[{"type":"string","minLength":1},{"type":"array","items":{"type":"string","minLength":1}}]},"preview_text":{"description":"The line an inbox shows after the subject. null clears it.","anyOf":[{"type":"string","maxLength":500},{"type":"null"}]},"previewText":{"description":"Resend Node SDK name for preview_text.","type":"string","maxLength":500},"topic_id":{"description":"A topic on this account whose opt-outs the send honours. null clears it.","anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"topicId":{"description":"Resend Node SDK name for topic_id.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"text":{"description":"The plain-text body. null clears it, so the send derives one; an empty string sends no plain-text part.","anyOf":[{"type":"string","maxLength":1000000},{"type":"null"}]},"scheduled_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},{"type":"null"}]}}},"PostBroadcastsBy_idSendBody":{"type":"object","properties":{"scheduled_at":{"description":"A time to schedule for instead of sending now. ISO 8601 or a short phrase (\"in 1 hour\", \"tomorrow 9am\"). Refused if it is in the past.","type":"string","minLength":1},"scheduledAt":{"description":"Resend Node SDK name for scheduled_at.","type":"string","minLength":1}}},"PostBroadcastsBy_idSendReply":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"broadcast":{"type":"object","properties":{"object":{"type":"string","const":"broadcast"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"status":{"type":"string"},"from_address":{"anyOf":[{"type":"string"},{"type":"null"}]},"from":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Same as from_address, under the name Resend uses."},"template_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"segment_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"audience_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}],"description":"Deprecated: the name Resend gave segment_id before segments. Same value."},"subject":{"anyOf":[{"type":"string"},{"type":"null"}]},"content":{"anyOf":[{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},{"type":"null"}]},"html":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The HTML body as written, placeholders unfilled. null for a broadcast that takes its body from a template."},"text":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The plain-text body as written. null: none written, so the send derives one. An empty string: opted out of a plain-text part."},"reply_to":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"Reply-To on every message the broadcast sends."},"preview_text":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The line an inbox shows after the subject."},"topic_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}],"description":"The topic whose opt-outs the send honours. A contact who unsubscribed from it is skipped."},"scheduled_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"sent_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"sent_count":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"archived_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"updated_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["object","id","name","status","from_address","from","template_id","segment_id","audience_id","subject","content","html","text","reply_to","preview_text","topic_id","scheduled_at","sent_at","sent_count","archived_at","created_at","updated_at"]},"sent":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"skipped":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"warnings":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"},"count":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["code","message","count"]}}},"required":["id","broadcast","sent","skipped","warnings"]},"DeleteBroadcastsBy_idReply":{"type":"object","properties":{"object":{"type":"string","const":"broadcast"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"deleted":{"type":"boolean"}},"required":["object","id","deleted"]},"PostBroadcastsBy_idDuplicateBody":{"type":"object","properties":{"name":{"description":"Name of the copy. Omit it for \"Copy of\" and the source name.","type":"string","minLength":1,"maxLength":200}}},"GetBroadcastsBy_idMessagesReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"contact_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"message_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"state":{"type":"string"},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["id","contact_id","message_id","state","created_at"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"GetBroadcastsBy_idStatsReply":{"type":"object","properties":{"sent":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"delivered":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"delivered_percent":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"opened":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"opened_percent":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"clicked":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"clicked_percent":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bounced":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"complained":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"unsubscribed":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["sent","delivered","delivered_percent","opened","opened_percent","clicked","clicked_percent","bounced","complained","unsubscribed"]},"GetBroadcastsBy_idRecipientsReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"has_more":{"type":"boolean"},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"An opaque cursor for this row, used only for paging. It identifies nothing else."},"contact_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}],"description":"The contact, or null when the address no longer maps to one."},"email":{"type":"string"},"count":{"description":"How many times the recipient did it. opened and clicked only.","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bounce_type":{"description":"bounced only.","type":"string","enum":["permanent","transient","undetermined"]},"clicked_links":{"description":"The links this recipient clicked. clicked only.","type":"array","items":{"type":"object","properties":{"url":{"type":"string"},"clicks":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["url","clicks"]}}},"required":["id","contact_id","email"]}}},"required":["object","has_more","data"]},"GetBroadcastsBy_idClicked_linksReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"has_more":{"type":"boolean"},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"An opaque cursor for this row, used only for paging."},"url":{"type":"string"},"clicks":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991,"description":"Total clicks, repeat clicks by one recipient included."},"unique_clicks":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991,"description":"Distinct recipients who clicked this link."}},"required":["id","url","clicks","unique_clicks"]}}},"required":["object","has_more","data"]},"GetBroadcastsBy_idPreviewReply":{"type":"object","properties":{"subject":{"type":"string"},"html":{"type":"string"},"preview_text":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The inbox preview line. The html carries it hidden at the top."}},"required":["subject","html","preview_text"]},"PostAutomationsBody":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200},"status":{"description":"enabled starts firing now. A graph defaults to disabled; a linear automation is a draft until enabled.","type":"string","enum":["enabled","disabled"]},"trigger":{"description":"Linear automations: what starts a run.","type":"object","properties":{"type":{"type":"string","enum":["custom_event","contact.created","contact.updated","segment.joined","segment.left","scheduled"]},"event_name":{"type":"string","minLength":1,"maxLength":200},"segment_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"interval_minutes":{"type":"integer","minimum":1,"maximum":9007199254740991}},"required":["type"]},"steps":{"minItems":1,"type":"array","items":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"description":"Linear: ordered steps with kind email, webhook or ab_split, beside a trigger. Graph (Resend): steps with key, type (trigger, delay, send_email, wait_for_event, condition, contact_update, contact_delete, add_to_segment) and config, sent together with connections. A graph has exactly one trigger step, at most 150 steps, every step reachable from the trigger and no loops."},"connections":{"description":"Graph only: the links between steps, by key. type is default, condition_met / condition_not_met from a condition, or event_received / timeout from a wait_for_event. Sent together with steps.","type":"array","items":{"type":"object","properties":{"from":{"type":"string","minLength":1,"maxLength":100,"description":"The key of the step the connection leaves."},"to":{"type":"string","minLength":1,"maxLength":100,"description":"The key of the step it leads to."},"type":{"description":"default, or condition_met / condition_not_met from a condition, or event_received / timeout from a wait_for_event.","type":"string","enum":["default","condition_met","condition_not_met","timeout","event_received"]}},"required":["from","to"],"additionalProperties":false}}},"required":["name","steps"]},"PostAutomationsReply":{"type":"object","properties":{"object":{"type":"string","const":"automation"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"status":{"type":"string"},"format":{"type":"string","enum":["linear","graph"]},"trigger":{"type":"object","properties":{"type":{"type":"string","enum":["custom_event","contact.created","contact.updated","segment.joined","segment.left","scheduled"]},"event_name":{"type":"string","minLength":1,"maxLength":200},"segment_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"interval_minutes":{"type":"integer","minimum":1,"maximum":9007199254740991}},"required":["type"]},"steps":{"type":"array","items":{}},"connections":{"type":"array","items":{"type":"object","properties":{"from":{"type":"string"},"to":{"type":"string"},"type":{"type":"string","enum":["default","condition_met","condition_not_met","timeout","event_received"]}},"required":["from","to","type"]}},"current_version":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"updated_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["object","id","name","status","format","trigger","steps","connections","current_version","created_at","updated_at"]},"GetAutomationsReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"object":{"type":"string","const":"automation"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"status":{"type":"string"},"format":{"type":"string","enum":["linear","graph"]},"trigger":{"type":"object","properties":{"type":{"type":"string","enum":["custom_event","contact.created","contact.updated","segment.joined","segment.left","scheduled"]},"event_name":{"type":"string","minLength":1,"maxLength":200},"segment_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"interval_minutes":{"type":"integer","minimum":1,"maximum":9007199254740991}},"required":["type"]},"steps":{"type":"array","items":{}},"connections":{"type":"array","items":{"type":"object","properties":{"from":{"type":"string"},"to":{"type":"string"},"type":{"type":"string","enum":["default","condition_met","condition_not_met","timeout","event_received"]}},"required":["from","to","type"]}},"current_version":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"updated_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["object","id","name","status","format","trigger","steps","connections","current_version","created_at","updated_at"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"PatchAutomationsBy_idBody":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200},"status":{"description":"enabled snapshots a version and starts firing; disabled stops new runs.","type":"string","enum":["enabled","disabled"]},"trigger":{"description":"Linear automations: what starts a run.","type":"object","properties":{"type":{"type":"string","enum":["custom_event","contact.created","contact.updated","segment.joined","segment.left","scheduled"]},"event_name":{"type":"string","minLength":1,"maxLength":200},"segment_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"interval_minutes":{"type":"integer","minimum":1,"maximum":9007199254740991}},"required":["type"]},"steps":{"description":"Linear: ordered steps with kind email, webhook or ab_split, beside a trigger. Graph (Resend): steps with key, type (trigger, delay, send_email, wait_for_event, condition, contact_update, contact_delete, add_to_segment) and config, sent together with connections. A graph has exactly one trigger step, at most 150 steps, every step reachable from the trigger and no loops.","minItems":1,"type":"array","items":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}},"connections":{"description":"Graph only: the links between steps, by key. type is default, condition_met / condition_not_met from a condition, or event_received / timeout from a wait_for_event. Sent together with steps.","type":"array","items":{"type":"object","properties":{"from":{"type":"string","minLength":1,"maxLength":100,"description":"The key of the step the connection leaves."},"to":{"type":"string","minLength":1,"maxLength":100,"description":"The key of the step it leads to."},"type":{"description":"default, or condition_met / condition_not_met from a condition, or event_received / timeout from a wait_for_event.","type":"string","enum":["default","condition_met","condition_not_met","timeout","event_received"]}},"required":["from","to"],"additionalProperties":false}}}},"DeleteAutomationsBy_idReply":{"type":"object","properties":{"object":{"type":"string","const":"automation"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"deleted":{"type":"boolean","const":true}},"required":["object","id","deleted"]},"PostAutomationsBy_idStopReply":{"type":"object","properties":{"object":{"type":"string","const":"automation"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"status":{"type":"string","const":"disabled"},"runs_cancelled":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["object","id","status","runs_cancelled"]},"GetAutomationsBy_idVersionsReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"version_number":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"trigger":{"type":"object","properties":{"type":{"type":"string","enum":["custom_event","contact.created","contact.updated","segment.joined","segment.left","scheduled"]},"event_name":{"type":"string","minLength":1,"maxLength":200},"segment_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"interval_minutes":{"type":"integer","minimum":1,"maximum":9007199254740991}},"required":["type"]},"steps":{"type":"array","items":{}},"connections":{"type":"array","items":{"type":"object","properties":{"from":{"type":"string"},"to":{"type":"string"},"type":{"type":"string","enum":["default","condition_met","condition_not_met","timeout","event_received"]}},"required":["from","to","type"]}},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["id","version_number","trigger","steps","connections","created_at"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"GetAutomationsBy_idRunsReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"object":{"type":"string","const":"automation_run"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"automation_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"version_number":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"trigger_type":{"type":"string"},"event_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"contact_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"status":{"type":"string","enum":["running","succeeded","completed","failed","cancelled"]},"started_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"finished_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"completed_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"current_step":{"anyOf":[{"type":"string"},{"type":"null"}]},"waiting_for":{"anyOf":[{"type":"object","properties":{"event":{"anyOf":[{"type":"string"},{"type":"null"}]},"until":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]}},"required":["event","until"]},{"type":"null"}]},"steps":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"kind":{"type":"string"},"key":{"anyOf":[{"type":"string"},{"type":"null"}]},"type":{"type":"string"},"status":{"type":"string","enum":["succeeded","completed","skipped","failed","waiting","pending","running"]},"output":{"anyOf":[{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},{"type":"null"}]},"error":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"object","properties":{"message":{"type":"string"}},"required":["message"]}]},{"type":"null"}]},"started_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"finished_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"completed_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["index","kind","key","type","status","output","error","started_at","finished_at","completed_at","created_at"]}}},"required":["object","id","automation_id","version_number","trigger_type","event_name","contact_id","status","started_at","finished_at","completed_at","created_at","current_step","waiting_for"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"GetAutomationsBy_idRunsBy_run_idReply":{"type":"object","properties":{"object":{"type":"string","const":"automation_run"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"automation_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"version_number":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"trigger_type":{"type":"string"},"event_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"contact_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"status":{"type":"string","enum":["running","succeeded","completed","failed","cancelled"]},"started_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"finished_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"completed_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"current_step":{"anyOf":[{"type":"string"},{"type":"null"}]},"waiting_for":{"anyOf":[{"type":"object","properties":{"event":{"anyOf":[{"type":"string"},{"type":"null"}]},"until":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]}},"required":["event","until"]},{"type":"null"}]},"steps":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"kind":{"type":"string"},"key":{"anyOf":[{"type":"string"},{"type":"null"}]},"type":{"type":"string"},"status":{"type":"string","enum":["succeeded","completed","skipped","failed","waiting","pending","running"]},"output":{"anyOf":[{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},{"type":"null"}]},"error":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"object","properties":{"message":{"type":"string"}},"required":["message"]}]},{"type":"null"}]},"started_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"finished_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"completed_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["index","kind","key","type","status","output","error","started_at","finished_at","completed_at","created_at"]}}},"required":["object","id","automation_id","version_number","trigger_type","event_name","contact_id","status","started_at","finished_at","completed_at","created_at","current_step","waiting_for"]},"GetEventsReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"object":{"type":"string","const":"event"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"schema":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string","enum":["string","number","boolean","date","enum"]}},"strict":{"type":"boolean"},"last_seen_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"updated_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["object","id","name","description","schema","strict","last_seen_at","created_at","updated_at"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"GetEventsBy_idReply":{"type":"object","properties":{"object":{"type":"string","const":"event"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"schema":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string","enum":["string","number","boolean","date","enum"]}},"strict":{"type":"boolean"},"last_seen_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"updated_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["object","id","name","description","schema","strict","last_seen_at","created_at","updated_at"]},"PatchEventsBy_idBody":{"type":"object","properties":{"description":{"anyOf":[{"type":"string","maxLength":2000},{"type":"null"}]},"schema":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string","enum":["string","number","boolean","date","enum"]}},"strict":{"type":"boolean"}}},"DeleteEventsBy_idReply":{"type":"object","properties":{"object":{"type":"string","const":"event"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"deleted":{"type":"boolean"}},"required":["object","id","deleted"]},"PostEventsBody":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200},"contact_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"data":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"schema":{"description":"Declares the event with these typed fields instead of ingesting it. Null declares it with none.","anyOf":[{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string","enum":["string","number","boolean","date","enum"]}},{"type":"null"}]}},"required":["name"]},"PostEventsReply":{"anyOf":[{"type":"object","properties":{"fired":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["fired"]},{"type":"object","properties":{"object":{"type":"string","const":"event"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["object","id"]}]},"PostEventsSendBody":{"type":"object","properties":{"event":{"type":"string","minLength":1,"maxLength":200,"description":"The event name."},"contact_id":{"description":"The contact the event is about.","type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"email":{"description":"The contact, by address, instead of contact_id.","type":"string","maxLength":320,"format":"email","pattern":"^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"},"payload":{"description":"The event fields.","type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}},"required":["event"]},"PostEventsSendReply":{"type":"object","properties":{"object":{"type":"string","const":"event"},"event":{"type":"string"},"fired":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["object","event","fired"]},"GetOauthGrantsReply":{"type":"object","properties":{"object":{"type":"string","const":"list"},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"client_id":{"type":"string"},"client_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"scopes":{"type":"array","items":{"type":"string"}},"created_at":{"type":"string"},"last_used_at":{"anyOf":[{"type":"string"},{"type":"null"}]},"revoked_at":{"anyOf":[{"type":"string"},{"type":"null"}]},"revoked_reason":{"anyOf":[{"type":"string"},{"type":"null"}]},"client":{"type":"object","properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"logo_uri":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["name","logo_uri"]}},"required":["id","client_id","client_name","scopes","created_at","last_used_at","revoked_at","revoked_reason","client"]}},"has_more":{"type":"boolean"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["object","data","has_more","next_cursor"]},"DeleteOauthGrantsBy_idReply":{"type":"object","properties":{"object":{"type":"string","const":"oauth_grant"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"deleted":{"type":"boolean"},"revoked_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["object","id","deleted","revoked_at"]}},"parameters":{"IdempotencyKey":{"name":"Idempotency-Key","in":"header","required":false,"description":"Makes this call safe to retry. Send the same key with the same body and the original response is replayed instead of the work happening twice. Keys are 1-256 characters and are remembered for 7 days. While the first attempt is still running, a second call with that key returns 409 idempotency_in_flight (Resend calls this concurrent_idempotent_requests); the same key with a different body returns 409 idempotency_payload_mismatch (Resend: invalid_idempotent_request). Resend-Idempotency-Key is accepted as the same header.","schema":{"type":"string","minLength":1,"maxLength":256}},"ResendIdempotencyKey":{"name":"Resend-Idempotency-Key","in":"header","required":false,"description":"Alias of Idempotency-Key. Idempotency-Key wins if both are sent.","schema":{"type":"string","minLength":1,"maxLength":256}}},"headers":{"RateLimitLimit":{"description":"Messages this API key may spend in one 60-second window.","schema":{"type":"integer","minimum":0}},"RateLimitRemaining":{"description":"Messages left in the current window.","schema":{"type":"integer","minimum":0}},"RateLimitReset":{"description":"Seconds until the current window resets and the budget refills.","schema":{"type":"integer","minimum":1}},"RetryAfter":{"description":"Seconds to wait before retrying. Present on every refusal the catalog marks retryable — and deliberately absent on one it does not, because a refusal waiting cannot cure must never hand a client a wait hint.","schema":{"type":"integer","minimum":1}}},"responses":{"BadRequest":{"description":"The request is malformed or a field failed validation. Codes: validation_error, invalid_idempotency_key, invalid_cursor, plan_not_purchasable, stripe_signature_invalid, support_upload_rejected, sign_in_check_required.","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"type":"object","properties":{"statusCode":{"type":"integer","description":"The HTTP status. Present on every error so a Resend SDK can read it beside error."},"name":{"type":"string","description":"The Resend error name for this code (x-resend-error-names). A validation detail that says the field is required is missing_required_field. error.code stays our catalogue code."},"message":{"type":"string","description":"The same sentence as error.message."},"error":{"type":"object","properties":{"code":{"type":"string","description":"The catalogue code. Resend error names resolve onto these — see x-resend-error-aliases at the root of this document for the table a find-replace migration follows."},"message":{"type":"string"},"fix":{"type":"string"},"docs_url":{"type":"string"},"retryable":{"type":"boolean","description":"Whether repeating the identical request could succeed later. A 429 that waiting cannot cure (daily quota, trust throttle) is false."},"retry_after_seconds":{"type":"integer","minimum":1,"description":"Seconds to wait before retrying. Present exactly when retryable is true, absent otherwise."}},"required":["code","message","fix","docs_url","retryable"]}},"required":["statusCode","name","message","error"]}}}},"Unauthorized":{"description":"No usable credential was sent. Codes: missing_api_key, session_required, mfa_required.","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"type":"object","properties":{"statusCode":{"type":"integer","description":"The HTTP status. Present on every error so a Resend SDK can read it beside error."},"name":{"type":"string","description":"The Resend error name for this code (x-resend-error-names). A validation detail that says the field is required is missing_required_field. error.code stays our catalogue code."},"message":{"type":"string","description":"The same sentence as error.message."},"error":{"type":"object","properties":{"code":{"type":"string","description":"The catalogue code. Resend error names resolve onto these — see x-resend-error-aliases at the root of this document for the table a find-replace migration follows."},"message":{"type":"string"},"fix":{"type":"string"},"docs_url":{"type":"string"},"retryable":{"type":"boolean","description":"Whether repeating the identical request could succeed later. A 429 that waiting cannot cure (daily quota, trust throttle) is false."},"retry_after_seconds":{"type":"integer","minimum":1,"description":"Seconds to wait before retrying. Present exactly when retryable is true, absent otherwise."}},"required":["code","message","fix","docs_url","retryable"]}},"required":["statusCode","name","message","error"]}}}},"PaymentRequired":{"description":"A budget, quota or plan limit would be exceeded. Codes: overage_cap_reached, daily_limit_reached, agent_budget_exceeded, plan_limit_reached.","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"type":"object","properties":{"statusCode":{"type":"integer","description":"The HTTP status. Present on every error so a Resend SDK can read it beside error."},"name":{"type":"string","description":"The Resend error name for this code (x-resend-error-names). A validation detail that says the field is required is missing_required_field. error.code stays our catalogue code."},"message":{"type":"string","description":"The same sentence as error.message."},"error":{"type":"object","properties":{"code":{"type":"string","description":"The catalogue code. Resend error names resolve onto these — see x-resend-error-aliases at the root of this document for the table a find-replace migration follows."},"message":{"type":"string"},"fix":{"type":"string"},"docs_url":{"type":"string"},"retryable":{"type":"boolean","description":"Whether repeating the identical request could succeed later. A 429 that waiting cannot cure (daily quota, trust throttle) is false."},"retry_after_seconds":{"type":"integer","minimum":1,"description":"Seconds to wait before retrying. Present exactly when retryable is true, absent otherwise."}},"required":["code","message","fix","docs_url","retryable"]}},"required":["statusCode","name","message","error"]}}}},"Forbidden":{"description":"The credential may not do this, or the account or key is stopped. Codes: sending_domain_blocked, young_domain_held, domain_sending_disabled, domain_not_verified, onboarding_recipient_not_a_member, onboarding_sender_unavailable, account_suspended, account_sandboxed, human_action_required, csrf_origin_rejected, charge_not_this_account, invalid_api_key, restricted_api_key, insufficient_role, invite_email_mismatch, domain_scope_violation, dedicated_ip_assigned_by_us, approval_required, staff_review_required, trust_paused, kill_switch_active.","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"type":"object","properties":{"statusCode":{"type":"integer","description":"The HTTP status. Present on every error so a Resend SDK can read it beside error."},"name":{"type":"string","description":"The Resend error name for this code (x-resend-error-names). A validation detail that says the field is required is missing_required_field. error.code stays our catalogue code."},"message":{"type":"string","description":"The same sentence as error.message."},"error":{"type":"object","properties":{"code":{"type":"string","description":"The catalogue code. Resend error names resolve onto these — see x-resend-error-aliases at the root of this document for the table a find-replace migration follows."},"message":{"type":"string"},"fix":{"type":"string"},"docs_url":{"type":"string"},"retryable":{"type":"boolean","description":"Whether repeating the identical request could succeed later. A 429 that waiting cannot cure (daily quota, trust throttle) is false."},"retry_after_seconds":{"type":"integer","minimum":1,"description":"Seconds to wait before retrying. Present exactly when retryable is true, absent otherwise."}},"required":["code","message","fix","docs_url","retryable"]}},"required":["statusCode","name","message","error"]}}}},"NotFound":{"description":"Nothing with this id exists on the account. Codes: billing_customer_missing, not_found, session_expired, support_ticket_not_found.","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"type":"object","properties":{"statusCode":{"type":"integer","description":"The HTTP status. Present on every error so a Resend SDK can read it beside error."},"name":{"type":"string","description":"The Resend error name for this code (x-resend-error-names). A validation detail that says the field is required is missing_required_field. error.code stays our catalogue code."},"message":{"type":"string","description":"The same sentence as error.message."},"error":{"type":"object","properties":{"code":{"type":"string","description":"The catalogue code. Resend error names resolve onto these — see x-resend-error-aliases at the root of this document for the table a find-replace migration follows."},"message":{"type":"string"},"fix":{"type":"string"},"docs_url":{"type":"string"},"retryable":{"type":"boolean","description":"Whether repeating the identical request could succeed later. A 429 that waiting cannot cure (daily quota, trust throttle) is false."},"retry_after_seconds":{"type":"integer","minimum":1,"description":"Seconds to wait before retrying. Present exactly when retryable is true, absent otherwise."}},"required":["code","message","fix","docs_url","retryable"]}},"required":["statusCode","name","message","error"]}}}},"MethodNotAllowed":{"description":"This method is not accepted on this path. Codes: method_not_allowed.","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"type":"object","properties":{"statusCode":{"type":"integer","description":"The HTTP status. Present on every error so a Resend SDK can read it beside error."},"name":{"type":"string","description":"The Resend error name for this code (x-resend-error-names). A validation detail that says the field is required is missing_required_field. error.code stays our catalogue code."},"message":{"type":"string","description":"The same sentence as error.message."},"error":{"type":"object","properties":{"code":{"type":"string","description":"The catalogue code. Resend error names resolve onto these — see x-resend-error-aliases at the root of this document for the table a find-replace migration follows."},"message":{"type":"string"},"fix":{"type":"string"},"docs_url":{"type":"string"},"retryable":{"type":"boolean","description":"Whether repeating the identical request could succeed later. A 429 that waiting cannot cure (daily quota, trust throttle) is false."},"retry_after_seconds":{"type":"integer","minimum":1,"description":"Seconds to wait before retrying. Present exactly when retryable is true, absent otherwise."}},"required":["code","message","fix","docs_url","retryable"]}},"required":["statusCode","name","message","error"]}}}},"Conflict":{"description":"The request conflicts with the current state. Codes: domain_already_exists, template_name_taken, template_alias_taken, template_in_use, segment_in_use, contact_resubscribe_required, email_still_scheduled, domain_verified_elsewhere, domain_not_claimable, return_path_subdomain_in_use, overage_not_on_plan, term_not_on_sale, subscription_active, portal_change_unavailable, already_in_account, idempotency_in_flight, idempotency_payload_mismatch, approval_expired, support_closed, support_reopen_expired, support_merge_conflict, support_reply_too_soon.","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"},"retry-after":{"$ref":"#/components/headers/RetryAfter"}},"content":{"application/json":{"schema":{"type":"object","properties":{"statusCode":{"type":"integer","description":"The HTTP status. Present on every error so a Resend SDK can read it beside error."},"name":{"type":"string","description":"The Resend error name for this code (x-resend-error-names). A validation detail that says the field is required is missing_required_field. error.code stays our catalogue code."},"message":{"type":"string","description":"The same sentence as error.message."},"error":{"type":"object","properties":{"code":{"type":"string","description":"The catalogue code. Resend error names resolve onto these — see x-resend-error-aliases at the root of this document for the table a find-replace migration follows."},"message":{"type":"string"},"fix":{"type":"string"},"docs_url":{"type":"string"},"retryable":{"type":"boolean","description":"Whether repeating the identical request could succeed later. A 429 that waiting cannot cure (daily quota, trust throttle) is false."},"retry_after_seconds":{"type":"integer","minimum":1,"description":"Seconds to wait before retrying. Present exactly when retryable is true, absent otherwise."}},"required":["code","message","fix","docs_url","retryable"]}},"required":["statusCode","name","message","error"]}}}},"Gone":{"description":"This resource is no longer available. Codes: support_attachment_expired.","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"type":"object","properties":{"statusCode":{"type":"integer","description":"The HTTP status. Present on every error so a Resend SDK can read it beside error."},"name":{"type":"string","description":"The Resend error name for this code (x-resend-error-names). A validation detail that says the field is required is missing_required_field. error.code stays our catalogue code."},"message":{"type":"string","description":"The same sentence as error.message."},"error":{"type":"object","properties":{"code":{"type":"string","description":"The catalogue code. Resend error names resolve onto these — see x-resend-error-aliases at the root of this document for the table a find-replace migration follows."},"message":{"type":"string"},"fix":{"type":"string"},"docs_url":{"type":"string"},"retryable":{"type":"boolean","description":"Whether repeating the identical request could succeed later. A 429 that waiting cannot cure (daily quota, trust throttle) is false."},"retry_after_seconds":{"type":"integer","minimum":1,"description":"Seconds to wait before retrying. Present exactly when retryable is true, absent otherwise."}},"required":["code","message","fix","docs_url","retryable"]}},"required":["statusCode","name","message","error"]}}}},"PayloadTooLarge":{"description":"The request body is larger than this operation accepts. Codes: payload_too_large, support_upload_too_large.","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"type":"object","properties":{"statusCode":{"type":"integer","description":"The HTTP status. Present on every error so a Resend SDK can read it beside error."},"name":{"type":"string","description":"The Resend error name for this code (x-resend-error-names). A validation detail that says the field is required is missing_required_field. error.code stays our catalogue code."},"message":{"type":"string","description":"The same sentence as error.message."},"error":{"type":"object","properties":{"code":{"type":"string","description":"The catalogue code. Resend error names resolve onto these — see x-resend-error-aliases at the root of this document for the table a find-replace migration follows."},"message":{"type":"string"},"fix":{"type":"string"},"docs_url":{"type":"string"},"retryable":{"type":"boolean","description":"Whether repeating the identical request could succeed later. A 429 that waiting cannot cure (daily quota, trust throttle) is false."},"retry_after_seconds":{"type":"integer","minimum":1,"description":"Seconds to wait before retrying. Present exactly when retryable is true, absent otherwise."}},"required":["code","message","fix","docs_url","retryable"]}},"required":["statusCode","name","message","error"]}}}},"UnsupportedMediaType":{"description":"The request body is not JSON. Codes: unsupported_media_type.","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"type":"object","properties":{"statusCode":{"type":"integer","description":"The HTTP status. Present on every error so a Resend SDK can read it beside error."},"name":{"type":"string","description":"The Resend error name for this code (x-resend-error-names). A validation detail that says the field is required is missing_required_field. error.code stays our catalogue code."},"message":{"type":"string","description":"The same sentence as error.message."},"error":{"type":"object","properties":{"code":{"type":"string","description":"The catalogue code. Resend error names resolve onto these — see x-resend-error-aliases at the root of this document for the table a find-replace migration follows."},"message":{"type":"string"},"fix":{"type":"string"},"docs_url":{"type":"string"},"retryable":{"type":"boolean","description":"Whether repeating the identical request could succeed later. A 429 that waiting cannot cure (daily quota, trust throttle) is false."},"retry_after_seconds":{"type":"integer","minimum":1,"description":"Seconds to wait before retrying. Present exactly when retryable is true, absent otherwise."}},"required":["code","message","fix","docs_url","retryable"]}},"required":["statusCode","name","message","error"]}}}},"UnprocessableEntity":{"description":"A field is well formed but was refused. Codes: missing_required_field, invalid_from_address, invalid_parameter, invalid_attachment, invalid_region, tracking_subdomain_unverified, tracking_subdomain_cannot_be_removed, domain_field_immutable, open_tracking_on_transactional, header_replaced, html_clipped_by_gmail, link_domain_listed, domain_blocklisted, mailbox_provider_domain, onboarding_shape_refused, dkim_key_mismatch, domain_check_window_expired, spf_conflict, spf_lookup_limit, review_sandbox_recipient_only, suppressed_recipient, content_refused, recipient_blocklisted, last_owner_required, seat_limit_reached, invite_not_valid, key_budget_exceeds_plan, domain_limit_reached, webhook_endpoint_limit_reached.","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"type":"object","properties":{"statusCode":{"type":"integer","description":"The HTTP status. Present on every error so a Resend SDK can read it beside error."},"name":{"type":"string","description":"The Resend error name for this code (x-resend-error-names). A validation detail that says the field is required is missing_required_field. error.code stays our catalogue code."},"message":{"type":"string","description":"The same sentence as error.message."},"error":{"type":"object","properties":{"code":{"type":"string","description":"The catalogue code. Resend error names resolve onto these — see x-resend-error-aliases at the root of this document for the table a find-replace migration follows."},"message":{"type":"string"},"fix":{"type":"string"},"docs_url":{"type":"string"},"retryable":{"type":"boolean","description":"Whether repeating the identical request could succeed later. A 429 that waiting cannot cure (daily quota, trust throttle) is false."},"retry_after_seconds":{"type":"integer","minimum":1,"description":"Seconds to wait before retrying. Present exactly when retryable is true, absent otherwise."}},"required":["code","message","fix","docs_url","retryable"]}},"required":["statusCode","name","message","error"]}}}},"TooManyRequests":{"description":"A rate, quota or ramp ceiling was reached. Codes: onboarding_daily_cap_reached, trust_throttled, invite_limit_reached, rate_ceiling_exceeded, daily_quota_exceeded, monthly_quota_exceeded, rate_limit_exceeded, support_rate_limited.","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"},"retry-after":{"$ref":"#/components/headers/RetryAfter"}},"content":{"application/json":{"schema":{"type":"object","properties":{"statusCode":{"type":"integer","description":"The HTTP status. Present on every error so a Resend SDK can read it beside error."},"name":{"type":"string","description":"The Resend error name for this code (x-resend-error-names). A validation detail that says the field is required is missing_required_field. error.code stays our catalogue code."},"message":{"type":"string","description":"The same sentence as error.message."},"error":{"type":"object","properties":{"code":{"type":"string","description":"The catalogue code. Resend error names resolve onto these — see x-resend-error-aliases at the root of this document for the table a find-replace migration follows."},"message":{"type":"string"},"fix":{"type":"string"},"docs_url":{"type":"string"},"retryable":{"type":"boolean","description":"Whether repeating the identical request could succeed later. A 429 that waiting cannot cure (daily quota, trust throttle) is false."},"retry_after_seconds":{"type":"integer","minimum":1,"description":"Seconds to wait before retrying. Present exactly when retryable is true, absent otherwise."}},"required":["code","message","fix","docs_url","retryable"]}},"required":["statusCode","name","message","error"]}}}},"InternalServerError":{"description":"Something failed on our side. Codes: internal_server_error.","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"type":"object","properties":{"statusCode":{"type":"integer","description":"The HTTP status. Present on every error so a Resend SDK can read it beside error."},"name":{"type":"string","description":"The Resend error name for this code (x-resend-error-names). A validation detail that says the field is required is missing_required_field. error.code stays our catalogue code."},"message":{"type":"string","description":"The same sentence as error.message."},"error":{"type":"object","properties":{"code":{"type":"string","description":"The catalogue code. Resend error names resolve onto these — see x-resend-error-aliases at the root of this document for the table a find-replace migration follows."},"message":{"type":"string"},"fix":{"type":"string"},"docs_url":{"type":"string"},"retryable":{"type":"boolean","description":"Whether repeating the identical request could succeed later. A 429 that waiting cannot cure (daily quota, trust throttle) is false."},"retry_after_seconds":{"type":"integer","minimum":1,"description":"Seconds to wait before retrying. Present exactly when retryable is true, absent otherwise."}},"required":["code","message","fix","docs_url","retryable"]}},"required":["statusCode","name","message","error"]}}}},"ServiceUnavailable":{"description":"A dependency is unavailable for a moment. Codes: dns_unreachable, service_unavailable, billing_not_configured, rate_limiter_unavailable, sending_paused_everywhere, support_draft_unavailable.","headers":{"ratelimit-limit":{"$ref":"#/components/headers/RateLimitLimit"},"ratelimit-remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"ratelimit-reset":{"$ref":"#/components/headers/RateLimitReset"},"retry-after":{"$ref":"#/components/headers/RetryAfter"}},"content":{"application/json":{"schema":{"type":"object","properties":{"statusCode":{"type":"integer","description":"The HTTP status. Present on every error so a Resend SDK can read it beside error."},"name":{"type":"string","description":"The Resend error name for this code (x-resend-error-names). A validation detail that says the field is required is missing_required_field. error.code stays our catalogue code."},"message":{"type":"string","description":"The same sentence as error.message."},"error":{"type":"object","properties":{"code":{"type":"string","description":"The catalogue code. Resend error names resolve onto these — see x-resend-error-aliases at the root of this document for the table a find-replace migration follows."},"message":{"type":"string"},"fix":{"type":"string"},"docs_url":{"type":"string"},"retryable":{"type":"boolean","description":"Whether repeating the identical request could succeed later. A 429 that waiting cannot cure (daily quota, trust throttle) is false."},"retry_after_seconds":{"type":"integer","minimum":1,"description":"Seconds to wait before retrying. Present exactly when retryable is true, absent otherwise."}},"required":["code","message","fix","docs_url","retryable"]}},"required":["statusCode","name","message","error"]}}}}}}}