---
title: "Look up contacts by email"
method: POST
path: "/api/contacts/by-email"
tags: ["Contacts"]
---

# Look up contacts by email

`POST /api/contacts/by-email`

## Request

- Base URL: `https://core-api.getaptly.com`
- URL: `https://core-api.getaptly.com/api/contacts/by-email`
- Auth: one of:
  - API key in header `x-token`
  - API key in header `Authorization`
- TypeScript: <https://skmtc.dev/getaptly/apis/aptly-api/docs/api/contacts/by-email/post.ts> (a function with typed inputs; its response is checked against the schema)

Returns contacts whose email address matches one or more of the provided values.
Matching is case-insensitive and exact. Results are scoped to your company.

## Request body

- object
  - `email` union, required: A single email address or an array of email addresses to look up.
    - string
    - string[]
  - `limit` integer: Maximum number of results to return.
  - `skip` integer: Number of results to skip (for pagination).

## Response `200`

Matching contacts.

- object
  - `contacts` Contact[]
    - `_id` string: MongoDB ObjectId of the contact.
    - `uuid` string
    - `firstname` string
    - `lastname` string
    - `fullName` string: Computed display name (first + last, or company name for org records).
    - `duogram` string: Two-letter initials derived from first and last name.
    - `photoId` string, nullable
    - `imageUrl` string, nullable: CDN thumbnail URL for the contact's photo, or null if none.
    - `email` string
    - `phone` string
    - `typeId` string
    - `companyId` string
    - `address` object
    - `title` string
    - `alerts` object[]
    - `company` string: Company name — populated when isCompany is true.
    - `isCompany` boolean

## Other responses

- `400`: Missing or invalid email field.
- `401`: Invalid or missing API key.

---

[API](https://skmtc.dev/getaptly/apis/aptly-api.md) - [All operations](https://skmtc.dev/getaptly/apis/aptly-api/llms.txt) - [OpenAPI document](https://skmtc.dev/getaptly/apis/aptly-api/revisions/75c367e0b8e5?raw)
