API producer standards
Standards and requirements for listing an API on the HMCTS API Marketplace.
Contents
These standards are based on the HMCTS RESTful API Standards and the AMP Catalogue onboarding process. If you have questions, contact the marketplace team.
1. Technical requirements
Your API must meet the following technical requirements before it can be listed on the marketplace.
OpenAPI 3.x specification
Your API must have a valid OpenAPI 3.x specification file at this path in your repository:
src/main/resources/openapi/openapi-spec.yml
The specification must include:
info.title— a clear, human-readable API nameinfo.description— a plain-English summary of what the API doesinfo.version— the current version, stamped automatically from the GitHub release tag- at least one path with at least one operation
Servers block
The servers block must follow the standard HMCTS pattern. Do not use SwaggerHub
virtual server URLs.
Spectral linting
Your specification must pass the standard Spectral OAS3 ruleset with no errors.
GitHub Actions workflow
Add .github/workflows/publish-api-docs.yml to your repository to publish
documentation automatically on each release. This triggers the shared amp-catalog
workflow, pinned to @v1.
2. Eligibility criteria
| API type | Eligible? | Notes |
|---|---|---|
| External, documentation-only | Eligible | Spec is world-readable via GitHub Pages |
| External, with mock execution | Eligible | Try-it disabled; documentation only in the marketplace |
| Internal / developers only | Not eligible | Must wait for the APIM Developer Portal |
Your API repository must also be public on GitHub. The documentation site is
served via GitHub Pages and must return HTTP 200 at
https://hmcts.github.io/<repo-name>/ before your listing goes live.
3. Specification quality
Your OpenAPI specification should meet the following quality standards. These directly power the information shown on each API’s detail page.
- Title
- Clear, human-readable name — not the repository slug.
- Plain-English description
- A consumer-focused summary of what the API does, who it is for, and what data it returns. Shown under “What does this API do?”.
- Contact email
- A real team inbox — not the marketplace team’s address.
- Endpoint summaries
- Every operation must have a summary and a description.
- Schema definitions
- All request and response bodies defined as named schemas, with property descriptions.
- Security scheme
- Authentication method declared, for example
bearerAuth, and applied to all protected operations. - Error responses
- 400, 401, 404 and 500 responses documented for each operation.
4. Data governance
As an API producer you are a data controller, or a joint data controller, for the data exposed through your API.
Data sharing agreements
Data classification
| Classification | Eligibility |
|---|---|
| Official | Eligible - standard data protection controls required |
| Official-Sensitive | Eligible with enhanced governance - formal DSA required |
| Secret / Top Secret | Not eligible for marketplace listing |