{ "GET /team": { "summary": "Get Team", "tags": [ "Team" ], "responses": { "200": { "application/json": { "_id": "tea_b4rMsi2trBhahaha", "name": "lemlist", "userIds": [ "usr_4YGm9ez7gMdyhahaha", "usr_5GdFEgSLCN4hahaha", "usr_F7iPChEQ3phahaha" ], "createdBy": "usr_4YGm9ez7gMdyhahaha", "createdAt": "2018-02-22T08:52:30.926Z", "hooks": [ { "_id": "hoo_Ib5jfViX9hn3FzNqr", "targetUrl": "https://hooks.zapier.com/hooks/standard/946357/*some-id*/", "createdAt": "2018-06-05T09:07:07.761Z", "zapId": 123456789, "type": "emailsReplied", "campaignId": "cam_TgyErJghahaha", "isFirst": true }, { "_id": "hoo_SDRr2w4JigZDL7OB2", "targetUrl": "https://hooks.zapier.com/hooks/standard/5078320/*some-other-id*/", "createdAt": "2019-06-05T14:38:56.535Z", "zapId": 987654321, "type": "emailsReplied", "campaignId": "cam_J2M3P9Z8whahaha" }, { "_id": "hoo_IYAPP4HnSyU7UTH3E", "targetUrl": "https://hooks.zapier.com/hooks/standard/5078320/*some-id*/", "createdAt": "2019-06-05T15:49:36.624Z", "zapId": 59831776, "type": "emailsReplied", "campaignId": "cam_qBNYaIFXA77eXM1Ey", "isFirst": true }, { "_id": "hoo_UAtwcPAd0tK9U6hKG", "targetUrl": "https://subdomain.pipedream.net", "createdAt": "2022-02-10T16:45:28.216Z", "campaignId": "cam_7BE8IZRaqahU44Wp6" } ], "slackWebhook": { "url": "https://hooks.slack.com/services/REDACTED*some-id*", "failCounter": 1 }, "beta": [ "outreachQueue", "crmSyncApiSalesforce", "voipWhitelist", "lemrich_postLemrichKafka", "computedFieldActiveCampaigns" ], "pictureId": "fil_vRhMy09kT1Rv4Kq4O.png", "invitedUsers": [ { "email": "support@lemlist.com", "role": "member", "invitedBy": "usr_w7XoMXW37hahaha", "invitedAt": "2023-03-04T20:06:29.585Z" }, { "email": "taylor@example.com", "role": "admin", "invitedBy": "usr_Hq4uzGvFP5q6homd", "invitedAt": "2024-09-13T12:39:55.984Z" } ], "agency": "usr_4YGm9ez7gMd2123456", "customDomain": "custom.domain.com", "users": [ { "userId": "usr_4YGm9ez7gMdyhahaha", "name": "John Doe", "email": "john@lemlist.com", "role": "admin" }, { "userId": "usr_5GdFEgSLCN4hahaha", "name": "Jane Doe", "email": "jane@lemlist.com", "role": "member" } ] } }, "400": { "text/plain": "No API key provided" }, "401": { "text/plain": "The authentication you supplied is incorrect" }, "403": { "text/plain": "User linked to this API key is blocked" }, "404": { "text/plain": "No user found for this API key" } } }, "GET /team/senders": { "summary": "Get Team Senders", "tags": [ "Team" ], "responses": { "200": { "application/json": [ { "userId": "usr_QB6kKK1wv68DujOET", "campaigns": [ { "_id": "cam_tBpHORyt3WhTQoi5A", "name": "Onboarding", "status": "paused", "sendingChannels": [ "email", "manual", "linkedinVisit" ] }, { "_id": "cam_O3BQOaXuyUuyqEHug", "name": "Community Launch", "status": "running", "sendingChannels": [ "email", "manual", "linkedinVisit" ] }, { "_id": "cam_NTJ1rituEQ61jVl6p", "name": "Email Warmup Test", "status": "ended", "sendingChannels": [ "email", "manual", "linkedinVisit" ] }, { "_id": "cam_1kESsVXFMzfrJImNc", "name": "Product Launch Campaign", "status": "draft", "sendingChannels": [ "email", "manual", "linkedinVisit" ] } ] }, { "userId": "usr_v5xz8De4nsLeNWAfv", "campaigns": [ { "_id": "cam_fDwCRnYtL1cfwcA7k", "name": "WhatsApp Outreach", "status": "draft", "sendingChannels": [ "email", "whatsappMessage" ] }, { "_id": "cam_WBCWNrsoMKkCWWLqw", "name": "WhatsApp Test Campaign", "status": "ended", "sendingChannels": [ "email", "whatsappMessage" ] } ] }, { "userId": "usr_rhhX1KT0qgOGCOrgE", "campaigns": [ { "_id": "cam_pCi08vhGoho2oK3YR", "name": "Networking", "status": "running", "sendingChannels": [ "email", "linkedinSend", "linkedinVisit", "linkedinInvite" ] }, { "_id": "cam_zhcBovstiHVaV1abf", "name": "Product Tools Campaign", "status": "paused", "sendingChannels": [ "email", "linkedinSend", "linkedinVisit", "linkedinInvite" ] } ] } ] }, "400": { "text/plain": "Bad params (invalid state parameter)" }, "401": { "text/plain": "The authentication you supplied is incorrect" } } }, "GET /team/credits": { "summary": "Get Team Credits", "tags": [ "Team" ], "responses": { "200": { "application/json": { "credits": 100, "details": { "remaining": { "total": 100, "freemium": 0, "subscription": 80, "gifted": 10, "paid": 10 } } } }, "400": { "text/plain": "No API key provided" }, "401": { "text/plain": "The authentication you supplied is incorrect" }, "403": { "text/plain": "User linked to this API key is blocked" }, "404": { "text/plain": "No user found for this API key" } } }, "GET /team/crmUsers": { "summary": "Get Team CRM Users", "tags": [ "Team" ], "responses": { "200": { "application/json": [ { "userId": "usr_FU6yAd3UdBFel0UDy", "crm": "salesforce" }, { "userId": "usr_FU6yAd3UdBFel0UDy", "crm": "hubspot" }, { "userId": "usr_FU6yAd3UdBFel0UDy", "crm": "pipedrive" } ] }, "400": { "text/plain": "Bad team" }, "401": { "text/plain": "The authentication you supplied is incorrect" } } }, "GET /users/{userId}": { "summary": "Get User", "tags": [ "Users" ], "responses": { "200": { "application/json": { "_id": "usr_eSrHPSoL9QVPUOsho", "email": "example@lemlist.co", "role": "admin", "linkedIn": { "linkedinUrl": "https://www.linkedin.com/in/john-doe", "status": true, "inviteLimit": 25, "sendLimit": 33, "visitLimit": 36 }, "mailboxes": [ { "_id": "usm_2mkqJNUjnJQiyVBht", "email": "example@gmail.com", "provider": "google", "status": "ERROR", "lemlist": { "emailLimit": 50 }, "lemwarm": { "active": false } }, { "_id": "usm_gqlN3jKWoGo1Je8El", "email": "example@outlook.com", "status": "ERROR", "lemlist": { "emailLimit": 50 }, "lemwarm": { "active": false } } ] } }, "400": { "text/plain": "Bad team" }, "401": { "text/plain": "The authentication you supplied is incorrect" } } }, "GET /campaigns": { "summary": "Get Many Campaigns", "tags": [ "Campaigns" ], "responses": { "200": { "application/json": [ { "_id": "cam_4HrZbi8xsez4QlrnL", "name": "Product Launch Campaign", "emoji": "🚀", "timezone": "Europe/Paris", "labels": [], "createdAt": "2025-02-20T14:45:54.230Z", "createdBy": "usr_zdTCrNFyXblc4mrYK", "status": "running", "hasError": true, "errors": [ "Your campaign does not have sender." ] }, { "_id": "cam_k3gu2sa4KIfhRK34M", "name": "Sales Outreach 2025", "labels": [], "createdAt": "2025-02-05T09:00:07.541Z", "createdBy": "usr_UEvrOEP0CTAYEoFR4", "status": "running", "hasError": true, "errors": [ "One of your sender has no email provider.", "Your campaign have an invalid sender mailbox" ] }, { "_id": "cam_HcFmYEhnCI39Pscan", "name": "CRM Integration Test", "labels": [ "CRM" ], "createdAt": "2023-01-27T14:58:52.482Z", "createdBy": "usr_i52PiQtbq8SucjVTM", "status": "running", "hasError": true, "errors": [ "One of your sender has no email provider.", "Your campaign have an invalid sender mailbox" ] }, { "_id": "cam_yZXeC6q3SXs3ha1FI", "name": "Customer Onboarding", "labels": [], "createdAt": "2022-06-14T13:32:57.880Z", "createdBy": "usr_i52PiQtbq8SucjVTM", "status": "running" } ] }, "400": { "text/plain": "No API key provided" }, "401": { "text/plain": "The authentication you supplied is incorrect" }, "403": { "text/plain": "User linked to this API key is blocked" }, "404": { "text/plain": "No user found for this API key" } } }, "POST /campaigns": { "summary": "Create Campaign", "tags": [ "Campaigns" ], "request": { "application/json": { "name": "My new campaign", "timezone": "America/New_York", "autoReview": true, "autoReviewConditions": [ "deliverable", "risky" ] } }, "responses": { "200": { "application/json": { "_id": "cam_kok3I33Sba7mcNIO7", "sequenceId": "seq_ScVmFnlKdP6aVmyZN", "scheduleIds": [ "skd_IrCdCoQ0ZUAEeUDwR" ], "teamId": "tea_edrkv2LgUK4Wf4ZzO", "createdBy": "usr_Sy3xIhbEi7auHFv5A", "createdAt": "2025-01-16T13:53:22.726Z", "state": "running", "scannedCount": 0, "reviewedCount": 0, "inSequenceLeadCount": 0, "variableKeys": [], "senders": [], "sendUsers": [], "displayedVariableKeys": [ "companyName" ], "emoji": "🚀", "stopOnEmailReplied": true, "crmOpportunitiesOnTask": true, "unsubscribe": "campaign", "name": "My new campaign", "crm": "hubspot", "crmUserId": "usr_0p9Q8ZyXSTNGpsHOe" } }, "400": { "text/plain": "No API key provided" }, "401": { "text/plain": "The authentication you supplied is incorrect" }, "403": { "text/plain": "User linked to this API key is blocked" }, "404": { "text/plain": "No user found for this API key" } } }, "GET /campaigns/{campaignId}": { "summary": "Get Campaign", "tags": [ "Campaigns" ], "responses": { "200": { "application/json": { "_id": "cam_bSn8EORHQxbWPjHvu", "name": "Product Launch Campaign", "createdAt": "2025-10-27T07:01:04.058Z", "status": "draft", "creator": { "userId": "usr_ahfFktBBHUIxbVG5P", "userEmail": "support@lemlist.com" }, "senders": [ { "id": "usr_rhhX1KT0qgOGCOrgE", "email": "support@lemlist.com", "sendUserMailboxId": "usm_J7BzS86A1vRMc2AuB" } ] } }, "400": { "text/plain": "Bad team" }, "404": { "text/plain": "Campaign not found" } } }, "PATCH /campaigns/{campaignId}": { "summary": "Update Campaign", "tags": [ "Campaigns" ], "request": { "application/json": { "name": "New campaign name", "stopOnEmailReplied": true, "stopOnMeetingBooked": true, "stopOnLinkClicked": false, "leadsPausedByInterest": false, "opportunityReplied": true, "opportunityClicked": false, "autoLeadInterest": true, "disableTrackOpen": false, "disableTrackClick": false, "disableTrackReply": false, "disableOutOfOffice": false, "sequenceSharing": false, "sendUserIds": [ "usr_2aBCdEfGHiJkLmNOp", "usr_7xYzAbCdEfGhIjKlM" ], "autoReview": true, "autoReviewConditions": [ "deliverable", "risky" ] } }, "responses": { "200": { "application/json": { "name": "New campaign name", "stopOnEmailReplied": true, "stopOnMeetingBooked": true, "stopOnLinkClicked": false, "leadsPausedByInterest": false, "opportunityReplied": true, "opportunityClicked": false, "autoLeadInterest": true, "disableTrackOpen": false, "disableTrackClick": false, "disableTrackReply": false, "disableOutOfOffice": false, "sequenceSharing": false, "sendUsers": [ { "id": "usr_2aBCdEfGHiJkLmNOp", "mailboxes": [ { "sendUserMailboxId": "smb_1aBcDeFgHiJkLmNoP", "email": "john@acme.com" } ], "phoneNumbers": [ "+15551234567" ], "whatsappAccountIds": [ "wha_3xYzAbCdEfGhIjKlM" ] }, { "id": "usr_7xYzAbCdEfGhIjKlM", "mailboxes": [ { "sendUserMailboxId": "smb_9zYxWvUtSrQpOnMlK", "email": "jane@acme.com" } ], "phoneNumbers": [], "whatsappAccountIds": [] } ] } }, "400": { "text/plain": { "badTeam": { "summary": "Bad team", "value": "Bad team" }, "dynamicStrategy": { "summary": "Cannot update senders for dynamic strategy campaigns", "value": "Cannot update senders on campaigns with a dynamic sender strategy (contactOwner, leadImporter, customField)" }, "noValidSenders": { "summary": "No valid sender IDs", "value": "None of the provided sender IDs are members of this team" }, "noCapableSenders": { "summary": "No senders with required capabilities", "value": "None of the provided senders have the required capabilities for this campaign" }, "missingChannels": { "summary": "Campaign channels not covered", "value": "The provided senders do not cover the following campaign channels: linkedin, sms" } } }, "404": { "text/plain": "Campaign not found" } } }, "POST /campaigns/{campaignId}/pause": { "summary": "Pause Campaign", "tags": [ "Campaigns" ], "responses": { "200": { "application/json": { "_id": "cam_A1B2C3D4E5F6G7H8I9", "state": "paused" } }, "400": { "text/plain": "Bad team" }, "404": { "text/plain": "Campaign not found" } } }, "POST /campaigns/{campaignId}/start": { "summary": "Start Campaign", "tags": [ "Campaigns" ], "responses": { "200": { "application/json": { "_id": "cam_A1B2C3D4E5F6G7H8I9", "state": "running" } }, "400": { "text/plain": "Bad team" }, "404": { "text/plain": "Campaign not found" } } }, "GET /campaigns/{campaignId}/export/start": { "summary": "Start Campaign Stats Export", "tags": [ "Campaigns" ], "responses": { "200": { "application/json": { "_id": "axp_Vv6lJOc8NlVVmDud5", "id": "axp_Vv6lJOc8NlVVmDud5", "teamId": "tea_c123fg5h8ijKL9noP", "campaignId": "cam_A1B2C3D4E5F6G7H8I9", "campaignName": "Insights Outreach 2024", "status": "pending", "startedAt": "2024-07-09T13:43:52.124Z", "progressIndex": 0, "progressTime": 1720532632124, "progressLastStepDuration": 0, "progressType": "starting", "progress": 0, "total": 0 } }, "400": { "text/plain": "Bad team" }, "404": { "text/plain": "Campaign not found" } } }, "GET /campaigns/{campaignId}/export/{exportId}/status": { "summary": "Get Campaign Export Status", "tags": [ "Campaigns" ], "responses": { "200": { "application/json": { "done": { "summary": "Export completed", "value": { "ok": true, "status": { "_id": "axp_eVuZ9rVr4yYWrnPWA", "id": "axp_eVuZ9rVr4yYWrnPWA", "teamId": "tea_8QvkOiBfPdb2ZRhHi", "campaignId": "cam_lBCWmqEWI399hJZOd", "campaignName": "lemstage", "status": "done", "startedAt": "2025-10-27T07:53:16.267Z", "progressIndex": 6, "progressTime": 1761551597286, "progressLastStepDuration": 0, "progressType": "done", "progress": 0, "total": 0, "fileSize": 23654, "endedAt": "2025-10-27T07:53:17.286Z", "url": "https://api.lemlist.com/api/files/exports/fil_axp_7guBefhehehe.csv" } } }, "pending": { "summary": "Export in progress", "value": { "ok": true, "status": { "id": "axp_Vv6lJOc8NlVVmDud5", "teamId": "tea_c123fg5h8ijKL9noP", "campaignId": "cam_A1B2C3D4E5F6G7H8I9", "campaignName": "Insights Outreach 2024", "status": "pending", "startedAt": "2020-01-01T00:00:00.000Z", "progressIndex": 3, "progressTime": 1639138959979, "progressLastStepDuration": 200, "progressType": "processing", "progress": 50, "total": 100 } } } } }, "400": { "text/plain": "Bad team" }, "404": { "application/json": { "exportNotFound": { "summary": "Export not found", "value": { "ok": false, "message": "Export with id axp_DIoSPp9YM5EwWdyP0 not found" } }, "campaignNotFound": { "summary": "Campaign not found", "value": "Campaign not found" } } } } }, "PUT /campaigns/{campaignId}/export/{exportId}/email/{email}": { "summary": "Set Email for Campaign Export Notification", "tags": [ "Campaigns" ], "responses": { "200": { "application/json": { "ok": true, "status": { "_id": "axp_Vv6lJOc8NlVVmDud5", "id": "axp_Vv6lJOc8NlVVmDud5", "teamId": "tea_c123fg5h8ijKL9noP", "campaignId": "cam_A1B2C3D4E5F6G7H8I9", "campaignName": "Insights Outreach 2024", "status": "done", "startedAt": "2024-07-11T09:49:15.278Z", "progressIndex": 6, "progressTime": 1720691355497, "progressLastStepDuration": 0, "progressType": "done", "progress": 0, "total": 0, "fileSize": 654, "endedAt": "2024-07-11T09:49:15.497Z", "url": "https://api.lemlist.com/api/files/exports/fil_axp_Vv6lJOc8NlVVmDud5_insights_outreach_2024.csv", "email": "emily.johnson@example.com" } } }, "400": { "text/plain": "Bad team" }, "404": { "text/plain": { "campaignNotFound": { "summary": "Campaign not found", "value": "Campaign not found" }, "exportNotFound": { "summary": "Export not found", "value": "Export not found" } } } } }, "GET /campaigns/{campaignId}/export/leads": { "summary": "Export Campaign Leads", "tags": [ "Campaigns" ], "responses": { "200": { "text/csv": "emailStatus,email,firstName,lastName,picture,phone,linkedinUrl,timezone,companyName,companyDomain,icebreaker,Original event page,url extension,event_link_to_send,testFieldToDelete,naissance,lastState,status,_id\n,jeremy@example.com,Jeremy,Smith,,,https://www.linkedin.com/in/jeremysmith,,example.com,,,https://www.example.com/event-registration,?name=Jeremy&email=jeremy@example.com,https://www.example.com/event-registration?name=Jeremy&email=jeremy@example.com,,,linkedinReplied,done,lea_s2cXajAHahdDKmDw8\n,frankie@example.org,Frankie,Johnson,,,https://www.linkedin.com/in/frankiejohnson,,example.org,,,https://www.example.com/event-registration,?name=Frankie&email=frankie@example.org,https://www.example.com/event-registration?name=Frankie&email=frankie@example.org,,,linkedinReplied,done,lea_E8hdds5NryDRXpGJa\n,louiza@example.io,Louiza,Brown,,,https://www.linkedin.com/in/louizabrown,,example.io,,,https://www.example.com/event-registration,?name=Louiza&email=louiza@example.io,https://www.example.com/event-registration?name=Louiza&email=louiza@example.io,,,emailsInterested,interested,lea_tLAI7Fr2gR5hVxAIc\n,benjamin@example.co,Benjamin,Williams,,,https://www.linkedin.com/in/benjaminwilliams,,example.co,,,https://www.example.com/event-registration,?name=Benjamin&email=benjamin@example.co,https://www.example.com/event-registration?name=Benjamin&email=benjamin@example.co,,,emailsUnsubscribed,unsubscribed,lea_oznzWQKKZGXrBdqXb\n,roxanne@example.net,Roxanne,Davis,,,https://www.linkedin.com/in/roxannedavis,,example.net,,,https://www.example.com/event-registration,?name=Roxanne&email=roxanne@example.net,https://www.example.com/event-registration?name=Roxanne&email=roxanne@example.net,,,emailsClicked,done,lea_M22nl3gUwvAiNl6Ks\n,thomas@example.fr,Thomas,Miller,,,https://www.linkedin.com/in/thomasmiller,,example.fr,,,https://www.example.com/event-registration,?name=Thomas&email=thomas@example.fr,https://www.example.com/event-registration?name=Thomas&email=thomas@example.fr,,,emailsSent,done,lea_z3DydraGgNBnLdV7o" }, "400": { "text/plain": "Bad team" }, "404": { "text/plain": "Campaign not found" } } }, "GET /campaigns/reports": { "summary": "Get Campaign Reports", "tags": [ "Campaigns" ], "responses": { "200": { "application/json": [ { "_id": "cam_bSn8EORHQxbWPjHvu", "name": "Product Launch Campaign", "creator": "usr_ahfFktBBHUIxbVG5P|user@example.com", "createdAt": "2025-10-27T07:01:04.058Z", "createdBy": "John Smith", "labels": "", "totalCount": 0, "reviewedCount": 0, "inSequenceLeadCount": 0, "state": "running", "status": "draft", "senderNames": "sender@example.com", "sendersUsers": "Jane Doe:sender@example.com", "reviewed": 0, "emailsSent": 0, "emailsOpened": 0, "emailsClicked": 0, "emailsReplied": 0, "emailsInterested": 0, "linkedinSent": 0, "linkedinReplied": 0, "interested": 0, "notInterested": 0 }, { "_id": "cam_lBCWmqEWI399hJZOd", "name": "Event Outreach Campaign", "creator": "usr_QHeXD2DttUIlvWT9V|admin@example.co", "createdAt": "2022-11-09T16:41:03.538Z", "createdBy": "Sarah Johnson", "labels": "", "totalCount": 0, "reviewedCount": 32, "inSequenceLeadCount": 32, "state": "paused", "status": "ended", "senderNames": "", "sendersUsers": "", "reviewed": 0, "emailsSent": 20, "emailsOpened": 18, "emailsClicked": 4, "emailsReplied": 1, "emailsUnsubscribed": 1, "emailsInterested": 1, "linkedinSent": 32, "linkedinOpened": 15, "linkedinReplied": 15, "interested": 0, "notInterested": 0 } ] }, "400": { "text/plain": "Bad team" } } }, "GET /campaigns/{campaignId}/sequences": { "summary": "Get Campaign Sequences", "tags": [ "Sequences" ], "responses": { "200": { "application/json": { "seq_rH5RD3fMkkt2gM3YC": { "_id": "seq_rH5RD3fMkkt2gM3YC", "steps": [ { "_id": "stp_sFUj6keaSz9wr049M", "delay": 0, "emailTemplateId": "etp_ahlbc2yafFyu728H8", "type": "linkedinSend", "index": 1, "sequenceId": "seq_rH5RD3fMkkt2gM3YC", "sequenceStep": 0, "message": "Hey {{firstName}}, \n\nwe're launching an event, a place where people can regularly meet, network, and learn from each other. We would love it if you could join us for a drink & chat next week. What do you say? 😊" }, { "_id": "stp_qsTl0LO6zkQQJQqsP", "delay": 1, "emailTemplateId": "etp_HFjUGtyDxIOxgZYcG", "index": 2, "sequenceId": "seq_rH5RD3fMkkt2gM3YC", "sequenceStep": 1, "subject": "{{firstName}}, do we count on you for the event?", "message": "

Hey {{firstName}},

\n

Do you have any plans for Thursday, 7pm?

\n

What about spending the evening with cool people by our office?

\n

We're launching an event, a place where people can regularly meet, network, and build connections that help them grow further 😊

\n

It would be really nice if we could count on you for the event- here's your invite 🔥


\n

Can you make it?

\n

Sarah,

Head of Marketing

", "type": "email" }, { "_id": "stp_pRcXzJDmOrBkFtNc3", "delay": 1, "emailTemplateId": "etp_3tjFTgdOMS6JL8U1g", "index": 3, "sequenceId": "seq_rH5RD3fMkkt2gM3YC", "sequenceStep": 2, "subject": "{{firstName}}, do we count on you for the event?", "message": "

So, should I add you to the list of attendees?

\n

We'll meet around 7pm, have a drink and exchange with entrepreneurs, marketers, and salespeople.

\n

Here's the link if you want to join!

\n

We would love to have you with us for this event!

Sarah

Head of Marketing

", "type": "email" } ], "level": 0 } } }, "400": { "text/plain": "Bad team" }, "401": { "text/plain": "The authentication you supplied is incorrect" }, "404": { "text/plain": "Campaign not found" } } }, "POST /sequences/{sequenceId}/steps": { "summary": "Add Step to Sequence", "tags": [ "Sequences" ], "request": { "application/json": { "Email Step": { "value": { "type": "email", "subject": "{{firstName}}, quick question about {{companyName}}", "message": "

Hi {{firstName}},

I noticed {{companyName}} is working on improving customer engagement. Would you be interested in discussing how we can help?

Best regards,
{{senderName}}

", "delay": 1, "index": 2 } }, "LinkedIn Invite": { "value": { "type": "linkedinInvite", "message": "Hi {{firstName}}, I'd love to connect and learn more about your work at {{companyName}}!", "delay": 0 } }, "LinkedIn Send": { "value": { "type": "linkedinSend", "message": "Hey {{firstName}}, thanks for connecting! I wanted to reach out about...", "delay": 2 } }, "LinkedIn Send with Media": { "value": { "type": "linkedinSend", "message": "Hey {{firstName}}, sharing a quick overview of what we're building.", "images": [ "https://example.com/assets/overview.png" ], "videos": [ "https://example.com/assets/demo.mp4" ], "delay": 2 } }, "Manual Task": { "value": { "type": "manual", "title": "Call prospect", "message": "Discuss their pain points and schedule a demo", "delay": 1 } }, "Phone Call": { "value": { "type": "phone", "message": "Follow up on the email sent yesterday", "delay": 1 } }, "API Call": { "value": { "type": "api", "method": "POST", "url": "https://api.example.com/webhook", "delay": 0 } }, "LinkedIn Visit": { "value": { "type": "linkedinVisit", "delay": 0 } }, "Conditional Step": { "value": { "type": "conditional", "conditionKey": "linkedinInviteAccepted", "delayType": "waitUntil", "delay": 1 } }, "Send to Another Campaign": { "value": { "type": "sendToAnotherCampaign", "campaignId": "cam_ABC123XYZ456", "delay": 0 } }, "WhatsApp Message": { "value": { "type": "whatsappMessage", "message": "Hi {{firstName}}, following up on our conversation...", "delay": 1 } } } }, "responses": { "200": { "application/json": { "_id": "stp_V0JHmSpWiO0rxHUkz", "type": "linkedinInvite", "delay": 2, "emailTemplateId": "etp_sw6csWaZNwnfdwGZ6", "message": "Hello, I would like..." } }, "400": { "text/plain": "Bad team" }, "401": { "text/plain": "The authentication you supplied is incorrect" } } }, "PATCH /sequences/{sequenceId}/steps/{stepId}": { "summary": "Update Sequence Step", "tags": [ "Sequences" ], "request": { "application/json": { "Update Email Step": { "value": { "type": "email", "subject": "{{firstName}}, following up on our conversation", "message": "

Hi {{firstName}},

Just wanted to circle back on our previous email. Have you had a chance to review it?

Best,
{{senderName}}

", "delay": 2 } }, "Update LinkedIn Invite": { "value": { "type": "linkedinInvite", "message": "Hi {{firstName}}, I'd love to connect with you to discuss potential collaboration opportunities!", "delay": 0 } }, "Update LinkedIn Send": { "value": { "type": "linkedinSend", "message": "Thanks for accepting my invite, {{firstName}}! I wanted to reach out about...", "altMessage": "Alternative message if the main one fails", "delay": 3 } }, "Update LinkedIn Send Media": { "value": { "type": "linkedinSend", "images": [ "https://example.com/assets/overview.png" ], "videos": [] } }, "Update Manual Task": { "value": { "type": "manual", "title": "Schedule follow-up call", "message": "Discuss pain points and propose next steps", "delay": 2 } }, "Update Phone Call": { "value": { "type": "phone", "message": "Call to discuss the proposal sent via email", "delay": 1 } }, "Update API Call": { "value": { "type": "api", "method": "PUT", "url": "https://api.example.com/webhook/update", "delay": 0 } }, "Update LinkedIn Visit": { "value": { "type": "linkedinVisit", "delay": 1 } }, "Update Conditional Step": { "value": { "type": "conditional", "conditionKey": "emailsOpened", "delayType": "within", "delay": 3 } }, "Update Send to Another Campaign": { "value": { "type": "sendToAnotherCampaign", "campaignId": "cam_XYZ789ABC123" } }, "Update WhatsApp Message": { "value": { "type": "whatsappMessage", "message": "Hi {{firstName}}, just checking in to see if you received my previous messages.", "delay": 2 } } } }, "responses": { "200": { "application/json": { "_id": "stp_V0JHmSpWiO0rxHUkz", "type": "linkedinInvite", "delay": 0, "emailTemplateId": "etp_HZvLoLNEwdJ8Vu0w7", "message": "Hello, I want to..." } }, "400": { "text/plain": "Bad team" }, "401": { "text/plain": "The authentication you supplied is incorrect" } } }, "DELETE /sequences/{sequenceId}/steps/{stepId}": { "summary": "Delete Sequence Step", "tags": [ "Sequences" ], "responses": { "200": { "application/json": { "ok": true } }, "400": { "text/plain": "Bad team" }, "401": { "text/plain": "The authentication you supplied is incorrect" }, "404": { "text/plain": "Sequence not found" } } }, "GET /schedules": { "summary": "Get Many Schedules", "tags": [ "Schedules" ], "responses": { "200": { "application/json": { "schedules": [ { "_id": "skd_iQiNG7VinWIUkgLy1", "name": "Custom Schedule", "secondsToWait": 1200, "timezone": "Europe/Paris", "start": "09:00", "end": "18:00", "weekdays": [ 1, 2, 3, 4 ], "public": true, "teamId": "tea_8QvkOiBfPdb2ZRhHi", "createdBy": "usr_ahfFktBBHUIxbVG5P", "createdAt": "2025-10-27T09:41:11.187Z" }, { "_id": "skd_u6cfmo0a7pgwfup9i", "name": "Default schedule", "secondsToWait": 1200, "timezone": "Europe/Paris", "start": "09:00", "end": "18:00", "weekdays": [ 1, 2, 3, 4, 5 ], "teamId": "tea_8QvkOiBfPdb2ZRhHi", "createdBy": "usr_ahfFktBBHUIxbVG5P", "createdAt": "2025-10-27T07:01:04.041Z" }, { "_id": "skd_nNGfP0HEkRYJLW4qA", "name": "Default schedule", "secondsToWait": 1200, "timezone": "Asia/Seoul", "start": "09:00", "end": "18:00", "weekdays": [ 1, 2, 3, 4, 5 ], "teamId": "tea_8QvkOiBfPdb2ZRhHi", "createdBy": "usr_ahfFktBBHUIxbVG5P", "createdAt": "2025-10-24T09:37:25.040Z" }, { "_id": "skd_kgykTULiqy42doHxY", "name": "Default schedule", "secondsToWait": 1200, "timezone": "Asia/Seoul", "start": "09:00", "end": "18:00", "weekdays": [ 1, 2, 3, 4, 5 ], "teamId": "tea_8QvkOiBfPdb2ZRhHi", "createdBy": "usr_ahfFktBBHUIxbVG5P", "createdAt": "2025-10-24T07:24:44.785Z" }, { "_id": "skd_SvcCMF1LTI3mgzmCW", "name": "Default schedule", "secondsToWait": 1200, "timezone": "Europe/Sofia", "start": "09:00", "end": "18:00", "weekdays": [ 1, 2, 3, 4, 5 ], "teamId": "tea_8QvkOiBfPdb2ZRhHi", "createdBy": "usr_46he8cjrZ7s0IQi53", "createdAt": "2025-10-20T13:13:34.680Z" } ], "pagination": { "totalRecords": 3039, "currentPage": 1, "nextPage": 2, "totalPage": 608 } } }, "400": { "text/plain": "Bad team" }, "401": { "text/plain": "The authentication you supplied is incorrect" } } }, "POST /schedules": { "summary": "Create Schedule", "tags": [ "Schedules" ], "request": { "application/json": { "name": "Default schedule", "secondsToWait": 1200, "timezone": "Europe/Paris", "start": "09:00", "end": "18:00", "weekdays": [ 1, 2, 3, 4, 5 ], "public": false } }, "responses": { "200": { "application/json": { "_id": "skd_VK2e2ON1xErgrc8NC", "name": "Default schedule", "secondsToWait": 120, "timezone": "Europe/Paris", "start": "09:00", "end": "18:00", "weekdays": [ 1, 2, 3, 4, 5 ], "public": false, "teamId": "tea_oQGvp4rfqA5RWLkqW", "createdBy": "usr_AUGImxyH3VKF6eYEf", "createdAt": "2025-01-17T15:17:59.207Z" } }, "400": { "application/json": { "error": "BadRequest", "message": "Bad team or invalid schedule fields" } }, "401": { "application/json": { "error": "The authentication you supplied is incorrect" } } } }, "GET /schedules/{scheduleId}": { "summary": "Get Schedule", "tags": [ "Schedules" ], "responses": { "200": { "application/json": { "_id": "skd_iQiNG7VinWIUkgLy1", "name": "Renamed Schedule", "secondsToWait": 1000, "timezone": "Europe/Berlin", "start": "08:00", "end": "18:00", "weekdays": [ 1, 2, 3, 2, 5 ], "public": true, "teamId": "tea_8QvkOiBfPdb2ZRhHi", "createdBy": "usr_ahfFktBBHUIxbVG5P", "createdAt": "2025-10-27T09:41:11.187Z" } }, "400": { "text/plain": "Bad team" }, "401": { "text/plain": "The authentication you supplied is incorrect" }, "404": { "text/plain": "Schedule not found" } } }, "PATCH /schedules/{scheduleId}": { "summary": "Update Schedule", "tags": [ "Schedules" ], "request": { "application/json": { "name": "Schedule new name" } }, "responses": { "200": { "application/json": { "_id": "skd_iQiNG7VinWIUkgLy1", "name": "Renamed Schedule", "secondsToWait": 1000, "timezone": "Europe/Berlin", "start": "08:00", "end": "18:00", "weekdays": [ 1, 2, 3, 2, 5 ], "public": true, "teamId": "tea_8QvkOiBfPdb2ZRhHi", "createdBy": "usr_ahfFktBBHUIxbVG5P", "createdAt": "2025-10-27T09:41:11.187Z" } }, "400": { "application/json": { "error": "BadRequest", "message": "Bad team or invalid schedule update" } }, "401": { "application/json": { "error": "The authentication you supplied is incorrect" } }, "404": { "application/json": { "error": "Schedule not found" } } } }, "DELETE /schedules/{scheduleId}": { "summary": "Delete Schedule", "tags": [ "Schedules" ], "responses": { "200": { "application/json": { "_id": "skd_Z6mAiyX6c73uqQtCV" } }, "400": { "text/plain": "Bad team" }, "404": { "text/plain": "Schedule not found" } } }, "GET /campaigns/{campaignId}/schedules/": { "summary": "Get Campaign Schedules", "tags": [ "Schedules" ], "responses": { "200": { "application/json": [ { "_id": "skd_dI6LDboHxORcW2quf", "name": "Test 2", "secondsToWait": 1200, "timezone": "Atlantic/Reykjavik", "start": "08:00", "end": "18:00", "weekdays": [ 1, 2, 3, 4, 5 ], "teamId": "tea_HpxHgbqZR5p7jPodG", "createdBy": "usr_gbY1wCFnSHq5ubnyG", "createdAt": "2025-02-06T16:29:10.217Z" }, { "_id": "skd_shtm9OHLWbGkro94C", "name": "Default schedule", "secondsToWait": 1200, "timezone": "Africa/Ceuta", "start": "09:00", "end": "18:00", "weekdays": [ 1, 2, 3, 4, 5 ], "teamId": "tea_HpxHgbqZR5p7jPodG", "createdBy": "usr_z7biYanHn06hmOlXs", "createdAt": "2025-02-06T15:36:01.531Z" }, { "_id": "skd_R90npZ8YWo0QqjO3u", "name": "Default schedule", "secondsToWait": 1200, "timezone": "Europe/Paris", "start": "09:00", "end": "18:00", "weekdays": [ 1, 2, 3, 4, 5 ], "teamId": "tea_HpxHgbqZR5p7jPodG", "createdBy": "usr_z7biYanHn06hmOlXs", "createdAt": "2025-02-06T15:35:52.079Z" } ] }, "400": { "text/plain": "Bad team" }, "404": { "text/plain": "Campaign not found" } } }, "POST /campaigns/{campaignId}/schedules/{scheduleId}": { "summary": "Associate Schedule with Campaign", "tags": [ "Schedules" ], "responses": { "200": { "application/json": { "scheduleId": "skd_J4m3pn7lRnVmwm02m", "campaignId": "cam_JWW1H20HETqEXaKyR" } }, "400": { "text/plain": "Bad team" }, "404": { "text/plain": "Campaign not found" } } }, "GET /leads": { "summary": "Get Lead by Email or ID", "tags": [ "Leads" ], "responses": { "200": { "application/json": { "firstName": "John", "lastName": "Doe", "companyName": "lemlist", "jobTitle": "GTM Engineer", "companyDomain": "example.com", "email": "support@lemlist.com", "_id": "lea_fiDpiGV585wy3Oii2", "isPaused": false, "campaignId": "cam_bSn8EORHQxbWPjHvu", "contactId": "ctc_xW8Ou6C03Csv8vatp", "emailStatus": "deliverable" } }, "400": { "text/plain": "Bad team" }, "404": { "text/plain": "Lead not found" } } }, "GET /leads/{email}": { "summary": "Get Lead by Email", "tags": [ "Leads" ], "responses": { "200": { "application/json": [ { "_id": "lea_fiDpiGV585wy3Oii2", "updatedAt": "2025-10-28T00:40:39.230Z", "isPaused": false, "state": "scanned", "status": "review", "personalized": false, "source": "api", "variables": { "firstName": "John", "lastName": "Doe", "companyName": "lemlist", "jobTitle": "GTM Engineer", "companyDomain": "example.com", "email": "support@lemlist.com" }, "contactId": "ctc_xW8Ou6C03Csv8vatp", "enrichment": { "emailStatus": "deliverable" }, "campaign": { "id": "cam_bSn8EORHQxbWPjHvu", "name": "NEW TO DELETE", "status": "draft" }, "sendingUser": {} } ] }, "400": { "text/plain": "Bad team" }, "404": { "text/plain": "Lead not found" } } }, "GET /campaigns/{campaignId}/leads/": { "summary": "Get Campaign Leads", "tags": [ "Leads" ], "responses": { "200": { "application/json": [ { "_id": "lea_A1B2C3D4E5F6G7H8I9", "contactId": "con_Z9Y8X7W6V5U4T3S2R1", "state": "scanned" } ] } } }, "POST /campaigns/{campaignId}/leads/": { "summary": "Create Lead in Campaign", "tags": [ "Leads" ], "request": { "application/json": { "email": "support@lemlist.com", "firstName": "John", "lastName": "Doe", "companyName": "lemlist", "jobTitle": "Developer", "linkedinUrl": "https://www.linkedin.com/in/johndoe", "phone": "+33 123456789", "timezone": "Europe/Paris", "contactOwner": "login_email@lemlist.com", "companySize": "50-100", "customVariable1": "any value you want" } }, "responses": { "200": { "application/json": { "campaignId": "cam_bSn8EORHQxbWPjHvu", "campaignName": "NEW TO DELETE", "firstName": "John", "lastName": "Doe", "companyName": "lemlist", "jobTitle": "GTM Engineer", "companyDomain": "example.com", "email": "support@lemlist.com", "_id": "lea_fiDpiGV585wy3Oii2", "isPaused": false, "contactId": "ctc_xW8Ou6C03Csv8vatp" } }, "400": { "text/plain": "No API key provided" }, "401": { "text/plain": "The authentication you supplied is incorrect" }, "403": { "text/plain": "User linked to this API key is blocked" }, "404": { "text/plain": "No user found for this API key" } } }, "DELETE /campaigns/{campaignId}/leads/": { "summary": "Unsubscribe Lead from Campaign", "tags": [ "Leads" ], "responses": { "200": { "application/json": { "email": "john.doe@domain.com", "firstName": "John", "lastName": "Doe", "_id": "lea_8xJSc7sV7ggpiVnXe", "isPaused": false, "campaignId": "cam_A1B2C3D4E5F6G7H8I9" } }, "400": { "text/plain": "Bad team" }, "404": { "text/plain": "Lead not found" } } }, "PATCH /campaigns/{campaignId}/leads/{leadId}": { "summary": "Update Lead in a Campaign", "tags": [ "Leads" ], "request": { "application/json": { "preferredContactMethod": "email" } }, "responses": { "200": { "application/json": { "campaignId": "cam_bSn8EORHQxbWPjHvu", "campaignName": "NEW TO DELETE", "leadUrl": "https://api.lemlist.com/api/leads/alex.doe%40example.com", "firstName": "John", "lastName": "Doe", "companyName": "Acme Inc", "jobTitle": "Growth Engineer", "companyDomain": "example.com", "email": "support@lemlist.com", "preferredContactMethod": "email", "_id": "lea_fiDpiGV585wy3Oii2", "isPaused": false, "contactId": "ctc_xW8Ou6C03Csv8vatp", "emailStatus": "deliverable" } }, "400": { "text/plain": "Bad team" }, "404": { "text/plain": "Lead not found" } } }, "DELETE /campaigns/{campaignId}/leads/{leadId}": { "summary": "Delete or Unsubscribe Lead", "tags": [ "Leads" ], "responses": { "200": { "application/json": { "firstName": "John", "lastName": "Doe", "companyName": "Acme Inc", "jobTitle": "Growth Engineer", "companyDomain": "example.com", "email": "support@lemlist.com", "preferredContactMethod": "email", "industry": "Technology", "Company name": "John Doe", "_id": "lea_fiDpiGV585wy3Oii2", "isPaused": false, "campaignId": "cam_bSn8EORHQxbWPjHvu", "contactId": "ctc_xW8Ou6C03Csv8vatp", "emailStatus": "deliverable" } }, "400": { "text/plain": "Bad team" }, "404": { "text/plain": "Lead not found" } } }, "DELETE /campaigns/{campaignId}/leads/{email}": { "summary": "Unsubscribe Lead from Campaign", "tags": [ "Leads" ], "responses": { "200": { "application/json": { "email": "alex.doe@example.com", "_id": "lea_8RmJYElD9S5Jp2kyv", "isPaused": false, "campaignId": "cam_8qJ1qAE5tekBYkJac", "contactId": "ctc_joap8q9YGlV45Ypc6" } }, "400": { "text/plain": "Bad team" }, "404": { "text/plain": "Lead not found" } } }, "POST /leads/start/{leadId}": { "summary": "Resume Paused Lead", "tags": [ "Leads" ], "responses": { "200": { "application/json": [ { "firstName": "John", "lastName": "Doe", "companyName": "Acme Inc", "jobTitle": "Growth Engineer", "companyDomain": "example.com", "email": "support@lemlist.com", "preferredContactMethod": "email", "industry": "Technology", "Company name": "John Doe", "_id": "lea_fiDpiGV585wy3Oii2", "isPaused": false, "campaignId": "cam_bSn8EORHQxbWPjHvu", "contactId": "ctc_xW8Ou6C03Csv8vatp", "emailStatus": "deliverable" } ] }, "404": { "text/plain": "Lead not found" } } }, "POST /leads/pause/{leadId}": { "summary": "Pause Lead", "tags": [ "Leads" ], "responses": { "200": { "application/json": [ { "firstName": "John", "lastName": "Doe", "companyName": "Acme Inc", "jobTitle": "Growth Engineer", "companyDomain": "example.com", "email": "support@lemlist.com", "preferredContactMethod": "email", "industry": "Technology", "Company name": "John Doe", "_id": "lea_fiDpiGV585wy3Oii2", "isPaused": true, "campaignId": "cam_bSn8EORHQxbWPjHvu", "contactId": "ctc_xW8Ou6C03Csv8vatp", "emailStatus": "deliverable" } ] }, "404": { "text/plain": "Lead not found" } } }, "POST /leads/review/{leadId}": { "summary": "Launch Lead", "tags": [ "Leads" ], "responses": { "200": { "application/json": { "ok": true } }, "400": { "application/json": { "error": "CAMPAIGN_LEAD_REVIEW_LEAD_ALREADY_LAUNCHED", "message": "Lead is already launched" } }, "404": { "application/json": { "error": "CAMPAIGN_LEAD_REVIEW_LEAD_NOT_FOUND", "message": "Lead not found" } } } }, "POST /leads/interested/{leadIdOrEmail}": { "summary": "Mark Lead as Interested", "tags": [ "Leads" ], "responses": { "200": { "application/json": [ { "firstName": "John", "lastName": "Doe", "companyName": "Acme Inc", "jobTitle": "Growth Engineer", "companyDomain": "example.com", "email": "support@lemlist.com", "preferredContactMethod": "email", "industry": "Technology", "Company name": "John Doe", "_id": "lea_fiDpiGV585wy3Oii2", "isPaused": false, "campaignId": "cam_bSn8EORHQxbWPjHvu", "contactId": "ctc_xW8Ou6C03Csv8vatp", "emailStatus": "deliverable" } ] }, "404": { "text/plain": "Lead not found" } } }, "POST /leads/notinterested/{leadIdOrEmail}": { "summary": "Mark Lead as Not Interested", "tags": [ "Leads" ], "responses": { "200": { "application/json": [ { "firstName": "John", "lastName": "Doe", "companyName": "Acme Inc", "jobTitle": "Growth Engineer", "companyDomain": "example.com", "email": "support@lemlist.com", "preferredContactMethod": "email", "industry": "Technology", "Company name": "John Doe", "_id": "lea_fiDpiGV585wy3Oii2", "isPaused": false, "campaignId": "cam_bSn8EORHQxbWPjHvu", "contactId": "ctc_xW8Ou6C03Csv8vatp", "emailStatus": "deliverable" } ] }, "404": { "text/plain": "Lead not found" } } }, "POST /campaigns/{campaignId}/leads/{leadIdOrEmail}/interested": { "summary": "Mark Lead as Interested in Campaign", "tags": [ "Leads" ], "responses": { "200": { "application/json": { "firstName": "John", "lastName": "Doe", "companyName": "Acme Inc", "jobTitle": "Growth Engineer", "companyDomain": "example.com", "email": "support@lemlist.com", "preferredContactMethod": "email", "industry": "Technology", "Company name": "John Doe", "_id": "lea_fiDpiGV585wy3Oii2", "isPaused": false, "campaignId": "cam_bSn8EORHQxbWPjHvu", "contactId": "ctc_xW8Ou6C03Csv8vatp", "emailStatus": "deliverable" } }, "404": { "text/plain": "Campaign not found" } } }, "POST /campaigns/{campaignId}/leads/{leadIdOrEmail}/notinterested": { "summary": "Mark Lead as Not Interested in Campaign", "tags": [ "Leads" ], "responses": { "200": { "application/json": { "firstName": "John", "lastName": "Doe", "companyName": "Acme Inc", "jobTitle": "Growth Engineer", "companyDomain": "example.com", "email": "support@lemlist.com", "preferredContactMethod": "email", "industry": "Technology", "Company name": "John Doe", "_id": "lea_fiDpiGV585wy3Oii2", "isPaused": false, "campaignId": "cam_bSn8EORHQxbWPjHvu", "contactId": "ctc_xW8Ou6C03Csv8vatp", "emailStatus": "deliverable" } }, "404": { "text/plain": "Campaign not found" } } }, "POST /leads/{leadId}/variables": { "summary": "Add Custom Variables on Leads", "tags": [ "Leads" ], "responses": { "200": { "application/json": { "ok": true } }, "400": { "text/plain": "Variable not found" }, "404": { "text/plain": "Lead not found" } } }, "PATCH /leads/{leadId}/variables": { "summary": "Update Values of Custom Variables of a Lead", "tags": [ "Leads" ], "responses": { "200": { "application/json": { "ok": true } }, "400": { "text/plain": "Bad team" }, "404": { "text/plain": "Lead not found" } } }, "DELETE /leads/{leadId}/variables": { "summary": "Erase Values of Custom Variables on a Lead", "tags": [ "Leads" ], "responses": { "200": { "application/json": { "ok": true } }, "400": { "text/plain": "Bad team" }, "404": { "text/plain": "Lead not found" } } }, "POST /leads/audio": { "summary": "Upload Audio for Voice Message Step", "tags": [ "Leads" ], "responses": { "200": { "application/json": { "ok": true, "status": { "url": "https://example.com/files/fil_CD7M60ym74aR0e57f.m4a", "teamId": "tea_Sh11ph1qHfjSpLKGT", "campaignId": "cam_R9mwDo0iZRwNEHUcW", "leadId": "lea_jZKIJ1Jn1SaMsP83s", "fileName": "file2" } } }, "400": { "text/plain": "Bad team" } } }, "GET /crm/filters": { "summary": "Get CRM Filters", "tags": [ "Leads" ], "responses": { "200": { "application/json": [ { "id": 16, "name": "Filter 1" }, { "id": 17, "name": "Filter 2" } ] }, "400": { "text/plain": "Bad team" } } }, "POST /campaigns/{campaignId}/leads/import": { "summary": "Import Leads from CRM", "tags": [ "Leads" ], "request": { "application/json": { "crm": "hubspot", "userId": "usr_FU6yAd3UdBFel0UDy", "filterId": "16", "deduplicate": true } }, "responses": { "200": { "application/json": { "ok": true } }, "400": { "text/plain": "Bad team" } } }, "GET /database/filters": { "summary": "Get Database Filters", "tags": [ "People Database" ], "responses": { "200": { "application/json": [ { "filterId": "country", "description": "Filter by country", "mode": [ "leads", "companies" ], "type": "text", "helper": "Use free text search" }, { "filterId": "department", "description": "Filter by department", "mode": [ "leads" ], "type": "select", "helper": "Allowed values: Sales, Customer service, Engineering, Marketing, Operations, Human Resources, Finance / Legal / Admin, Other" } ] }, "400": { "text/plain": "Bad team" }, "401": { "text/plain": "The authentication you supplied is incorrect" } } }, "POST /database/people": { "summary": "Search People Database", "tags": [ "People Database" ], "request": { "application/json": { "filters": [ { "filterId": "country", "in": [ "France" ], "out": [ "India" ] } ], "page": 1, "size": 25 } }, "responses": { "200": { "application/json": { "results": [ { "lead_id": 434482354, "canonical_shorthand_name": "alexdoe", "connections_count": 500, "country": "France", "full_name": "Alex Doe", "education": [], "experience_count": 3, "experiences": [ { "company_shorthand_name": "lemlist", "company_id": 11750398, "company_name": "lemlist", "company_website_url": "https://www.lemlist.com", "company_linkedin_url": "https://www.linkedin.com/company/lemlist", "company_employee_count": 151, "company_size": "51-200", "company_domain": "lemlist.com", "company_industry": "Technology, Information and Media", "title": "Account Executive", "title_normalized": "Account Executive", "date_from": "September 2025", "duration": "1 month", "location": "Ville de Paris, Île-de-France, France", "current_exp_bucket": "Less than 6 months" } ], "interests": [], "languages": [ { "language": "Français", "proficiency": "Native or bilingual proficiency" }, { "language": "Anglais", "proficiency": "Professional working proficiency" } ], "lead_linkedin_url": "https://www.linkedin.com/in/alex-doe", "linkedin_short": "alex-doe", "skills": [], "summary": "Passionate about helping sales teams book more meetings @lemlist", "headline": "Helping RevOps scale outbound @lemlist", "lead_quality_score": 3, "department": "Sales", "connections_count_bucket": "500+", "years_of_exp_bucket": "2 to 5 years", "location": "Paris, Ile-de-France, France", "state": "Ile-de-France", "current_exp_company_name": "lemlist", "_score": 21.294434, "_id": "434482354" } ], "total": 91, "took": 24, "page": 1, "size": 1, "search": "lsh_Lra0u9F7WXn3XKzB9", "limitation": 1999, "team": "tea_8QvkOiBfPdb2ZRhHi" } }, "400": { "text/plain": "Bad team" }, "401": { "text/plain": "The authentication you supplied is incorrect" } } }, "POST /database/companies": { "summary": "Search Companies Database", "tags": [ "People Database" ], "request": { "application/json": { "filters": [ { "filterId": "currentCompanyTechnologies", "in": [ "Postman" ], "out": [ "Haskell" ] } ], "page": 1, "size": 2 } }, "responses": { "200": { "application/json": { "results": [ { "company_id": "88945664", "company_website_url": "http://acme-tech.example.com", "company_name": "Acme Technologies", "company_linkedin_url": "https://www.linkedin.com/company/acme-technologies", "last_updated": "2025-09-07 02:11:32 UTC", "company_headquarters_city": "Example City", "company_headquarters_country": "India", "company_logo_url": "https://example.com/logo1.png", "company_description": "Acme, established on Aug-2015 with the idea \"Make Your Imagination Come True\". Which means anyone who came up with their idea, we will give a closely realistic solutions to them. \nAcme Technologies is a new Generation Software Company, with young people with creative mind and immersive energy. We are a team of dedicated and highly skilled software professionals focused on providing world class IT solutions. We offer a variety of services in the area of:\nWebsite Designing & Development, Web Maintenance, E-Business Solutions, Android & iOS app, Blockchain Development, Software Development, Hosting Services.", "company_employee_count": "31", "company_type": "Public Company", "company_founded": "2015", "company_followers_count": "3958", "company_size": "11-50", "company_domain": "acme-tech.example.com", "employees_count_growth": -3, "techno_used_array": [ "Apache HTTP Server", "Lightbox", "LinkedIn Sales Navigator", "Atlassian Jira", "LiteSpeed Cache", "Underscore.js", "Remix", "jsDelivr", "jQuery", "Google Fonts API", "Google Tag Manager", "X-Content-Type-Options", "Facebook", "PWA", "jQuery CDN", "ZURB Foundation", "HSTS", "WhatsApp Business", "X-XSS-Protection", "Google Analytics", "Flickity", "HTML", "LiteSpeed", "Ethereum", "Cloudinary", "OceanWP", "Goober", "jQuery Migrate", "Tailwind CSS", "Postman", "LinkedIn", "Webpack", "GSAP", "Essential Addons for Elementor", "Font Awesome", "Android", "PixelYourSite", "jQuery UI", "MUI", "IPFS", "Upwork", "cdnjs", "FlexSlider", "Elementor", "ZoomInfo", "Swiper", "Microsoft IIS", "Node.js", "Ethers", "Solidity", "React", "Priority Hints", "iOS", "OWL Carousel", "MySQL", "Facebook Pixel", "Open Graph", "Laravel", "Emotion", "Lucide", "PHP", "Blockchain", "Next.js", "RSS", "Google Maps", "Windows Server", "WordPress", "WPForms", "JavaScript", "Chainlink", "Apache", "Bootstrap" ], "business_business_customer": "B2B", "company_quality_score": "3", "company_industry": "Technology, Information and Media", "company_subindustry": "Technology, Information and Internet", "company_subsubindustry": "Software Development", "company_location": "123 Example Street, Suite 100, Example City, Example Country", "company_location_geopoint_array": [ 73.92, 18.64 ], "company_occ_lead": "60", "_score": 10.002095, "_id": "88945664" }, { "company_id": "9903838", "company_website_url": "http://www.acme-care.example.com", "company_name": "Acme Care", "company_linkedin_url": "https://www.linkedin.com/company/acme-care", "last_updated": "2025-09-04 14:24:45 UTC", "company_headquarters_city": "San Francisco, California", "company_headquarters_country": "United States", "company_logo_url": "https://example.com/logo2.png", "company_description": "Acme Care provides an automated platform for team-based care management. To learn more, write us at contact@acme-care.example.com.", "company_employee_count": "33", "company_type": "Privately Held", "company_founded": "2013", "company_followers_count": "2651", "company_size": "11-50", "revenue_bucket": "$5M - $10M", "company_domain": "acme-care.example.com", "employees_count_growth": 6, "last_funding_round_at": "More than 6 months", "techno_used_array": [ "Google Cloud", "Heap", "Envoy", "Google Cloud CDN", "X-Content-Type-Options", "Piwik", "WP Engine", "React", "cdnjs", "Fullstory", "Cloudflare Bot Management", "Twitter", "JSON-LD", "C3.js", "Python", "Google Analytics", "MediaElement.js", "SafeBase", "Emotion", "Nginx", "Atlassian Jira", "PayPal", "MUI", "Gravity Forms", "Zendesk", "MySQL", "Webpack", "PHP", "Facebook Pixel", "Google Fonts API", "OneTrust", "jQuery", "Gravatar", "Google Hosted Libraries", "Yoast SEO", "Jamf", "Cloudflare CDN", "Angular", "Postman", "Cloudflare", "HubSpot", "Java", "HTTP/3", "Moment.js", "X-XSS-Protection", "Open Graph", "JazzHR", "Workramp", "Algolia", "SSL.com", "Autoptimize", "Font Awesome", "oEmbed", "Bootstrap", "Facebook", "HSTS", "Ruby", "Twemoji", "WordPress", "Lightbox", "Adobe Fonts", "RequireJS", "Ruby on Rails", "Lodash", "reCAPTCHA", "LinkedIn Ads", "Hotjar", "Google Tag Manager" ], "business_business_customer": "B2B", "company_quality_score": "3", "company_industry": "Technology, Information and Media", "company_subindustry": "Technology, Information and Internet", "company_subsubindustry": "Software Development", "company_location": "San Francisco, California, US", "company_location_geopoint_array": [ -122.42, 37.78 ], "company_occ_lead": "117", "_score": 9.972561, "_id": "9903838" } ], "total": 12102, "took": 17, "page": 1, "size": 2, "search": "lsh_8LBpZPgGpxGswp5G7", "limitation": 1998, "team": "tea_8QvkOiBfPdb2ZRhHi" } }, "400": { "text/plain": "Bad team" }, "401": { "text/plain": "The authentication you supplied is incorrect" } } }, "GET /database/personas": { "summary": "List Personas", "tags": [ "People Database" ], "responses": { "200": { "application/json": { "data": [ { "_id": "pdp_ExAmPlE1234567890a", "name": "SaaS founders", "mode": "leads", "filters": [ { "filterId": "currentTitle", "in": [ "Founder" ], "out": [] }, { "filterId": "country", "in": [ "France" ], "out": [] } ], "createdAt": "2026-07-31T09:12:00.000Z", "updatedAt": "2026-07-31T09:12:00.000Z" } ] } }, "400": { "application/json": { "error": "Parameter \"mode\" must be \"leads\" or \"companies\"; user personas currently accept \"leads\" only", "code": "PEOPLE_DATABASE_PERSONA_API_INVALID_MODE" } }, "401": { "application/json": { "error": "Route unauthorized", "code": "ROUTE_UNAUTHORIZED" } }, "403": { "application/json": { "error": "Beta is not enabled", "code": "BETA_NOT_ENABLED" } }, "500": { "application/json": { "error": "Internal error", "code": "INTERNAL_ERROR" } } } }, "POST /database/personas": { "summary": "Create Persona", "tags": [ "People Database" ], "request": { "application/json": { "name": "SaaS founders", "mode": "leads", "filters": [ { "filterId": "currentTitle", "in": [ "Founder" ], "out": [] }, { "filterId": "country", "in": [ "France" ], "out": [] } ] } }, "responses": { "201": { "application/json": { "data": { "_id": "pdp_ExAmPlE1234567890a" } } }, "400": { "application/json": { "invalidName": { "value": { "error": "Parameter \"name\" must be a non-empty string; provide the persona display name", "code": "PEOPLE_DATABASE_PERSONA_API_INVALID_NAME" } }, "invalidFilters": { "value": { "error": "Parameter \"filters\" must be an array of { filterId, in?, out?, exactMatch? } objects; call GET /api/database/filters for the valid filter ids", "code": "PEOPLE_DATABASE_PERSONA_API_INVALID_FILTERS" } }, "modeNotSupported": { "value": { "error": "User personas support only the \"leads\" mode for now; create or update the persona in leads mode", "code": "PEOPLE_DATABASE_PERSONA_MODE_NOT_SUPPORTED" } }, "unknownFilter": { "value": { "error": "You have no valid filters with the current search mode", "code": "SEARCH_FILTERS_INVALID" } } } }, "401": { "application/json": { "error": "Route unauthorized", "code": "ROUTE_UNAUTHORIZED" } }, "403": { "application/json": { "error": "Beta is not enabled", "code": "BETA_NOT_ENABLED" } }, "409": { "application/json": { "error": "A persona with this name already exists for the team; choose a different name", "code": "PEOPLE_DATABASE_PERSONA_NAME_ALREADY_EXISTS" } }, "500": { "application/json": { "error": "Internal error", "code": "INTERNAL_ERROR" } } } }, "DELETE /database/personas/{personaId}": { "summary": "Delete Persona", "tags": [ "People Database" ], "responses": { "200": { "application/json": { "data": { "_id": "pdp_ExAmPlE1234567890a", "deleted": true } } }, "400": { "application/json": { "error": "Wrong param people database persona id", "code": "WRONG_PARAM_PEOPLE_DATABASE_PERSONA_ID" } }, "401": { "application/json": { "error": "Route unauthorized", "code": "ROUTE_UNAUTHORIZED" } }, "403": { "application/json": { "error": "Beta is not enabled", "code": "BETA_NOT_ENABLED" } }, "404": { "application/json": { "error": "No editable persona found for this id and team (it may not exist or be the system persona)", "code": "PEOPLE_DATABASE_PERSONA_NOT_FOUND" } }, "500": { "application/json": { "error": "Internal error", "code": "INTERNAL_ERROR" } } } }, "GET /tasks": { "summary": "Get Many Tasks", "tags": [ "Tasks" ], "responses": { "200": { "application/json": { "results": [ { "_id": "opp_LyXDV8KHzctQdLFpG", "type": "manual", "title": "Keep an eye on him", "priority": 1, "leadId": "lea_fiDpiGV585wy3Oii2", "campaignId": "cam_bSn8EORHQxbWPjHvu", "contactId": "ctc_xW8Ou6C03Csv8vatp", "dueDate": "2025-11-10T09:58:57.169Z", "userId": "usr_ahfFktBBHUIxbVG5P", "content": "does he have bandwidth to help us? would be grand" }, { "_id": "opp_KNQOrrlGnLvEXDDS9", "type": "manual", "title": "API Reference Illustration", "priority": 2, "dueDate": "2025-10-31T07:58:00.000Z", "userId": "usr_ahfFktBBHUIxbVG5P", "content": "" } ], "page": "0" } }, "400": { "text/plain": "Bad team" }, "401": { "text/plain": "The authentication you supplied is incorrect" } } }, "POST /tasks": { "summary": "Create Task", "tags": [ "Tasks" ], "request": { "application/json": { "type": "phone", "assignedTo": "usr_7YzNqVRMCfdeHEzMn", "dueDate": "2025-02-10T09:58:57.169Z", "message": "this is my message", "title": "this is my title", "leadId": "lea_zUwSUPSxozD9fLVGw" } }, "responses": { "200": { "application/json": { "_id": "opp_LyXDV8KHzctQdLFpG", "type": "manual", "title": "Keep an eye on him", "priority": 1, "leadId": "lea_fiDpiGV585wy3Oii2", "campaignId": "cam_bSn8EORHQxbWPjHvu", "contactId": "ctc_xW8Ou6C03Csv8vatp", "dueDate": "2025-11-10T09:58:57.169Z", "userId": "usr_ahfFktBBHUIxbVG5P", "content": "does he have bandwidth to help us? would be grand" } }, "400": { "text/plain": "Bad team" }, "401": { "text/plain": "The authentication you supplied is incorrect" } } }, "PATCH /tasks": { "summary": "Update Task", "tags": [ "Tasks" ], "request": { "application/json": { "id": "opp_0Ieq2qRMg5EIeUMFV", "title": "My new title" } }, "responses": { "200": { "application/json": { "_id": "opp_KNQOrrlGnLvEXDDS9", "type": "manual", "title": "Check him out", "priority": 2, "dueDate": "2025-10-31T07:58:00.000Z", "userId": "usr_ahfFktBBHUIxbVG5P", "content": "Really glad we started using lemlist" } }, "400": { "text/plain": "Bad team" }, "401": { "text/plain": "The authentication you supplied is incorrect" } } }, "POST /tasks/ignore": { "summary": "Ignore Tasks", "tags": [ "Tasks" ], "responses": { "200": { "application/json": {} }, "400": { "text/plain": "Bad team" }, "401": { "text/plain": "The authentication you supplied is incorrect" } } }, "GET /inbox": { "summary": "Get Many Inboxes", "tags": [ "Inbox" ], "responses": { "200": { "application/json": { "data": [ { "_id": "ibx_RsROKFC3gmowgc74P", "opportunities": [], "lastActivityAt": "2024-12-17T09:42:32.971Z", "createdBy": "act_gKmkJOLCfUl4TkhIl", "channels": [ "email" ], "teamId": "tea_8QvkOiBfPdb2ZRhHi", "contactId": "ctc_Ds0IaxECSACsbLMzA", "users": [ { "userId": "usr_xtJHBMYJSOHzI3ZFb", "sender": true, "read": true }, { "userId": "usr_bcPQCObkKptmHw2Rp", "sender": true, "read": true } ], "createdAt": "2024-12-03T09:52:55.466Z", "haveReplies": true, "lastRepliedAt": "2024-12-03T10:12:20.620Z", "lastRepliedChannel": "email", "contact": { "_id": "ctc_Ds0IaxECSACsbLMzA", "fullName": "Alex", "email": "alex@example.com" } }, { "_id": "ibx_M1qunaOcugoqSEnNY", "opportunities": [], "lastActivityAt": "2024-12-17T09:42:30.430Z", "createdBy": "act_AzW7OkDzo7GZzfBYq", "channels": [ "email" ], "teamId": "tea_8QvkOiBfPdb2ZRhHi", "contactId": "ctc_p66lDxuCdb9ZUMSN2", "users": [ { "userId": "usr_xtJHBMYJSOHzI3ZFb", "sender": true, "read": false }, { "userId": "usr_bcPQCObkKptmHw2Rp", "sender": true, "read": true } ], "createdAt": "2024-12-03T14:01:15.873Z", "haveReplies": true, "lastRepliedAt": "2024-12-03T14:14:00.848Z", "lastRepliedChannel": "email", "contact": { "_id": "ctc_p66lDxuCdb9ZUMSN2", "email": "casey@example.com" } }, { "_id": "ibx_6vBhQEot19XAsTKvr", "opportunities": [], "lastActivityAt": "2024-12-17T09:42:17.682Z", "createdBy": "act_38dXN8dzn6D8LU9dp", "channels": [ "email" ], "teamId": "tea_8QvkOiBfPdb2ZRhHi", "contactId": "ctc_rtlWNMHykdtwjih7i", "users": [ { "userId": "usr_xtJHBMYJSOHzI3ZFb", "sender": true, "read": true }, { "userId": "usr_bcPQCObkKptmHw2Rp", "sender": true, "read": true } ], "createdAt": "2024-12-02T16:27:50.927Z", "haveReplies": true, "lastRepliedAt": "2024-12-02T16:38:35.875Z", "lastRepliedChannel": "email", "contact": { "_id": "ctc_rtlWNMHykdtwjih7i", "email": "morgan@example.com" } }, { "_id": "ibx_wemRUwJQXZLRTjG8F", "opportunities": [], "lastActivityAt": "2024-12-04T16:58:53.629Z", "createdBy": "act_GjM4hNyXjAm29XGa2", "channels": [ "email" ], "teamId": "tea_8QvkOiBfPdb2ZRhHi", "contactId": "ctc_POL1cAPMvKzr851KU", "users": [ { "userId": "usr_xtJHBMYJSOHzI3ZFb", "sender": true, "read": true }, { "userId": "usr_bcPQCObkKptmHw2Rp", "sender": true, "read": true } ], "createdAt": "2024-11-29T11:40:17.918Z", "haveReplies": true, "lastRepliedAt": "2024-12-04T15:47:00.816Z", "lastRepliedChannel": "email", "contact": { "_id": "ctc_POL1cAPMvKzr851KU", "fullName": "Jordan", "email": "jordan@example.com" } } ], "pagination": { "totalItems": 4, "currentPage": 1, "nextPage": null, "previousPage": null, "perPage": 10, "totalPages": 1 } } }, "400": { "text/plain": "Bad team" }, "401": { "text/plain": "The authentication you supplied is incorrect" } } }, "GET /inbox/{contactId}": { "summary": "Get Contact Messages", "tags": [ "Inbox" ], "responses": { "200": { "application/json": { "data": [ { "_id": "act_vQJUQw4OMGqp25aTi", "type": "emailsSent", "messageId": "", "createdAt": "2024-12-05T16:39:41.416Z", "teamId": "tea_8QvkOiBfPdb2ZRhHi", "leadId": "lea_tmOgcDHB5wWwStNtN", "campaignId": "cam_pijDVnytN5S7frriD", "sequenceId": "seq_KnckIbUtWVFAsdCBG", "sequenceStep": 0, "sendUserId": "usr_bcPQCObkKptmHw2Rp", "sendUserName": "Alex DOE", "sendUserEmail": "alex.doe@example.com", "sendUserMailboxId": "usm_05P73WrvTqHY8OAee", "leadEmail": "alex@example.com", "contactId": "ctc_Ds0IaxECSACsbLMzA", "message": "
\n
Hello lemlist Team! 😎

I joined lemlist last Monday, and I am humbly offering you the chance to meet me (and probably my cat, Megatron 😽🤖) through a 15-minute call at your convenience! You can book it [here](https://app.lemcal.com/@alex-doe/quick-meeting?leadId=lea_tmOgcDHB5wWwStNtN).

See you soon!

Alex DOE
\n
\n
\n \n
\n
\n\n\"logo\"", "subject": "Meet me !", "attachments": [] }, { "_id": "act_HXQTqg6L29jdy3b6K", "type": "emailsReplied", "messageId": "", "createdAt": "2024-12-03T10:10:45.000Z", "fromEmail": "alex@example.com", "teamId": "tea_8QvkOiBfPdb2ZRhHi", "leadId": "lea_lzfQLRbKAZdKvjCwg", "campaignId": "cam_UBbMt30jHq0vNJKJr", "sequenceId": "seq_ZDRIjDniOznJJLcKO", "sequenceStep": 0, "sendUserId": "usr_xtJHBMYJSOHzI3ZFb", "sendUserName": "Jordan DOE", "sendUserEmail": "jordan.doe@example.com", "sendUserMailboxId": "usm_CT2BPoHic0I1cmitZ", "leadEmail": "alex@example.com", "contactId": "ctc_Ds0IaxECSACsbLMzA", "message": "
Haha Welcome Jordan, j'adore cette campagne !

A très vite,
Alex

On Tue, Dec 3, 2024 at 10:52 AM Jordan DOE <jordan.doe@example.com> wrote:
\n

Hey Alex ,


I hope this email finds you well!


Have you ever heard about Jordan Doe?

🇫🇷 He was a member of the French Parliament during the French Revolution,
🏘️ He has a street named after him
📙 He authored the famous "Beurre frais épuré, et conservant longtemps ses bonnes qualités, sans devenir rance".


Unfortunately, this brilliant man died ages ago...


But wait, there's another Jordan Doe you might be interested in meeting—one who is very much alive and well! Yes, that's me. I've just joined Lemlist, and I'm looking forward to meeting everyone for a quick chat.


☑️ Book an appointment on 📅 my lemcal !


Feel free to reach out and get to know me better. I'm excited to be part of the team and eager to contribute to our collective success.

Looking forward to seeing you all soon!

Best regards, as your contemporary, Jordan Doe

\n
\n
\n \n
\n
\n\n\"logo\"\n
\n", "subject": "Re: Have you heard about Jordan Doe ?", "attachments": [] }, { "_id": "act_gKmkJOLCfUl4TkhIl", "type": "emailsSent", "messageId": "", "createdAt": "2024-12-03T09:52:55.319Z", "teamId": "tea_8QvkOiBfPdb2ZRhHi", "leadId": "lea_lzfQLRbKAZdKvjCwg", "campaignId": "cam_UBbMt30jHq0vNJKJr", "sequenceId": "seq_ZDRIjDniOznJJLcKO", "sequenceStep": 0, "sendUserId": "usr_xtJHBMYJSOHzI3ZFb", "sendUserName": "Jordan DOE", "sendUserEmail": "jordan.doe@example.com", "sendUserMailboxId": "usm_CT2BPoHic0I1cmitZ", "leadEmail": "alex@example.com", "contactId": "ctc_Ds0IaxECSACsbLMzA", "message": "
\n

Hey Alex , 


I hope this email finds you well!


Have you ever heard about Jordan Doe?

🇫🇷 He was a member of the French Parliament during the French Revolution,
🏘️ He has a street named after him
📙 He authored the famous \"Beurre frais épuré, et conservant longtemps ses bonnes qualités, sans devenir rance\".


Unfortunately, this brilliant man died ages ago...


But wait, there's another Jordan Doe you might be interested in meeting—one who is very much alive and well! Yes, that's me. I've just joined Lemlist, and I'm looking forward to meeting everyone for a quick chat.


☑️ Book an appointment on 📅 my lemcal !


Feel free to reach out and get to know me better. I'm excited to be part of the team and eager to contribute to our collective success.

Looking forward to seeing you all soon!

Best regards, as your contemporary, Jordan Doe

\n
\n
\n \n
\n
\n\n\"logo\"", "subject": "Have you heard about Jordan Doe ?", "attachments": [] } ], "pagination": { "totalItems": 3, "currentPage": 1, "nextPage": null, "previousPage": null, "perPage": 10, "totalPages": 1 } } }, "400": { "text/plain": "Bad team" }, "401": { "text/plain": "The authentication you supplied is incorrect" } } }, "POST /inbox/email": { "summary": "Send Email", "tags": [ "Inbox" ], "request": { "application/json": { "sendUserId": "usr_FU6yAd3UdBFel0UDy", "sendUserEmail": "john@example.com", "sendUserMailboxId": "usm_pmZsNNO1gl5nwCQ07", "contactId": "ctc_ei6zVayP9B2ugwUPN", "leadId": "lea_wadZOcDDSFWSbFaCf", "subject": "Follow up", "message": "

Hello,

Following up on our conversation...

", "cc": [], "replyToActivityId": "latest" } }, "responses": { "200": { "application/json": { "ok": true, "contactId": "ctc_JgrwGbHKgFoEnunBA" } }, "400": { "text/plain": "Bad team" }, "401": { "text/plain": "The authentication you supplied is incorrect" } } }, "POST /inbox/linkedin": { "summary": "Send LinkedIn Message", "tags": [ "Inbox" ], "request": { "application/json": { "sendUserId": "usr_FU6yAd3UdBFel0UDy", "leadId": "lea_wadZOcDDSFWSbFaCf", "contactId": "ctc_ei6zVayP9B2ugwUPN", "message": "Hi, I wanted to follow up..." } }, "responses": { "200": { "application/json": { "ok": true } }, "400": { "text/plain": "Bad team" }, "401": { "text/plain": "The authentication you supplied is incorrect" } } }, "POST /inbox/whatsapp": { "summary": "Send WhatsApp Message", "tags": [ "Inbox" ], "request": { "application/json": { "sendUserId": "usr_FU6yAd3UdBFel0UDy", "sendUserWhatsappAccountId": "wha_ABC123", "contactId": "ctc_ei6zVayP9B2ugwUPN", "leadId": "lea_wadZOcDDSFWSbFaCf", "message": "Hi, following up on our conversation" } }, "responses": { "400": { "text/plain": "Bad team" }, "401": { "text/plain": "The authentication you supplied is incorrect" } } }, "GET /inbox/labels": { "summary": "Get Many Labels", "tags": [ "Inbox" ], "responses": { "200": { "application/json": [ { "_id": "lbl_uPAAgsi4oi9juBHfW", "name": "Interested", "color": "#F9A2A2", "createdAt": "2025-11-26T15:49:23.470Z", "createdBy": "john.doe@example.com" } ] }, "400": { "text/plain": "Bad team" }, "401": { "text/plain": "The authentication you supplied is incorrect" } } }, "POST /inbox/labels": { "summary": "Create Label", "tags": [ "Inbox" ], "request": { "application/json": { "labelName": "Interested" } }, "responses": { "200": { "application/json": { "_id": "lbl_uPAAgsi4oi9juBHfW", "name": "Interested", "color": "#F9A2A2", "createdAt": "2025-11-26T15:49:23.470Z" } }, "400": { "text/plain": "labelName is required" }, "401": { "text/plain": "The authentication you supplied is incorrect" }, "409": { "text/plain": "Label with this name already exists" } } }, "GET /inbox/labels/{labelId}": { "summary": "Get Label", "tags": [ "Inbox" ], "responses": { "200": { "application/json": { "_id": "lbl_uPAAgsi4oi9juBHfW", "name": "Interested", "color": "#F9A2A2", "createdAt": "2025-11-26T15:49:23.470Z", "createdBy": "john.doe@example.com" } }, "400": { "text/plain": "Bad team" }, "401": { "text/plain": "The authentication you supplied is incorrect" }, "404": { "text/plain": "Label not found" } } }, "POST /inbox/conversations/labels/{contactId}": { "summary": "Attach Labels to Conversations", "tags": [ "Inbox" ], "request": { "application/json": { "labelIds": [ "lbl_uPAAgsi4oi9juBHfW", "lbl_oZCShmPCP2L43b8qf" ], "appendLabels": true } }, "responses": { "200": { "application/json": { "ok": true } }, "400": { "text/plain": "Invalid request body: labelIds must be an array and appendLabels must be a boolean" }, "401": { "text/plain": "The authentication you supplied is incorrect" }, "404": { "text/plain": "Label not found" } } }, "DELETE /inbox/conversations/labels/{contactId}": { "summary": "Remove Labels from Conversation", "tags": [ "Inbox" ], "request": { "application/json": { "labelIds": [ "lbl_uPAAgsi4oi9juBHfW" ] } }, "responses": { "200": { "application/json": { "ok": true } }, "400": { "text/plain": "Invalid request body: labelIds must be an array" }, "401": { "text/plain": "The authentication you supplied is incorrect" }, "404": { "text/plain": "Label not found" } } }, "GET /inbox/{contactId}/drafts": { "summary": "List Drafts", "tags": [ "Inbox" ], "responses": { "200": { "application/json": { "drafts": [ { "_id": "drf_abc123def456789", "channel": "email", "subject": "Follow up on our meeting", "contentPreview": "Hi John, I wanted to follow up on our conversation from last week...", "source": "api", "createdAt": "2025-01-15T10:30:00.000Z", "updatedAt": "2025-01-15T10:30:00.000Z" } ] } }, "400": { "text/plain": "User not found: neither a valid email nor a valid user id for this team" }, "401": { "text/plain": "The authentication you supplied is incorrect" } } }, "POST /inbox/{contactId}/drafts": { "summary": "Create Draft", "tags": [ "Inbox" ], "request": { "application/json": { "channel": "email", "content": "

Hello John, I wanted to follow up on our conversation.

", "subject": "Follow up on our meeting", "cc": [], "attachments": [] } }, "responses": { "201": { "application/json": { "draftId": "drf_abc123def456789" } }, "400": { "text/plain": "Content must not be empty" }, "401": { "text/plain": "The authentication you supplied is incorrect" } } }, "GET /inbox/{contactId}/drafts/{draftId}": { "summary": "Get Draft", "tags": [ "Inbox" ], "responses": { "200": { "application/json": { "draft": { "_id": "drf_abc123def456789", "channel": "email", "subject": "Follow up on our meeting", "cc": [], "content": "

Hello John, I wanted to follow up on our conversation.

", "attachments": [], "source": "api", "createdAt": "2025-01-15T10:30:00.000Z", "updatedAt": "2025-01-15T10:30:00.000Z" } } }, "400": { "text/plain": "User not found: neither a valid email nor a valid user id for this team" }, "401": { "text/plain": "The authentication you supplied is incorrect" }, "404": { "text/plain": "Draft not found" } } }, "PATCH /inbox/{contactId}/drafts/{draftId}": { "summary": "Update Draft", "tags": [ "Inbox" ], "request": { "application/json": { "subject": "Updated subject", "content": "

Updated content for the draft.

" } }, "responses": { "200": { "application/json": { "draft": { "_id": "drf_abc123def456789", "channel": "email", "subject": "Updated subject", "cc": [], "content": "

Updated content for the draft.

", "attachments": [], "source": "api", "createdAt": "2025-01-15T10:30:00.000Z", "updatedAt": "2025-01-15T11:00:00.000Z" } } }, "400": { "text/plain": "Content must not be empty" }, "401": { "text/plain": "The authentication you supplied is incorrect" }, "404": { "text/plain": "Draft not found" } } }, "DELETE /inbox/{contactId}/drafts/{draftId}": { "summary": "Delete Draft", "tags": [ "Inbox" ], "responses": { "200": { "application/json": { "success": true } }, "400": { "text/plain": "User not found: neither a valid email nor a valid user id for this team" }, "401": { "text/plain": "The authentication you supplied is incorrect" }, "404": { "text/plain": "Draft not found" } } }, "GET /contacts": { "summary": "Get Many Contacts", "tags": [ "Contacts" ], "responses": { "200": { "application/json": [ { "_id": "ctc_xW8Ou6C03Csv8vatp", "teamId": "tea_8QvkOiBfPdb2ZRhHi", "fullName": "John Doe", "email": "support@lemlist.com", "fields": { "firstName": "John", "jobTitle": "Growth Engineer", "lastName": "Doe", "industry": "Technology", "isActiveInCampaigns": false, "lastCampaign": "NEW TO DELETE", "lastLeadMarkedAsInterestedDate": "2025-10-28T02:12:31.971Z", "leadStatus": "Marked as not Interested by api" }, "campaigns": [ { "campaignId": "cam_bSn8EORHQxbWPjHvu", "campaignState": "running", "leadState": "review", "leadId": "lea_fiDpiGV585wy3Oii2" } ], "ownerId": "usr_ahfFktBBHUIxbVG5P", "createdAt": "2025-10-28T00:40:37.917Z", "createdBy": "usr_ahfFktBBHUIxbVG5P", "unsubscribed": false }, { "_id": "ctc_a9RxJNa7pmMd85H9b", "teamId": "tea_8QvkOiBfPdb2ZRhHi", "fullName": "Casey", "email": "riley@example.com", "fields": { "firstName": "Casey", "isActiveInCampaigns": false }, "campaigns": [ { "campaignId": "cam_jwm7THjgGFE3ylR85", "campaignState": "running", "leadState": "done", "leadId": "lea_XKjAytuJhBKZhxhWh" }, { "campaignId": "cam_eF4DlNERV0CW1TwRd", "campaignState": "running", "leadState": "done", "leadId": "lea_fJcS9D3UtEqZcDcAG" }, { "campaignId": "cam_UBbMt30jHq0vNJKJr", "campaignState": "running", "leadState": "done", "leadId": "lea_GlaMfjxlUYuwEDL0w" }, { "campaignId": "cam_pijDVnytN5S7frriD", "campaignState": "running", "leadState": "review", "leadId": "lea_Bs9aMGCcjdzTDvixY" } ], "ownerId": "usr_Emu1g29BMtBixhMSP", "createdAt": "2024-10-01T09:00:13.831Z", "createdBy": "usr_Emu1g29BMtBixhMSP", "unsubscribed": true } ] }, "400": { "text/plain": "Search query must be at least 2 characters" }, "401": { "text/plain": "The authentication you supplied is incorrect" } } }, "POST /contacts": { "summary": "Add and update contact", "tags": [ "Contacts" ], "request": { "application/json": { "email": "jane.smith@example.com", "firstName": "Jane", "lastName": "Smith", "linkedinUrl": "https://linkedin.com/in/janesmith", "jobTitle": "Product Manager", "companyDomain": "acme.com" } }, "responses": { "201": { "application/json": { "success": true, "data": { "_id": "ctc_xW8Ou6C03Csv8vatp", "teamId": "tea_8QvkOiBfPdb2ZRhHi", "emails": [ { "value": "jane.smith@example.com" } ], "linkedinUrl": "https://www.linkedin.com/in/janesmith", "fields": { "firstName": "Jane", "lastName": "Smith", "jobTitle": "Product Manager" }, "ownerId": "usr_ahfFktBBHUIxbVG5P", "source": "api", "createdAt": "2025-10-28T00:40:37.917Z", "createdBy": "usr_ahfFktBBHUIxbVG5P", "unsubscribed": false, "created": true, "companyLinked": true, "companyId": "cpn_gG7PsmZFpEAnpMCHO" } } }, "200": { "application/json": { "success": true, "data": { "_id": "ctc_xW8Ou6C03Csv8vatp", "teamId": "tea_8QvkOiBfPdb2ZRhHi", "emails": [ { "value": "jane.smith@example.com" } ], "fields": { "firstName": "Jane", "lastName": "Smith", "jobTitle": "Product Manager" }, "ownerId": "usr_ahfFktBBHUIxbVG5P", "source": "api", "createdAt": "2025-10-28T00:40:37.917Z", "createdBy": "usr_ahfFktBBHUIxbVG5P", "unsubscribed": false, "created": false, "updated": true, "companyLinked": false } } }, "400": { "application/json": { "success": false, "error": { "code": "MISSING_IDENTIFIER", "message": "At least one identifier is required: email, linkedinUrl or contactId" } } }, "401": { "text/plain": "The authentication you supplied is incorrect" } } }, "DELETE /contacts/{idOrEmail}": { "summary": "Delete Contact", "tags": [ "Contacts" ], "responses": { "200": { "application/json": { "success": true, "deletedContactId": "ctc_xW8Ou6C03Csv8vatp" } }, "401": { "text/plain": "The authentication you supplied is incorrect" }, "404": { "application/json": { "success": false, "error": { "code": "CONTACT_NOT_FOUND", "message": "No contact found with the provided id or email" } } }, "409": { "application/json": { "success": false, "error": { "code": "CONTACT_DELETE_BLOCKED", "message": "Contact cannot be removed if an enrichment is in progress" } } } } }, "GET /contacts/{idOrEmail}": { "summary": "Get Contact", "tags": [ "Contacts" ], "responses": { "200": { "application/json": { "_id": "ctc_xW8Ou6C03Csv8vatp", "teamId": "tea_8QvkOiBfPdb2ZRhHi", "fullName": "John Doe", "email": "support@lemlist.com", "fields": { "firstName": "John", "jobTitle": "Growth Engineer", "lastName": "Doe", "industry": "Technology", "isActiveInCampaigns": false, "lastCampaign": "NEW TO DELETE", "lastLeadMarkedAsInterestedDate": "2025-10-28T02:12:31.971Z", "leadStatus": "Marked as not Interested by api" }, "campaigns": [ { "campaignId": "cam_bSn8EORHQxbWPjHvu", "campaignState": "running", "leadState": "review", "leadId": "lea_fiDpiGV585wy3Oii2" } ], "ownerId": "usr_ahfFktBBHUIxbVG5P", "createdAt": "2025-10-28T00:40:37.917Z", "createdBy": "usr_ahfFktBBHUIxbVG5P", "unsubscribed": false } }, "400": { "text/plain": "Bad team" }, "401": { "text/plain": "The authentication you supplied is incorrect" } } }, "GET /contacts/lists": { "summary": "Get Contact Lists", "tags": [ "Contacts" ], "responses": { "200": { "application/json": [ { "_id": "clt_abc123def456ghi78", "name": "Nurturing", "dynamic": false }, { "_id": "clt_xyz789uvw012rst34", "name": "Enterprise Prospects", "dynamic": true } ] }, "400": { "text/plain": "Bad team" }, "401": { "text/plain": "The authentication you supplied is incorrect" } } }, "POST /contacts/lists": { "summary": "Create Contact List", "tags": [ "Contacts" ], "request": { "application/json": { "name": "Nurturing" } }, "responses": { "201": { "application/json": { "message": "Contact list created successfully", "list": { "id": "clt_abc123def456ghi78", "name": "Nurturing" } } }, "400": { "text/plain": "name is required and must be a non-empty string" }, "401": { "text/plain": "The authentication you supplied is incorrect" } } }, "POST /contacts/lists/{listId}/entities": { "summary": "Add or Remove Contacts in a List", "tags": [ "Contacts" ], "request": { "application/json": { "contactIds": [ "ctc_xxxxxxxxxxxxxxxxx", "ctc_yyyyyyyyyyyyyyyyy" ] } }, "responses": { "200": { "application/json": { "add": { "summary": "Add contacts (no action)", "value": { "message": "Contacts added to list successfully", "addedCount": 2, "alreadyInList": 0 } }, "remove": { "summary": "Remove contacts (action=remove)", "value": { "message": "Contacts removed from list successfully", "removedCount": 2 } } } }, "400": { "text/plain": "contactIds is required and must be a non-empty array" }, "401": { "text/plain": "The authentication you supplied is incorrect" }, "404": { "text/plain": "Contact list not found" }, "405": { "text/plain": "Method not allowed" }, "500": { "text/plain": "Failed to add contacts to list" } } }, "GET /contacts/export": { "summary": "Export Contact List", "tags": [ "Contacts" ], "responses": { "200": { "text/csv": "firstName,lastName,email,companyName,jobTitle,status\nJohn,Doe,john@example.com,Acme Inc,CEO,interested" }, "400": { "text/plain": "Bad team" } } }, "POST /lemwarm/{userMailboxId}/start": { "summary": "Start lemwarm", "tags": [ "lemwarm" ], "responses": { "200": { "application/json": { "ok": true } }, "400": { "text/plain": "Bad team" }, "401": { "text/plain": "The authentication you supplied is incorrect" } } }, "POST /lemwarm/{userMailboxId}/pause": { "summary": "Pause lemwarm", "tags": [ "lemwarm" ], "responses": { "200": { "application/json": { "ok": true } }, "400": { "text/plain": "Bad team" }, "401": { "text/plain": "The authentication you supplied is incorrect" } } }, "GET /lemwarm/{userMailboxId}/settings": { "summary": "Get lemwarm Settings", "tags": [ "lemwarm" ], "responses": { "200": { "application/json": { "warmEmailRampup": 5, "warmEmailMax": 5, "activeAt": "2025-04-10T07:38:31.530Z", "deliverability": { "score": 70, "lastAt": "2025-04-09T13:34:43.998Z" } } }, "400": { "text/plain": "Bad team" }, "401": { "text/plain": "The authentication you supplied is incorrect" } } }, "PATCH /lemwarm/{userMailboxId}/settings": { "summary": "Update lemwarm Settings", "tags": [ "lemwarm" ], "request": { "application/json": { "warmEmailMax": 30, "warmEmailRampup": 5, "warmDailyVarianceEnabled": true } }, "responses": { "200": { "application/json": { "ok": true } }, "400": { "text/plain": "Bad team" }, "401": { "text/plain": "The authentication you supplied is incorrect" } } }, "GET /companies": { "summary": "Get Many Companies", "tags": [ "Companies" ], "responses": { "200": { "application/json": { "data": [ { "_id": "cpn_gG7PsmZFpEAnpMCHO", "createdAt": "2025-10-26T11:54:27.387Z", "createdBy": "usr_iGBmhLaxZmL0s7k1G", "domain": "persana.ai", "fields": { "name": "Persana AI", "picture": "https://example.com/logos/company-1.png" }, "ownerId": "usr_iGBmhLaxZmL0s7k1G" }, { "_id": "cpn_FEWCjzMWXo5StjpDa", "createdAt": "2025-10-26T11:45:18.773Z", "createdBy": "usr_iGBmhLaxZmL0s7k1G", "domain": "duno.ai", "fields": { "industry": "IT Services and IT Consulting", "name": "Duno.ai", "picture": "https://example.com/logos/company-2.png" }, "ownerId": "usr_iGBmhLaxZmL0s7k1G" }, { "_id": "cpn_2STz8x5Bexmd0nvIz", "createdAt": "2025-10-25T21:37:45.741Z", "createdBy": "usr_iGBmhLaxZmL0s7k1G", "domain": "tally.so", "fields": { "industry": "Computer Software", "name": "lemlist family", "picture": "https://example.com/logos/lemlist.png" }, "ownerId": "usr_iGBmhLaxZmL0s7k1G" }, { "_id": "cpn_Qf4CJuUrNUNmHm6uZ", "createdAt": "2025-10-24T07:26:34.956Z", "createdBy": "usr_ahfFktBBHUIxbVG5P", "domain": "example.com", "fields": { "name": "Growth & GTM Engineering" }, "ownerId": "usr_ahfFktBBHUIxbVG5P" }, { "_id": "cpn_A1B2C3D4E5F6G7H8I", "createdAt": "2025-11-02T09:14:08.512Z", "createdBy": "usr_A1B2C3D4E5F6G7H8I", "domain": "acme.com", "fields": { "name": "Acme Inc" }, "ownerId": "usr_A1B2C3D4E5F6G7H8I", "crmSync": { "provider": "hubspot", "crmRecordId": null, "syncDisabled": false, "errors": [ { "type": "CONNECT_FAILED", "reason": "UNIQUE_INDEX_ERROR_COMPANY", "raisedAt": "2025-11-02T09:14:12.034Z", "metadata": { "alreadyExistingCompanyId": "cpn_J1K2L3M4N5O6P7Q8R" } } ] } } ], "total": 59310, "limit": 100, "offset": 0 } }, "400": { "text/plain": "Bad team" }, "401": { "text/plain": "The authentication you supplied is incorrect" } } }, "POST /companies": { "summary": "Add and update company", "tags": [ "Companies" ], "request": { "application/json": { "name": "Acme Corp", "domain": "acme.com", "linkedinUrl": "https://linkedin.com/company/acme", "industry": "Technology", "location": "San Francisco, CA" } }, "responses": { "201": { "application/json": { "success": true, "data": { "_id": "cpn_gG7PsmZFpEAnpMCHO", "teamId": "tea_8QvkOiBfPdb2ZRhHi", "domain": "acme.com", "linkedinUrl": "https://www.linkedin.com/company/acme", "fields": { "name": "Acme Corp", "industry": "Technology", "location": "San Francisco, CA" }, "ownerId": "usr_ahfFktBBHUIxbVG5P", "source": "api", "createdAt": "2025-10-28T00:40:37.917Z", "createdBy": "usr_ahfFktBBHUIxbVG5P", "created": true } } }, "200": { "application/json": { "success": true, "data": { "_id": "cpn_gG7PsmZFpEAnpMCHO", "teamId": "tea_8QvkOiBfPdb2ZRhHi", "domain": "acme.com", "fields": { "name": "Acme Corp", "industry": "Technology", "location": "San Francisco, CA" }, "ownerId": "usr_ahfFktBBHUIxbVG5P", "source": "api", "createdAt": "2025-10-28T00:40:37.917Z", "createdBy": "usr_ahfFktBBHUIxbVG5P", "created": false, "updated": true } } }, "400": { "application/json": { "success": false, "error": { "code": "MISSING_REQUIRED_FIELD", "message": "Missing required field: name" } } }, "401": { "text/plain": "The authentication you supplied is incorrect" } } }, "DELETE /companies/{companyId}": { "summary": "Delete Company", "tags": [ "Companies" ], "responses": { "200": { "application/json": { "no contacts attached": { "value": { "success": true, "deletedCompanyId": "cpn_A1B2C3D4E5F6G7H8I" } }, "force=true with attached contacts": { "value": { "success": true, "deletedCompanyId": "cpn_A1B2C3D4E5F6G7H8I", "unlinkedContacts": 3 } } } }, "400": { "application/json": { "success": false, "error": { "code": "COMPANY_HAS_CONTACTS", "message": "Company still has contacts attached. Pass ?force=true to detach them before deletion. (3 contacts attached)", "contactCount": 3 } } }, "401": { "text/plain": "The authentication you supplied is incorrect" }, "404": { "application/json": { "success": false, "error": { "code": "COMPANY_NOT_FOUND_BY_ID", "message": "Company not found by ID" } } } } }, "GET /companies/{companyId}/notes": { "summary": "Get Company Notes", "tags": [ "Companies" ], "responses": { "200": { "application/json": { "data": [ { "_id": "act_j0NrG6rYEPP9TMmWC", "teamId": "tea_8QvkOiBfPdb2ZRhHi", "companyId": "cpn_Qf4CJuUrNUNmHm6uZ", "createdAt": "2025-10-28T04:25:00.653Z", "note": "could help our GTM team be more productive", "userId": "usr_ahfFktBBHUIxbVG5P" }, { "_id": "act_BYF2j06u0wgeLncub", "teamId": "tea_8QvkOiBfPdb2ZRhHi", "companyId": "cpn_Qf4CJuUrNUNmHm6uZ", "createdAt": "2025-10-24T12:42:40.605Z", "note": "Note created from the API!", "userId": "usr_ahfFktBBHUIxbVG5P" } ], "total": 2 } }, "400": { "text/plain": "Bad team" }, "401": { "text/plain": "The authentication you supplied is incorrect" }, "404": { "text/plain": "Company not found" } } }, "POST /companies/{companyId}/notes": { "summary": "Create Company Note", "tags": [ "Companies" ], "request": { "application/json": { "note": "Note created from the API!" } }, "responses": { "200": { "application/json": { "_id": "act_j0NrG6rYEPP9TMmWC", "teamId": "tea_8QvkOiBfPdb2ZRhHi", "companyId": "cpn_Qf4CJuUrNUNmHm6uZ", "type": "annotated", "createdAt": "2025-10-28T04:25:00.653Z", "note": "could help our GTM team be more productive", "sendUserId": "usr_ahfFktBBHUIxbVG5P", "userId": "usr_ahfFktBBHUIxbVG5P" } }, "400": { "text/plain": "Bad team" }, "401": { "text/plain": "The authentication you supplied is incorrect" }, "404": { "text/plain": "Company not found" } } }, "GET /activities": { "summary": "Get Many Activities", "tags": [ "Activities" ], "responses": { "200": { "application/json": [ { "_id": "act_PbKqTGpQqSlPcoOZ5", "type": "manualDone", "userId": "usr_Emu1g29BMtBixhMSP", "userName": "Guillaume Moubeche", "bot": false, "createdAt": "2025-10-28T08:07:38.375Z", "leadFirstName": "John", "leadLastName": "Doe", "leadEmail": "support@lemlist.com", "leadCompanyName": "Acme Inc", "leadId": "lea_fiDpiGV585wy3Oii2", "contactId": "ctc_xW8Ou6C03Csv8vatp", "campaignId": "cam_bSn8EORHQxbWPjHvu", "teamId": "tea_8QvkOiBfPdb2ZRhHi", "opportunityId": "opp_LyXDV8KHzctQdLFpG", "metaData": { "teamId": "tea_8QvkOiBfPdb2ZRhHi", "campaignId": "cam_bSn8EORHQxbWPjHvu", "leadId": "lea_fiDpiGV585wy3Oii2", "type": "manualDone" }, "lead": { "_id": "lea_fiDpiGV585wy3Oii2", "isPaused": false, "state": "manualNotInterested", "personalized": false, "source": "api", "variables": { "firstName": "John", "lastName": "Doe", "companyName": "Acme Inc", "jobTitle": "Growth Engineer", "companyDomain": "example.com", "email": "support@lemlist.com", "preferredContactMethod": "email", "industry": "Technology", "Company name": "John Doe" }, "contactId": "ctc_xW8Ou6C03Csv8vatp", "enrichment": { "emailStatus": "deliverable" } }, "campaignName": "NEW TO DELETE", "sequenceTested": "B" }, { "_id": "act_j0NrG6rYEPP9TMmWC", "teamId": "tea_8QvkOiBfPdb2ZRhHi", "companyId": "cpn_Qf4CJuUrNUNmHm6uZ", "type": "annotated", "createdAt": "2025-10-28T04:25:00.653Z", "note": "could help our GTM team be more productive", "sendUserId": "usr_ahfFktBBHUIxbVG5P", "userId": "usr_ahfFktBBHUIxbVG5P" }, { "_id": "act_WeKrlIaQlBnM3LZ6G", "type": "manualNotInterested", "teamId": "tea_8QvkOiBfPdb2ZRhHi", "userName": "api", "isFirst": false, "bot": false, "createdAt": "2025-10-28T02:14:34.834Z", "name": "NEW TO DELETE", "leadFirstName": "John", "leadLastName": "Doe", "leadEmail": "support@lemlist.com", "leadCompanyName": "Acme Inc", "leadId": "lea_fiDpiGV585wy3Oii2", "contactId": "ctc_xW8Ou6C03Csv8vatp", "campaignId": "cam_bSn8EORHQxbWPjHvu", "metaData": { "teamId": "tea_8QvkOiBfPdb2ZRhHi", "campaignId": "cam_bSn8EORHQxbWPjHvu", "leadId": "lea_fiDpiGV585wy3Oii2", "type": "manualNotInterested" }, "lead": { "_id": "lea_fiDpiGV585wy3Oii2", "isPaused": false, "state": "manualNotInterested", "personalized": false, "source": "api", "variables": { "firstName": "John", "lastName": "Doe", "companyName": "Acme Inc", "jobTitle": "Growth Engineer", "companyDomain": "example.com", "email": "support@lemlist.com", "preferredContactMethod": "email", "industry": "Technology", "Company name": "John Doe" }, "contactId": "ctc_xW8Ou6C03Csv8vatp", "enrichment": { "emailStatus": "deliverable" } }, "campaignName": "NEW TO DELETE", "sequenceTested": "B" }, { "_id": "act_zktTG4HXXXSOQya5U", "type": "paused", "userName": "api", "bot": false, "createdAt": "2025-10-28T01:54:56.099Z", "name": "NEW TO DELETE", "leadFirstName": "John", "leadLastName": "Doe", "leadEmail": "support@lemlist.com", "leadCompanyName": "Acme Inc", "leadId": "lea_fiDpiGV585wy3Oii2", "contactId": "ctc_xW8Ou6C03Csv8vatp", "campaignId": "cam_bSn8EORHQxbWPjHvu", "teamId": "tea_8QvkOiBfPdb2ZRhHi", "metaData": { "teamId": "tea_8QvkOiBfPdb2ZRhHi", "campaignId": "cam_bSn8EORHQxbWPjHvu", "leadId": "lea_fiDpiGV585wy3Oii2", "type": "paused" }, "lead": { "_id": "lea_fiDpiGV585wy3Oii2", "isPaused": false, "state": "manualNotInterested", "personalized": false, "source": "api", "variables": { "firstName": "John", "lastName": "Doe", "companyName": "Acme Inc", "jobTitle": "Growth Engineer", "companyDomain": "example.com", "email": "support@lemlist.com", "preferredContactMethod": "email", "industry": "Technology", "Company name": "John Doe" }, "contactId": "ctc_xW8Ou6C03Csv8vatp", "enrichment": { "emailStatus": "deliverable" } }, "campaignName": "NEW TO DELETE", "sequenceTested": "B" }, { "_id": "act_x6esGLhoPa2SMHCZ7", "type": "emailsOpened", "isFirst": false, "stopped": false, "createdAt": "2025-10-27T20:20:59.696Z", "bot": false, "teamId": "tea_8QvkOiBfPdb2ZRhHi", "leadId": "lea_wj47uWhDbbN6Qq6oT", "campaignId": "cam_oxeGg6paG3ZVxjHkH", "sequenceId": "seq_ODjsLXkxXiySRw6dK", "sequenceStep": 1, "emailTemplateId": "etp_z3nAbjdHuewVEjIl5", "createdBy": "usr_EvXz6JqPSJJL9lHkp", "sendUserId": "usr_EvXz6JqPSJJL9lHkp", "name": "Unicorn campaign", "leadFirstName": "Sam", "leadLastName": "Taylor", "leadEmail": "sam@example.com", "leadCompanyName": "lemlist", "contactId": "ctc_FkeUdQHEfhqG2HMbK", "relatedSentAt": "2020-12-07T11:49:14.830Z", "metaData": { "teamId": "tea_8QvkOiBfPdb2ZRhHi", "campaignId": "cam_oxeGg6paG3ZVxjHkH", "leadId": "lea_wj47uWhDbbN6Qq6oT", "type": "emailsOpened", "createdBy": "usr_EvXz6JqPSJJL9lHkp", "taskId": "tsk_namMcIQnA6gxQIupP" }, "lead": { "_id": "lea_wj47uWhDbbN6Qq6oT", "isPaused": false, "state": "emailsUnsubscribed", "personalized": false, "source": "manually", "variables": { "firstName": "Sam ", "lastName": "Taylor", "email": "sam@example.com", "companyName": "lemlist", "linkedinUrl": "https://www.linkedin.com/in/sam-doe" }, "contactId": "ctc_FkeUdQHEfhqG2HMbK", "enrichment": {} }, "campaignName": "Unicorn campaign", "sequenceTested": "A", "emailTemplateName": "Blank" }, { "_id": "act_q4tnlXNdXsBeQceYW", "type": "emailsOpened", "isFirst": false, "stopped": false, "createdAt": "2025-10-27T20:17:24.119Z", "bot": false, "teamId": "tea_8QvkOiBfPdb2ZRhHi", "leadId": "lea_wj47uWhDbbN6Qq6oT", "campaignId": "cam_oxeGg6paG3ZVxjHkH", "sequenceId": "seq_ODjsLXkxXiySRw6dK", "sequenceStep": 1, "emailTemplateId": "etp_z3nAbjdHuewVEjIl5", "createdBy": "usr_EvXz6JqPSJJL9lHkp", "sendUserId": "usr_EvXz6JqPSJJL9lHkp", "name": "Unicorn campaign", "leadFirstName": "Sam", "leadLastName": "Taylor", "leadEmail": "sam@example.com", "leadCompanyName": "lemlist", "contactId": "ctc_FkeUdQHEfhqG2HMbK", "relatedSentAt": "2020-12-07T11:49:14.830Z", "metaData": { "teamId": "tea_8QvkOiBfPdb2ZRhHi", "campaignId": "cam_oxeGg6paG3ZVxjHkH", "leadId": "lea_wj47uWhDbbN6Qq6oT", "type": "emailsOpened", "createdBy": "usr_EvXz6JqPSJJL9lHkp", "taskId": "tsk_namMcIQnA6gxQIupP" }, "lead": { "_id": "lea_wj47uWhDbbN6Qq6oT", "isPaused": false, "state": "emailsUnsubscribed", "personalized": false, "source": "manually", "variables": { "firstName": "Sam ", "lastName": "Taylor", "email": "sam@example.com", "companyName": "lemlist", "linkedinUrl": "https://www.linkedin.com/in/sam-doe" }, "contactId": "ctc_FkeUdQHEfhqG2HMbK", "enrichment": {} }, "campaignName": "Unicorn campaign", "sequenceTested": "A", "emailTemplateName": "Blank" } ] }, "400": { "text/plain": "Bad team" } } }, "DELETE /activities/{activityId}/recording-transcript": { "summary": "Delete Activity Recording & Transcript", "tags": [ "Activities" ], "responses": { "404": { "text/plain": "Activity not found" } } }, "GET /v2/campaigns/{campaignId}/stats": { "summary": "Get Campaign Stats", "tags": [ "Campaigns" ], "responses": { "200": { "application/json": { "nbLeads": 32, "nbLeadsLaunched": 32, "nbLeadsReached": 32, "nbLeadsOpened": 31, "nbLeadsInteracted": 4, "nbLeadsAnswered": 16, "nbLeadsInterested": 1, "nbLeadsNotInterested": 0, "nbLeadsUnsubscribed": 1, "nbLeadsInterrupted": 1, "messagesSent": 72, "messagesNotSent": 0, "messagesBounced": 0, "delivered": 72, "opened": 47, "clicked": 4, "replied": 16, "invitationAccepted": 0, "meetingBooked": 0, "steps": [ { "index": 1, "sequenceId": "seq_rH5RD3fMkkt2gM3YC", "sequenceStep": 0, "taskType": "linkedinSend", "invited": 0, "sent": 32, "delivered": 32, "opened": 15, "clicked": 0, "replied": 15, "notDelivered": 0, "bounced": 0, "unsubscribed": 1 }, { "index": 2, "sequenceId": "seq_rH5RD3fMkkt2gM3YC", "sequenceStep": 1, "invited": 0, "sent": 20, "delivered": 20, "opened": 17, "clicked": 1, "replied": 1, "notDelivered": 0, "bounced": 0, "unsubscribed": 0 }, { "index": 3, "sequenceId": "seq_rH5RD3fMkkt2gM3YC", "sequenceStep": 2, "invited": 0, "sent": 20, "delivered": 20, "opened": 15, "clicked": 3, "replied": 0, "notDelivered": 0, "bounced": 0, "unsubscribed": 0 } ] } }, "400": { "text/plain": { "badTeam": { "summary": "Bad team", "value": "Bad team" }, "missingDates": { "summary": "Missing dates", "value": "Bad params: startDate and endDate are required" }, "invalidChannels": { "summary": "Invalid channels format", "value": "Bad params: channels must be a valid array" }, "invalidChannelValues": { "summary": "Invalid channel values", "value": "Bad params: channels must be empty or contain \"others\", \"email\" or \"linkedin\"" }, "invalidAB": { "summary": "Invalid A/B selection", "value": "Bad params: ABSelected must be A or B" }, "invalidSendUserFormat": { "summary": "Invalid send user format", "value": "Bad param format: sendUser must be formatted as follow: |" }, "invalidSendUser": { "summary": "Send user email mismatch", "value": "Bad params: the send user email is not related to the send user id" } } }, "404": { "text/plain": "Campaign not found" }, "405": { "text/plain": "Bad method" } } }, "POST /v2/campaigns/stats/batch": { "summary": "Get Batch Campaign Stats", "tags": [ "Campaigns" ], "responses": { "200": { "application/json": { "results": [ { "campaignId": "cam_123", "nbLeads": 32, "nbLeadsLaunched": 32, "nbLeadsReached": 32, "nbLeadsOpened": 31, "nbLeadsInteracted": 4, "nbLeadsAnswered": 16, "nbLeadsInterested": 1, "nbLeadsNotInterested": 0, "nbLeadsUnsubscribed": 1, "nbLeadsInterrupted": 1, "messagesSent": 72, "messagesNotSent": 0, "messagesBounced": 0, "delivered": 72, "opened": 47, "clicked": 4, "replied": 16, "invitationAccepted": 0, "meetingBooked": 0, "steps": [ { "index": 1, "sequenceId": "seq_rH5RD3fMkkt2gM3YC", "sequenceStep": 0, "taskType": "linkedinSend", "invited": 0, "sent": 32, "delivered": 32, "opened": 15, "clicked": 0, "replied": 15, "notDelivered": 0, "bounced": 0, "unsubscribed": 1 } ] } ], "errors": [] } }, "400": { "text/plain": { "emptyCampaignIds": { "summary": "Empty campaign IDs", "value": "Bad params: campaignIds must be a non-empty array" }, "tooManyCampaignIds": { "summary": "Too many campaign IDs", "value": "Bad params: campaignIds must contain at most 100 items" }, "missingDates": { "summary": "Missing dates", "value": "Bad params: startDate and endDate are required" }, "invalidChannels": { "summary": "Invalid channels", "value": "Bad params: channels must be an array of \"others\", \"email\" or \"linkedin\"" }, "invalidAB": { "summary": "Invalid A/B selection", "value": "Bad params: ABSelected must be A or B" }, "invalidSendUserFormat": { "summary": "Invalid send user format", "value": "Bad param format: sendUser must be formatted as follow: |" }, "invalidSendUser": { "summary": "Send user email mismatch", "value": "Bad params: the send user email is not related to the send user id" } } }, "405": { "text/plain": "Bad method" } } }, "GET /unsubscribes": { "summary": "Get Many Unsubscribes", "tags": [ "Unsubscribes" ], "responses": { "200": { "application/json": [ { "_id": "uns_ZfdZWc7dvCqXdgQmb", "createdAt": "2023-06-12T10:45:21.367Z", "value": "john.doe@example.com", "source": "user" } ] }, "400": { "text/plain": "No API key provided" }, "401": { "text/plain": "The authentication you supplied is incorrect" }, "403": { "text/plain": "User linked to this API key is blocked" }, "404": { "text/plain": "No user found for this API key" } } }, "GET /unsubs/export": { "summary": "Export Unsubscribes", "tags": [ "Unsubscribes" ], "responses": { "200": { "text/csv": "value,source,createdAt\nwilliam.davis@fake.org,lead,2019-12-19T21:56:34.672Z\nemma.johnson@sample.com,abuse,2020-09-30T08:34:17.298Z\nmichael.brown@domain.net,api,2021-03-12T14:12:56.534Z\njane.smith@example.org,bounce,2022-11-23T18:23:45.890Z\njohn.doe@example.com,user,2023-06-15T10:45:21.367Z\nalice.brown@domainexample.com,lead,2023-07-21T09:14:25.521Z\nbob.smith@example.net,user,2023-08-01T17:34:43.679Z\ncharlie.doe@mockmail.com,api,2023-09-12T11:05:37.874Z\ndavid.jones@sampledomain.org,abuse,2023-10-05T15:23:54.129Z\neve.wilson@fakemail.com,bounce,2024-01-07T08:19:45.213Z" }, "400": { "text/plain": "Bad team" } } }, "GET /v2/unsubscribes/variables": { "summary": "List Unsubscribed Variables", "tags": [ "Unsubscribes" ], "responses": { "200": { "application/json": [ { "_id": "uns_ZfdZWc7dvCqXdgQmb", "value": "john.doe@example.com", "source": "user", "createdAt": "2023-06-12T10:45:21.367Z" } ] }, "400": { "text/plain": "Bad team" } } }, "POST /v2/unsubscribes/variables": { "summary": "Bulk Unsubscribe Variables", "tags": [ "Unsubscribes" ], "request": { "application/json": { "values": [ "john.doe@example.com", "@example.org", "+1234567890" ] } }, "responses": { "200": { "application/json": "Variables unsubscribed" }, "400": { "text/plain": "Maximum 10000 values allowed" } } }, "GET /v2/unsubscribes/variables/{value}": { "summary": "Get Unsubscribed Variable", "tags": [ "Unsubscribes" ], "responses": { "200": { "application/json": { "_id": "uns_ZfdZWc7dvCqXdgQmb", "value": "john.doe@example.com", "variable": "john.doe@example.com", "source": "user" } }, "400": { "text/plain": "No value" }, "404": { "text/plain": "Variable not found" } } }, "POST /v2/unsubscribes/variables/{value}": { "summary": "Unsubscribe Variable", "tags": [ "Unsubscribes" ], "responses": { "200": { "application/json": { "_id": "uns_ZfdZWc7dvCqXdgQmb", "value": "john.doe@example.com", "variable": "john.doe@example.com", "source": "api" } }, "400": { "text/plain": "No value" }, "500": { "text/plain": "Failed to unsubscribe variable" } } }, "DELETE /v2/unsubscribes/variables/{value}": { "summary": "Re-subscribe Variable", "tags": [ "Unsubscribes" ], "responses": { "200": { "application/json": "Variable subscribed" }, "400": { "text/plain": "Variable not found in unsubscribe list" }, "409": { "text/plain": "Variable is protected and cannot be re-subscribed" } } }, "GET /v2/unsubscribes/contacts/{contactId}": { "summary": "Get Contact Subscription Status", "tags": [ "Unsubscribes" ], "responses": { "200": { "application/json": { "_id": "con_aB1cD2eF3gH4iJ5kL", "doNotContact": false } }, "400": { "text/plain": "Bad contact identifier" }, "500": { "text/plain": "Failed to get contact subscription" } } }, "POST /v2/unsubscribes/contacts/{contactId}": { "summary": "Unsubscribe Contact", "tags": [ "Unsubscribes" ], "responses": { "200": { "application/json": "Contact subscription updated" }, "400": { "text/plain": "Bad contact identifier" }, "500": { "text/plain": "Failed to update contact subscription" } } }, "DELETE /v2/unsubscribes/contacts/{contactId}": { "summary": "Re-subscribe Contact", "tags": [ "Unsubscribes" ], "responses": { "200": { "application/json": "Contact subscription updated" }, "400": { "text/plain": "Bad contact identifier" }, "500": { "text/plain": "Failed to update contact subscription" } } }, "GET /v2/unsubscribes/exports/variables": { "summary": "Export Unsubscribed Variables", "tags": [ "Unsubscribes" ], "responses": { "200": { "text/csv": "_id,value,source,createdAt\nuns_ZfdZWc7dvCqXdgQmb,john.doe@example.com,user,2023-06-12T10:45:21.367Z\nuns_fH5gNhZnIpnwRlxZw,@example.org,api,2023-07-21T09:14:25.521Z" }, "400": { "text/plain": "Bad team" } } }, "GET /v2/unsubscribes/exports/contacts": { "summary": "Export Unsubscribed Contacts", "tags": [ "Unsubscribes" ], "responses": { "200": { "text/csv": "_id,doNotContact\ncon_aB1cD2eF3gH4iJ5kL,true\ncon_mN6oP7qR8sT9uV0wX,false" }, "400": { "text/plain": "Bad team" } } }, "GET /unsubscribes/{email}": { "summary": "Get Unsubscribe by Email", "tags": [ "Unsubscribes" ], "responses": { "200": { "application/json": { "_id": "uns_ZfdZWc7dvCqXdgQmb", "createdAt": "2023-06-12T10:45:21.367Z", "value": "john.doe@example.com", "source": "user" } }, "400": { "text/plain": "No API key provided" }, "401": { "text/plain": "The authentication you supplied is incorrect" }, "403": { "text/plain": "User linked to this API key is blocked" }, "404": { "text/plain": "No user found for this API key" } } }, "POST /unsubscribes/{email}": { "summary": "Add Unsubscribe Email or Domain", "tags": [ "Unsubscribes" ], "responses": { "200": { "application/json": { "_id": "uns_fH5gNhZnIpnwRlxZw", "value": "user@domain.com", "email": "user@domain.com" } }, "400": { "text/plain": "Bad team" }, "404": { "text/plain": "Unsubscribe not found" } } }, "DELETE /unsubscribes/{email}": { "summary": "Delete Unsubscribe Email", "tags": [ "Unsubscribes" ], "responses": { "200": { "application/json": { "_id": "uns_QCXCLzEfEuEOlCVIu", "value": "john.doe@example.com" } }, "400": { "text/plain": "Bad team" }, "404": { "text/plain": "Unsubscribe not found" } } }, "GET /hooks": { "summary": "Get Many Webhooks", "tags": [ "Webhooks" ], "responses": { "200": { "application/json": [ { "_id": "hoo_Ib5jfViX9hn3FzNqr", "targetUrl": "https://hooks.zapier.com/hooks/standard/{accountId}/{webhookId}/", "createdAt": "2018-06-05T09:07:07.761Z", "zapId": 37709957, "type": "emailsReplied", "campaignId": "cam_FlN1hrYhADZUfspMs", "isFirst": true }, { "_id": "hoo_SDRr2w4JigZDL7OB2", "targetUrl": "https://hooks.zapier.com/hooks/standard/{accountId}/{webhookId}/", "createdAt": "2019-06-05T14:38:56.535Z", "zapId": 59825555, "type": "emailsReplied", "campaignId": "cam_h3jptAEeqFFpve5mr" }, { "_id": "hoo_IYAPP4HnSyU7UTH3E", "targetUrl": "https://hooks.zapier.com/hooks/standard/{accountId}/{webhookId}/", "createdAt": "2019-06-05T15:49:36.624Z", "zapId": 59831776, "type": "emailsReplied", "campaignId": "cam_qBNYaIFXA77eXM1Ey", "isFirst": true }, { "_id": "hoo_OQ1eCPucttlQV6uB4", "targetUrl": "https://hooks.zapier.com/hooks/standard/{accountId}/{webhookId}/", "createdAt": "2019-06-05T19:28:49.130Z", "zapId": 59852716, "type": "emailsReplied", "campaignId": "cam_vRotI1zB0rgqEe0Hg", "isFirst": true }, { "_id": "hoo_bOucNGG13uJhhIQ8g", "targetUrl": "https://hooks.zapier.com/hooks/standard/{accountId}/{webhookId}/", "createdAt": "2019-10-15T09:53:50.839Z", "zapId": 47004696, "type": "emailsOpened", "campaignId": "cam_K6XNvvamP9QTotBC3" }, { "_id": "hoo_hZSI1GetoYUKu76TX", "targetUrl": "https://hooks.zapier.com/hooks/standard/{accountId}/{webhookId}/", "createdAt": "2019-10-15T09:56:24.197Z", "zapId": 47004696, "type": "emailsOpened", "campaignId": "cam_K6XNvvamP9QTotBC3" }, { "_id": "hoo_anErg4PUSFTd3r3dX", "targetUrl": "https://hooks.zapier.com/hooks/standard/{accountId}/{webhookId}/", "createdAt": "2020-04-27T14:04:33.424Z", "zapId": 85466371, "type": "emailsReplied", "campaignId": "cam_rpejDXyLkA2TSbXyC" }, { "_id": "hoo_Y3nL7UuQn85hIFTRV", "targetUrl": "https://hooks.zapier.com/hooks/standard/{accountId}/{webhookId}/", "createdAt": "2020-04-27T14:06:38.375Z", "zapId": 85466371, "type": "emailsReplied", "campaignId": "cam_rpejDXyLkA2TSbXyC" }, { "_id": "hoo_UAtwcPAd0tK9U6hKG", "targetUrl": "https://example.com/webhooks/{id}", "createdAt": "2022-02-10T16:45:28.216Z", "campaignId": "cam_7BE8IZRaqahU44Wp6" } ] }, "400": { "text/plain": "Bad team" }, "404": { "text/plain": "Webhook not found" } } }, "POST /hooks": { "summary": "Add Webhook", "tags": [ "Webhooks" ], "request": { "application/json": { "targetUrl": "https://webhook.site/00000000-0000-0000-0000-000000000000", "type": "linkedinInterested", "secret": "s3cret-shared-with-my-endpoint" } }, "responses": { "200": { "application/json": { "_id": "hoo_GvYkkWIcdPf2WsBDY", "targetUrl": "https://n8n.example.com/webhook/lemlist-webhook-surprise", "createdAt": "2025-10-29T00:47:42.035Z", "type": "linkedinInterested" } }, "400": { "text/plain": "Bad team" }, "404": { "text/plain": "Webhook not found" } } }, "DELETE /hooks/{hookId}": { "summary": "Delete Webhook", "tags": [ "Webhooks" ], "responses": { "200": { "application/json": { "_id": "hoo_fmpVMoBhrEHtw3cgy", "targetUrl": "https://n8n.example.com/webhook/lemlist-webhook-surprise", "createdAt": "2024-07-11T13:55:06.276Z", "type": "linkedinInterested", "campaignId": "cam_A1B2C3D4E5F6G7H8I9" } }, "400": { "text/plain": "Bad team" }, "404": { "text/plain": "Webhook not found" } } }, "GET /enrich/{enrichId}": { "summary": "Get Enrichment Result", "tags": [ "Enrich" ], "responses": { "200": { "application/json": { "enrichmentId": "enr_FPgMU8ZUVBnOZBuZ6", "enrichmentStatus": "done", "input": { "firstName": "John", "lastName": "lemlist", "linkedinUrl": "https://www.linkedin.com/in/lemlist", "companyName": "lemlist", "companyDomain": "lemlist.com" }, "data": { "email": { "email": "john@lemlist.co", "notFound": false } } } }, "400": { "text/plain": "Bad team" }, "404": { "text/plain": "Enrichment not found" } } }, "POST /enrich": { "summary": "Enrich Data", "tags": [ "Enrich" ], "responses": { "200": { "application/json": { "id": "enr_CzQDYYcS5vDG1ZvQi" } }, "400": { "text/plain": "Bad team" }, "401": { "text/plain": "The authentication you supplied is incorrect" } } }, "POST /v2/enrichments/bulk": { "summary": "Bulk Enrich Data", "tags": [ "Enrich" ], "request": { "application/json": { "find_email": { "summary": "Find email enrichment", "value": [ { "input": { "companyName": "Example Ets", "companyDomain": "example.com", "firstName": "John", "lastName": "Doe" }, "enrichmentRequests": [ "find_email" ], "metadata": { "id": "some_id" } }, { "input": { "linkedinUrl": "https://www.linkedin.com/in/john-doe" }, "enrichmentRequests": [ "find_email" ], "metadata": "some_id" } ] }, "find_phone": { "summary": "Find phone enrichment", "value": [ { "input": { "linkedinUrl": "https://www.linkedin.com/in/john-doe" }, "enrichmentRequests": [ "find_phone" ], "metadata": { "id": "some_id" } } ] }, "verify": { "summary": "Verify email", "value": [ { "input": { "email": "john.doe@example.com" }, "enrichmentRequests": [ "verify" ], "metadata": { "id": "some_id" } } ] }, "linkedin_enrichment": { "summary": "LinkedIn enrichment", "value": [ { "input": { "linkedinUrl": "https://www.linkedin.com/in/john-doe" }, "enrichmentRequests": [ "linkedin_enrichment" ], "metadata": { "id": "some_id" } } ] }, "multiple": { "summary": "Multiple enrichments", "value": [ { "input": { "linkedinUrl": "https://www.linkedin.com/in/john-doe", "email": "john.doe@example.com", "companyName": "Example Company", "companyDomain": "example.com", "firstName": "John", "lastName": "Doe", "jobTitle": "Marketing Manager" }, "enrichmentRequests": [ "find_email", "find_phone", "verify", "linkedin_enrichment" ], "metadata": { "some_id": "some_id" } } ] } } }, "responses": { "200": { "application/json": { "find_email": { "summary": "Find email response", "value": [ { "id": "enr_rt3yG1uvSOAmNgsOm", "metadata": { "id": "some_id" } }, { "id": "enr_KdG7p3VNyiCgmcYTv", "metadata": "some_id" }, { "error": "MISSING_INPUTS", "metadata": "some_id" } ] }, "find_phone": { "summary": "Find phone response", "value": [ { "id": "enr_bPawymIrM37F6yHBe", "metadata": { "id": "some_id" } }, { "error": "MISSING_INPUTS", "metadata": "some_id" } ] }, "verify": { "summary": "Verify email response", "value": [ { "id": "enr_N84uOiUB0RYx5LIEb", "metadata": { "id": "some_id" } }, { "error": "MISSING_EMAIL", "metadata": "some_id" } ] }, "linkedin_enrichment": { "summary": "LinkedIn enrichment response", "value": [ { "id": "enr_zsHo0j5j6HNC0MXgQ", "metadata": { "id": "some_id" } }, { "error": "MISSING_LINKEDIN_URL", "metadata": "some_id" } ] } } }, "400": { "application/json": { "wrong_input_format": { "summary": "Wrong input format", "description": "The input of each enrichment must be an object containing at least one of the required fields", "value": { "error": "WRONG_INPUT_FORMAT" } }, "wrong_metadata_format": { "summary": "Wrong metadata format", "description": "The metadata field must be a string or an object", "value": { "error": "WRONG_METADATA_FORMAT" } }, "no_workflow_requested": { "summary": "No workflow requested", "description": "The enrichment request must contain at least one of the authorized workflows (find_email, find_phone, verify, linkedin_enrichment)", "value": { "error": "NO_WORKFLOW_REQUESTED" } }, "wrong_enrichment_request_format": { "summary": "Wrong enrichment request format", "description": "The enrichment request must be an array", "value": { "error": "WRONG_ENRICHMENT_REQUEST_FORMAT" } }, "unauthorized_workflow_requested": { "summary": "Unauthorized workflow requested", "description": "The enrichmentRequests contained invalid request types", "value": { "error": "UNAUTHORIZED_WORKFLOW_REQUESTED" } }, "too_many_enrichments_requested": { "summary": "Too many enrichments requested", "description": "There is a limit of 500 enrichments per request", "value": { "error": "TOO_MANY_ENRICHMENTS_REQUESTED" } }, "no_enrichments_requested": { "summary": "No enrichments requested", "description": "The body must contain at least one enrichment request", "value": { "error": "NO_ENRICHMENTS_REQUESTED" } }, "wrong_body_format": { "summary": "Wrong body format", "description": "The body must be a valid array", "value": { "error": "WRONG_BODY_FORMAT" } } } }, "401": { "text/plain": "The authentication you supplied is incorrect" } } }, "POST /leads/{leadId}/enrich": { "summary": "Enrich Lead", "tags": [ "Enrich" ], "responses": { "200": { "application/json": { "id": "enr_Ohbs0mEsWmDjTnxTi" } }, "400": { "text/plain": "Bad team" }, "404": { "application/json": { "leadNotFound": { "summary": "Lead does not exist", "value": { "error": "Lead not found", "code": "LEAD_NOT_FOUND" } }, "contactNotFound": { "summary": "Lead exists but its underlying contact is missing", "value": { "error": "Contact not found for this lead", "code": "CONTACT_NOT_FOUND" } } } }, "409": { "application/json": { "alreadyEnriched": { "summary": "Contact already has the requested data — retry with ?force=true to override", "value": { "error": "Enrichment skipped: contact already has the requested data or was recently enriched", "code": "ALREADY_ENRICHED" } }, "inProgress": { "summary": "An enrichment is already running for this lead — wait for it to complete", "value": { "error": "lead is already being enriched" } } } }, "500": { "application/json": { "error": "Failed to enrich lead" } } } }, "GET /watchlist/signals": { "summary": "Get Signal Agent signals", "tags": [ "Signal Agents" ], "responses": { "400": { "text/plain": { "invalidPagination": { "value": "page must be a positive integer" }, "invalidLimit": { "value": "limit must be between 1 and 100" }, "invalidSort": { "value": "sortBy must be either receivedAt or createdAt" }, "invalidType": { "value": "Invalid type values: invalid_type" }, "invalidStatus": { "value": "Invalid status values: invalid_status" }, "invalidDate": { "value": "receivedAtFrom must be a valid ISO date string" }, "invalidDateRange": { "value": "receivedAtFrom must be before receivedAtTo" } } }, "401": { "text/plain": "Unauthorized" }, "404": { "text/plain": "Watchlist not found" }, "405": { "text/plain": "Method not allowed" }, "500": { "text/plain": "Internal server error" } } }, "POST /user/email-accounts": { "summary": "Connect Email Account", "tags": [ "Email Accounts" ], "responses": { "201": { "application/json": { "id": "umx_A1B2C3D4E5F6G7H8I9", "email": "john@company.com", "provider": "custom" } }, "400": { "text/plain": "Missing required fields" }, "401": { "text/plain": "The authentication you supplied is incorrect" }, "403": { "text/plain": "User is not a member of this team" } } }, "DELETE /user/email-accounts/{emailAccountId}": { "summary": "Disconnect Email Account", "tags": [ "Email Accounts" ], "responses": { "200": { "application/json": { "ok": true } }, "400": { "text/plain": "Bad team" }, "401": { "text/plain": "The authentication you supplied is incorrect" }, "403": { "text/plain": "You are not allowed to modify this mailbox" }, "404": { "text/plain": "Email account not found" } } }, "POST /user/email-accounts/{emailAccountId}/test": { "summary": "Test Email Account", "tags": [ "Email Accounts" ], "responses": { "200": { "application/json": { "smtp": { "success": true }, "imap": { "success": true } } }, "400": { "text/plain": "Bad team" }, "401": { "text/plain": "The authentication you supplied is incorrect" }, "404": { "text/plain": "Email account not found" } } }, "GET /user/channels": { "summary": "Get User Channels", "tags": [ "Users" ], "responses": { "200": { "application/json": { "plan": "Multichannel Expert", "email": { "connected": true, "available": true, "accounts": [ { "id": "usm_2mkqJNUjnJQiyVBht", "email": "john@acme.com", "provider": "google" } ] }, "linkedin": { "connected": true, "available": true }, "whatsapp": { "connected": false, "available": true, "addonActive": false, "accounts": [] } } }, "400": { "text/plain": "Bad team" }, "405": { "text/plain": "Bad method" } } }, "POST /campaigns/{campaignId}/duplicate": { "summary": "Duplicate Campaign", "tags": [ "Campaigns" ], "request": { "application/json": { "name": "My duplicated campaign" } }, "responses": { "200": { "application/json": { "_id": "cam_X1Y2Z3A4B5C6D7E8F9", "name": "My duplicated campaign", "sequenceId": "seq_A1B2C3D4E5F6G7H8I9", "labels": [], "createdAt": "2024-01-15T10:30:00.000Z", "createdBy": "usr_A1B2C3D4E5F6G7H8I9", "status": "draft", "senders": [] } }, "400": { "application/json": { "error": "Bad team" } }, "404": { "application/json": { "error": "Campaign not found" } } } }, "GET /fields": { "summary": "List Fields", "tags": [ "Fields" ], "responses": { "200": { "application/json": { "success": true, "data": { "contact": [ { "name": "email", "label": "Email", "type": "text", "source": "default" }, { "name": "firstName", "label": "First name", "type": "text", "source": "default" }, { "name": "revenue", "label": "Annual Revenue", "type": "number", "source": "custom" }, { "name": "leadStatus", "label": "leadStatus", "type": "text", "source": "crm_synced", "crmField": "hs_lead_status" } ], "company": [ { "name": "linkedinUrl", "label": "LinkedIn URL", "type": "text", "source": "default" }, { "name": "industry", "label": "Industry", "type": "text", "source": "custom" } ] } } }, "400": { "application/json": { "success": false, "error": "Invalid entity parameter. Must be one of: contact, company" } }, "401": { "application/json": { "error": "Unauthorized" } }, "405": { "application/json": { "success": false, "error": "Method not allowed. Use GET." } } } }, "GET /campaigns/{campaignId}/statutes": { "summary": "Get Campaign Statutes", "tags": [ "Campaigns" ], "responses": { "200": { "application/json": { "name": "Product Launch Campaign", "status": "draft", "statutes": [ { "type": "issue", "level": 3, "message": "No senders configured on this campaign." }, { "type": "information", "level": 2, "category": "limit", "message": "John Doe daily email sending limit has been exceeded. You can increase the limit in settings or wait 2 hours" } ] } }, "400": { "text/plain": "Bad team" } } }, "POST /watchlist/{watchListId}/external-signals": { "summary": "Push external signals", "tags": [ "Signal Agents" ], "responses": { "200": { "application/json": { "processed": { "value": { "status": "processed", "signalId": "wls_ExAmPlE1234567890a", "creditsConsumed": 0, "entity": { "type": "contact", "id": "lea_ExAmPlE1234567890a", "enriched": true } } }, "ignoredNoMatch": { "value": { "status": "ignored", "reason": "no_entity_match", "creditsConsumed": 0 } }, "ignoredDailyLimit": { "value": { "status": "ignored", "reason": "daily_limit_reached", "creditsConsumed": 0 } } } }, "400": { "text/plain": { "invalidContact": { "value": "Contact must have a valid LinkedIn profile URL (e.g. https://www.linkedin.com/in/...)" }, "invalidCompany": { "value": "Company must have a domain and a name; linkedinUrl (when provided) must be a valid LinkedIn company URL (e.g. https://www.linkedin.com/company/...)" }, "invalidCustomFields": { "value": "Custom fields must have 20 keys or less with string values" } } }, "401": { "text/plain": "Unauthorized" }, "404": { "text/plain": "Watch list not found or not configured for external signals" }, "500": { "text/plain": "Internal server error" } } }, "GET /watchlist": { "summary": "List Signal Agents", "tags": [ "Signal Agents" ], "responses": { "400": { "text/plain": "Invalid type values" }, "401": { "text/plain": "Unauthorized" }, "500": { "text/plain": "Internal server error" } } }, "POST /watchlist": { "summary": "Create Signal Agent", "tags": [ "Signal Agents" ], "request": { "application/json": { "name": "New hires at target accounts", "type": "newHire", "filters": [ { "filterId": "companyIndustries", "in": [ "Software" ], "out": [] } ] } }, "responses": { "400": { "text/plain": "activate requires both segmentType and signalProcessingType" }, "401": { "text/plain": "Unauthorized" }, "402": { "text/plain": "Insufficient credits" }, "429": { "text/plain": "Monitoring limit exceeded" }, "500": { "text/plain": "Internal server error" } } }, "PATCH /watchlist": { "summary": "Update Signal Agent", "tags": [ "Signal Agents" ], "request": { "application/json": { "watchListId": "wl_Example000000001", "name": "Renamed agent" } }, "responses": { "400": { "text/plain": "name must be a non-empty string" }, "401": { "text/plain": "Unauthorized" }, "404": { "text/plain": "Watch list not found" }, "409": { "text/plain": "Watch list type cannot be changed after creation" }, "500": { "text/plain": "Internal server error" } } }, "DELETE /watchlist": { "summary": "Delete Signal Agent", "tags": [ "Signal Agents" ], "responses": { "400": { "text/plain": "watchListId must be a valid watch list ID" }, "401": { "text/plain": "Unauthorized" }, "500": { "text/plain": "Internal server error" } } }, "GET /watchlist/history": { "summary": "Get Signal Agent configuration history", "tags": [ "Signal Agents" ], "responses": { "400": { "text/plain": "page must be a positive integer" }, "401": { "text/plain": "Unauthorized" }, "404": { "text/plain": "WatchList not found or access denied" }, "500": { "text/plain": "Internal server error" } } }, "GET /watchlist/library": { "summary": "List available signal types", "tags": [ "Signal Agents" ], "responses": { "401": { "text/plain": "Unauthorized" }, "500": { "text/plain": "Internal server error" } } }, "GET /watchlist/filters": { "summary": "List allowed filters per signal type", "tags": [ "Signal Agents" ], "responses": { "400": { "text/plain": "Invalid type values" }, "401": { "text/plain": "Unauthorized" }, "500": { "text/plain": "Internal server error" } } }, "GET /watchlist/filter-values": { "summary": "Autocomplete filter values", "tags": [ "Signal Agents" ], "responses": { "400": { "text/plain": "filterId is not a supported watch list autocomplete filter" }, "401": { "text/plain": "Unauthorized" }, "502": { "text/plain": "Failed to fetch filter values from search backend" }, "500": { "text/plain": "Internal server error" } } }, "GET /deliverability/alerts": { "summary": "List Deliverability Alerts", "tags": [ "Deliverability alerts" ], "responses": { "200": { "application/json": { "alerts": [ { "_id": "dac_A1B2C3D4E5F6G7H8I", "teamId": "tea_ExampleAcmeTeamId", "createdBy": "usr_ExampleAcmeUserId", "createdAt": "2026-04-12T09:30:00.000Z", "updatedAt": "2026-04-12T09:30:00.000Z", "widget": "outreach", "metric": "bounceRate", "severity": "critical", "scope": "mailbox", "scopeEntities": [ "usr_ExampleAcmeUserId|john@example.com|usm_ExampleMailboxId" ], "threshold": 5, "comparisonOperator": "above", "periodDays": 1, "periodMode": "rolling", "channelConfig": { "inapp": { "enabled": true }, "email": { "enabled": true, "addresses": [ "alerts@example.com" ] }, "webhook": { "enabled": false }, "slack": { "enabled": false } }, "enabled": true, "lastCheckedAt": "2026-05-07T07:00:00.000Z", "lastTriggeredAt": "2026-05-06T18:42:11.000Z", "recheckDelayHours": 12 } ], "total": 1 } } } }, "POST /deliverability/alerts": { "summary": "Create Deliverability Alert", "tags": [ "Deliverability alerts" ], "request": { "application/json": { "outreachBounceRate": { "summary": "Critical alert on outreach bounce rate", "value": { "widget": "outreach", "metric": "bounceRate", "severity": "critical", "scope": "mailbox", "scopeEntities": [ "usr_ExampleAcmeUserId|john@example.com|usm_ExampleMailboxId" ], "threshold": 5, "comparisonOperator": "above", "periodDays": 1, "periodMode": "rolling", "channelConfig": { "inapp": { "enabled": true }, "email": { "enabled": true, "addresses": [ "alerts@example.com" ] } } } }, "warmupInboxRateGlobal": { "summary": "Warning when global warm-up inbox rate drops", "value": { "widget": "warmup", "metric": "inboxRate", "severity": "warning", "scope": "global", "threshold": 85, "comparisonOperator": "below", "periodDays": 3, "periodMode": "rolling" } } } }, "responses": { "201": { "application/json": { "_id": "dac_A1B2C3D4E5F6G7H8I", "teamId": "tea_ExampleAcmeTeamId", "createdBy": "usr_ExampleAcmeUserId", "createdAt": "2026-04-12T09:30:00.000Z", "updatedAt": "2026-04-12T09:30:00.000Z", "widget": "outreach", "metric": "bounceRate", "severity": "critical", "scope": "mailbox", "scopeEntities": [ "usr_ExampleAcmeUserId|john@example.com|usm_ExampleMailboxId" ], "threshold": 5, "comparisonOperator": "above", "periodDays": 1, "periodMode": "rolling", "channelConfig": { "inapp": { "enabled": true }, "email": { "enabled": true, "addresses": [ "alerts@example.com" ] }, "webhook": { "enabled": false }, "slack": { "enabled": false } }, "enabled": true, "lastCheckedAt": "2026-05-07T07:00:00.000Z", "lastTriggeredAt": "2026-05-06T18:42:11.000Z", "recheckDelayHours": 12 } } } }, "GET /deliverability/alerts/{alertId}": { "summary": "Get Deliverability Alert", "tags": [ "Deliverability alerts" ], "responses": { "200": { "application/json": { "_id": "dac_A1B2C3D4E5F6G7H8I", "teamId": "tea_ExampleAcmeTeamId", "createdBy": "usr_ExampleAcmeUserId", "createdAt": "2026-04-12T09:30:00.000Z", "updatedAt": "2026-04-12T09:30:00.000Z", "widget": "outreach", "metric": "bounceRate", "severity": "critical", "scope": "mailbox", "scopeEntities": [ "usr_ExampleAcmeUserId|john@example.com|usm_ExampleMailboxId" ], "threshold": 5, "comparisonOperator": "above", "periodDays": 1, "periodMode": "rolling", "channelConfig": { "inapp": { "enabled": true }, "email": { "enabled": true, "addresses": [ "alerts@example.com" ] }, "webhook": { "enabled": false }, "slack": { "enabled": false } }, "enabled": true, "lastCheckedAt": "2026-05-07T07:00:00.000Z", "lastTriggeredAt": "2026-05-06T18:42:11.000Z", "recheckDelayHours": 12 } } } }, "PATCH /deliverability/alerts/{alertId}": { "summary": "Update Deliverability Alert", "tags": [ "Deliverability alerts" ], "request": { "application/json": { "threshold": 7, "channelConfig": { "inapp": { "enabled": true }, "email": { "enabled": true, "addresses": [ "alerts@example.com", "ops@example.com" ] } } } }, "responses": { "200": { "application/json": { "_id": "dac_A1B2C3D4E5F6G7H8I", "teamId": "tea_ExampleAcmeTeamId", "createdBy": "usr_ExampleAcmeUserId", "createdAt": "2026-04-12T09:30:00.000Z", "updatedAt": "2026-05-07T10:15:00.000Z", "widget": "outreach", "metric": "bounceRate", "severity": "critical", "scope": "mailbox", "scopeEntities": [ "usr_ExampleAcmeUserId|john@example.com|usm_ExampleMailboxId" ], "threshold": 7, "comparisonOperator": "above", "periodDays": 1, "periodMode": "rolling", "channelConfig": { "inapp": { "enabled": true }, "email": { "enabled": true, "addresses": [ "alerts@example.com", "ops@example.com" ] } }, "enabled": true, "lastCheckedAt": "2026-05-07T07:00:00.000Z", "lastTriggeredAt": "2026-05-06T18:42:11.000Z", "recheckDelayHours": 12 } } } }, "DELETE /deliverability/alerts/{alertId}": { "summary": "Delete Deliverability Alert", "tags": [ "Deliverability alerts" ], "responses": { "200": { "application/json": { "deleted": true } } } }, "POST /sequences/{sequenceId}/steps/{stepId}/ab-test": { "summary": "Create A/B Test Variant", "tags": [ "Sequences" ], "responses": { "200": { "application/json": { "stepId": "stp_V0JHmSpWiO0rxHUkz", "abTest": true, "emailTemplateBId": "etp_9aZ2k1QwErTyUiOp3", "subject": "Quick question, {{firstName}}", "message": "
Hi {{firstName}}, ...
" } }, "400": { "text/plain": "A/B test already exists on this step" }, "401": { "text/plain": "The authentication you supplied is incorrect" }, "402": { "text/plain": "route is available starting emailPro plan" }, "404": { "text/plain": "No A/B test variant on this step" } } }, "GET /sequences/{sequenceId}/steps/{stepId}/ab-test": { "summary": "Get A/B Test Variant", "tags": [ "Sequences" ], "responses": { "200": { "application/json": { "stepId": "stp_V0JHmSpWiO0rxHUkz", "abTest": true, "emailTemplateBId": "etp_9aZ2k1QwErTyUiOp3", "subject": "Quick question, {{firstName}}", "message": "
Hi {{firstName}}, ...
" } }, "401": { "text/plain": "The authentication you supplied is incorrect" }, "402": { "text/plain": "route is available starting emailPro plan" }, "404": { "text/plain": "No A/B test variant on this step" } } }, "PATCH /sequences/{sequenceId}/steps/{stepId}/ab-test": { "summary": "Update A/B Test Variant", "tags": [ "Sequences" ], "request": { "application/json": { "subject": "New subject B", "message": "
New body B
" } }, "responses": { "200": { "application/json": { "stepId": "stp_V0JHmSpWiO0rxHUkz", "abTest": true, "emailTemplateBId": "etp_9aZ2k1QwErTyUiOp3", "subject": "Quick question, {{firstName}}", "message": "
Hi {{firstName}}, ...
" } }, "400": { "text/plain": "Match error: Expected string, got number" }, "401": { "text/plain": "The authentication you supplied is incorrect" }, "402": { "text/plain": "route is available starting emailPro plan" }, "404": { "text/plain": "No A/B test variant on this step" } } }, "DELETE /sequences/{sequenceId}/steps/{stepId}/ab-test": { "summary": "Delete A/B Test Variant", "tags": [ "Sequences" ], "responses": { "200": { "application/json": { "ok": true } }, "400": { "text/plain": "You cannot edit this step because the campaign is running" }, "401": { "text/plain": "The authentication you supplied is incorrect" }, "402": { "text/plain": "route is available starting emailPro plan" }, "404": { "text/plain": "No A/B test variant on this step" } } }, "POST /sequences/{sequenceId}/steps/{stepId}/ab-test/winner": { "summary": "Select A/B Test Winner", "tags": [ "Sequences" ], "request": { "application/json": { "variant": "B" } }, "responses": { "200": { "application/json": { "stepId": "stp_V0JHmSpWiO0rxHUkz", "abTest": "B" } }, "400": { "text/plain": "A winning variant has already been selected for this step" }, "401": { "text/plain": "The authentication you supplied is incorrect" }, "402": { "text/plain": "route is available starting emailPro plan" }, "404": { "text/plain": "No A/B test variant on this step" } } } }