Introduction
The Driftwood API provides programmatic access to your CRM data. Use it to build custom integrations, automate workflows, sync data with other tools, and extend Driftwood’s functionality.
Base URL
Section titled “Base URL”All API requests are made to:
https://api.driftwoodapp.com/apiAPI Style
Section titled “API Style”The Driftwood API uses an RPC-style design. Every endpoint:
- Uses the POST HTTP method
- Accepts a JSON request body
- Returns a JSON response body
- Is accessed at
/api/{operation-name}
This is different from REST APIs. Instead of GET /api/contacts/:id, you call POST /api/contacts-get with {"id": "..."} in the body.
Quick Example
Section titled “Quick Example”# Get a contact by IDcurl -X POST https://api.driftwoodapp.com/api/contacts-get \ -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \ -H "Content-Type: application/json" \ -d '{"id": "550e8400-e29b-41d4-a716-446655440000"}'{ "ok": true, "result": { "id": "550e8400-e29b-41d4-a716-446655440000", "first_name": "Jane", "last_name": "Smith", "email": "jane@example.com", "company_name": "Acme Corp", "tags": ["vip", "enterprise"], "created_at": "2025-01-15T10:30:00Z" }}Response Format
Section titled “Response Format”Every response includes an ok boolean field:
Success:
{ "ok": true, "result": { ... }}Error:
{ "ok": false, "error": { "code": "contacts.not_found", "message": "Contact not found" }}Authentication
Section titled “Authentication”All API endpoints (except auth and public endpoints) require a Bearer token. You can authenticate as a user (via login) or as an OAuth app (via client credentials). See Authentication for details.
What You Can Do
Section titled “What You Can Do”| Resource | Operations |
|---|---|
| Contacts | Create, list, search, update, delete contacts |
| Companies | Create, list, search, update, delete companies |
| Projects | Manage projects with stages, team, and financials |
| Activities | Log calls, emails, and meetings |
| Sources | Track where contacts come from |
| Custom Fields | Define custom data fields for entities |
| Webhooks | Get notified when data changes |
| Users | Manage team members |
| Inbound Email | BCC email tracking and management |
| Imports | Bulk import data from CSV files |
| Bulk Operations | Batch update or delete records |
| Insights | Analytics and reporting data |