---
title: "Get contact"
method: GET
path: "/contacts/{contactId}"
tags: ["Contacts"]
---

# Get contact

`GET /contacts/{contactId}`

## Request

- Base URL: `https://inboxapp.com/api/v2`
- URL: `https://inboxapp.com/api/v2/contacts/{contactId}`
- Auth: HTTP bearer

## Path parameters

- `contactId` string, required

## Query parameters

- `expand` string[]: Related resources to embed next to their ID field, one path per key, at most 4.

## Response `200`

OK

- Contact: The team's record of a person: their profiles, plus the team's CRM state about them.
  - `id` string, required
  - `profiles` Profile[], required: The person's profiles, oldest link first. Profiles on platforms unavailable to the team are left out.
    - `id` string, required
    - `platform` string, required: The platform. Every team can use twitter, linkedin; a team may have others enabled.
    - `platformId` string, required: The ID the platform gives this object. Only meaningful next to its `platform`.
    - `username` string, required: The platform username, without a display prefix such as `@`.
    - `handle` string, required: The username as the platform displays it. Show this, and look up by `username`.
    - `displayName` string, required
    - `avatarUrl` string, nullable, required
    - `bio` string, nullable, required
    - `location` string, nullable, required
    - `websiteUrl` string, nullable, required
    - `websiteDomain` string, nullable, required
    - `verified` boolean, required: The platform vouches for the account, such as with an X badge. Platform-specific badges are in `platformData`.
    - `isOrganization` boolean, required: A company or page rather than a person.
    - `isProtected` boolean, required: The account's posts are visible only to approved followers.
    - `followerCount` union, required
      - number
      - 'Infinity' | '-Infinity' | 'NaN'
    - `followingCount` union, required
      - number
      - 'Infinity' | '-Infinity' | 'NaN'
    - `postCount` union, required
      - number
      - 'Infinity' | '-Infinity' | 'NaN'
    - `engagementCount` union, required: On X, how many posts the user has liked.
      - number
      - 'Infinity' | '-Infinity' | 'NaN'
    - `listedCount` union, required: On X, how many lists include the profile.
      - number
      - 'Infinity' | '-Infinity' | 'NaN'
    - `accountStatus` 'active' | 'suspended' | 'notFound', required: `suspended` by the platform, or `notFound` when deleted or deactivated.
    - `platformCreatedAt` string, date-time, nullable, required: When the account was created on the platform.
    - `profileUrl` string, nullable, required
    - `updatedAt` string, date-time, required: When Inboxapp last stored a change to this profile.
    - `platformData` union, required: Fields only one platform has, tagged by `_tag`. Ignore tags you don't know.
      - object
        - `_tag` 'twitter', required
        - `badge` 'blue' | 'gold' | 'gray', nullable, required
        - `profileType` 'personal' | 'business' | 'government', required
        - `professionalCategory` string, nullable, required
        - `urlEntities` object[], required
          - `url` string, required
          - `expandedUrl` string, required
          - `displayUrl` string, required
          - `indices` unknown[], required
            - unknown
        - `bannerUrl` string, nullable, required
        - `rawData` object, nullable, required
      - object
        - `_tag` 'linkedin', required
        - `profileUrn` string, nullable
        - `kind` 'member' | 'organization', nullable
        - `memberBadge` 'premium' | 'verified', nullable
        - `bannerUrl` string, nullable
        - `bannerSize` object, nullable
          - `width` number, required
          - `height` number, required
        - `hydratedAt` string, nullable
        - `imageAssetId` string, nullable
        - `connectionsCount` number, nullable
        - `currentRole` string, nullable
        - `currentRoleStart` object, nullable
          - `year` number, required
          - `month` number, nullable, required
        - `currentCompanyName` string, nullable
        - `currentCompanyUrn` string, nullable
        - `topSchoolName` string, nullable
        - `topSchoolUrn` string, nullable
        - `topSchoolDegree` string, nullable
        - `topSchoolPeriod` string, nullable
        - `employeeCount` number, nullable
        - `employeeCountRange` object, nullable
          - `start` number, required
          - `end` number, nullable, required
        - `industry` string, nullable
        - `pageKind` 'company' | 'school' | 'showcase', nullable
        - `currentCompanyLogoUrl` string, nullable
        - `topSchoolLogoUrl` string, nullable
      - object: A platform the team has enabled beyond those every team can use. Its fields are not listed here.
        - `_tag` string, required
    - `relationships` Relationship[], required: One entry per team account link that has interacted with the profile.
      - `accountLinkId` string, required
      - `degree` 'self' | 'first' | 'second' | 'third' | 'outOfNetwork', nullable, required: How close the profile is to the account link on the platform's network, as last observed. `null` when never observed.
      - `connectionRequest` object, nullable, required: The account link's pending connection request. `null` once the profile is seen accepting it or the request is withdrawn, or when none was sent.
        - `sentAt` string, date-time, required
  - `statusId` string, nullable, required: A status: a pipeline stage on the team's board.
  - `tagIds` string[], required
  - `notes` string, nullable, required
  - `valuation` union, required: What the person is worth to the team, in the team's `currency`.
    - number
    - 'Infinity' | '-Infinity' | 'NaN'
  - `assigneeId` string, nullable, required: A member: a person on the team.
  - `createdAt` string, date-time, required
  - `updatedAt` string, date-time, required
  - `status` Status: A pipeline stage on the team's board. A contact has at most one status.
    - `id` string, required
    - `name` string, required: Unique within the team, ignoring case and accents.
    - `color` string, nullable, required: A lowercase hex color.
    - `createdAt` string, date-time, required
  - `tags` Tag[]
    - `id` string, required
    - `name` string, required: Unique within the team, ignoring case and accents.
    - `color` string, required: A lowercase hex color.
  - `assignee` Member: A person on the team, who can be assigned threads and contacts.
    - `id` string, required: The member ID that `assigneeId` fields take.
    - `name` string, nullable, required
    - `email` string, required
    - `imageUrl` string, nullable, required
    - `role` 'owner' | 'admin' | 'user', required: `owner` and `admin` manage the team. A `user` can't change settings, billing or members.
    - `createdAt` string, date-time, required

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not Found
- `429`: Too Many Requests
- `500`: Internal Server Error

---

[API](https://skmtc.dev/inboxapp/apis/inboxapp-api.md) · [All operations](https://skmtc.dev/inboxapp/apis/inboxapp-api/llms.txt) · [OpenAPI document](https://skmtc.dev/inboxapp/apis/inboxapp-api/revisions/7f9bbf45e851?raw)
