{ "openapi": "3.1.0", "info": { "title": "Stripe Payment Integration Service", "description": "A FastAPI service for handling Stripe payments", "version": "1.0.0" }, "paths": { "/": { "get": { "summary": "Root", "operationId": "root__get", "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } } } } }, "/health": { "get": { "summary": "Health Check", "operationId": "health_check_health_get", "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } } } } }, "/api/v1/payments/create-payment-intent": { "post": { "tags": ["payments"], "summary": "Create Payment Intent", "operationId": "create_payment_intent_api_v1_payments_create_payment_intent_post", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreatePaymentIntentRequest" } } }, "required": true }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PaymentIntentResponse" } } } } } } } }, "components": { "schemas": { "CreatePaymentIntentRequest": { "properties": { "amount": { "type": "integer", "title": "Amount" }, "currency": { "type": "string", "title": "Currency", "default": "usd" }, "customer_email": { "anyOf": [ { "type": "string", "format": "email" }, { "type": "null" } ], "title": "Customer Email" }, "customer_name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Customer Name" }, "description": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Description" }, "metadata": { "anyOf": [ { "type": "object" }, { "type": "null" } ], "title": "Metadata" } }, "type": "object", "required": ["amount"], "title": "CreatePaymentIntentRequest" }, "PaymentIntentResponse": { "properties": { "client_secret": { "type": "string", "title": "Client Secret" }, "payment_intent_id": { "type": "string", "title": "Payment Intent Id" }, "amount": { "type": "integer", "title": "Amount" }, "currency": { "type": "string", "title": "Currency" }, "status": { "type": "string", "title": "Status" } }, "type": "object", "required": ["client_secret", "payment_intent_id", "amount", "currency", "status"], "title": "PaymentIntentResponse" } } } }