# VerifiedInbox API Reference (v1)

> Everything you can do on verifiedinbox.ai, you can do through the REST API. Free checks and anonymous drafts work without an account.

## Base URL & rules

- **Base URL:** `https://api.verifiedinbox.ai/v1`
- **Content type:** `application/json` (UTF-8).
- **Timestamps & money:** RFC 3339 UTC strings (`2026-10-31T12:00:00Z`); money in integer USD cents (`149900` = $1,499.00).
- **Versioning:** `v1` only receives backward-compatible additions.
- **OpenAPI 3.1 contract:** `/openapi.json`

## Security & authentication

| Access level | Credential | Header |
|---|---|---|
| Public | None required | — |
| Guest | Guest token (from `startApplication`) | `VI-Guest-Token: vi_guest_…` or `Authorization: Bearer vi_guest_…` |
| Account / Paid | API key or OAuth token | `Authorization: Bearer vi_live_…` (or `vi_test_…`) |

## Operations

### Checks

- [Check Domain](https://verifiedinbox.ai/docs/reference/api/v1/check-domain.md) (`POST /v1/checks/domain`): Quick domain eligibility check
- [Check Email Auth](https://verifiedinbox.ai/docs/reference/api/v1/check-email-auth.md) (`POST /v1/checks/email-auth`): Full SPF/DKIM/DMARC/BIMI inspection
- [List Blocked Providers](https://verifiedinbox.ai/docs/reference/api/v1/list-blocked-providers.md) (`GET /v1/providers/blocked`): Shared mailbox domains that can't be used

### Applications

- [Create Application](https://verifiedinbox.ai/docs/reference/api/v1/create-application.md) (`POST /v1/applications`): Start (or resume) a verification
- [Get Application](https://verifiedinbox.ai/docs/reference/api/v1/get-application.md) (`GET /v1/applications/{application_id}`): Get a verification
- [List Applications](https://verifiedinbox.ai/docs/reference/api/v1/list-applications.md) (`GET /v1/applications`): List my verifications
- [Get Next Steps](https://verifiedinbox.ai/docs/reference/api/v1/get-next-steps.md) (`GET /v1/applications/{application_id}/next-steps`): Current step and next actions
- [Complete Step](https://verifiedinbox.ai/docs/reference/api/v1/complete-step.md) (`POST /v1/applications/{application_id}/steps/{step}/complete`): Complete a wizard step and move on
- [Update Application](https://verifiedinbox.ai/docs/reference/api/v1/update-application.md) (`PATCH /v1/applications/{application_id}`): Choose product / contact email
- [Refresh Application](https://verifiedinbox.ai/docs/reference/api/v1/refresh-application.md) (`POST /v1/applications/{application_id}/refresh`): Re-run checks now
- [Create Resume Link](https://verifiedinbox.ai/docs/reference/api/v1/create-resume-link.md) (`POST /v1/applications/{application_id}/resume-links`): One-time link to continue in a browser
- [List Events](https://verifiedinbox.ai/docs/reference/api/v1/list-events.md) (`GET /v1/applications/{application_id}/events`): Timeline of the verification
- [Archive Application](https://verifiedinbox.ai/docs/reference/api/v1/archive-application.md) (`POST /v1/applications/{application_id}/archive`): Archive (unpaid only)
- [Claim Application](https://verifiedinbox.ai/docs/reference/api/v1/claim-application.md) (`POST /v1/applications/{application_id}/claim`): Move a guest draft into the account

### Email security

- [Get Email Security](https://verifiedinbox.ai/docs/reference/api/v1/get-email-security.md) (`GET /v1/applications/{application_id}/email-security`): Latest email-security report + DMARC rollout plan
- [Recheck Email Security](https://verifiedinbox.ai/docs/reference/api/v1/recheck-email-security.md) (`POST /v1/applications/{application_id}/email-security/check`): Re-check email security now
- [Set Email Usage](https://verifiedinbox.ai/docs/reference/api/v1/set-email-usage.md) (`PUT /v1/applications/{application_id}/email-usage`): How email is used on the domain
- [Verify DKIM Selectors](https://verifiedinbox.ai/docs/reference/api/v1/verify-dkim-selectors.md) (`POST /v1/applications/{application_id}/dkim-selectors`): Verify DKIM selectors you supply
- [Set DMARC Reports](https://verifiedinbox.ai/docs/reference/api/v1/set-dmarc-reports.md) (`PUT /v1/applications/{application_id}/dmarc-reports`): Where daily DMARC reports go

### Logo

- [Submit Logo](https://verifiedinbox.ai/docs/reference/api/v1/submit-logo.md) (`PUT /v1/applications/{application_id}/logo`): Submit the logo
- [Get Logo](https://verifiedinbox.ai/docs/reference/api/v1/get-logo.md) (`GET /v1/applications/{application_id}/logo`): Logo status, analysis and changes
- [List Logo Candidates](https://verifiedinbox.ai/docs/reference/api/v1/list-logo-candidates.md) (`GET /v1/applications/{application_id}/logo-candidates`): Logos found on the website
- [Get Logo Converted](https://verifiedinbox.ai/docs/reference/api/v1/get-logo-converted.md) (`GET /v1/applications/{application_id}/logo/converted.svg`): Inbox-ready SVG Tiny P/S file
- [Get Logo Original](https://verifiedinbox.ai/docs/reference/api/v1/get-logo-original.md) (`GET /v1/applications/{application_id}/logo/original.svg`): Original logo file
- [Get Logo Preview](https://verifiedinbox.ai/docs/reference/api/v1/get-logo-preview.md) (`GET /v1/applications/{application_id}/logo/preview.png`): Rendered PNG preview
- [Approve Logo](https://verifiedinbox.ai/docs/reference/api/v1/approve-logo.md) (`POST /v1/applications/{application_id}/logo/approve`): Approve the reviewed inbox-ready logo

### Trademark

- [Get Trademark](https://verifiedinbox.ai/docs/reference/api/v1/get-trademark.md) (`GET /v1/applications/{application_id}/trademark`): Trademark result
- [Search Trademark](https://verifiedinbox.ai/docs/reference/api/v1/search-trademark.md) (`POST /v1/applications/{application_id}/trademark/search`): (Re)start the USPTO search
- [Claim Trademark](https://verifiedinbox.ai/docs/reference/api/v1/claim-trademark.md) (`POST /v1/applications/{application_id}/trademark/claim`): Verify a specific USPTO number

### Eligibility

- [Get Eligibility](https://verifiedinbox.ai/docs/reference/api/v1/get-eligibility.md) (`GET /v1/applications/{application_id}/eligibility`): VMC / CMC / not-yet-eligible with evidence
- [Get Estimate](https://verifiedinbox.ai/docs/reference/api/v1/get-estimate.md) (`GET /v1/applications/{application_id}/estimate`): Itemized yearly price
- [Watch Eligibility](https://verifiedinbox.ai/docs/reference/api/v1/watch-eligibility.md) (`POST /v1/applications/{application_id}/eligibility/watch`): Email me when this domain qualifies

### Guest sessions

- [Create Guest Session](https://verifiedinbox.ai/docs/reference/api/v1/create-guest-session.md) (`POST /v1/guest-sessions`): Create a guest credential
- [Resume](https://verifiedinbox.ai/docs/reference/api/v1/resume.md) (`POST /v1/resume`): Exchange a one-time resume token
- [Revoke Guest Session](https://verifiedinbox.ai/docs/reference/api/v1/revoke-guest-session.md) (`DELETE /v1/guest-sessions/current`): Revoke the current guest session

### Support

- [Create Support Request](https://verifiedinbox.ai/docs/reference/api/v1/create-support-request.md) (`POST /v1/support`): Contact a human, feedback, feature request, partnership

### Glossary

- [List Glossary](https://verifiedinbox.ai/docs/reference/api/v1/list-glossary.md) (`GET /v1/glossary`): All glossary terms
- [Get Glossary Term](https://verifiedinbox.ai/docs/reference/api/v1/get-glossary-term.md) (`GET /v1/glossary/{term}`): One glossary term

### Hosting

- [Get Hosted Asset](https://verifiedinbox.ai/docs/reference/api/v1/get-hosted-asset.md) (`GET /bimi/{domain}/{file}`): Hosted BIMI logo / certificate
- [Get Hosted Test Asset](https://verifiedinbox.ai/docs/reference/api/v1/get-hosted-test-asset.md) (`GET /bimi/test/{domain}/{file}`): Hosted BIMI assets (test mode)

### Checkout

- [Create Checkout](https://verifiedinbox.ai/docs/reference/api/v1/create-checkout.md) (`POST /v1/applications/{application_id}/checkout`): Create a Stripe checkout link

### Business

- [Get Business](https://verifiedinbox.ai/docs/reference/api/v1/get-business.md) (`GET /v1/applications/{application_id}/business`): Company verification status
- [Submit Business](https://verifiedinbox.ai/docs/reference/api/v1/submit-business.md) (`PUT /v1/applications/{application_id}/business`): Submit legal company details

### DNS

- [Verify DNS](https://verifiedinbox.ai/docs/reference/api/v1/verify-dns.md) (`POST /v1/applications/{application_id}/dns/verify`): Re-check DNS now
- [Get DNS Records](https://verifiedinbox.ai/docs/reference/api/v1/get-dns-records.md) (`GET /v1/applications/{application_id}/dns`): Every DNS record to add, with live status

### Certificate

- [Get Certificate](https://verifiedinbox.ai/docs/reference/api/v1/get-certificate.md) (`GET /v1/applications/{application_id}/certificate`): Certificate status, prerequisites, final check and history
- [Run Final Check](https://verifiedinbox.ai/docs/reference/api/v1/run-final-check.md) (`POST /v1/applications/{application_id}/certificate/check`): Re-check everything the issuer will verify
- [Order Certificate](https://verifiedinbox.ai/docs/reference/api/v1/order-certificate.md) (`POST /v1/applications/{application_id}/certificate/order`): Submit the order (normally automatic)
- [Renew Certificate](https://verifiedinbox.ai/docs/reference/api/v1/renew-certificate.md) (`POST /v1/applications/{application_id}/certificate/renew`): Renew early
- [Reissue Certificate](https://verifiedinbox.ai/docs/reference/api/v1/reissue-certificate.md) (`POST /v1/applications/{application_id}/certificate/reissue`): Reissue the certificate
- [Revoke Certificate](https://verifiedinbox.ai/docs/reference/api/v1/revoke-certificate.md) (`POST /v1/applications/{application_id}/certificate/revoke`): Revoke permanently

### Test messages

- [Create Test Message](https://verifiedinbox.ai/docs/reference/api/v1/create-test-message.md) (`POST /v1/applications/{application_id}/test-messages`): Get an address to send a real test email to
- [Get Test Message](https://verifiedinbox.ai/docs/reference/api/v1/get-test-message.md) (`GET /v1/applications/{application_id}/test-messages/{test_message_id}`): Authentication results of the test email

### Go live

- [Get Go Live](https://verifiedinbox.ai/docs/reference/api/v1/get-go-live.md) (`GET /v1/applications/{application_id}/go-live`): BIMI publication, test email, display, monitoring, renewal
- [Confirm Inbox Display](https://verifiedinbox.ai/docs/reference/api/v1/confirm-inbox-display.md) (`POST /v1/applications/{application_id}/inbox-display`): Record that the logo was seen in a mailbox

### Account

- [Get Me](https://verifiedinbox.ai/docs/reference/api/v1/get-me.md) (`GET /v1/me`): Who am I (works anonymously too)
- [List Organizations](https://verifiedinbox.ai/docs/reference/api/v1/list-organizations.md) (`GET /v1/organizations`): My organizations
- [Create Organization](https://verifiedinbox.ai/docs/reference/api/v1/create-organization.md) (`POST /v1/organizations`): Create an organization
- [Get Organization](https://verifiedinbox.ai/docs/reference/api/v1/get-organization.md) (`GET /v1/organizations/{organization_id}`): One organization
- [List Members](https://verifiedinbox.ai/docs/reference/api/v1/list-members.md) (`GET /v1/organizations/{organization_id}/members`): Organization members
- [List API Keys](https://verifiedinbox.ai/docs/reference/api/v1/list-api-keys.md) (`GET /v1/api-keys`): API keys
- [Create API Key](https://verifiedinbox.ai/docs/reference/api/v1/create-api-key.md) (`POST /v1/api-keys`): Create an API key (web session)
- [Revoke API Key](https://verifiedinbox.ai/docs/reference/api/v1/revoke-api-key.md) (`DELETE /v1/api-keys/{api_key_id}`): Revoke an API key
- [List Orders](https://verifiedinbox.ai/docs/reference/api/v1/list-orders.md) (`GET /v1/orders`): Orders and payments
- [Get Order](https://verifiedinbox.ai/docs/reference/api/v1/get-order.md) (`GET /v1/orders/{order_id}`): One order
- [Create Billing Portal](https://verifiedinbox.ai/docs/reference/api/v1/create-billing-portal.md) (`POST /v1/billing/portal`): Stripe billing portal link
- [List Notifications](https://verifiedinbox.ai/docs/reference/api/v1/list-notifications.md) (`GET /v1/notifications`): Notification log
- [Rename Organization](https://verifiedinbox.ai/docs/reference/api/v1/rename-organization.md) (`PATCH /v1/organizations/{organization_id}`): Rename an organization
- [Set Environment](https://verifiedinbox.ai/docs/reference/api/v1/set-environment.md) (`POST /v1/me/environment`): Switch live/test mode (web session)
- [Set Organization](https://verifiedinbox.ai/docs/reference/api/v1/set-organization.md) (`POST /v1/me/organization`): Switch organization (web session)

### Test mode

- [Complete Mock Checkout](https://verifiedinbox.ai/docs/reference/api/v1/complete-mock-checkout.md) (`POST /v1/dev/mock-checkout/{order_id}/complete`): Simulate payment of a mock checkout

### Meta

- [Get Open API](https://verifiedinbox.ai/docs/reference/api/v1/get-open-api.md) (`GET /openapi.json`): This OpenAPI document
- [Get Health](https://verifiedinbox.ai/docs/reference/api/v1/get-health.md) (`GET /health`): Liveness check
- [Get Meta](https://verifiedinbox.ai/docs/reference/api/v1/get-meta.md) (`GET /v1/meta`): Pricing, steps and live/mocked integrations
- [Get Ready](https://verifiedinbox.ai/docs/reference/api/v1/get-ready.md) (`GET /ready`): Readiness check

### MCP

- [MCP](https://verifiedinbox.ai/docs/reference/api/v1/mcp.md) (`POST /mcp`): MCP endpoint (Streamable HTTP, JSON responses)
- [Get Protected Resource Metadata](https://verifiedinbox.ai/docs/reference/api/v1/get-protected-resource-metadata.md) (`GET /.well-known/oauth-protected-resource`): OAuth protected-resource metadata (RFC 9728)
- [Get Protected Resource Metadata MCP](https://verifiedinbox.ai/docs/reference/api/v1/get-protected-resource-metadata-mcp.md) (`GET /.well-known/oauth-protected-resource/mcp`): OAuth protected-resource metadata for /mcp
