Authentication
Overview
Delay API offers both authenticated and unauthenticated endpoints. For authenticated endpoints, an Authorization header containing a bearer token is required.
API Tokens
There are two ways to obtain API tokens for the Delay API:
User App Token: This can be created from the developer options in the system settings. You can set the expiration date and configure permissions for this token.
Developer OAuth Token: To acquire this, you must register on the developer platform. You'll receive a
client_id,client_secret, andaudience. Use these in the POST request to obtain an OAuth token.
Token Permissions
Tokens are in JWT format and the claims structure looks like this:
The permissions field lists the allowed operations on resources, using the format operation:resource. Operations like read, create, update, and delete correspond to the HTTP methods GET, POST, PUT, and DELETE.
Some PATCH endpoints use more specific resources, like update:workspace_owner.
Row-Level Access Control
In addition to basic token-based permissions, Delay also implements row-level access control at the database level, leveraging PostgresSQL's RLS features. For detailed information, refer to the official PostgresSQL documentation.