lemlist · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Lemlist Contacts API

9 actions 9 updates phrasing extends openapi/lemlist-contacts-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for lemlist's API. It is a proposal applied on top of the contract, not a document lemlist publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 9

$.info
$.paths['/contacts/{idOrEmail}'].get
$.paths['/contacts/{idOrEmail}'].delete
$.paths['/contacts'].get
$.paths['/contacts'].post
$.paths['/contacts/lists'].get
$.paths['/contacts/lists'].post
$.paths['/contacts/lists/{listId}/entities'].post
$.paths['/contacts/export'].get

OpenAPI Overlay

Raw ↑
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
  title: API Evangelist conversational phrasing for Lemlist Contacts API
  version: 1.0.0
extends: openapi/lemlist-contacts-api-openapi.yml
actions:
- target: $.info
  update:
    x-apievangelist-phrasing:
      method: generated
      generated: '2026-10-01'
      generator: build-phrasing.py
      label: Generated by API Evangelist
      operations: 8
- target: $.paths['/contacts/{idOrEmail}'].get
  update:
    x-apievangelist-phrasing:
      intent: Look up one contact by id or email
      effect: read
      questions:
      - Can I pull up a single contact using just their email address?
      - Where do I see everything stored on one person in my CRM contacts?
      instructions:
      - text: Show me the contact {idOrEmail}.
        slots:
          idOrEmail: path.idOrEmail
      - text: Look up the contact record for {idOrEmail}.
        slots:
          idOrEmail: path.idOrEmail
      method: generated
      generated: '2026-10-01'
- target: $.paths['/contacts/{idOrEmail}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a contact and everything tied to it
      effect: destructive
      questions:
      - What else gets removed when I delete a contact, like their leads and conversations?
      - Does deleting a contact in lemlist also delete it in my CRM?
      instructions:
      - text: Delete contact {idOrEmail}.
        slots:
          idOrEmail: path.idOrEmail
      - text: Permanently remove {idOrEmail} along with their leads and activities.
        slots:
          idOrEmail: path.idOrEmail
      method: generated
      generated: '2026-10-01'
- target: $.paths['/contacts'].get
  update:
    x-apievangelist-phrasing:
      intent: List all my contacts
      effect: read
      questions:
      - Which contacts are in my lemlist CRM?
      - How can I browse every person I've stored as a contact?
      instructions:
      - text: List all my contacts.
      - text: Pull my full contact list.
      method: generated
      generated: '2026-10-01'
- target: $.paths['/contacts'].post
  update:
    x-apievangelist-phrasing:
      intent: Create or update a contact
      effect: write
      questions:
      - How do I add a person, or update them if their email already exists?
      - Can I link a contact to a company by its domain when saving it?
      - Are blank fields ignored when I upsert an existing contact?
      instructions:
      - text: Add contact {email} named {firstName} {lastName}.
        slots:
          email: requestBody.email
          firstName: requestBody.firstName
          lastName: requestBody.lastName
      - text: Upsert the contact at {linkedinUrl} with job title {jobTitle}.
        slots:
          linkedinUrl: requestBody.linkedinUrl
          jobTitle: requestBody.jobTitle
      - text: Link contact {contactId} to the company at {companyDomain}.
        slots:
          contactId: requestBody.contactId
          companyDomain: requestBody.companyDomain
      method: generated
      generated: '2026-10-01'
- target: $.paths['/contacts/lists'].get
  update:
    x-apievangelist-phrasing:
      intent: List my contact lists
      effect: read
      questions:
      - Which static and dynamic contact lists does my team have?
      - Can I find a contact list by part of its name?
      instructions:
      - text: Show all my contact lists.
      - text: Find contact lists whose name contains {search}.
        slots:
          search: query.search
      method: generated
      generated: '2026-10-01'
- target: $.paths['/contacts/lists'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a static contact list
      effect: write
      questions:
      - How do I make a new static list to group contacts?
      - What's the maximum length of a contact list name?
      instructions:
      - text: Create a contact list named {name}.
        slots:
          name: requestBody.name
      - text: Make a new static list called {name} for my contacts.
        slots:
          name: requestBody.name
      method: generated
      generated: '2026-10-01'
- target: $.paths['/contacts/lists/{listId}/entities'].post
  update:
    x-apievangelist-phrasing:
      intent: Add or remove contacts in a static list
      effect: write
      questions:
      - How do I put existing contacts into a static list?
      - Can I take contacts back out of a list without deleting them?
      instructions:
      - text: Add contacts {contactIds} to list {listId}.
        slots:
          contactIds: requestBody.contactIds
          listId: path.listId
      - text: Run action {action} on list {listId} for contacts {contactIds}.
        slots:
          action: query.action
          listId: path.listId
          contactIds: requestBody.contactIds
      method: generated
      generated: '2026-10-01'
- target: $.paths['/contacts/export'].get
  update:
    x-apievangelist-phrasing:
      intent: Export a contact list as CSV
      effect: read
      questions:
      - How do I download a CRM list of contacts as a CSV file?
      - Can I export the companies in a list instead of the people?
      instructions:
      - text: Export list {listId} to CSV.
        slots:
          listId: query.listId
      - text: Export the {entity} records from list {listId} as a spreadsheet.
        slots:
          entity: query.entity
          listId: query.listId
      method: generated
      generated: '2026-10-01'

Work with this as data

Every overlay here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for openapi overlays

4 MCP tools reach this
  • find_overlaysBrowse and filter every overlay in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This overlay
curl "https://apis.io/api/v1/overlays/lemlist-contacts-api-phrasing-overlay"
All openapi overlays
curl "https://apis.io/api/v1/overlays?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.