{"openapi":"3.1.0","info":{"title":"SiteShot Agent API","version":"1.0.0","description":"ChatGPT Actions-ready API for SiteShot plan discovery, email-gated signup, usage status, subscription checkout, and explicit screenshot API key reveal."},"servers":[{"url":"http://www.site-shot.com"}],"paths":{"/api/v1/agent/plans/":{"get":{"operationId":"listPlans","summary":"List public SiteShot subscription plans","responses":{"200":{"description":"Public plans"}}}},"/api/v1/agent/signup/":{"post":{"operationId":"startEmailGatedSignup","summary":"Create an inactive account and send a setup email","x-openai-isConsequential":true,"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentSignupRequest"}}}},"responses":{"202":{"description":"Setup email queued"}}}},"/api/v1/agent/profile/":{"get":{"operationId":"getProfile","summary":"Read the authorized SiteShot account profile without exposing the full API key","security":[{"SiteShotOAuth":["account:read"]}],"responses":{"200":{"description":"Account profile"}}}},"/api/v1/agent/usage/":{"get":{"operationId":"getUsageSummary","summary":"Read current screenshot quota and usage summary","security":[{"SiteShotOAuth":["usage:read"]}],"responses":{"200":{"description":"Usage summary"}}}},"/api/v1/agent/subscription/":{"get":{"operationId":"getSubscriptionStatus","summary":"Read active subscription status","security":[{"SiteShotOAuth":["account:read"]}],"responses":{"200":{"description":"Subscription status"}}}},"/api/v1/agent/checkout-sessions/":{"post":{"operationId":"createCheckoutSession","summary":"Create a Stripe Checkout Session for a public tariff","x-openai-isConsequential":true,"security":[{"SiteShotOAuth":["billing:checkout"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckoutSessionRequest"}}}},"responses":{"201":{"description":"Checkout URL created"}}}},"/api/v1/agent/reveal-api-key/":{"post":{"operationId":"revealApiKey","summary":"Explicitly reveal the full screenshot API key and create an audit log entry","x-openai-isConsequential":true,"security":[{"SiteShotOAuth":["api_key:read"]}],"responses":{"200":{"description":"API key revealed with warning"}}}}},"components":{"securitySchemes":{"SiteShotOAuth":{"type":"oauth2","flows":{"authorizationCode":{"authorizationUrl":"http://www.site-shot.com/o/authorize/","tokenUrl":"http://www.site-shot.com/o/token/","scopes":{"account:read":"Read account profile and subscription status.","usage:read":"Read screenshot usage and quota summary.","billing:checkout":"Create Stripe Checkout sessions.","api_key:read":"Reveal the full screenshot API key after explicit authorization."}}}}},"schemas":{"AgentSignupRequest":{"type":"object","required":["email","first_name","last_name"],"properties":{"email":{"type":"string","format":"email"},"first_name":{"type":"string","maxLength":30},"last_name":{"type":"string","maxLength":30}}},"CheckoutSessionRequest":{"type":"object","required":["tariff_id"],"properties":{"tariff_id":{"type":"integer","minimum":1}}}}}}