{"openapi":"3.1.0","info":{"title":"Veil API","version":"1.1.0","description":"Private checkout routing and consent-based identity verification."},"servers":[{"url":"https://veilyourfirm.com"}],"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer"}},"schemas":{"Error":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"}}}}},"paths":{"/api/v1/checkouts":{"post":{"security":[{"bearerAuth":[]}],"summary":"Create a checkout","parameters":[{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Checkout created"},"400":{"description":"Invalid request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"get":{"security":[{"bearerAuth":[]}],"summary":"List checkouts","parameters":[{"name":"limit","in":"query","schema":{"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"Checkout page"}}}},"/api/v1/checkouts/{id}":{"get":{"security":[{"bearerAuth":[]}],"summary":"Read a checkout","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Checkout"}}}},"/api/v1/checkouts/{id}/cancel":{"post":{"security":[{"bearerAuth":[]}],"summary":"Cancel an active checkout","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Cancelled checkout"}}}},"/api/v1/verifications":{"post":{"security":[{"bearerAuth":[]}],"summary":"Create a consent-based verification","parameters":[{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Verification link"},"402":{"description":"Paid plan required"}}},"get":{"security":[{"bearerAuth":[]}],"summary":"List verifications","parameters":[{"name":"limit","in":"query","schema":{"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"Verification page"}}}},"/api/v1/verifications/{id}":{"get":{"security":[{"bearerAuth":[]}],"summary":"Read a verification","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Verification"}}}},"/api/v1/verifications/exchange":{"post":{"security":[{"bearerAuth":[]}],"summary":"Exchange a one-time redirect code","responses":{"200":{"description":"Verified identity"}}}}}}