{"openapi":"3.1.0","info":{"title":"CHSPS Platform API","version":"1.7.0","description":"CHSPS platform API contract for the 2026.1-v260 program and lifecycle release. The contract covers all 16 active programs, eligibility and governed scope, applications, independent review and decisions, immutable accreditation artifacts, annual maintenance, renewal, reinstatement, services, communications and billing. Payment enables processing but never constitutes approval. Browser clients use secure HttpOnly sessions; app and approved integration clients use scoped bearer credentials. Mutation endpoints support request identifiers for safe retries where documented."},"servers":[{"url":"https://chsps.org/api/v1"}],"tags":[{"name":"Authentication"},{"name":"Account"},{"name":"Catalog"},{"name":"Accreditation"},{"name":"Documents"},{"name":"Portfolio Services"},{"name":"Claims Assurance"},{"name":"Commerce"},{"name":"Content"},{"name":"Verification"},{"name":"Administration"}],"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"opaque"},"browserSession":{"type":"apiKey","in":"cookie","name":"__Host-chsps_session"}},"parameters":{"IdempotencyKey":{"name":"Idempotency-Key","in":"header","required":false,"description":"Stable opaque identifier for safely retrying the same mutation after a network interruption.","schema":{"type":"string","maxLength":180}}},"schemas":{"Error":{"type":"object","required":["ok","error"],"properties":{"ok":{"const":false},"error":{"type":"string"}}},"Principal":{"type":"object","properties":{"public_id":{"type":"string"},"email":{"type":"string","format":"email"},"display_name":{"type":"string"},"role":{"type":"string"},"auth_mode":{"type":"string","enum":["cookie","bearer"]}}},"Program":{"type":"object","properties":{"public_id":{"type":"string"},"code":{"type":"string"},"name":{"type":"string"},"program_type":{"type":"string"},"status":{"type":"string"},"default_term_months":{"type":"integer"},"standard_id":{"type":["string","null"]},"standard_edition":{"type":["string","null"]},"standard_pdf":{"type":["string","null"]},"program_url":{"type":["string","null"]},"preparation_url":{"type":["string","null"]},"eligibility_url":{"type":["string","null"]},"scope":{"type":["string","null"]},"scope_unit":{"type":["string","null"]},"standard_stack":{"type":["string","null"]},"intake_status":{"type":["string","null"]},"formal_application_status":{"type":["string","null"]},"decision_model":{"type":["string","null"]},"role_profiles":{"type":"array","items":{"type":"string"}},"metadata":{"type":"object"}}},"Product":{"type":"object","properties":{"public_id":{"type":"string"},"sku":{"type":"string"},"name":{"type":"string"},"product_type":{"type":"string"},"price_public_id":{"type":["string","null"]},"currency":{"type":["string","null"]},"unit_amount_cents":{"type":["integer","null"]}}},"Document":{"type":"object","properties":{"public_id":{"type":"string"},"document_type":{"type":"string"},"filename":{"type":"string"},"mime_type":{"type":["string","null"]},"size_bytes":{"type":["integer","null"]},"state":{"type":"string"},"malware_scan_state":{"type":"string"}}}}},"paths":{"/auth/setup-status":{"get":{"tags":["Authentication"],"summary":"Master administrator bootstrap status","responses":{"200":{"description":"Status"}}}},"/auth/register":{"post":{"tags":["Authentication"],"summary":"Create a customer account pending email verification","responses":{"202":{"description":"Verification email queued"},"409":{"description":"Account already exists"},"422":{"description":"Invalid registration details"}}}},"/auth/register/confirm":{"post":{"tags":["Authentication"],"summary":"Verify a customer email and establish a browser session","responses":{"200":{"description":"Account verified and signed in"},"410":{"description":"Verification link invalid or expired"}}}},"/auth/login":{"post":{"tags":["Authentication"],"summary":"Begin browser credential sign-in","responses":{"200":{"description":"Signed in"},"202":{"description":"MFA required"},"401":{"description":"Invalid credentials"}}}},"/auth/mfa":{"post":{"tags":["Authentication"],"summary":"Complete browser MFA challenge","responses":{"200":{"description":"Signed in"}}}},"/auth/password-reset/request":{"post":{"tags":["Authentication"],"summary":"Request password reset without account enumeration","responses":{"202":{"description":"Request accepted"}}}},"/auth/password-reset/confirm":{"post":{"tags":["Authentication"],"summary":"Complete a single-use password reset","responses":{"200":{"description":"Password changed"}}}},"/me":{"get":{"tags":["Account"],"summary":"Current principal","security":[{"browserSession":[]},{"bearerAuth":[]}],"responses":{"200":{"description":"Principal"},"401":{"description":"Authentication required"}}}},"/dashboard":{"get":{"tags":["Account"],"summary":"Permission-scoped dashboard payload","security":[{"browserSession":[]},{"bearerAuth":[]}],"responses":{"200":{"description":"Dashboard"},"401":{"description":"Authentication required"}}}},"/account/workspace":{"get":{"tags":["Account"],"summary":"Customer workspace portfolio view","security":[{"browserSession":[]},{"bearerAuth":[]}],"responses":{"200":{"description":"Workspace data"},"401":{"description":"Authentication required"}}}},"/account/applications/{applicationId}":{"get":{"tags":["Accreditation"],"summary":"Customer application detail, evidence, findings, tasks, billing and revision history","security":[{"browserSession":[]},{"bearerAuth":[]}],"parameters":[{"name":"applicationId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Application workspace"},"404":{"description":"Not found or not authorized"}}}},"/account/applications/{applicationId}/requirements/{requirementCode}/evidence":{"post":{"tags":["Accreditation"],"summary":"Link a security-cleared document as application evidence","security":[{"browserSession":[]},{"bearerAuth":[]}],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"name":"applicationId","in":"path","required":true,"schema":{"type":"string"}},{"name":"requirementCode","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"Evidence linked"},"409":{"description":"Application or document not ready"}}}},"/account/applications/{applicationId}/requirements/{requirementCode}/note":{"post":{"tags":["Accreditation"],"summary":"Save an applicant requirement note with version history","security":[{"browserSession":[]},{"bearerAuth":[]}],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"name":"applicationId","in":"path","required":true,"schema":{"type":"string"}},{"name":"requirementCode","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Note saved"}}}},"/account/applications/{applicationId}/findings/{findingId}/respond":{"post":{"tags":["Accreditation"],"summary":"Submit a corrective-action response to an application finding","security":[{"browserSession":[]},{"bearerAuth":[]}],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"name":"applicationId","in":"path","required":true,"schema":{"type":"string"}},{"name":"findingId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"Response submitted"}}}},"/account/applications/{applicationId}/submit":{"post":{"tags":["Accreditation"],"summary":"Submit a ready application for CHSPS review","security":[{"browserSession":[]},{"bearerAuth":[]}],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"name":"applicationId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Application submitted"},"409":{"description":"Application has readiness blockers"}}}},"/account/applications/{applicationId}/special-cases":{"post":{"tags":["Accreditation"],"summary":"Open a reviewer challenge, correction, reconsideration, extension, withdrawal, secure-evidence, billing, ownership or scope case for an authorized application","security":[{"browserSession":[]},{"bearerAuth":[]}],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"name":"applicationId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"Governed case opened"},"409":{"description":"Case timing or record state does not permit the request"},"422":{"description":"Case details are incomplete"}}}},"/account/applications/{applicationId}/appeals":{"post":{"tags":["Accreditation"],"summary":"File a governed appeal within the controlled post-decision window","security":[{"browserSession":[]},{"bearerAuth":[]}],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"name":"applicationId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"Appeal opened with immutable linkage to the final decision"},"409":{"description":"No final decision or the appeal window has closed"},"422":{"description":"Appeal basis is incomplete"}}}},"/account/applications/{applicationId}/decisions/{decisionId}/acknowledge":{"post":{"tags":["Accreditation"],"summary":"Acknowledge receipt of a controlled accreditation decision without changing the decision","security":[{"browserSession":[]},{"bearerAuth":[]}],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"name":"applicationId","in":"path","required":true,"schema":{"type":"string"}},{"name":"decisionId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Decision acknowledgment recorded"},"404":{"description":"Decision not found or not authorized"}}}},"/account/accreditations/{accreditationId}":{"get":{"tags":["Accreditation"],"summary":"Customer accreditation lifecycle detail","security":[{"browserSession":[]},{"bearerAuth":[]}],"parameters":[{"name":"accreditationId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Accreditation maintenance, renewal, changes, tasks, billing and history"},"404":{"description":"Not found or not authorized"}}}},"/account/accreditations/{accreditationId}/maintenance/{reportId}/submit":{"post":{"tags":["Accreditation"],"summary":"Submit an attested maintenance report","security":[{"browserSession":[]},{"bearerAuth":[]}],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"name":"accreditationId","in":"path","required":true,"schema":{"type":"string"}},{"name":"reportId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Maintenance report submitted"}}}},"/account/accreditations/{accreditationId}/changes":{"post":{"tags":["Accreditation"],"summary":"Report an accreditation-related operational or material change","security":[{"browserSession":[]},{"bearerAuth":[]}],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"name":"accreditationId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"Change report created"}}}},"/account/accreditations/{accreditationId}/renewals/{renewalId}/submit":{"post":{"tags":["Accreditation"],"summary":"Submit a renewal case within its permitted window","security":[{"browserSession":[]},{"bearerAuth":[]}],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"name":"accreditationId","in":"path","required":true,"schema":{"type":"string"}},{"name":"renewalId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Renewal submitted"},"409":{"description":"Renewal cannot be submitted"}}}},"/account/accreditations/{accreditationId}/reinstatement":{"post":{"tags":["Accreditation"],"summary":"Request review for reinstatement of expired accreditation","security":[{"browserSession":[]},{"bearerAuth":[]}],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"name":"accreditationId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"Reinstatement case opened"},"409":{"description":"Accreditation is not eligible for reinstatement request"}}}},"/account/accreditations/{accreditationId}/special-cases":{"post":{"tags":["Accreditation"],"summary":"Open a complaint, correction, extension or withdrawal case for an authorized accreditation","security":[{"browserSession":[]},{"bearerAuth":[]}],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"name":"accreditationId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"Governed case opened"},"409":{"description":"Record state does not permit the request"},"422":{"description":"Case details are incomplete"}}}},"/account/special-cases":{"get":{"tags":["Account","Accreditation"],"summary":"List governed application and accreditation cases visible to the current account","security":[{"browserSession":[]},{"bearerAuth":[]}],"responses":{"200":{"description":"Permission-scoped special cases"}}}},"/account/artifacts/{artifactId}/download":{"get":{"tags":["Accreditation","Documents"],"summary":"Download a hash-verified immutable accreditation artifact from its issuance snapshot","security":[{"browserSession":[]},{"bearerAuth":[]}],"parameters":[{"name":"artifactId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Deterministic PDF artifact"},"404":{"description":"Artifact not found or not authorized"},"409":{"description":"Legacy artifact requires controlled reissuance"}}}},"/account/organizations/{organizationId}/access-assignments":{"get":{"tags":["Account"],"summary":"List record-level application and accreditation contact assignments","security":[{"browserSession":[]},{"bearerAuth":[]}],"parameters":[{"name":"organizationId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Record assignments"},"404":{"description":"Organization not found or not authorized"}}},"post":{"tags":["Account"],"summary":"Assign or remove an eligible customer/contact from one application or accreditation","security":[{"browserSession":[]},{"bearerAuth":[]}],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"name":"organizationId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Assignment updated"},"201":{"description":"Assignment created"},"422":{"description":"Invalid member or target record"}}}},"/catalog/programs":{"get":{"tags":["Catalog","Accreditation"],"summary":"Public canonical accreditation programs, scopes, standards, terms and eligibility/preparation routes","responses":{"200":{"description":"Canonical active accreditation programs","content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"const":true},"programs":{"type":"array","items":{"$ref":"#/components/schemas/Program"}}}}}}}}}},"/catalog/products":{"get":{"tags":["Catalog"],"summary":"Public active products and prices","responses":{"200":{"description":"Products"}}}},"/catalog/courses":{"get":{"tags":["Catalog"],"summary":"Public published courses","responses":{"200":{"description":"Courses"}}}},"/documents":{"get":{"tags":["Documents"],"summary":"List authorized documents","security":[{"browserSession":[]},{"bearerAuth":[]}],"responses":{"200":{"description":"Documents"}}},"post":{"tags":["Documents"],"summary":"Initialize a private evidence/document upload","security":[{"browserSession":[]},{"bearerAuth":[]}],"responses":{"201":{"description":"Upload initialized"}}}},"/checkout/session":{"post":{"tags":["Commerce"],"summary":"Create provider-hosted checkout from CHSPS price IDs","security":[{"browserSession":[]},{"bearerAuth":[]}],"responses":{"201":{"description":"Checkout session created"}}}},"/content":{"get":{"tags":["Content"],"summary":"Published news/blog/resource content","responses":{"200":{"description":"Content feed"}}}},"/badges/verify/{code}":{"get":{"tags":["Verification"],"summary":"Verify a public badge award","parameters":[{"name":"code","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Verification"},"404":{"description":"Not found"}}}},"/verify/bulk":{"get":{"tags":["Verification"],"summary":"Check up to 100 CHSPS certificates and accreditations by exact identifier","parameters":[{"name":"ids","in":"query","required":true,"description":"Comma-separated certificate codes (CHK-) and accreditation numbers","schema":{"type":"string"}}],"responses":{"200":{"description":"Summary and one result per identifier"},"422":{"description":"Empty list or more than 100 items"},"429":{"description":"Rate limited"}}},"post":{"tags":["Verification"],"summary":"Check up to 100 credentials, optionally confirming the holder name","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","maxItems":100,"items":{"oneOf":[{"type":"string"},{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"}},"required":["id"]}]}},"text":{"type":"string","description":"CSV lines: identifier, optional name"}}}}}},"responses":{"200":{"description":"Summary and one result per identifier, with name_match when a name was sent"},"400":{"description":"Invalid JSON"},"413":{"description":"Body too large"},"422":{"description":"Empty list or more than 100 items"},"429":{"description":"Rate limited"}}}},"/credentials/share":{"get":{"tags":["Verification"],"summary":"Share links for a credential: verify URL, LinkedIn add-to-profile, Open Badges 2.0 and 3.0 documents","parameters":[{"name":"id","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Share links"},"404":{"description":"Not found"}}}},"/calendar/{kind}/{id}.ics":{"get":{"tags":["Calendar"],"summary":"Calendar file (RFC 5545) for a webinar or public deadline","parameters":[{"name":"kind","in":"path","required":true,"schema":{"type":"string","enum":["webinar","deadline"]}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"text/calendar"},"404":{"description":"Not found"}}}},"/calendar/{kind}/{id}.json":{"get":{"tags":["Calendar"],"summary":"Add-to-calendar links (Google, Outlook, Microsoft 365, .ics) for a webinar or public deadline","parameters":[{"name":"kind","in":"path","required":true,"schema":{"type":"string","enum":["webinar","deadline"]}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Calendar links"},"404":{"description":"Not found"}}}},"/accreditations/verify/{number}":{"get":{"tags":["Verification"],"summary":"Verify a public accreditation record","parameters":[{"name":"number","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Verification"},"404":{"description":"Not found"}}}},"/public/accreditations/verification-record.pdf":{"get":{"tags":["Verification"],"summary":"Download a one-page Public Verification Record (PDF) of an exact accreditation number","parameters":[{"name":"accreditation","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"application/pdf, one page, not cached"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}}}},"/account/portfolio-services":{"get":{"tags":["Portfolio Services"],"summary":"List governed CHSPS service cases for organizations the account can access","security":[{"browserSession":[]},{"bearerAuth":[]}],"responses":{"200":{"description":"Portfolio service cases"}}},"post":{"tags":["Portfolio Services"],"summary":"Request Readiness Review, Claims Assurance scope review, or an eligible Claims Assurance update","security":[{"browserSession":[]},{"bearerAuth":[]}],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"}],"responses":{"201":{"description":"Service case and initial invoice created"},"409":{"description":"Current service fee unavailable"},"422":{"description":"Invalid or incomplete scope"}}}},"/account/portfolio-services/{caseId}":{"get":{"tags":["Portfolio Services"],"summary":"Portfolio service detail with invoices, tasks and history","security":[{"browserSession":[]},{"bearerAuth":[]}],"parameters":[{"name":"caseId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Service case"},"404":{"description":"Not found or not authorized"}}}},"/account/portfolio-services/{caseId}/respond":{"post":{"tags":["Portfolio Services"],"summary":"Return requested service-case information to CHSPS and reopen the review queue","security":[{"browserSession":[]},{"bearerAuth":[]}],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"name":"caseId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Response recorded and case returned to CHSPS"},"409":{"description":"CHSPS is not currently waiting for information"},"422":{"description":"Response is incomplete"}}}},"/assurance/verify/{code}":{"get":{"tags":["Claims Assurance"],"summary":"Verify a public CHSPS Claims Assurance record","parameters":[{"name":"code","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Claims Assurance record and current validity"},"404":{"description":"Record not found"}}}},"/account/portfolio-services/{caseId}/evidence":{"get":{"tags":["Claims Assurance","Portfolio Services"],"summary":"List evidence linked to a governed portfolio service case","security":[{"browserSession":[]},{"bearerAuth":[]}],"parameters":[{"name":"caseId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Linked evidence"}}},"post":{"tags":["Claims Assurance","Portfolio Services"],"summary":"Link a clean organization document as service evidence","security":[{"browserSession":[]},{"bearerAuth":[]}],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"name":"caseId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"Evidence linked"},"409":{"description":"Document security review incomplete or case closed"}}}},"/account/portfolio-services/{caseId}/evidence/{evidenceId}":{"delete":{"tags":["Claims Assurance","Portfolio Services"],"summary":"Unlink service evidence before final disposition","security":[{"browserSession":[]},{"bearerAuth":[]}],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"name":"caseId","in":"path","required":true,"schema":{"type":"string"}},{"name":"evidenceId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Evidence unlinked"},"409":{"description":"Case is closed"}}}},"/admin/portfolio-services/{caseId}/outcome":{"post":{"tags":["Claims Assurance","Administration"],"summary":"Issue a final Claims Assurance outcome after scope, payment and clean evidence controls pass","security":[{"browserSession":[]},{"bearerAuth":[]}],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"name":"caseId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Outcome issued; supported outcomes create a verifiable assurance record"},"409":{"description":"Scope, payment, evidence or lifecycle gate not satisfied"},"422":{"description":"Outcome content incomplete"}}}},"/admin/portfolio-services/{caseId}/readiness-outcome":{"post":{"tags":["Portfolio Services","Administration"],"summary":"Issue the structured Independent Accreditation Readiness Review report after paid-in-full and clean-evidence gates pass","security":[{"browserSession":[]},{"bearerAuth":[]}],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"name":"caseId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Readiness report issued and case resolved"},"409":{"description":"Payment, evidence or lifecycle gate not satisfied"},"422":{"description":"Readiness report content incomplete"}}}},"/admin/portfolio-services/{caseId}/scope-decision":{"post":{"tags":["Portfolio Services","Administration"],"summary":"Record Claims Assurance scope disposition and issue the governed full-review invoice only when scope is accepted","security":[{"browserSession":[]},{"bearerAuth":[]}],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"name":"caseId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Scope disposition recorded"},"403":{"description":"Accreditation management permission required"},"409":{"description":"Not a Claims Assurance scope case"}}}},"/admin/accreditation-issuance":{"get":{"tags":["Administration","Accreditation"],"summary":"List approved applications awaiting or completing controlled accreditation issuance","security":[{"browserSession":[]},{"bearerAuth":[]}],"responses":{"200":{"description":"Permission-scoped issuance queue"},"403":{"description":"Accreditation management permission required"}}}},"/admin/applications/{applicationId}/issue-accreditation":{"post":{"tags":["Administration","Accreditation"],"summary":"Issue the initial accreditation and immutable artifact set after decision, scope and financial gates pass","security":[{"browserSession":[]},{"bearerAuth":[]}],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"name":"applicationId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"Accreditation and immutable artifacts issued"},"403":{"description":"Accreditation management permission required"},"409":{"description":"Decision, governed scope, term or financial gate not satisfied"}}}},"/admin/accreditations/{accreditationId}/renewals":{"post":{"tags":["Administration","Accreditation"],"summary":"Open the single governed renewal case for an accreditation term","security":[{"browserSession":[]},{"bearerAuth":[]}],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"name":"accreditationId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Existing renewal returned idempotently"},"201":{"description":"Renewal case opened"},"409":{"description":"Renewal window is not open"}}}},"/admin/renewals/{renewalId}/review":{"post":{"tags":["Administration","Accreditation"],"summary":"Record a controlled renewal disposition and, when completed, update the authoritative accreditation term","security":[{"browserSession":[]},{"bearerAuth":[]}],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"name":"renewalId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Renewal disposition recorded"},"403":{"description":"Accreditation management permission required"},"409":{"description":"Open balance or lifecycle control blocks completion"}}}},"/admin/reinstatements/{caseId}/decision":{"post":{"tags":["Administration","Accreditation"],"summary":"Approve, return, or deny a reinstatement request for expired accreditation","security":[{"browserSession":[]},{"bearerAuth":[]}],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"name":"caseId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Reinstatement decision recorded"},"403":{"description":"Accreditation management permission required"},"409":{"description":"Open balance or lifecycle control blocks approval"}}}},"/admin/billing/invoices/{invoiceId}/hosted":{"get":{"tags":["Administration","Commerce"],"summary":"Inspect whether a governed invoice has an active provider-hosted payment link","security":[{"browserSession":[]},{"bearerAuth":[]}],"parameters":[{"name":"invoiceId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Hosted invoice status"},"404":{"description":"Invoice not found"}}},"post":{"tags":["Administration","Commerce"],"summary":"Create or recover the hosted payment link for an approved governed invoice","security":[{"browserSession":[]},{"bearerAuth":[]}],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"name":"invoiceId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Existing payment link returned"},"201":{"description":"Payment link created"},"409":{"description":"Invoice is not payable"}}}},"/admin/users":{"get":{"tags":["Administration"],"summary":"Search users","security":[{"browserSession":[]},{"bearerAuth":[]}],"responses":{"200":{"description":"Users"},"403":{"description":"Forbidden"}}}},"/admin/invitations":{"post":{"tags":["Administration"],"summary":"Invite an authorized user","security":[{"browserSession":[]},{"bearerAuth":[]}],"responses":{"201":{"description":"Invitation queued"},"403":{"description":"Forbidden"}}}}}}