API Tokens
API tokens provide long-lived credentials for server-to-server integrations, scripts, and automation. Each token is scoped to a specific team.
Creating an API Token
Section titled “Creating an API Token”-
Navigate to Team Settings
Open the Catalyzed app and go to Settings (gear icon in the sidebar).
-
Select API Tokens
This option is available to team Admins only.
-
Click Create Token
Enter a descriptive name (e.g., “CI/CD Pipeline”, “Data Sync Script”).
-
Copy Your Token
The token is displayed only once. Copy it immediately and store it securely.
Token Properties
Section titled “Token Properties”| Property | Description |
|---|---|
| Name | Human-readable identifier for the token |
| Team | The team this token can access |
| Role | Permission level (currently mirrors your team role) |
| Created | When the token was created |
| Last Used | When the token was last used for an API request |
Using Your Token
Section titled “Using Your Token”Include the token in the Authorization header of every request:
Using an API token
export API_TOKEN="cat_tok_..."
curl https://api.catalyzed.ai/datasets \ -H "Authorization: Bearer $API_TOKEN"const API_TOKEN = process.env.CATALYZED_API_TOKEN;
const response = await fetch("https://api.catalyzed.ai/datasets", { headers: { Authorization: `Bearer ${API_TOKEN}`, },});import osimport requests
api_token = os.environ["CATALYZED_API_TOKEN"]
response = requests.get( "https://api.catalyzed.ai/datasets", headers={"Authorization": f"Bearer {api_token}"})Managing Tokens
Section titled “Managing Tokens”List Your Tokens
Section titled “List Your Tokens”View all tokens you’ve created in Settings > API Tokens. You can see:
- Token name
- Creation date
- Last used date
- Status (active/revoked)
Revoke a Token
Section titled “Revoke a Token”To revoke a token:
- Go to Settings > API Tokens
- Find the token you want to revoke
- Click the Revoke button
Revoked tokens immediately stop working. This action cannot be undone.
Revoking via API
Section titled “Revoking via API”You can also revoke tokens programmatically:
Revoke an API token
curl -X DELETE https://api.catalyzed.ai/api-tokens/_wfH8UWN56YW8mFgexoSx \ -H "Authorization: Bearer $API_TOKEN"await fetch("https://api.catalyzed.ai/api-tokens/_wfH8UWN56YW8mFgexoSx", { method: "DELETE", headers: { Authorization: `Bearer ${apiToken}`, },});requests.delete( "https://api.catalyzed.ai/api-tokens/_wfH8UWN56YW8mFgexoSx", headers={"Authorization": f"Bearer {api_token}"})Best Practices
Section titled “Best Practices”Use Descriptive Names
Section titled “Use Descriptive Names”Name tokens based on their purpose:
production-etl-pipelinestaging-data-syncgithub-actions-deploy
One Token Per Service
Section titled “One Token Per Service”Create separate tokens for each integration. This allows you to:
- Track usage per service
- Revoke access for a single service without affecting others
- Identify which service made specific API calls
Store Tokens Securely
Section titled “Store Tokens Securely”Never commit tokens to version control. Use:
- Environment variables
- Secrets managers (AWS Secrets Manager, HashiCorp Vault, etc.)
- CI/CD secrets (GitHub Secrets, GitLab CI Variables, etc.)
Rotate Tokens Periodically
Section titled “Rotate Tokens Periodically”For production systems, rotate tokens on a regular schedule:
- Create a new token
- Update your application to use the new token
- Verify the new token works
- Revoke the old token
Troubleshooting
Section titled “Troubleshooting”Token Not Working
Section titled “Token Not Working”- Check the token is correct - Ensure no extra whitespace or truncation
- Verify the team - Tokens only work for resources in their team
- Check token status - Ensure it hasn’t been revoked
- Review permissions - Some operations require Admin role
Rate Limiting
Section titled “Rate Limiting”API tokens share rate limits with the team. If you’re hitting rate limits:
- Review your request patterns
- Add caching where appropriate
- Contact support for limit increases
API Reference
Section titled “API Reference”See the API Tokens endpoints for the complete API documentation.