Getting Started
The Hone CRM API is REST with JSON request and response bodies. Every endpoint requires authentication and returns a standard envelope.
Base URL
https://api.honecrm.com/v1Authentication
Authorization: Bearer <token>Authentication
Both authentication methods use the standard Authorization: Bearer header. Choose based on whether the caller is a logged-in user or a server/agent.
API Key
For servers, scripts, CLIs, and AI agents. Create in Settings → Developer.
Authorization: Bearer hone_xxxx...
Cognito JWT
Issued after user sign-in via Cognito. Used by the first-party web and mobile clients.
Authorization: Bearer eyJraWQ...
Response Format
All responses are wrapped in a standard envelope. Success responses carry data; errors carry error. metadata.requestId is useful when contacting support.
Success
{
"success": true,
"data": { ... },
"metadata": {
"requestId": "req_abc123",
"timestamp": "2026-04-15T12:00:00Z"
}
}Error
{
"success": false,
"error": {
"code": "NOT_FOUND",
"message": "Deal not found",
"details": { ... }
},
"metadata": {
"requestId": "req_abc123",
"timestamp": "2026-04-15T12:00:00Z"
}
}BAD_REQUEST (400), UNAUTHORIZED (401), FORBIDDEN (403), NOT_FOUND (404), RATE_LIMIT_EXCEEDED (429), INTERNAL_ERROR (500).Pagination
List endpoints use cursor pagination. Pass limit (default 20, max 100) and thenextToken returned by the previous page. When nextToken is omitted from the response, you've reached the end.
GET /deals?limit=50&nextToken=eyJpZCI6...
{
"success": true,
"data": {
"deals": [ ... ],
"totalCount": 423,
"nextToken": "eyJpZCI6..."
}
}Rate Limits
Requests are rate-limited per API key on a rolling 60-second window. Exceeding the limit returns429 RATE_LIMIT_EXCEEDED. Individual API keys may have a lower per-key override set in Settings.
| Tier | Requests / minute |
|---|---|
| Free | 30 |
| Starter | 120 |
| Pro | 300 |
| Team | 600 |
| Enterprise | 1,200 |
Idempotency
Mutating endpoints (POST / PUT) accept an X-Idempotency-Key header. Replays with the same key within 24 hours return the original response — safe for retries after network failures.
curl -X POST "https://api.honecrm.com/v1/deals" \
-H "Authorization: Bearer hone_xxxx" \
-H "X-Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{ "name": "Acme renewal", "value": 50000, "contact": {...} }'Manage sales deals through your pipeline.
Manage contact records linked to deals and companies.
Manage company records with firmographic enrichment.
Attach notes to deals, contacts, and companies.
Set and manage follow-up reminders on any entity.
Log emails, calls, meetings, and other interactions on deals.
Track all interactions and events across your CRM.
Automate CRM processes with event-driven workflows.
Register and manage AI agents for autonomous CRM operations.
Configure outbound webhooks for real-time event delivery.
Manage API keys for programmatic access.
Create reusable email templates with dynamic variables.
Global and semantic search across all entities.
Pipeline analytics and reporting.
AI-powered predictions and anomaly detection.
AI-powered features for email drafting, meeting summaries, and analysis.
OAuth connections and email sync.
Team comments, assignments, activity feed, and notifications.
Create and manage team workspaces.
Manage subscription, billing, and plan information.
User preferences, AI configuration, and email preferences.
AI-powered company firmographic enrichment.
Compliance audit trail for all CRM actions.
Data export, feedback, and account management.
Real-time event streaming via Server-Sent Events.
System health monitoring.