Configuring SPF and DKIM to improve deliverability
SPF and DKIM records allow recipient mail servers to verify that your emails genuinely originate from an authorized source. Without them, your surveys risk landing in spam.
In your domain's DNS manager, add or edit the following TXT record:
- Name:
@(or your domain) - Type: TXT
- Value:
v=spf1 include:mail.comulead.com ~all
If an SPF record already exists, add include:mail.comulead.com before the final ~all — do not create a second SPF record.
In Cortex Voice → Settings → Integrations → Email Deliverability, click Generate DKIM key. Copy the displayed value and create a DNS record:
- Name:
cortex._domainkey.yourdomain.com - Type: TXT
- Value: (the DKIM key generated by Cortex Voice)
DNS propagation takes between 15 minutes and 48 hours. Once propagated, return to Cortex Voice → Email Deliverability and click Verify configuration. Cortex Voice will display a green status for both SPF and DKIM if the setup is correct.
A domain can only have one SPF record. Creating a second one causes both to invalidate each other, worsening your deliverability. Always edit the existing record by adding Cortex Voice's include directive to it.
Common API errors
| HTTP code | Meaning | Solution |
|---|---|---|
401 | Invalid or expired API key | Regenerate the key under Settings → Integrations → API Keys |
403 | Insufficient permissions | Check that the key has the required rights (read / write) |
404 | Resource not found | Check the survey or contact ID in the URL |
422 | Invalid request data | Check the JSON format and required fields |
429 | Rate limit reached | Wait for the hourly reset or implement exponential backoff |
500 | Cortex Voice server error | Check status at status.comulead.com — contact support if persistent |
Webhook troubleshooting
Settings → Integrations → Webhooks → click the relevant webhook → Logs tab. You will see each delivery attempt with the response code received, the timestamp and the payload sent. Filter by Failed status to isolate issues.
In the logs, click the Replay icon next to a failed event to resend it immediately. This is useful if your endpoint was temporarily unavailable (maintenance, server restart) and you missed events during the 3-attempt automatic retry window.
In the webhook configuration, click Send test event. Cortex Voice sends a sample payload with test data to your endpoint. Verify that your server receives the payload, returns HTTP 200 and processes the data correctly before deploying to production.
Login and authentication issues
On the Cortex Voice login page → Forgot password → enter your email address → you will receive a reset link valid for 30 minutes. If you do not receive the email within 5 minutes, check your junk/spam folder.
If your two-factor authentication codes are consistently rejected, the likely cause is a clock drift between your device and Cortex Voice's servers. Synchronize your device's time (Settings → Date & Time → Automatic). If the issue persists, use a recovery code and reconfigure 2FA.
Before contacting support for a login or performance issue, check status.comulead.com. This page shows the real-time status of each component (API, interface, emails, webhooks) and the incident history for the past 90 days.
Key takeaways
- SPF and DKIM are essential for deliverability — only one SPF record per domain; always edit the existing one
- A 429 API error means you have hit the hourly rate limit — implement exponential backoff
- Webhook logs in Cortex Voice allow you to replay missed events individually
- Rejected 2FA codes are usually caused by clock drift — synchronize your device's time
- Check status.comulead.com before contacting support for a performance or login issue