What are Admin Keys?
Admin keys (sk_admin_*) provide full access to your organization’s resources. Use them to:
- Create and manage applications
- Manage app keys
- Purchase and assign phone numbers
- Manage organization settings
- View all organization data
- Manage team members and billing
Permissions
Admin keys can perform all organization-level operations: Application Management- Create new applications
- Update application settings
- Delete applications
- List all applications
- Create app keys (test and live)
- List app keys for any application
- Revoke app keys
- View app key details
- Purchase phone numbers
- Assign numbers to applications
- Remove numbers from applications
- View all organization phone numbers
- Update organization profile
- Manage billing information
- Configure organization-level webhooks
- View usage and analytics
Creating Admin Keys
Via Dashboard:- Log in to the Chirp dashboard
- Navigate to Organization Settings
- Click on “Admin Keys”
- Click “Create Admin Key”
- Enter a descriptive name
- Copy the key (shown only once)
Admin keys are shown only once during creation. Store them securely immediately.
- “Production Automation”
- “CI/CD Pipeline”
- “Infrastructure Scripts”
- “Development Tools”
Using Admin Keys
Include your admin key in theAuthorization header:
Example: Create an Application
Example: List All Applications
Example: Create App Keys
Security Best Practices
1. Limit Admin Keys Only create admin keys when necessary. Use app keys for application-specific operations. 2. Use Descriptive Names Name keys based on their purpose:- ✅ “Production Automation Script”
- ✅ “CI/CD Pipeline - GitHub Actions”
- ❌ “Key 1”
- Create a new admin key
- Update all services to use the new key
- Verify everything works
- Delete the old key
- Environment variables
- Secrets management systems (AWS Secrets Manager, HashiCorp Vault)
- CI/CD secret stores
- Delete unused keys
- Verify key names are still accurate
- Check key activity in audit logs
Revoking Admin Keys
If an admin key is compromised or no longer needed: Via Dashboard:- Go to Organization Settings > Admin Keys
- Find the key to revoke
- Click “Delete” and confirm
Revoking an admin key immediately invalidates it. Any services using this key will stop working.
- Identify all services using the key
- Create and deploy a replacement key
- Verify services work with new key
- Revoke the old key
Admin Keys vs App Keys
| Feature | Admin Keys | App Keys |
|---|---|---|
| Format | sk_admin_* | sk_live_app_* / sk_test_app_* |
| Scope | Organization-wide | Single application |
| Create apps | ✅ Yes | ❌ No |
| Send messages | ❌ No | ✅ Yes |
| Manage phone numbers | ✅ Yes | Limited |
| Manage webhooks | ✅ Yes | App-level only |
| Manage billing | ✅ Yes | ❌ No |
Use Cases
Automation Scripts Use admin keys to automate organization management:- Create applications for new projects
- Provision phone numbers automatically
- Generate app keys for new environments
- Define applications declaratively
- Provision resources programmatically
- Keep infrastructure in sync
- Create test applications automatically
- Generate test keys for each branch
- Clean up resources after tests
- Create applications per customer
- Isolate customer data
- Manage resources programmatically
Troubleshooting
401 Unauthorized- Verify the admin key format (
sk_admin_*) - Check the key hasn’t been deleted
- Ensure you’re using an admin key (not an app key)
- Verify the operation requires admin-level access
- Check you’re not trying to send messages (use app keys)
- Admin keys are active immediately
- Verify you copied the entire key
- Check for extra spaces or newlines