{"openapi":"3.0.0","paths":{"/healthz":{"get":{"operationId":"HealthController_liveness","parameters":[],"responses":{"200":{"description":""}},"tags":["Health"]}},"/readyz":{"get":{"operationId":"HealthController_readiness","parameters":[],"responses":{"200":{"description":""}},"tags":["Health"]}},"/v1/payments":{"post":{"operationId":"PaymentsController_create","parameters":[{"name":"idempotency-key","required":true,"in":"header","schema":{"type":"string"}}],"responses":{"201":{"description":""}},"tags":["Payments"]},"get":{"operationId":"PaymentsController_list","parameters":[],"responses":{"200":{"description":""}},"tags":["Payments"]}},"/v1/payments/{id}/capture":{"post":{"operationId":"PaymentsController_capture","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["Payments"]}},"/v1/payments/{id}/void":{"post":{"operationId":"PaymentsController_void","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["Payments"]}},"/v1/payments/{id}/refunds":{"post":{"operationId":"PaymentsController_refund","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"201":{"description":""}},"tags":["Payments"]}},"/v1/payments/{id}":{"get":{"operationId":"PaymentsController_get","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["Payments"]}},"/v1/routing_rules":{"post":{"operationId":"RoutingRulesController_create","parameters":[],"responses":{"201":{"description":""}},"tags":["RoutingRules"]},"get":{"operationId":"RoutingRulesController_list","parameters":[],"responses":{"200":{"description":""}},"tags":["RoutingRules"]}},"/v1/routing_rules/{id}":{"patch":{"operationId":"RoutingRulesController_update","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["RoutingRules"]},"delete":{"operationId":"RoutingRulesController_remove","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["RoutingRules"]}},"/v1/psp_connections":{"get":{"operationId":"PspConnectionsController_list","parameters":[],"responses":{"200":{"description":""}},"tags":["PspConnections"]}},"/v1/psp_connections/{id}":{"patch":{"operationId":"PspConnectionsController_update","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["PspConnections"]}},"/v1/payment_methods":{"post":{"operationId":"PaymentMethodsController_create","parameters":[],"responses":{"201":{"description":""}},"tags":["PaymentMethods"]},"get":{"operationId":"PaymentMethodsController_list","parameters":[{"name":"customer_id","required":true,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["PaymentMethods"]}},"/v1/payment_methods/{id}":{"get":{"operationId":"PaymentMethodsController_get","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["PaymentMethods"]},"delete":{"operationId":"PaymentMethodsController_revoke","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["PaymentMethods"]}},"/v1/customers":{"post":{"operationId":"CustomersController_create","parameters":[],"responses":{"201":{"description":""}},"tags":["Customers"]},"get":{"operationId":"CustomersController_list","parameters":[{"name":"limit","required":true,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["Customers"]}},"/v1/customers/{id}":{"get":{"operationId":"CustomersController_get","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["Customers"]}},"/v1/webhook_endpoints":{"post":{"operationId":"WebhookEndpointsController_create","parameters":[],"responses":{"201":{"description":""}},"tags":["WebhookEndpoints"]},"get":{"operationId":"WebhookEndpointsController_list","parameters":[],"responses":{"200":{"description":""}},"tags":["WebhookEndpoints"]}},"/v1/webhook_deliveries":{"get":{"operationId":"WebhookDeliveriesController_list","parameters":[],"responses":{"200":{"description":""}},"tags":["WebhookDeliveries"]}},"/v1/webhook_deliveries/{id}/retry":{"post":{"operationId":"WebhookDeliveriesController_retry","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"202":{"description":""}},"tags":["WebhookDeliveries"]}},"/webhooks/psp/{connectionId}":{"post":{"operationId":"PspWebhooksController_receive","parameters":[{"name":"connectionId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["PspWebhooks"]}},"/dashboard/v1/auth/login":{"post":{"operationId":"AuthController_login","parameters":[],"responses":{"200":{"description":""}},"tags":["Auth"]}},"/dashboard/v1/auth/logout":{"post":{"operationId":"AuthController_logout","parameters":[],"responses":{"200":{"description":""}},"tags":["Auth"]}},"/dashboard/v1/auth/me":{"get":{"operationId":"AuthController_me","parameters":[],"responses":{"200":{"description":""}},"tags":["Auth"]}},"/dashboard/v1/auth/mfa/setup":{"post":{"operationId":"AuthController_mfaSetup","parameters":[],"responses":{"200":{"description":""}},"tags":["Auth"]}},"/dashboard/v1/auth/mfa/enable":{"post":{"operationId":"AuthController_mfaEnable","parameters":[],"responses":{"200":{"description":""}},"tags":["Auth"]}},"/dashboard/v1/analytics/overview":{"get":{"operationId":"AnalyticsController_overview","parameters":[{"name":"days","required":true,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["Analytics"]}},"/dashboard/v1/api_keys":{"get":{"operationId":"ApiKeysController_list","parameters":[],"responses":{"200":{"description":""}},"tags":["ApiKeys"]},"post":{"operationId":"ApiKeysController_create","parameters":[],"responses":{"201":{"description":""}},"tags":["ApiKeys"]}},"/dashboard/v1/api_keys/{id}/revoke":{"post":{"operationId":"ApiKeysController_revoke","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["ApiKeys"]}},"/dashboard/v1/audit_logs":{"get":{"operationId":"AuditLogsController_list","parameters":[],"responses":{"200":{"description":""}},"tags":["AuditLogs"]}},"/dashboard/v1/psp_connections":{"post":{"operationId":"ConnectionsAdminController_create","parameters":[],"responses":{"201":{"description":""}},"tags":["ConnectionsAdmin"]}},"/dashboard/v1/psp_connections/{id}/test":{"post":{"operationId":"ConnectionsAdminController_test","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["ConnectionsAdmin"]}},"/dashboard/v1/payments/{id}/timeline":{"get":{"operationId":"PaymentTimelineController_timeline","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["PaymentTimeline"]}}},"info":{"title":"Payment Orchestrator API","description":"Unified payment API: one integration, multiple PSPs.","version":"0.1.0","contact":{}},"tags":[],"servers":[],"components":{"securitySchemes":{"bearer":{"scheme":"bearer","bearerFormat":"JWT","type":"http","description":"Secret API key (sk_…)"}},"schemas":{}}}