โ† Your Asset LibraryOutdoor Vibes

Foundation & Accounts

Dialpad API Capabilities (Reference)

Technical reference for pulling call, SMS, and transcript data out of Dialpad if you ever consolidate.


Date: 2026-05-05 Purpose: Evaluate Dialpad API capabilities for extracting call data, SMS, voicemails, transcripts, and contact information to enrich Jobber CRM customer profiles and improve marketing personalization for Trimlight Phoenix and AZ Palm Tree Lights.


1. Dialpad API Overview

Does Dialpad Have a Public REST API?

Yes. Dialpad offers a comprehensive REST API (v2) with 140+ endpoints covering voice, SMS, user management, analytics, contact center, and AI features.

Authentication Methods

Dialpad supports two authentication approaches:

1. API Key (Recommended for Jack's use case)

2. OAuth 2.0 (Three-Legged Authorization Code Flow)

For Jack's setup, the simple API Key approach is sufficient. OAuth is overkill for a single-company internal integration.

Available OAuth Scopes

These scopes control what data the API key or OAuth token can access:

Scope Description
(default) Basic API access (calls, contacts, users, etc.)
recordings_export Access call recording URLs in call events
message_content_export Access SMS text content for authenticated user
message_content_export:all Access SMS text content company-wide
screen_pop Screen pop API access
calls:list Access to Call LIST API (required for call history)
fax_message Fax API and event access
change_log Change log event subscriptions
offline_access Refresh token for long-lived sessions (OAuth only)

Important: Some scopes require Dialpad approval. Contact api@dialpad.com to request additional scopes.

Rate Limits

Endpoint / Category Limit
Overall API 20 requests/second per company
Call List 1,200/minute
Call Get (single call) 10/minute
Transcripts 1,200/minute
Contacts Get 1,200/minute
SMS Send (Tier 0) 100/minute
SMS Send (Tier 1) 800/minute
Create Contacts 100/minute
Initiate Calls 5/minute per user
Callback (specific number) 5/minute
Callback (call center) 100/minute
Callback (company) 1,000/minute
Stats API 200/hour
Stats GET result 1,200/minute

Key note: Rate limits are applied at the company level, not per API key. Using multiple API keys from the same company does NOT increase the rate limit.

Plan Requirements for API Access

Dialpad offers three tiers:

Plan Price (Annual) Price (Monthly) API Access
Standard $15/user/month $27/user/month Basic API access likely available
Pro $25/user/month $35/user/month Full API access confirmed
Enterprise Custom (100+ users) Custom Full API + advanced features

Assessment: API access is generally available across plans, but advanced integrations (custom apps, full API endpoint access) typically require Pro or Enterprise. Jack should verify his current plan level. If he is on Standard, he may need to upgrade to Pro ($25/user/month annual) for reliable API access with all scopes.


2. Available Data Endpoints

Call Logs / Call History

Endpoint: GET /api/v2/call (Call List)

Endpoint: GET /api/v2/call/{id} (Call Get)

Verdict: Fully capable of pulling call history by user or department, including duration, direction, timestamps, and caller info.

Call Recordings and Transcripts

Endpoint: GET /api/v2/transcripts/{call_id} (Call Transcript)

Recording URLs:

AI Recaps (Dialpad AI / DialpadGPT):

Verdict: Excellent. Full AI transcripts, recordings, and AI-powered summaries/recaps are accessible via API. This is one of Dialpad's strongest differentiators.

SMS / Text Message History

Endpoint: POST /api/v2/sms (SMS Send)

SMS History / Retrieval:

Important privacy note: By default, SMS text content is NOT included in SMS events. You must enable the message_content_export scope (for authenticated user) or message_content_export:all (company-wide) to receive actual message text.

Verdict: Can send SMS via API and receive real-time SMS events via webhooks, but there is no endpoint to pull historical SMS conversation threads. Must set up webhooks to capture SMS data going forward.

Voicemails and Voicemail Transcripts

Verdict: Voicemail data, recordings, and transcripts are accessible. Use call events with voicemail state and/or the transcript endpoint.

Contact / Customer Records

Endpoint: GET /api/v2/contacts/{id} (Contact Get)

Verdict: Can retrieve contact details by ID, but cannot search by phone number. To build a phone-number-to-contact lookup, you would need to maintain your own mapping table, populated via webhooks or periodic syncs.

Call Analytics / Stats

Endpoint: POST /api/v2/stats (Initiate Processing) + GET /api/v2/stats/{request_id} (Get Result)

Two export types:

Type Description
Stats Aggregated metrics (e.g., total answered, missed, abandoned calls per agent)
Records Individual call records with full metadata and Call IDs

Parameters:

Verdict: Full analytics export capability. Can pull aggregated call volume stats or individual call records with metadata. Good for building dashboards or periodic reports.


3. Webhook / Event Support

Dialpad has a robust webhook system for real-time event notifications.

Setup Process

  1. Create a webhook: POST /api/v2/webhooks -- registers your endpoint URL
  2. Create event subscription: Subscribe to specific event types on your webhook
  3. Events are delivered as HTTP POST requests to your webhook URL

Security

Available Event Types

Event Type Description
Call Events Real-time call state changes (ringing, connected, hold, hangup, voicemail, missed, etc.)
SMS Events Inbound and outbound SMS messages with sender/recipient/content
Contact Events Contact creation, updates, deletions
Agent Status Events Agent availability changes (for call centers)
Change Log Events Administrative changes to the Dialpad account

Call Event States (24+ states available)

Key states relevant to Jack's use case:

Subscription Targeting

Events can be scoped to:

Limits: 100 subscriptions per event type (all targets combined); 10 per type for company-level targeting.

SMS Event Data Fields

Can We Trigger n8n Workflows from Dialpad Events?

Yes. Dialpad webhooks send HTTP POST requests to any URL you specify. n8n's Webhook Trigger node can receive these events directly. Flow:

  1. Create an n8n workflow with a Webhook Trigger node
  2. Get the webhook URL from n8n
  3. Register that URL as a Dialpad webhook via the API
  4. Subscribe to desired events (calls, SMS, voicemail)
  5. n8n workflow fires on every event

Verdict: Full webhook support with rich event data. Perfect for real-time automation with n8n.


4. Specific Use Cases -- Feasibility Assessment

Use Case 1: Pull All Call History for a Customer (by Phone Number)

Feasibility: Possible with workaround

Use Case 2: Pull SMS Conversation History

Feasibility: Forward-looking only (no historical bulk export)

Use Case 3: Get AI Transcripts/Summaries of Sales Calls

Feasibility: Fully supported

Use Case 4: Detect Sentiment or Topics from Call Transcripts

Feasibility: Partially supported natively, extensible

Use Case 5: Auto-Log Dialpad Activity into Google Sheets or Jobber

Feasibility: Fully supported

Use Case 6: Trigger Follow-Up Sequences on Missed Calls / Voicemails

Feasibility: Fully supported

Use Case 7: Build a Customer Communication Timeline

Feasibility: Achievable with custom middleware


5. Integration Options

n8n Integration

Native n8n node: No dedicated Dialpad node exists in n8n's built-in node library.

Workaround (fully functional):

Zapier Integration

Native Zapier integration exists: https://zapier.com/apps/dialpad/integrations

Available Triggers:

Trigger Type
Call State Changed Instant
SMS Created Instant

Available Actions:

Action Description
Create Contact Create and optionally assign a contact in Dialpad
API Request (Beta) Execute raw HTTP requests with Dialpad authentication

Popular Zapier recipes:

Limitation: Only 2 triggers and 2 actions. For complex workflows, the API Request action provides escape-hatch access to the full API.

Make.com (Integromat) Integration

Native Make integration exists: https://www.make.com/en/integrations/dialpad

Available Triggers:

Available Actions:

Popular templates:

Direct REST API via n8n HTTP Request

This is the recommended approach for Jack's use case. It provides:

Existing CRM Integrations

Dialpad has native integrations with:

For Jobber, a custom integration via n8n (Dialpad API -> n8n -> Jobber API) is required.


6. What Jack Needs to Provide

Credentials and Access

  1. Dialpad Admin Access -- Jack (or his admin) must generate an API key from Dialpad admin settings
  2. API Key with Scopes -- When creating the API key, enable these scopes:
    • calls:list -- for call history access
    • recordings_export -- for call recording URLs
    • message_content_export:all -- for SMS text content (company-wide)
    • Default scope covers contacts, users, webhooks, stats
  3. Dialpad Plan Verification -- Jack should confirm his current Dialpad plan. Pro plan ($25/user/month) is recommended for full API access. Standard plan may have API limitations.

Admin Setup Required

  1. Generate API Key:

    • Go to Dialpad Admin Settings
    • Navigate to API section
    • Create a new API key
    • Select required scopes
    • Copy and securely store the key
  2. Enable Call Recording (if not already):

    • Ensure Dialpad AI transcription is turned on for all users
    • Enable call recording for relevant lines/users
    • This ensures transcripts and recordings are available via API
  3. Verify Phone Numbers:

    • Confirm which Dialpad numbers are used for Trimlight Phoenix vs. AZ Palm Tree Lights
    • Important for filtering call/SMS data by brand
  4. Sandbox Access (Optional):

    • Dialpad offers a sandbox environment for testing
    • Request sandbox access at https://www.dialpad.com/developers/
    • Recommended for testing webhook integrations before going live

7. Privacy and Compliance Considerations

Arizona Call Recording Laws

Arizona is a one-party consent state (A.R.S. 13-3005).

Multi-state consideration: If customers are calling from two-party consent states (California, Florida, etc.), the stricter law applies. Since Jack's business is local (Scottsdale/Phoenix metro), most callers will be in Arizona, but the automated disclosure is still recommended.

Dialpad Data Retention Policies

Plan Level Access Window
Essential / Advanced 45 days
Premium Up to 1 year

Recommendation: If Jack wants to build a long-term customer communication history, set up webhooks and API exports to pull data into our own storage before it falls outside the retention window. Do not rely on Dialpad as the long-term data store.

TCPA Compliance for SMS Data

Data Privacy Best Practices


8. Recommended Implementation Plan

Phase 1: Foundation (Week 1)

  1. Verify Jack's Dialpad plan (upgrade to Pro if needed)
  2. Generate API key with required scopes
  3. Set up n8n webhook endpoints for call events and SMS events
  4. Create Dialpad webhooks pointing to n8n
  5. Test with a few calls and texts to verify data flow

Phase 2: Call Data Pipeline (Week 2)

  1. Build n8n workflow: Call Event webhook -> Google Sheets (call log)
  2. Add missed call / voicemail detection -> trigger follow-up notification
  3. Pull historical calls via Call List API -> backfill Google Sheets
  4. Set up transcript retrieval for completed calls

Phase 3: SMS + CRM Enrichment (Week 3)

  1. Activate SMS event webhooks with message_content_export:all scope
  2. Build n8n workflow: SMS Event -> Google Sheets (SMS log)
  3. Create Jobber integration: match phone numbers to Jobber clients
  4. Auto-create notes on Jobber client records with call/SMS activity

Phase 4: AI Insights (Week 4)

  1. Pull AI recaps and transcripts for sales calls
  2. Process with Claude API for deeper analysis (sentiment, lead scoring, topic extraction)
  3. Build customer communication timeline combining all data sources
  4. Create automated follow-up sequences based on call outcomes

9. Key Limitations and Risks

Limitation Impact Mitigation
No SMS history endpoint Cannot pull past SMS conversations Set up webhooks ASAP to capture going forward
No contact search by phone Cannot look up contacts by phone number Build own phone-to-contact mapping table
Call Get rate limit (10/min) Very slow for bulk individual call retrieval Use Call List for bulk, Call Get only for specific details
20 req/sec overall limit Throttling on high-volume operations Implement rate limiting in n8n workflows
Data retention windows Recordings/transcripts expire (45 days - 1 year) Export data to own storage before expiration
Plan-gated features Some API access may require Pro plan Verify Jack's plan before starting
No native Jobber integration Requires custom middleware Build via n8n with HTTP Request nodes

10. Summary

Dialpad's API is well-suited for the planned integration. The key capabilities we need are available:

The main gaps are:

Next step: Confirm Jack's Dialpad plan level and request API key generation with the scopes listed in Section 6.

Part of your Outdoor Vibes asset library โ€” yours to keep and run.

โ€” Andrew