{"openapi":"3.1.0","info":{"title":"MailToAPI","version":"0.1.0","description":"Create email inboxes that extract flat JSON and POST it to your API."},"servers":[{"url":"https://mailtoapi.app"}],"components":{"securitySchemes":{"bearerApiKey":{"type":"http","scheme":"bearer"}}},"security":[{"bearerApiKey":[]}],"paths":{"/api/auth/magic-link":{"post":{"summary":"Send a magic-link login email","security":[],"responses":{"200":{"description":"Magic link sent"}}}},"/api/auth/verify":{"post":{"summary":"Exchange a magic-link token for a dashboard API key","security":[],"responses":{"200":{"description":"Session API key"},"401":{"description":"Invalid or expired token"}}}},"/api/v1/inboxes":{"get":{"summary":"List inboxes","responses":{"200":{"description":"Inbox list"}}},"post":{"summary":"Create an inbox","responses":{"201":{"description":"Inbox created under in.mailtoapi.app"}}}},"/api/v1/api-keys":{"get":{"summary":"List API keys created for agents and operators","responses":{"200":{"description":"API key list"}}},"post":{"summary":"Create a new API key","responses":{"201":{"description":"API key created"}}}},"/api/v1/api-keys/{id}":{"delete":{"summary":"Delete an API key","responses":{"204":{"description":"Deleted"},"404":{"description":"Not found"}}}},"/api/v1/inboxes/{id}":{"get":{"summary":"Get an inbox","responses":{"200":{"description":"Inbox"},"404":{"description":"Not found"}}},"patch":{"summary":"Update an inbox","responses":{"200":{"description":"Inbox"},"404":{"description":"Not found"}}},"delete":{"summary":"Delete an inbox","responses":{"204":{"description":"Deleted"},"404":{"description":"Not found"}}}},"/api/v1/runs":{"get":{"summary":"List runs","responses":{"200":{"description":"Run list"}}}},"/api/v1/runs/{id}":{"get":{"summary":"Get a run","responses":{"200":{"description":"Run"},"404":{"description":"Not found"}}}},"/api/v1/runs/{id}/replay":{"post":{"summary":"Manually replay a failed or held run","responses":{"200":{"description":"Updated run"},"409":{"description":"Already delivered"}}}},"/api/v1/preview":{"post":{"summary":"Preview extraction without API delivery or credit usage","responses":{"200":{"description":"Extracted JSON preview"}}}},"/api/v1/billing/checkout":{"post":{"summary":"Create a Stripe Checkout session for subscription or top-up","responses":{"200":{"description":"Checkout URL"}}}},"/api/v1/billing/portal":{"post":{"summary":"Create a Stripe customer portal session","responses":{"200":{"description":"Portal URL"}}}}}}