---
title: "Create contact"
method: POST
path: "/contacts"
tags: ["Contacts"]
---

# Create contact

`POST /contacts`

You can create a new contact (ie. user or lead).

## Headers

- `Intercom-Version` '1.0' | '1.1' | '1.2' | '1.3' | '1.4' | '2.0' | '2.1' | '2.2' | '2.3' | '2.4' | '2.5' | '2.6' | '2.7' | '2.8' | '2.9' | '2.10' | '2.11' | '2.12' | '2.13' | '2.14' — Intercom API version.</br>By default, it's equal to the version set in the app package.

## Request body

- union — Payload to create a contact
  - object
    - `role` string — The role of the contact.
    - `external_id` string — A unique identifier for the contact which is given to Intercom
    - `email` string, required — The contacts email
    - `phone` string, nullable — The contacts phone
    - `name` string, nullable — The contacts name
    - `avatar` string, nullable — An image URL containing the avatar of a contact
    - `signed_up_at` integer, nullable — (Unix timestamp in seconds) The time specified for when a contact signed up.
    - `last_seen_at` integer, nullable — (Unix timestamp in seconds) The time when the contact was last seen (either where the Intercom Messenger was installed or when specified manually).
    - `owner_id` integer, nullable — The id of an admin that has been assigned account ownership of the contact
    - `unsubscribed_from_emails` boolean, nullable — Whether the contact is unsubscribed from emails
    - `custom_attributes` object, nullable — The custom attributes which are set for the contact
  - object
    - `role` string — The role of the contact.
    - `external_id` string, required — A unique identifier for the contact which is given to Intercom
    - `email` string — The contacts email
    - `phone` string, nullable — The contacts phone
    - `name` string, nullable — The contacts name
    - `avatar` string, nullable — An image URL containing the avatar of a contact
    - `signed_up_at` integer, nullable — (Unix timestamp in seconds) The time specified for when a contact signed up.
    - `last_seen_at` integer, nullable — (Unix timestamp in seconds) The time when the contact was last seen (either where the Intercom Messenger was installed or when specified manually).
    - `owner_id` integer, nullable — The id of an admin that has been assigned account ownership of the contact
    - `unsubscribed_from_emails` boolean, nullable — Whether the contact is unsubscribed from emails
    - `custom_attributes` object, nullable — The custom attributes which are set for the contact
  - object
    - `role` string, required — The role of the contact.
    - `external_id` string — A unique identifier for the contact which is given to Intercom
    - `email` string — The contacts email
    - `phone` string, nullable — The contacts phone
    - `name` string, nullable — The contacts name
    - `avatar` string, nullable — An image URL containing the avatar of a contact
    - `signed_up_at` integer, nullable — (Unix timestamp in seconds) The time specified for when a contact signed up.
    - `last_seen_at` integer, nullable — (Unix timestamp in seconds) The time when the contact was last seen (either where the Intercom Messenger was installed or when specified manually).
    - `owner_id` integer, nullable — The id of an admin that has been assigned account ownership of the contact
    - `unsubscribed_from_emails` boolean, nullable — Whether the contact is unsubscribed from emails
    - `custom_attributes` object, nullable — The custom attributes which are set for the contact

## Response `200`

successful

- Contact — Contacts represent your leads and users in Intercom.
  - `type` string — The type of object.
  - `id` string — The unique identifier for the contact which is given by Intercom.
  - `external_id` string, nullable — The unique identifier for the contact which is provided by the Client.
  - `workspace_id` string — The id of the workspace which the contact belongs to.
  - `role` string — The role of the contact.
  - `email` string — The contact's email.
  - `email_domain` string — The contact's email domain.
  - `phone` string, nullable — The contacts phone.
  - `name` string, nullable — The contacts name.
  - `owner_id` integer, nullable — The id of an admin that has been assigned account ownership of the contact.
  - `has_hard_bounced` boolean — Whether the contact has had an email sent to them hard bounce.
  - `marked_email_as_spam` boolean — Whether the contact has marked an email sent to them as spam.
  - `unsubscribed_from_emails` boolean — Whether the contact is unsubscribed from emails.
  - `created_at` integer — (Unix timestamp in seconds) The time when the contact was created.
  - `updated_at` integer — (Unix timestamp in seconds) The time when the contact was last updated.
  - `signed_up_at` integer, nullable — (Unix timestamp in seconds) The time specified for when a contact signed up.
  - `last_seen_at` integer, nullable — (Unix timestamp in seconds) The time when the contact was last seen (either where the Intercom Messenger was installed or when specified manually).
  - `last_replied_at` integer, nullable — (Unix timestamp in seconds) The time when the contact last messaged in.
  - `last_contacted_at` integer, nullable — (Unix timestamp in seconds) The time when the contact was last messaged.
  - `last_email_opened_at` integer, nullable — (Unix timestamp in seconds) The time when the contact last opened an email.
  - `last_email_clicked_at` integer, nullable — (Unix timestamp in seconds) The time when the contact last clicked a link in an email.
  - `language_override` string, nullable — A preferred language setting for the contact, used by the Intercom Messenger even if their browser settings change.
  - `browser` string, nullable — The name of the browser which the contact is using.
  - `browser_version` string, nullable — The version of the browser which the contact is using.
  - `browser_language` string, nullable — The language set by the browser which the contact is using.
  - `os` string, nullable — The operating system which the contact is using.
  - `android_app_name` string, nullable — The name of the Android app which the contact is using.
  - `android_app_version` string, nullable — The version of the Android app which the contact is using.
  - `android_device` string, nullable — The Android device which the contact is using.
  - `android_os_version` string, nullable — The version of the Android OS which the contact is using.
  - `android_sdk_version` string, nullable — The version of the Android SDK which the contact is using.
  - `android_last_seen_at` integer, nullable — (Unix timestamp in seconds) The time when the contact was last seen on an Android device.
  - `ios_app_name` string, nullable — The name of the iOS app which the contact is using.
  - `ios_app_version` string, nullable — The version of the iOS app which the contact is using.
  - `ios_device` string, nullable — The iOS device which the contact is using.
  - `ios_os_version` string, nullable — The version of iOS which the contact is using.
  - `ios_sdk_version` string, nullable — The version of the iOS SDK which the contact is using.
  - `ios_last_seen_at` integer, nullable — (Unix timestamp in seconds) The last time the contact used the iOS app.
  - `custom_attributes` object — The custom attributes which are set for the contact.
  - `avatar` object, nullable
    - `type` string — The type of object
    - `image_url` string, uri, nullable — An image URL containing the avatar of a contact.
  - `tags` ContactTags, nullable — An object containing tags meta data about the tags that a contact has. Up to 10 will be displayed here. Use the url to get more.
    - `data` AddressableList[] — This object represents the tags attached to a contact.
      - `type` string, uri — The addressable object type
      - `id` string — The id of the addressable object
      - `url` string, uri — Url to get more company resources for this contact
    - `url` string, uri — url to get more tag resources for this contact
    - `total_count` integer — Int representing the total number of tags attached to this contact
    - `has_more` boolean — Whether there's more Addressable Objects to be viewed. If true, use the url to view all
  - `notes` ContactNotes — An object containing notes meta data about the notes that a contact has. Up to 10 will be displayed here. Use the url to get more.
    - `data` AddressableList[] — This object represents the notes attached to a contact.
      - `type` string, uri — The addressable object type
      - `id` string — The id of the addressable object
      - `url` string, uri — Url to get more company resources for this contact
    - `url` string, uri — Url to get more company resources for this contact
    - `total_count` integer — Int representing the total number of companyies attached to this contact
    - `has_more` boolean — Whether there's more Addressable Objects to be viewed. If true, use the url to view all
  - `companies` ContactCompanies — An object with metadata about companies attached to a contact . Up to 10 will be displayed here. Use the url to get more.
    - `data` CompanyData[] — An array of company data objects attached to the contact.
      - `id` string — The unique identifier for the company which is given by Intercom.
      - `type` 'company' — The type of the object. Always company.
      - `url` string, uri — The relative URL of the company.
    - `url` string, uri — Url to get more company resources for this contact
    - `total_count` integer — Integer representing the total number of companies attached to this contact
    - `has_more` boolean — Whether there's more Addressable Objects to be viewed. If true, use the url to view all
  - `location` ContactLocation — An object containing location meta data about a Intercom contact.
    - `type` string, nullable — Always location
    - `country` string, nullable — The country that the contact is located in
    - `region` string, nullable — The overal region that the contact is located in
    - `city` string, nullable — The city that the contact is located in
  - `social_profiles` ContactSocialProfiles — An object containing social profiles that a contact has.
    - `data` SocialProfile[] — A list of social profiles objects associated with the contact.
      - `type` string — value is "social_profile"
      - `name` string — The name of the Social media profile
      - `url` string, uri — The name of the Social media profile

## Other responses

- `401` — Unauthorized

---

[API](https://skmtc.net/intercom/apis/intercom-api.md) · [All operations](https://skmtc.net/intercom/apis/intercom-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/intercom/intercom-api/revisions/9517e80f2642/schema)
