Sendlane integration
Sendlane is an email and SMS marketing platform for e-commerce. Manage contacts, lists, tags, custom fields, segments and sender profiles; add contacts to lists (which can trigger automations and double opt-in emails); record email and SMS consent; read campaign and SMS reports; manage email and domain suppressions; and send e-commerce events (orders, carts, checkouts, products, custom events) through a Custom Integration so automations can use them. The automation copy route is not exposed because it needs a second account's token. Authentication is a v2 API token (Sendlane account, API section) sent as Authorization: Bearer; the e-commerce tracking tools also take the Custom Integration token in their body.
Say what should happen.
The workflow builds itself.
What you can do with Sendlane
Each of these is one operation on one endpoint, available both as a workflow step and as a tool an AI agent can call on its own. Nothing bundles several operations into one action, so what a run did stays readable afterwards.
Most endpoints run on the free plan. A few, mainly the ones that publish on your behalf, need a paid plan.
Contact, 9 operations
add_contacts_to_listAdd contacts to listPOSTAdds or updates contacts in a list (each needs email or phone). Sendlane may email a double opt-in confirmation and start list automations; a contact already on the list starts none. Answers with an acceptance message.delete_contactDelete contactDELETEDeletes a contact from the account. This cannot be undone.get_contactGet contactGETReturns one contact: email, phone, names, subscribed and suppressed flags, lifetime value, lists, tags, custom field values and SMS consent.get_list_contactGet list contactGETReturns one contact of a list (email, phone, names, subscription flags, tags, custom fields).list_contactsList contactsGETLists all contacts, one page at a time. Pass from and to to keep only contacts created in that datetime range. Use search_contact to find one contact by email or phone.list_list_contactsList list contactsGETLists the contacts of a list, one page at a time. Pass from and to to keep contacts created in a datetime range.list_segment_contactsList segment contactsGETLists the contacts of a segment (id, email, names, phone), one page at a time. Sendlane documents the contact array under the key id; data is declared too in case the answer uses it.list_tag_contactsList tag contactsGETLists the contacts carrying a tag, one page at a time. Pass from and to to limit them to a datetime range.remove_contact_from_listRemove contact from listDELETERemoves a contact from one list; the contact stays in the account.
Tag, 9 operations
add_contact_tagsAdd contact tagsPOSTAdds tags to a contact by tag id (list_tags). Adding a tag can start automations triggered by that tag. Returns the contact's tags.create_tagCreate tagPOSTCreates a tag and returns it (id, name).delete_tagDelete tagDELETEDeletes a tag from the account.get_contact_tagGet contact tagGETReturns one tag on a contact (id, name, audience count).get_tagGet tagGETReturns one tag: id, name, audience count and creation time.list_contact_tagsList contact tagsGETLists the tags on a contact (id, name, audience count), one page at a time.list_tagsList tagsGETLists the tags of the account (id, name, audience count), one page at a time. Their ids feed add_contact_tags and list_tag_contacts.remove_contact_tagRemove contact tagDELETERemoves one tag from a contact. Removing a tag can start automations triggered by it.update_tagUpdate tagPATCHRenames a tag and returns it.
Custom field, 8 operations
create_custom_fieldCreate custom fieldPOSTCreates an account custom field with the given name and returns it (id, name, type).get_contact_custom_fieldGet contact custom fieldGETReturns one custom field value set on a contact: custom_field_id, name and value.get_custom_fieldGet custom fieldGETReturns one account custom field: id, name, type and creation time.list_contact_custom_fieldsList contact custom fieldsGETLists the custom field values set on a contact: value id, custom_field_id, name, value. Pass a value id to remove_contact_custom_field.list_custom_fieldsList custom fieldsGETLists the custom fields defined on the account (id, name, type), one page at a time. Their ids feed set_contact_custom_fields and the custom_fields of add_contacts_to_list.remove_contact_custom_fieldRemove contact custom fieldDELETERemoves one custom field value from a contact. Pass the value id from list_contact_custom_fields.set_contact_custom_fieldsSet contact custom fieldsPOSTSets one or more custom field values on a contact and returns the contact's custom field values. Each item names an account custom field id (list_custom_fields) and its value.update_custom_fieldUpdate custom fieldPATCHRenames an account custom field and returns it.
Event, 5 operations
create_custom_integration_eventCreate custom integration eventPOSTDefines a custom event name on a Custom Integration and returns it (id, name).delete_custom_integration_eventDelete custom integration eventDELETEDeletes a custom event definition from a Custom Integration.get_custom_integration_eventGet custom integration eventGETReturns one custom event definition of a Custom Integration: id, name and creation time.list_custom_integration_eventsList custom integration eventsGETLists the custom event definitions of a Custom Integration (id, name, creation time), one page at a time.track_custom_eventTrack custom eventPOSTSends a custom event (custom_event name plus any data object) for a shopper (email or phone) to a Custom Integration. Its data is available to automation emails and SMS it triggers.
List, 5 operations
create_listCreate listPOSTCreates a contact list and returns it (id, name, description, status).delete_listDelete listDELETEDeletes a list. This cannot be undone.get_listGet listGETReturns one list: id, name, description, status and creation time.list_listsList listsGETLists the contact lists of the account (id, name, description, status), one page at a time. Their ids feed add_contacts_to_list and list_list_contacts.update_listUpdate listPUTUpdates a list's name and description. Sendlane requires the name on every update; read the list first with get_list and send its current name if you only change the description.
Sender, 5 operations
create_senderCreate senderPOSTCreates a sender profile (from name and email, reply address, postal address) and returns it with its id.delete_senderDelete senderDELETEDeletes a sender profile.get_senderGet senderGETReturns one sender profile: from name and email, reply address, postal address and default flag.list_sendersList sendersGETLists the sender profiles (from name and email, reply address, postal address, default flag), one page at a time.update_senderUpdate senderPATCHUpdates a sender profile with only the fields you send, and returns it.
Sms consent, 4 operations
add_contact_sms_consentAdd contact sms consentPOSTRecords SMS consent on a contact (phone, opt-in date, IP, user agent, opt-in URL), which allows SMS to it. Must first be enabled on the account by Sendlane support.add_sms_consent_by_searchAdd sms consent by searchPOSTFinds a contact by email or phone and records SMS consent on it (opt-in date, IP, user agent, opt-in URL). Must first be enabled on the account by Sendlane support.get_contact_sms_consentGet contact sms consentGETReturns the SMS consent of a contact: phone, has_sms_consent and the consent record (type, IP, opt-in date and URL, user agent). Must be enabled on the account by Sendlane support.remove_contact_sms_consentRemove contact sms consentDELETERemoves the SMS consent of a contact, so it can no longer receive SMS. Returns the contact's consent state.
Back in stock contact, 3 operations
delete_back_in_stock_contactDelete back in stock contactDELETEDeletes a back-in-stock request.get_back_in_stock_contactGet back in stock contactGETReturns one back-in-stock request: email, phone, shop, platform, product_id and sku.list_back_in_stock_contactsList back in stock contactsGETLists contacts waiting for a back-in-stock alert: email, phone, shop, platform, product_id and sku, one page at a time.
Custom, 3 operations
create_custom_integrationCreate custom integrationPOSTCreates a Custom Integration for a store and returns it with its token, used by the track_* tools to send e-commerce events.delete_custom_integrationDelete custom integrationDELETEDeletes a Custom Integration.list_custom_integrationsList custom integrationsGETLists the Custom Integrations (token, name, store URL, status). The token is what the track_* tools and the custom integration event tools take.
Domain, 3 operations
create_domain_suppressionCreate domain suppressionPOSTAdds a domain to the suppression list and returns the suppression (id, domain).delete_domain_suppressionDelete domain suppressionDELETERemoves a domain from the suppression list.list_domain_suppressionsList domain suppressionsGETLists the domains on the suppression list (id, domain), one page at a time.
Segment, 3 operations
get_segmentGet segmentGETReturns one segment: name, list, match rule (All or Any), last contact count and whether it is being recomputed.list_contact_segmentsList contact segmentsGETLists the segments a contact belongs to (id, name, list, match rule, last count), one page at a time.list_segmentsList segmentsGETLists the segments of the account (id, name, list, match rule, last count, processing state), one page at a time.
Campaign, 2 operations
get_campaignGet campaignGETReturns one email campaign: name, status, scheduled_at, sent_at and the automation it belongs to.list_campaignsList campaignsGETLists the email campaigns of the account (id, name, status, scheduled and sent times, automation), one page at a time. Pass a campaign id to get_campaign_report for its numbers.
Email, 2 operations
create_email_suppressionCreate email suppressionPOSTAdds an email address to Sendlane's email suppression list, optionally for one list (list_id). Returns the suppression with its id.list_email_suppressionsList email suppressionsGETLists suppressed email addresses (id, email, list_id), one page at a time. list_id is sent as a query parameter (Sendlane documents it in a GET body); unverified: check list_id on the results.
Report, 2 operations
get_campaign_reportGet campaign reportGETReturns the totals of one email campaign: sent, opens, clicks, unique opens and clicks, bounces, suppressions, unsubscribes, spam reports and revenue. Pass from and to to limit them to a datetime range.get_sms_message_reportGet sms message reportGETReturns the totals of one SMS message: sent, delivered, clicks, unique clicks, failed, replies, unsubscribes, resubscribes, credits used and revenue. Pass from and to to limit them to a datetime range.
Sms message, 2 operations
get_sms_messageGet sms messageGETReturns one SMS message: name, SMS campaign (id, status), automation and timestamps.list_sms_messagesList sms messagesGETLists the SMS messages of the account (id, name, SMS campaign id and status, automation), one page at a time. Pass a message id to get_sms_message_report for its numbers.
Subscription, 2 operations
list_contact_subscriptionsList contact subscriptionsGETReturns the list subscription of a contact: list id and name, subscribed, suppressed, added_by and date_added. Sendlane's guide page shows a contact object here instead; the reference schema shows this.search_contact_subscriptionsSearch contact subscriptionsGETFinds a contact by email or phone and returns its list subscription: list id and name, subscribed, suppressed, who added it and when. Pass email or phone.
Unsubscribed, 2 operations
list_list_unsubscribed_contactsList list unsubscribed contactsGETLists the contacts unsubscribed from one list, one page at a time. Pass from and to to limit the listing to a datetime range.list_unsubscribed_contactsList unsubscribed contactsGETLists unsubscribed contacts, one page at a time. Pass from and to to limit the listing to a datetime range.
Added to cart, 1 operation
track_added_to_cartTrack added to cartPOSTSends an added-to-cart event for a shopper (email or phone) to a Custom Integration: cart id, items, totals, checkout URL. Answers "Successfully handled event".
Back in stock, 1 operation
track_back_in_stockTrack back in stockPOSTSends a back-in-stock request for a shopper (email or phone) and a product to a Custom Integration. Answers "Successfully handled event".
Category added, 1 operation
track_category_addedTrack category addedPOSTCreates or updates a product category of a Custom Integration, keyed by category_id. Send parent categories before their children. Answers "Successfully handled event".
Checkout started, 1 operation
track_checkout_startedTrack checkout startedPOSTSends a checkout-started event for a shopper (email or phone) to a Custom Integration: checkout id, items, totals, URL. Answers "Successfully handled event".
Customer added, 1 operation
track_customer_addedTrack customer addedPOSTSends a customer-added event to a Custom Integration (customer id, billing and shipping addresses, marketing consent). Answers "Successfully handled event".
Email consent, 1 operation
set_contact_email_consentSet contact email consentPOSTGrants (true) or removes (false) email consent on a contact, which decides whether it can be emailed. Leave list_ids out for a contact on no list. Must first be enabled on the account by Sendlane support.
History, 1 operation
list_contact_historyList contact historyGETReturns the event history of a contact (email opens and clicks, subscribes, unsubscribes, tracked events, conversions, orders). filter goes as a query parameter (Sendlane documents a GET body); unverified, so check each type.
Order placed, 1 operation
track_order_placedTrack order placedPOSTSends a placed order for a shopper (email or phone) to a Custom Integration: items, totals, taxes, discounts, addresses. Answers "Successfully handled event".
Product added, 1 operation
track_product_addedTrack product addedPOSTSends a product-added event to a Custom Integration: product id, name, price, URL, image, categories, brand and variants. Answers "Successfully handled event".
Product viewed, 1 operation
track_product_viewedTrack product viewedPOSTSends a product-viewed event for a shopper (email or phone) to a Custom Integration. Answers "Successfully handled event".
Search, 1 operation
search_contactSearch contactGETFinds one contact by email or phone and returns it (id, names, lists, tags, custom fields, consent). Pass email or phone. Use the returned id with the other contact tools.
Unsubscribe, 1 operation
unsubscribe_contactUnsubscribe contactPOSTUnsubscribes a contact. Answers with a confirmation message such as "Contact unsubscribed successfully".
Use Sendlane from Claude Code, Cursor or Codex
Connect Sendlane in LiveContext, create an API key in Settings, then add the LiveContext MCP server to your client. Its Sendlane operations become tools the client can call, next to every other integration you connected.
claude mcp add --transport http livecontext https://livecontext.ai/mcp --header "X-API-Key: YOUR_API_KEY"[mcp_servers.livecontext]
url = "https://livecontext.ai/mcp"
[mcp_servers.livecontext.http_headers]
"X-API-Key" = "YOUR_API_KEY"{
"mcpServers": {
"livecontext": {
"type": "http",
"url": "https://livecontext.ai/mcp",
"headers": {
"X-API-Key": "YOUR_API_KEY"
}
}
}
}How to connect Sendlane
- Create your workspace
Sign up free. Nothing to install.
- Connect Sendlane once
Add your Sendlane connection in Settings. Every tool from this integration reuses it, and secrets are encrypted at rest and visible only to you.
- Describe the job in chat
The workflow builds itself in front of you and picks the endpoints it needs. Drag the steps yourself on the canvas whenever you would rather be explicit.
Sendlane integration FAQ
What can you do with the Sendlane integration?
LiveContext exposes 81 operations on Sendlane, covering contact, tag, custom field and event.
