Overview
API Keys enable programmatic access to Brand DNA’s features. Automate brand analyses, integrate with your existing tools, and build custom workflows—all through our RESTful API.Pro/Agency Tier Only — API access requires a Pro or Agency subscription. See API Reference for full documentation.
What You Can Do with the API
Run Analyses
Programmatically analyze brands and retrieve results
Chat with Helix
Send messages to Helix AI and receive responses
Manage Workspace
Create, update, and retrieve workspace tasks
Track Competitors
Monitor competitor changes and receive alerts (Pro/Agency)
Export Reports
Generate and download PDF reports programmatically
Team Management
Add/remove team members and manage permissions (Agency)
Creating API Keys
Set Permissions
Select scopes for this key:
- Read analyses
- Run analyses
- Chat with Helix
- Manage workspace
- Export reports
- Full access (all permissions)
API Key Permissions
Scope Definitions
| Scope | Capabilities | Use Cases |
|---|---|---|
read:analyses | Retrieve analysis results, history, and metadata | Dashboards, reporting tools |
write:analyses | Run new brand analyses | Automation, batch processing |
read:chat | Retrieve Helix chat history | Audit logs, conversation backups |
write:chat | Send messages to Helix AI | Chatbots, integrations |
read:workspace | View tasks and workspace data | Project management tools |
write:workspace | Create, update, delete tasks | Task automation |
read:competitors | Retrieve competitor tracking data | Analytics dashboards |
write:competitors | Add/remove tracked competitors | Automated monitoring |
read:exports | Download PDF exports | Report delivery systems |
write:exports | Generate new exports | Automated reporting |
admin:team | Manage team members (Agency only) | Provisioning automation |
admin:full | All permissions (equivalent to Owner access) | Internal tools, testing |
Recommended Permission Sets
Production Server (Minimal Permissions)
Production Server (Minimal Permissions)
Scopes:
read:analyses, write:analyses, read:exportsUse Case: Public-facing application that runs analyses and displays resultsWhy Minimal: Reduces risk if key is compromisedInternal Dashboard (Read-Only)
Internal Dashboard (Read-Only)
Scopes:
read:analyses, read:workspace, read:competitorsUse Case: Internal analytics dashboard showing team performanceWhy Read-Only: No accidental data modificationAutomation Pipeline (Write Access)
Automation Pipeline (Write Access)
Scopes:
write:analyses, write:workspace, write:exportsUse Case: Nightly batch analysis and report generationWhy Write: Needs to create resources, but not deleteCI/CD Testing (Full Access)
CI/CD Testing (Full Access)
Scopes:
admin:fullUse Case: Automated testing in development environmentWhy Full: Needs to test all API endpointsManaging API Keys
Current API Keys
Example API key roster:| Name | Scopes | Created | Last Used | Status | Actions |
|---|---|---|---|---|---|
| Production Server | read:analyses, write:analyses | Jan 15, 2026 | 2 min ago | Active ✅ | Revoke |
| Internal Dashboard | read:* | Dec 1, 2025 | 1 hour ago | Active ✅ | Revoke |
| Testing | admin:full | Jan 20, 2026 | 3 days ago | Active ✅ | Revoke |
| Old CI Pipeline | admin:full | Nov 10, 2025 | 45 days ago | Inactive ⚠️ | Revoke |
Revoking API Keys
Rotating API Keys
Best practice: Rotate keys every 90 daysUsing API Keys
Authentication
All API requests require authentication via Bearer token:Authorization: Bearer YOUR_API_KEY(required)Content-Type: application/json(for POST/PUT requests)
Example: Run Brand Analysis
Rate Limits
API rate limits by tier:| Tier | Requests/Minute | Requests/Hour | Requests/Day |
|---|---|---|---|
| Pro | 60 | 1,000 | 10,000 |
| Agency | 120 | 5,000 | 50,000 |
X-RateLimit-Limit: Total requests allowed per windowX-RateLimit-Remaining: Requests remaining in current windowX-RateLimit-Reset: Unix timestamp when limit resets
429 with:
- Implement exponential backoff
- Cache responses when possible
- Use webhooks for long-running operations instead of polling
Security Best Practices
1. Store Keys Securely
Good:2. Use Environment-Specific Keys
- Development: Separate key for local development
- Staging: Different key for staging environment
- Production: Production-only key with minimal permissions
- Revoke development key without affecting production
- Track usage by environment
- Limit blast radius if key is compromised
3. Rotate Keys Regularly
- Every 90 days: Proactive rotation
- Immediately: If key may have been exposed (e.g., accidentally committed)
- After employee departure: Revoke keys former team members had access to
4. Use Minimal Permissions
Only grant scopes that are actually needed: Example: Dashboard that displays analysis results- ✅ Grant:
read:analyses - ❌ Don’t grant:
write:analyses,admin:full
5. Monitor Key Usage
Review “Last Used” column regularly:- Keys unused for 30+ days should be investigated
- Unexpected usage patterns may indicate compromise
- Set up alerts for API errors (401, 403, 429)
Webhooks (Alternative to Polling)
Instead of polling the API, use webhooks for event notifications: Example: Analysis Complete WebhookAPI Key Quotas
API usage counts toward your plan quotas:Pro Plan
| Resource | Quota | API Access |
|---|---|---|
| Analyses | Unlimited | ✅ Create via API |
| Flash Audits | Unlimited | ✅ Create via API |
| Helix Messages | Unlimited | ✅ Send via API |
| Exports | Unlimited | ✅ Generate via API |
Agency Plan
| Resource | Quota | API Access |
|---|---|---|
| Analyses | Unlimited | ✅ Create via API |
| Flash Audits | Unlimited | ✅ Create via API |
| Helix Messages | Unlimited | ✅ Send via API |
| Exports | Unlimited | ✅ Generate via API |
| Team Management | 10 seats included | ✅ Manage via API |
API requests count toward the same quotas as web interface usage.
Troubleshooting
401 Unauthorized
Cause: Invalid or missing API key Solutions:- Verify key is correct (no extra spaces)
- Check key hasn’t been revoked
- Ensure
Authorization: Bearerheader is present
403 Forbidden
Cause: Valid key, but insufficient permissions Solutions:- Check key scopes (Settings → API Keys)
- Create new key with required permissions
- Verify account tier supports requested feature
429 Rate Limit Exceeded
Cause: Too many requests in time window Solutions:- Implement exponential backoff
- Reduce request frequency
- Cache responses
- Upgrade to Agency tier for higher limits
500 Internal Server Error
Cause: Server-side issue Solutions:- Retry request after 5-10 seconds
- Check status page
- Contact support if persistent
Related Pages
- API Reference - Complete API documentation
- Settings - Account preferences
- Billing - Upgrade for API access
- Teams - Team API key management (Agency)

