[Purpose: consistent API patterns for naming, structure, auth, versioning, and errors]
/{version}/{resource}[/{id}][/{sub-resource}]
Examples:
/api/v1/users/api/v1/users/:id/api/v1/users/:id/postsHTTP verbs:
Request (typical):
{ "data": { ... }, "metadata": { "requestId": "..." } }
Success:
{ "data": { ... }, "meta": { "timestamp": "...", "version": "..." } }
Error:
{ "error": { "code": "ERROR_CODE", "message": "...", "field": "optional" } }
(See error-handling for rules.)
Credentials in standard location
Authorization: Bearer {token}
Reject unauthenticated before business logic
page, pageSize or cursor-basedsort=field:asc|desc
Return pagination metadata in meta.Focus on patterns and decisions, not endpoint catalogs.