Skip to Content
ConceptsTerminology

Terminology

The project uses a fixed vocabulary across code, docs, and comments. These docs follow the same rules.

UseNever use
tenantcustomer, org, organization
grantpermission, access_grant, proxy_permission
keyapi_key (in prose; api_key is fine as a code field name)
slugsubdomain, url_name
callerrequester, invoker
clientcustomer

The only exception is the AWS tag CustomerName, which comes from the copebit account template and must stay as-is.

API naming convention

  • Backend (Python) is snake_case — request body keys, query params, response fields, DynamoDB attributes.
  • Frontend (TypeScript) is camelCase — all type properties and variables.

Conversion happens at the HTTP boundary:

  • Responses (snake → camel): automatic via camelizeKeys().
  • Request bodies (camel → snake): automatic via snakelizeKeys() — never hardcode snake_case in frontend body fields.
  • Query parameters: sent camelCase, read camelCase (no conversion).
Last updated on