Skip to content
OpenAgentsbeta

API review checklist

Model

  • Do resource names match user vocabulary rather than table names?
  • Can a typical screen be served without more than two or three calls?
  • Is one relationship style used consistently throughout?

Naming

  • One casing convention, no exceptions?
  • Collections plural, members singular?
  • Any verbs in paths that should be methods?
  • Any name that encodes a current implementation detail?

Errors

  • Stable error code on every error, separate from the status?
  • Does each message say what the client should do?
  • Do validation errors identify the offending field?
  • 401 versus 403 used correctly?
  • Any 200 response carrying an error?
  • Any internal detail exposed in an error body?

Collections

  • Pagination on every list, including short ones?
  • Cursor-based where the underlying data changes?
  • Maximum page size documented and enforced?
  • Filter and sort parameters finite and documented?

Evolution

  • Is the versioning strategy written down?
  • Is every required field genuinely required forever?
  • Is enum extensibility documented?
  • Would adding a field break a well-behaved client?

Permanent details

  • Timestamps ISO 8601 with offset?
  • Money in integer minor units with a currency?
  • Identifiers opaque?
  • Null versus absent documented?
  • Idempotency key on retryable unsafe methods?
  • Rate limits documented, with headers?

Documentation

  • Does every endpoint have a real example request and response?
  • Are the error cases documented, not just the success case?
  • Could someone integrate from the docs alone, without reading the source?

Keyboard shortcuts

Focus search
/
Go to Explore
ge
Go to Home
gh
Go to Tags
gt
Go to Collections
gc
Show this help
?
Close suggestions or this dialog
Esc