Skip to main content
Lemlist logo

Overview

Add Lemlist to any ModuleX agent or workflow. Manage sales-engagement outreach against the Lemlist REST API (api.lemlist.com): retrieve campaign activities and replies, look up lead details, and send emails through the Lemlist inbox.
Categories: Sales · Email Marketing · Sales Engagement · Auth: API Key · Actions: 3

Authentication

API Key Authentication

Authenticate using your Lemlist API key
1

Step 1

Sign in to Lemlist and open Settings -> Team Settings -> Integrations
2

Step 2

Generate an API key (it is shown only once — copy it immediately)
3

Step 3

Paste the API key below

Required Credentials

FieldDescriptionRequiredFormat
Lemlist API KeyYour Lemlist API key from Team Settings -> IntegrationsYes-

Available Actions

Parameters

type
string
Filter by activity type (e.g., emailOpened, emailClicked, emailReplied, paused)
campaign_id
string
Filter by campaign ID (e.g., “cam_abc123def456”)
lead_id
string
Filter by lead ID (e.g., “lea_abc123def456”)
is_first
boolean
Filter for first activity only
limit
integer
Number of results per request (max 100, default 100)
offset
integer
Number of records to skip for pagination (e.g., 0, 100, 200)

Response

{
  "$defs": {
    "ActivityItem": {
      "additionalProperties": false,
      "description": "A single activity row in ``get_activities``.",
      "properties": {
        "id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Id"
        },
        "type": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Type"
        },
        "lead_id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Lead Id"
        },
        "campaign_id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Campaign Id"
        },
        "sequence_id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Sequence Id"
        },
        "step_id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Step Id"
        },
        "created_at": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Created At"
        }
      },
      "title": "ActivityItem",
      "type": "object"
    }
  },
  "additionalProperties": false,
  "properties": {
    "success": {
      "title": "Success",
      "type": "boolean"
    },
    "error": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Error"
    },
    "activities": {
      "items": {
        "$ref": "#/$defs/ActivityItem"
      },
      "title": "Activities",
      "type": "array"
    },
    "count": {
      "default": 0,
      "title": "Count",
      "type": "integer"
    }
  },
  "required": [
    "success"
  ],
  "title": "GetActivitiesOutput",
  "type": "object"
}

Parameters

lead_identifier
string
required
Lead email address (e.g., “john@example.com”) or lead ID (e.g., “lea_abc123def456”)

Response

{
  "additionalProperties": false,
  "properties": {
    "success": {
      "title": "Success",
      "type": "boolean"
    },
    "error": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Error"
    },
    "id": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Id"
    },
    "email": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Email"
    },
    "first_name": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "First Name"
    },
    "last_name": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Last Name"
    },
    "company_name": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Company Name"
    },
    "job_title": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Job Title"
    },
    "company_domain": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Company Domain"
    },
    "is_paused": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Is Paused"
    },
    "campaign_id": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Campaign Id"
    },
    "contact_id": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Contact Id"
    },
    "email_status": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Email Status"
    }
  },
  "required": [
    "success"
  ],
  "title": "GetLeadOutput",
  "type": "object"
}

Parameters

send_user_id
string
required
Identifier for the user sending the message (e.g., “usr_abc123def456”)
send_user_email
string
required
Email address of the sender (e.g., “sales@company.com”)
send_user_mailbox_id
string
required
Mailbox identifier for the sender (e.g., “mbx_abc123def456”)
contact_id
string
required
Recipient contact identifier (e.g., “con_abc123def456”)
lead_id
string
required
Associated lead identifier (e.g., “lea_abc123def456”)
subject
string
required
Email subject line
message
string
required
Email message body in HTML format
cc
array
Array of CC email addresses

Response

{
  "additionalProperties": false,
  "properties": {
    "success": {
      "title": "Success",
      "type": "boolean"
    },
    "error": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Error"
    },
    "ok": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Ok"
    }
  },
  "required": [
    "success"
  ],
  "title": "SendEmailOutput",
  "type": "object"
}

Limits & Quotas

  • Pagination: get_activities accepts limit (max 100, default 100) and offset for paging through campaign activity.
  • Send eligibility: send_email requires a configured Lemlist sender user, mailbox, and an existing contact/lead — the values come from your Lemlist workspace.
  • Error model: non-2xx responses and timeouts are caught and returned as success=False + error rather than raising. Plan for retries on the agent side based on the error string.

Enrow

Findymail

Icypeas