---
title: "Find Contacts"
method: POST
path: "/v2/contacts"
tags: ["API Gateway"]
---

# Find Contacts

`POST /v2/contacts`

Retrieve some public contact. Normal users can only search specific email/ids

## Query parameters

- `page` number
- `limit` number
- `createdBefore` string
- `createdAfter` string
- `orgSlug` string

## Request body

- object
  - `email` string
  - `text` string — Search in both email & id
  - `ids` string[]
  - `firstName` string
  - `lastName` string
  - `authProvider` string
  - `status` 'pending' | 'validated' | 'deactivated'
  - `platformRole` string
  - `groups` string[]
  - `includeOrgMembership` string — Org slug — enrich contacts with membership data from this org (requires super admin or org admin permissions)

## Response `200`

Success Response

- object
  - `size` number — Total number of matching contacts
  - `contacts` Contact[], required
    - `firstName` string, required — Name
    - `lastName` string — Name
    - `language` string
    - `photo` string — Profile picture URL
    - `status` 'pending' | 'validated' | 'deactivated'
    - `meta` object
    - `groups` string[]
    - `membership` object — Organization membership info (only returned when includeOrgMembership is set)
      - `roleSlug` string
      - `status` 'active' | 'invited' | 'suspended'
      - `joinedAt` string
      - `joinedVia` 'direct' | 'invite-code' | 'invite-email' | 'auto-join' | 'join-rule'
      - `invitedAt` string
      - `invitedBy` string
    - `id` string — Unique id

## Other responses

- `403` — Bad permissions
- `404` — Object not found

---

[API](https://skmtc.net/prisme/apis/prisme-ai-apis.md) · [All operations](https://skmtc.net/prisme/apis/prisme-ai-apis/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/prisme/prisme-ai-apis/versions/b702c3eef2f2/schema)
