Hatchet · API Governance Rules
Hatchet API Rules
Spectral linting rules defining API design standards and conventions for Hatchet.
13 Rules
error 2
warn 8
info 3
Rule Categories
hatchet
Rules
error
hatchet-openapi-version
Hatchet uses OpenAPI 3.1.
$
warn
hatchet-info-title
The API info title must mention Hatchet.
$.info.title
warn
hatchet-stable-path-prefix
Hatchet stable operations live under /api/v1/stable; older endpoints under /api/v1.
$.paths
warn
hatchet-operation-id-kebab-namespaced
Operation IDs follow the pattern ":" or "::" with lowercase kebab segments (e.g. "v1-task:get", "tenant:create", "workflow-run:create").
$.paths.*.*.operationId
warn
hatchet-operation-summary-required
Every operation must have a summary.
$.paths.*[get,post,put,patch,delete]
warn
hatchet-operation-summary-title-case
Operation summaries should be Title Cased.
$.paths.*[get,post,put,patch,delete].summary
error
hatchet-operation-must-have-tag
Every operation must declare at least one tag.
$.paths.*[get,post,put,patch,delete]
info
hatchet-known-tags
Operation tags should be drawn from the Hatchet resource taxonomy.
$.paths.*[get,post,put,patch,delete].tags[*]
warn
hatchet-bearer-auth-required
Hatchet uses bearer tokens for SDK and REST API access.
$.components.securitySchemes
warn
hatchet-error-schema-standard
Error responses should reference the APIErrors schema.
$.paths.*[get,post,put,patch,delete].responses[400,401,403,404,405,409,429,500]
info
hatchet-path-parameter-named
Path parameters should be lowercase kebab-cased (e.g. {workflow-run}, {v1-workflow-run}).
$.paths
warn
hatchet-no-trailing-slash
Paths must not end with a trailing slash.
$.paths
info
hatchet-tenant-scoped-resources
Tenant-scoped resources should be reachable under /tenants/{tenant}/...
$.paths