Skip to content

Search is only available in production builds. Try building and previewing the site to test it out locally.

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.

All API requests are made to:

https://api.driftwoodapp.com/api

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.

Terminal window
# Get a contact by ID
curl -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"
}
}

Every response includes an ok boolean field:

Success:

{
"ok": true,
"result": { ... }
}

Error:

{
"ok": false,
"error": {
"code": "contacts.not_found",
"message": "Contact not found"
}
}

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.

ResourceOperations
ContactsCreate, list, search, update, delete contacts
CompaniesCreate, list, search, update, delete companies
ProjectsManage projects with stages, team, and financials
ActivitiesLog calls, emails, and meetings
SourcesTrack where contacts come from
Custom FieldsDefine custom data fields for entities
WebhooksGet notified when data changes
UsersManage team members
Inbound EmailBCC email tracking and management
ImportsBulk import data from CSV files
Bulk OperationsBatch update or delete records
InsightsAnalytics and reporting data