SendGrid
Connect SendGrid Marketing so approved affiliates land in a contact list automatically.
Rekomi's SendGrid integration adds every approved affiliate to a SendGrid Marketing Campaigns contact list.
What syncs
When an affiliate is approved (or, optionally, when they apply), Rekomi calls PUT /v3/marketing/contacts with list_ids + contact data. SendGrid responds with 202 Accepted + a job_id; Rekomi then polls GET /v3/marketing/contacts/imports/{job_id} up to 5 times (2s intervals) to confirm the import completed before marking the sync Succeeded.
This async-then-poll pattern prevents the "code says Succeeded but contact never appeared" failure mode where 202 + a later silent worker failure would otherwise hide a real problem. If the job stays pending after 10 seconds, the sync is marked Retrying and the worker re-fires later (PUT is idempotent on the contact's email).
Finding your API key
In SendGrid:
- Settings → API Keys → Create API Key.
- Choose Restricted Access and enable Marketing - Read + Marketing - Write.
- Save and copy the key. It starts with
SG.and is shown once.
Connecting SendGrid in Rekomi
- Go to Integrations in the dashboard sidebar.
- Click the SendGrid card.
- Paste your API key. Click Connect.
- Rekomi runs a test call against
GET /v3/scopesto verify the key + permissions.
Tags
SendGrid has no native tags concept. Rekomi ignores the tags array on subscribe (SendGrid uses lists + custom_fields for segmentation). If you want tag-like behavior, create dedicated lists in SendGrid and pin per-campaign overrides to them.
When sync fires
- Default: only
Approvedaffiliates sync. - Optional: turn on "Include applicants before approval" to also sync
Pending.
Per-campaign overrides
Each campaign can override the account-level configuration. From a campaign's detail page, click the CRM sync tab.
Per-affiliate sync visibility
Open any affiliate's detail page. The CRM sync panel shows the per-CRM status. Resync clears prior jobs and re-fires the sync.
Troubleshooting
sendgrid_no_job_id, 202 response missing job_id. Treated as Retrying so worker re-fires.sendgrid_job_errored/sendgrid_job_failed, Import job reported failure. Inspect SendGrid's "Activity" tab for import errors.sendgrid_job_still_pending, Job hadn't completed within 10s poll window. Worker re-fires later.- 401, API key invalid or missing Marketing scopes. Regenerate with the correct restrictions.
Disconnecting
From the SendGrid connect page, click Disconnect. Integration row + per-campaign overrides are deleted. Sync history is preserved.
See the sendgrid integration overview on the marketing site for use-cases, persona fit, and unique automation patterns.