Documentation ·Docs
API design guidelines

API design guidelines

How an API on API360 is designed: names, errors, pagination, idempotency, versions, deprecation and security, with the lint rules that check them.

Read this page in العربية

On this page

In short#

One set of rules for the APIs providers publish on API360 and for the platform's own domain APIs. Each page states one rule family, shows the shape on the wire and names the lint rules that check it. The rules run as a Spectral ruleset, so a specification is checked the same way on a laptop, in a pipeline and in Studio.

PageRule familyWhat it fixes
Namingsnake_case namesProperty, query parameter and enum value names, and path segments
Errorsone error envelopeThe body, the status codes and the retry headers of an error
Paginationpage, per_pageParameters, the maximum of 100 and the total in the body
IdempotencyIdempotency-KeySafe retries of a POST that creates a resource
Versioningmajor version in the pathWhere the version lives and what changes it
DeprecationDeprecation and SunsetHow a retiring operation announces itself
Securitya requirement on every operationCredentials in headers, never in the URL
Linting a specificationthe rulesetHow to run it, its two profiles and the allow-list

Who the rules are for#

  • A provider designs a product API against the rules and lints its OpenAPI file before publishing.
  • The platform lints its own 13 domain specifications against the same rules, with a dated list of the findings it still carries.
  • A consumer reads the same pages to know what to expect from any product: the same error body, the same paging, the same retry rules.
Planned

Studio runs the provider profile of the ruleset on every specification a provider uploads and shows the findings next to the file.

Was this page helpful?
Updated 2026-10-17