API & MCP

Contacts API.

Find contacts, Add a contact, Get contact details. For authentication, paging and errors, see the API overview.

Generated from the EQALL API on October 23, 2026 · API version 1.0 · OpenAPI JSON

Find contacts

GET/external/contacts
MCP tool: findContact

Search the user's network by name, email or company. Every word must match ("jane acme").

Parameters

querystring · queryrequired
Name, email and/or company words; every word must match. At least 2 characters.
limitnumber · query
Results per page (default 20, max 50)
cursorstring · query
nextCursor from the previous page

Response

contactsarray of objects
Show 9 child fields
contactIdstring
Public contact ID
firstNamestring, nullable
lastNamestring, nullable
emailstring, nullable
titlestring, nullable
companyobject, nullable
companyIdstring
Public company ID
namestring
domainstring, nullable
nextCursorstring, nullable
Pass back as cursor for the next page; null on the last page

Errors

Request
curl "https://api.eqall.com/external/contacts?query=jane%20acme" \
  -H "Authorization: Bearer $EQALL_KEY"
Response · 200
{
  "contacts": [
    {
      "contactId": "6f1c2a9e-4b7d-4e2a-9c51-2d8f0e3b7a14",
      "firstName": "Jane",
      "lastName": "Doe",
      "email": "jane.doe@acme.com",
      "title": "VP of Operations",
      "company": {
        "companyId": "b3e9d2c1-7a44-4f0e-8d6b-91c5e2f4a830",
        "name": "Acme Corp",
        "domain": "acme.com"
      }
    }
  ],
  "nextCursor": "eyJvIjoyMH0"
}

Add a contact

POST/external/contacts
MCP tool: createContact Requires write:contacts

Adds a person to the user's network, creating them and their company (from the email domain) if new. Adding an existing person returns them. Needs the write:contacts permission.

Parameters

firstNamestring · bodyrequired
Contact's first name
lastNamestring · bodyrequired
Contact's last name
emailstring · bodyrequired
Contact's email; identifies them, so adding an existing email returns that contact

Response

contactIdstring
Public contact ID
firstNamestring, nullable
lastNamestring, nullable
emailstring, nullable
titlestring, nullable
companyobject, nullable
companyIdstring
Public company ID
namestring
domainstring, nullable

Errors

Request
curl -X POST "https://api.eqall.com/external/contacts" \
  -H "Authorization: Bearer $EQALL_KEY" \
  -H "Content-Type: application/json" \
  -d '{"firstName":"Jane","lastName":"Doe","email":"jane.doe@acme.com"}'
Response · 201
{
  "contactId": "6f1c2a9e-4b7d-4e2a-9c51-2d8f0e3b7a14",
  "firstName": "Jane",
  "lastName": "Doe",
  "email": "jane.doe@acme.com",
  "title": null,
  "company": {
    "companyId": "b3e9d2c1-7a44-4f0e-8d6b-91c5e2f4a830",
    "name": "Acme Corp",
    "domain": "acme.com"
  }
}

Get contact details

GET/external/contacts/{contactId}
MCP tool: getContactDetails

Profile, EQALL insights (talking points, communication style) and last meeting recap.

Parameters

contactIdstring · pathrequired
Public contact ID from contact search

Response

contactIdstring
Public contact ID
firstNamestring, nullable
lastNamestring, nullable
emailstring, nullable
titlestring, nullable
companyobject, nullable
companyIdstring
Public company ID
namestring
domainstring, nullable
phonestring, nullable
locationstring, nullable
timezonestring, nullable
pronounstring, nullable
summarystring, nullable
aboutstring, nullable
languagesarray of string
skillsarray of string
hobbiesarray of string
volunteeringarray of string
workHistoryarray of objects
companyNamestring
rolestring, nullable
fromDatedate-time, nullable
toDatedate-time, nullable
isCurrentboolean
educationarray of objects
schoolstring, nullable
degreestring, nullable
fieldOfStudystring, nullable
fromDatedate-time, nullable
toDatedate-time, nullable
importantDatesarray of objects
typestring
datestring
YYYY-MM-DD, or MM-DD when the year is unknown
newsarray of objects
Up to 5
titlestring
descriptionstring
datedate-time
urlstring
insightsarray of objects
Talking points, including communication style
titlestring, nullable
insightstring
Plain text; "- " bullets
lastMeetingRecapstring, nullable
Recap of the user's last meeting with this contact

Errors

Request
curl "https://api.eqall.com/external/contacts/{contactId}" \
  -H "Authorization: Bearer $EQALL_KEY"
Response · 200
{
  "contactId": "6f1c2a9e-4b7d-4e2a-9c51-2d8f0e3b7a14",
  "firstName": "Jane",
  "lastName": "Doe",
  "email": "jane.doe@acme.com",
  "title": "VP of Operations",
  "company": {
    "companyId": "b3e9d2c1-7a44-4f0e-8d6b-91c5e2f4a830",
    "name": "Acme Corp",
    "domain": "acme.com"
  },
  "phone": "+1 415 555 0142",
  "location": "San Francisco, California, United States",
  "timezone": "America/Los_Angeles",
  "pronoun": "she/her",
  "summary": "Operations leader scaling supply-chain teams",
  "about": "Fifteen years running operations at high-growth manufacturers.",
  "languages": [
    "English",
    "Spanish"
  ],
  "skills": [
    "Supply Chain",
    "Lean",
    "Vendor Management"
  ],
  "hobbies": [
    "Trail running"
  ],
  "volunteering": [
    "Bay Area Food Bank - Board Member"
  ],
  "workHistory": [
    {
      "companyName": "Acme Corp",
      "role": "VP of Operations",
      "fromDate": "2022-03-01T00:00:00.000Z",
      "toDate": null,
      "isCurrent": true
    }
  ],
  "education": [
    {
      "school": "UC Berkeley",
      "degree": "MBA",
      "fieldOfStudy": "Operations",
      "fromDate": "2008-09-01T00:00:00.000Z",
      "toDate": "2010-06-01T00:00:00.000Z"
    }
  ],
  "importantDates": [
    {
      "type": "Birthday",
      "date": "06-14"
    }
  ],
  "news": [],
  "insights": [
    {
      "title": "Communication Style",
      "insight": "Lead with measurable outcomes and keep it brief.\n\nShe responds well to data and a clear next step."
    },
    {
      "title": "Common Ground",
      "insight": "Like you, Jane started her career in consulting."
    }
  ],
  "lastMeetingRecap": "Jane confirmed the pilot scope and asked for security documentation before procurement review."
}