Third-Party Integrations
Overview
DOLU.ai connects with popular third-party services to extend your CRM capabilities. Integrations allow you to sync calendars, push leads to advertising platforms, automate workflows through Zapier, receive real-time event notifications via webhooks, and access the DOLU.ai API programmatically. This page covers every integration available and how to configure each one.
How to Access
Dashboard → Settings → IntegrationsFrom the left sidebar, click Settings, then select Integrations. You will see integration cards grouped by category: Calendar, Advertising, Automation, and Developer.
Google Calendar Integration
Sync your DOLU.ai appointments with Google Calendar so that every booking made through the AI Brain or CRM automatically appears on your calendar.
Prerequisites
- A Google account with Google Calendar enabled
- Permission to authorize third-party apps (check with your Google Workspace admin if applicable)
Connection Steps
- Navigate to Settings > Integrations > Google Calendar.
- Click Connect Google Calendar.
- A Google OAuth popup will open. Sign in with the Google account whose calendar you want to sync.
- Grant DOLU.ai permission to view and edit events on your calendar.
- After authorization, you will be returned to DOLU.ai. The Google Calendar card will show Connected.
- Select a default calendar from the dropdown (if you have multiple calendars).
- Choose sync direction:
- One-way (DOLU.ai to Google): Appointments created in DOLU.ai appear on Google Calendar.
- Two-way: Changes in either system are reflected in the other.
- Click Save Settings.
How It Works
- When a customer books an appointment through the AI Brain, a calendar event is created automatically with the customer's name, contact info, and appointment details.
- If two-way sync is enabled, blocking time on Google Calendar will mark those slots as unavailable in DOLU.ai.
- Canceled appointments in DOLU.ai are automatically removed from Google Calendar.
Google Ads Integration
Connect Google Ads to track which ad campaigns are generating leads in your DOLU.ai CRM.
Prerequisites
- A Google Ads account with active campaigns
- Conversion tracking enabled in Google Ads
Connection Steps
- Navigate to Settings > Integrations > Google Ads.
- Click Connect Google Ads.
- Authenticate with your Google account that manages the Ads account.
- Select the Google Ads account (Customer ID) from the list.
- Enable lead conversion tracking. DOLU.ai will automatically send conversion events when a lead is created from a Google Ads click.
- Optionally map DOLU.ai lead stages to Google Ads conversion actions (e.g., "Qualified Lead" = conversion, "Closed Won" = conversion with value).
- Click Save Settings.
Conversion Tracking
Once connected, DOLU.ai passes the gclid (Google Click ID) from incoming widget chats back to Google Ads. This allows you to:
- See which keywords and campaigns generate the most qualified leads.
- Optimize your ad spend based on actual CRM outcomes, not just clicks.
- Use Google's Smart Bidding with real conversion data from DOLU.ai.
Zapier Integration
Zapier connects DOLU.ai with 5,000+ apps. Create automated workflows (Zaps) to push data between DOLU.ai and your favorite tools.
Connection Steps
- Navigate to Settings > Integrations > Zapier.
- Click Connect Zapier. This opens the Zapier website.
- Search for DOLU.ai in the Zapier app directory.
- Create a new Zap and select DOLU.ai as the trigger or action app.
- When prompted, paste your DOLU.ai API Key (found at Settings > Integrations > API Keys).
- Configure your Zap trigger (e.g., "New Lead Created") and action (e.g., "Create Row in Google Sheets").
- Test the Zap and turn it on.
Popular Zap Examples
| Trigger (DOLU.ai) | Action (External App) | Use Case |
|---|---|---|
| New Lead Created | Add row in Google Sheets | Lead backup |
| Deal Stage Changed | Send Slack notification | Sales team alerts |
| New Appointment | Create Google Calendar event | Calendar sync (alternative) |
| New Support Ticket | Create Trello card | Support task tracking |
| Lead Score Updated | Send email via Mailchimp | Nurture high-score leads |
Webhooks
Webhooks allow DOLU.ai to send real-time HTTP POST notifications to your server whenever specific events occur.
Configuration Steps
- Navigate to Settings > Integrations > Webhooks.
- Click Add Webhook.
- Enter a name for the webhook (e.g., "Lead Notifications").
- Enter the URL of your server endpoint (must be HTTPS).
- Select the events that trigger this webhook:
lead.created— A new lead is addedlead.updated— A lead's information changesdeal.stage_changed— A deal moves to a new pipeline stageappointment.created— A new appointment is bookedappointment.canceled— An appointment is canceledmessage.received— A new message arrives on any channelticket.created— A support ticket is opened
- Optionally add a secret key for payload signature verification.
- Click Save Webhook.
Payload Format
Webhooks send a JSON payload with the following structure:
{
"event": "lead.created",
"timestamp": "2025-01-15T10:30:00Z",
"data": {
"id": "lead_abc123",
"name": "John Doe",
"email": "[email protected]",
"phone": "+905551234567",
"source": "whatsapp",
"score": 75
}
}Verifying Webhook Signatures
If you configured a secret key, each request includes an X-Dolu-Signature header. Compute an HMAC-SHA256 of the raw request body using your secret and compare it to the header value.
Retry Policy
DOLU.ai retries failed webhook deliveries (non-2xx responses) up to 3 times with exponential backoff: 1 minute, 5 minutes, 30 minutes.
API Keys
API keys allow you to authenticate with the DOLU.ai REST API for custom integrations and scripts.
Creating an API Key
- Navigate to Settings > Integrations > API Keys.
- Click Generate New Key.
- Enter a label (e.g., "Backend Integration", "Zapier").
- Select permissions: Read Only, Read/Write, or Full Access.
- Click Create. The key is displayed once. Copy it immediately — it cannot be viewed again.
- The new key appears in the list with its label, creation date, last used date, and permissions.
Managing API Keys
- Revoke: Click the trash icon next to a key to permanently revoke it. Revoked keys stop working immediately.
- Rotate: Create a new key, update your integration to use it, then revoke the old key. There is no automatic rotation.
- Activity Log: Click a key's label to see recent API calls made with that key.
Rate Limits
| Plan | Rate Limit |
|---|---|
| Starter | 100 requests/minute |
| Professional | 500 requests/minute |
| Enterprise | 2,000 requests/minute |
Exceeding the rate limit returns HTTP 429. Implement exponential backoff in your client.
Tips & Best Practices
Use Descriptive Labels for API Keys
Name your API keys after the service they power (e.g., "Zapier Production", "Internal CRM Sync"). This makes it easy to identify and revoke the right key if needed.
Test Webhooks with a Tool Like webhook.site
Before pointing webhooks to your production server, use a testing service such as webhook.site to inspect payloads and verify the event structure.
Enable Two-Way Calendar Sync
Two-way sync between DOLU.ai and Google Calendar ensures that manually blocked time slots are respected by the AI Brain when offering appointment times to customers.
Limit API Key Permissions
Follow the principle of least privilege. If an integration only reads data, create a Read Only key. This minimizes risk if the key is compromised.
Troubleshooting
Google Calendar events not syncing
- Re-authorize the Google connection by clicking Reconnect on the Google Calendar card.
- Ensure the selected default calendar is not a read-only shared calendar.
- Check that two-way sync is enabled if you expect DOLU.ai to pick up Google Calendar changes.
Zapier triggers not firing
- Verify your DOLU.ai API key is still valid (not revoked).
- Check the Zap's history in Zapier for error details.
- Ensure the trigger event actually occurred in DOLU.ai (e.g., a real lead was created, not just edited).
Webhook delivery failures
- Confirm your endpoint URL is HTTPS and publicly accessible.
- Check your server logs for errors when processing the payload.
- Verify the response code is 2xx. DOLU.ai treats 3xx redirects as failures.
- Use the Webhook Logs section at Settings > Integrations > Webhooks > Logs to see delivery attempts and responses.
API key returning 401 Unauthorized
- Confirm you are sending the key in the
Authorization: Bearer YOUR_KEYheader. - Check that the key has not been revoked.
- Ensure the key has sufficient permissions for the endpoint you are calling.
Google Ads conversions not tracking
- Verify the
gclidparameter is being captured by your website or widget. - Check that the Google Ads account is properly linked and the conversion action is configured.
- Allow up to 24 hours for conversions to appear in Google Ads reporting.
FAQ
Q: How many webhooks can I create? A: Up to 20 webhooks per tenant on all plans.
Q: Can I connect multiple Google accounts? A: Currently, one Google account per integration type (Calendar, Ads) is supported. Multi-account support is planned.
Q: Is data sent to Zapier encrypted? A: Yes. All API communication uses HTTPS/TLS encryption. Your API key authenticates the connection.
Q: What happens if I revoke an API key used by Zapier? A: The Zap will fail on the next trigger. You will need to update the Zap with a new API key.
Q: Can I filter which events a webhook receives? A: Yes. When creating or editing a webhook, you select exactly which events trigger it. Unselected events are not sent.
Q: Do integrations consume my API rate limit? A: Zapier and webhook deliveries from DOLU.ai do not count against your inbound rate limit. Only requests you make to the DOLU.ai API using an API key are counted.
