Available on all CTD plans. These endpoints give you access to your personal contacts, company lookups, relationship paths, job changes, and the full ghost email workflow. Full reference at app.ctd.ai/account/api-access/documentation.
People & contacts
/user/contacts-api/people/details
Returns details for a person identified by email or LinkedIn URL. Exactly one of email or linkedin_url must be provided.
curl "http://api.ctd.ai/user/contacts-api/people/details?email=john@example.com" \
-H "ctd-api-key: YOUR_API_KEY" \
-H "ctd-client-id: you@yourcompany.com"
/user/contacts-api/contacts/all
Returns all contacts in your network.
curl "http://api.ctd.ai/user/contacts-api/contacts/all" \
-H "ctd-api-key: YOUR_API_KEY" \
-H "ctd-client-id: you@yourcompany.com"
/user/contacts-api/contacts/paths
Returns warm introduction paths to a specific contact.
curl "http://api.ctd.ai/user/contacts-api/contacts/paths?email=john@example.com" \
-H "ctd-api-key: YOUR_API_KEY" \
-H "ctd-client-id: you@yourcompany.com"
Companies
/user/contacts-api/companies/details
Returns details for a company identified by domain or LinkedIn URL.
curl "http://api.ctd.ai/user/contacts-api/companies/details?domain=acme.com" \
-H "ctd-api-key: YOUR_API_KEY" \
-H "ctd-client-id: you@yourcompany.com"
/user/contacts-api/companies/contacts/current
Returns people currently at a company who are in your contacts.
curl "http://api.ctd.ai/user/contacts-api/companies/contacts/current?domain=acme.com" \
-H "ctd-api-key: YOUR_API_KEY" \
-H "ctd-client-id: you@yourcompany.com"
/user/contacts-api/companies/contacts/former
Returns people who previously worked at a company and are in your contacts.
curl "http://api.ctd.ai/user/contacts-api/companies/contacts/former?domain=acme.com" \
-H "ctd-api-key: YOUR_API_KEY" \
-H "ctd-client-id: you@yourcompany.com"
/user/contacts-api/companies/potential-contacts/current
Returns current employees at a company who you don't directly know but may be reachable.
curl "http://api.ctd.ai/user/contacts-api/companies/potential-contacts/current?domain=acme.com" \
-H "ctd-api-key: YOUR_API_KEY" \
-H "ctd-client-id: you@yourcompany.com"
/user/contacts-api/companies/potential-contacts/former
Former employees at a company who you don't directly know.
curl "http://api.ctd.ai/user/contacts-api/companies/potential-contacts/former?domain=acme.com" \
-H "ctd-api-key: YOUR_API_KEY" \
-H "ctd-client-id: you@yourcompany.com"
Job changes
/user/notifications-api/public/job-changes/contacts
Returns job change notifications for your direct connections.
curl "http://api.ctd.ai/user/notifications-api/public/job-changes/contacts" \
-H "ctd-api-key: YOUR_API_KEY" \
-H "ctd-client-id: you@yourcompany.com"
LinkedIn import
/user/users-api/public/v1/linkedin-import/connections
Import LinkedIn connections programmatically — same as uploading a LinkedIn data export, but via API.
curl -X POST "http://api.ctd.ai/user/users-api/public/v1/linkedin-import/connections" \
-H "ctd-api-key: YOUR_API_KEY" \
-H "ctd-client-id: you@yourcompany.com" \
-H "Content-Type: application/json" \
-d '{"connections": [...]}'
Ghost emails
These endpoints let you create, manage, and send ghost emails (warm intro requests) entirely via API — useful for automating outreach workflows.
/user/asks-api/public/v1/ghost-emails
List all ghost emails.
curl "http://api.ctd.ai/user/asks-api/public/v1/ghost-emails" \
-H "ctd-api-key: YOUR_API_KEY" \
-H "ctd-client-id: you@yourcompany.com"
/user/asks-api/public/v1/ghost-email
Create a ghost email.
curl -X POST "http://api.ctd.ai/user/asks-api/public/v1/ghost-email" \
-H "ctd-api-key: YOUR_API_KEY" \
-H "ctd-client-id: you@yourcompany.com" \
-H "Content-Type: application/json" \
-d '{"connector_email": "jane@example.com", "target_email": "john@acme.com", "subject": "Quick intro?", "body": "Hi Jane..."}'
/user/asks-api/public/v1/draft
Create a ghost email draft.
curl -X POST "http://api.ctd.ai/user/asks-api/public/v1/draft" \
-H "ctd-api-key: YOUR_API_KEY" \
-H "ctd-client-id: you@yourcompany.com" \
-H "Content-Type: application/json" \
-d '{"connector_email": "jane@example.com", "target_email": "john@acme.com"}'
/user/asks-api/public/v1/draft/{draft_id}/share
Share a draft with the connector.
curl -X POST "http://api.ctd.ai/user/asks-api/public/v1/draft/DRAFT_ID/share" \
-H "ctd-api-key: YOUR_API_KEY" \
-H "ctd-client-id: you@yourcompany.com"
/user/asks-api/public/v1/ghost-emails/{draft_id}/send
Send a ghost email.
curl -X POST "http://api.ctd.ai/user/asks-api/public/v1/ghost-emails/DRAFT_ID/send" \
-H "ctd-api-key: YOUR_API_KEY" \
-H "ctd-client-id: you@yourcompany.com"
/user/asks-api/public/v1/ghost-emails/{draft_id}
Update a ghost email.
curl -X PATCH "http://api.ctd.ai/user/asks-api/public/v1/ghost-emails/DRAFT_ID" \
-H "ctd-api-key: YOUR_API_KEY" \
-H "ctd-client-id: you@yourcompany.com" \
-H "Content-Type: application/json" \
-d '{"subject": "Updated subject"}'
/user/asks-api/public/v1/ghost-emails/{draft_id}/participants
Add a participant to a ghost email.
curl -X POST "http://api.ctd.ai/user/asks-api/public/v1/ghost-emails/DRAFT_ID/participants" \
-H "ctd-api-key: YOUR_API_KEY" \
-H "ctd-client-id: you@yourcompany.com" \
-H "Content-Type: application/json" \
-d '{"email": "participant@example.com"}'
/user/asks-api/public/v1/ghost-emails/{draft_id}/participants
Remove a participant from a ghost email.
curl -X DELETE "http://api.ctd.ai/user/asks-api/public/v1/ghost-emails/DRAFT_ID/participants" \
-H "ctd-api-key: YOUR_API_KEY" \
-H "ctd-client-id: you@yourcompany.com" \
-H "Content-Type: application/json" \
-d '{"email": "participant@example.com"}'
/user/asks-api/public/v1/ghost-emails/{draft_id}/approver/share
Approver shares a ghost email.
curl -X POST "http://api.ctd.ai/user/asks-api/public/v1/ghost-emails/DRAFT_ID/approver/share" \
-H "ctd-api-key: YOUR_API_KEY" \
-H "ctd-client-id: you@yourcompany.com"
/user/asks-api/public/v1/ghost-emails/{draft_id}/approver/decline
Approver declines a ghost email.
curl -X POST "http://api.ctd.ai/user/asks-api/public/v1/ghost-emails/DRAFT_ID/approver/decline" \
-H "ctd-api-key: YOUR_API_KEY" \
-H "ctd-client-id: you@yourcompany.com"