{
  "service": "lemlist",
  "displayName": "lemlist",
  "categories": [
    "Marketing"
  ],
  "authTypes": [
    "api_key"
  ],
  "auth": [
    {
      "type": "api_key",
      "label": "API Key",
      "placeholder": "LEMLIST_API_KEY",
      "description": "lemlist API key used as the HTTP Basic Auth password with an empty username. Generate it from lemlist Settings > Integrations: https://app.lemlist.com/settings/integrations",
      "extraFields": []
    }
  ],
  "homepageUrl": "https://www.lemlist.com",
  "actions": [
    {
      "id": "lemlist.get_campaign",
      "service": "lemlist",
      "name": "get_campaign",
      "description": "Retrieve one lemlist campaign by campaign ID.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "campaignId": {
            "type": "string",
            "minLength": 1,
            "description": "Unique identifier of the campaign to retrieve."
          }
        },
        "additionalProperties": false,
        "description": "Input parameters for retrieving a lemlist campaign."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "campaign": {
            "type": "object",
            "properties": {
              "_id": {
                "type": "string",
                "description": "Unique campaign identifier."
              },
              "name": {
                "type": "string",
                "description": "Campaign name."
              },
              "labels": {
                "type": "array",
                "items": {
                  "type": "string",
                  "description": "Campaign label."
                },
                "description": "Categorization labels."
              },
              "createdAt": {
                "type": "string",
                "description": "Creation timestamp."
              },
              "createdBy": {
                "type": "string",
                "description": "Creator user ID."
              },
              "status": {
                "type": "string",
                "description": "Campaign status returned by lemlist."
              },
              "sequenceId": {
                "type": "string",
                "description": "Main sequence ID."
              },
              "scheduleIds": {
                "type": "array",
                "items": {
                  "type": "string",
                  "description": "Schedule ID."
                },
                "description": "Associated schedule IDs."
              },
              "teamId": {
                "type": "string",
                "description": "ID of the team that owns this campaign."
              },
              "hasError": {
                "type": "boolean",
                "description": "Whether the campaign has errors."
              },
              "errors": {
                "type": "array",
                "items": {
                  "type": "string",
                  "description": "Campaign error message."
                },
                "description": "Campaign error messages."
              },
              "creator": {
                "type": "object",
                "properties": {
                  "userId": {
                    "type": "string",
                    "description": "Creator user ID."
                  },
                  "userEmail": {
                    "type": "string",
                    "description": "Creator email address.",
                    "format": "email"
                  }
                },
                "additionalProperties": true,
                "description": "Campaign creator information."
              },
              "senders": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "description": "Sender user ID."
                    },
                    "email": {
                      "type": "string",
                      "description": "Sender email address.",
                      "format": "email"
                    },
                    "sendUserMailboxId": {
                      "type": "string",
                      "description": "Mailbox ID used for sending."
                    }
                  },
                  "additionalProperties": true,
                  "description": "Campaign sender configuration."
                },
                "description": "Campaign senders configuration."
              },
              "raw": {
                "type": "object",
                "properties": {},
                "additionalProperties": true,
                "description": "Raw campaign payload returned by lemlist."
              }
            },
            "additionalProperties": true,
            "required": [
              "_id",
              "name"
            ],
            "description": "lemlist campaign summary or detail."
          }
        },
        "additionalProperties": false,
        "description": "lemlist campaign response."
      }
    },
    {
      "id": "lemlist.get_team",
      "service": "lemlist",
      "name": "get_team",
      "description": "Retrieve information about the lemlist team for the API key.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false,
        "description": "Input parameters for retrieving the lemlist team."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "team": {
            "type": "object",
            "properties": {
              "_id": {
                "type": "string",
                "description": "Unique team identifier."
              },
              "name": {
                "type": "string",
                "description": "Team name."
              },
              "userIds": {
                "type": "array",
                "items": {
                  "type": "string",
                  "description": "User ID."
                },
                "description": "User IDs in this team."
              },
              "createdBy": {
                "type": "string",
                "description": "User ID who created the team."
              },
              "createdAt": {
                "type": "string",
                "description": "Date and time when the team was created."
              },
              "beta": {
                "type": "array",
                "items": {
                  "type": "string",
                  "description": "Beta feature name."
                },
                "description": "Beta features enabled for the team."
              },
              "pictureId": {
                "type": "string",
                "description": "Team profile picture file ID."
              },
              "customDomain": {
                "type": "string",
                "description": "Custom domain for the team."
              },
              "raw": {
                "type": "object",
                "properties": {},
                "additionalProperties": true,
                "description": "Raw team payload returned by lemlist."
              }
            },
            "additionalProperties": true,
            "required": [
              "_id",
              "name"
            ],
            "description": "lemlist team information."
          }
        },
        "additionalProperties": false,
        "description": "lemlist team response."
      }
    },
    {
      "id": "lemlist.list_campaign_leads",
      "service": "lemlist",
      "name": "list_campaign_leads",
      "description": "List leads from a lemlist campaign with optional state filtering.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "campaignId": {
            "type": "string",
            "minLength": 1,
            "description": "Unique identifier of the campaign whose leads should be listed."
          },
          "state": {
            "type": "string",
            "minLength": 1,
            "description": "Lead state filter such as scanned, contacted, or interested."
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "maximum": 500,
            "description": "Maximum number of leads to return. lemlist allows up to 500."
          }
        },
        "additionalProperties": false,
        "required": [
          "campaignId"
        ],
        "description": "Input parameters for listing leads in a lemlist campaign."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "leads": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "_id": {
                  "type": "string",
                  "description": "Unique lead identifier."
                },
                "contactId": {
                  "type": "string",
                  "description": "Associated contact identifier."
                },
                "state": {
                  "type": "string",
                  "description": "Current lead state."
                },
                "raw": {
                  "type": "object",
                  "properties": {},
                  "additionalProperties": true,
                  "description": "Raw lead payload returned by lemlist."
                }
              },
              "additionalProperties": true,
              "required": [
                "_id"
              ],
              "description": "lemlist lead summary."
            },
            "description": "Leads returned by lemlist."
          }
        },
        "additionalProperties": false,
        "description": "lemlist campaign leads response."
      }
    },
    {
      "id": "lemlist.list_campaigns",
      "service": "lemlist",
      "name": "list_campaigns",
      "description": "List lemlist campaigns with optional pagination and status filters.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "limit": {
            "type": "integer",
            "minimum": 1,
            "maximum": 100,
            "description": "Number of campaigns to retrieve. lemlist allows up to 100."
          },
          "offset": {
            "type": "integer",
            "minimum": 0,
            "description": "Offset from the start for pagination."
          },
          "page": {
            "type": "integer",
            "minimum": 1,
            "description": "Page number to retrieve."
          },
          "sortBy": {
            "type": "string",
            "enum": [
              "createdAt"
            ],
            "description": "Field by which to sort campaigns."
          },
          "sortOrder": {
            "type": "string",
            "enum": [
              "asc",
              "desc"
            ],
            "description": "Sort direction for campaign listing."
          },
          "status": {
            "type": "string",
            "enum": [
              "running",
              "draft",
              "archived",
              "ended",
              "paused",
              "errors"
            ],
            "description": "Campaign status filter supported by lemlist."
          },
          "createdBy": {
            "type": "string",
            "minLength": 1,
            "description": "Creator user ID used to filter campaigns."
          }
        },
        "additionalProperties": false,
        "description": "Input parameters for listing lemlist campaigns."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "campaigns": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "_id": {
                  "type": "string",
                  "description": "Unique campaign identifier."
                },
                "name": {
                  "type": "string",
                  "description": "Campaign name."
                },
                "labels": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "description": "Campaign label."
                  },
                  "description": "Categorization labels."
                },
                "createdAt": {
                  "type": "string",
                  "description": "Creation timestamp."
                },
                "createdBy": {
                  "type": "string",
                  "description": "Creator user ID."
                },
                "status": {
                  "type": "string",
                  "description": "Campaign status returned by lemlist."
                },
                "sequenceId": {
                  "type": "string",
                  "description": "Main sequence ID."
                },
                "scheduleIds": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "description": "Schedule ID."
                  },
                  "description": "Associated schedule IDs."
                },
                "teamId": {
                  "type": "string",
                  "description": "ID of the team that owns this campaign."
                },
                "hasError": {
                  "type": "boolean",
                  "description": "Whether the campaign has errors."
                },
                "errors": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "description": "Campaign error message."
                  },
                  "description": "Campaign error messages."
                },
                "creator": {
                  "type": "object",
                  "properties": {
                    "userId": {
                      "type": "string",
                      "description": "Creator user ID."
                    },
                    "userEmail": {
                      "type": "string",
                      "description": "Creator email address.",
                      "format": "email"
                    }
                  },
                  "additionalProperties": true,
                  "description": "Campaign creator information."
                },
                "senders": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "id": {
                        "type": "string",
                        "description": "Sender user ID."
                      },
                      "email": {
                        "type": "string",
                        "description": "Sender email address.",
                        "format": "email"
                      },
                      "sendUserMailboxId": {
                        "type": "string",
                        "description": "Mailbox ID used for sending."
                      }
                    },
                    "additionalProperties": true,
                    "description": "Campaign sender configuration."
                  },
                  "description": "Campaign senders configuration."
                },
                "raw": {
                  "type": "object",
                  "properties": {},
                  "additionalProperties": true,
                  "description": "Raw campaign payload returned by lemlist."
                }
              },
              "additionalProperties": true,
              "required": [
                "_id",
                "name"
              ],
              "description": "lemlist campaign summary or detail."
            },
            "description": "Campaigns returned by lemlist."
          }
        },
        "additionalProperties": false,
        "description": "lemlist campaign list response."
      }
    }
  ]
}
