# List attached contacts

You can fetch a list of all contacts that belong to a company.

Endpoint: GET /companies/{id}/contacts
Version: Preview
Security: bearerAuth

## Header parameters:

  - `Intercom-Version` (string)
    Intercom API version.By default, it's equal to the version set in the app package.
    Enum: "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", "Preview"

## Path parameters:

  - `id` (string, required)
    The unique identifier for the company which is given by Intercom
    Example: "5f4d3c1c-7b1b-4d7d-a97e-6095715c6632"

## Response 200 fields (application/json):

  - `type` (string)
    The type of object - list
    Enum: "list"

  - `data` (array)
    An array containing Contact Objects

  - `data.type` (string)
    The type of object.
    Example: "contact"

  - `data.id` (string)
    The unique identifier for the contact which is given by Intercom.
    Example: "5ba682d23d7cf92bef87bfd4"

  - `data.external_id` (string,null)
    The unique identifier for the contact which is provided by the Client.
    Example: "f3b87a2e09d514c6c2e79b9a"

  - `data.workspace_id` (string)
    The id of the workspace which the contact belongs to.
    Example: "ecahpwf5"

  - `data.role` (string)
    The role of the contact.
    Example: "user"

  - `data.email` (string)
    The contact's email.
    Example: "joe@example.com"

  - `data.email_domain` (string)
    The contact's email domain.
    Example: "example.com"

  - `data.phone` (string,null)
    The contacts phone.
    Example: "+1123456789"

  - `data.formatted_phone` (string,null)
    The contacts phone number normalized to the E164 format
    Example: "+1123456789"

  - `data.name` (string,null)
    The contacts name.
    Example: "John Doe"

  - `data.owner_id` (string,null)
    The id of an admin that has been assigned account ownership of the contact.
    Example: "321"

  - `data.has_hard_bounced` (boolean)
    Whether the contact has had an email sent to them hard bounce.
    Example: true

  - `data.marked_email_as_spam` (boolean)
    Whether the contact has marked an email sent to them as spam.
    Example: true

  - `data.unsubscribed_from_emails` (boolean)
    Whether the contact is unsubscribed from emails.
    Example: true

  - `data.created_at` (integer)
    (UNIX timestamp) The time when the contact was created.
    Example: 1571672154

  - `data.updated_at` (integer)
    (UNIX timestamp) The time when the contact was last updated.
    Example: 1571672154

  - `data.signed_up_at` (integer,null)
    (UNIX timestamp) The time specified for when a contact signed up.
    Example: 1571672154

  - `data.last_seen_at` (integer,null)
    (UNIX timestamp) The time when the contact was last seen (either where the Intercom Messenger was installed or when specified manually).
    Example: 1571672154

  - `data.last_replied_at` (integer,null)
    (UNIX timestamp) The time when the contact last messaged in.
    Example: 1571672154

  - `data.last_contacted_at` (integer,null)
    (UNIX timestamp) The time when the contact was last messaged.
    Example: 1571672154

  - `data.last_email_opened_at` (integer,null)
    (UNIX timestamp) The time when the contact last opened an email.
    Example: 1571672154

  - `data.last_email_clicked_at` (integer,null)
    (UNIX timestamp) The time when the contact last clicked a link in an email.
    Example: 1571672154

  - `data.language_override` (string,null)
    A preferred language setting for the contact, used by Intercom as the language of Fin and the Messenger even if their browser has a different setting. Supports ISO 639-1 two-letter language codes. If an unsupported code is supplied, the field will be set to null.
    Example: "en"

  - `data.browser` (string,null)
    The name of the browser which the contact is using.
    Example: "Chrome"

  - `data.browser_version` (string,null)
    The version of the browser which the contact is using.
    Example: "80.0.3987.132"

  - `data.browser_language` (string,null)
    The language set by the browser which the contact is using.
    Example: "en-US"

  - `data.os` (string,null)
    The operating system which the contact is using.
    Example: "Mac OS X"

  - `data.android_app_name` (string,null)
    The name of the Android app which the contact is using.
    Example: "Intercom"

  - `data.android_app_version` (string,null)
    The version of the Android app which the contact is using.
    Example: "5.0.0"

  - `data.android_device` (string,null)
    The Android device which the contact is using.
    Example: "Pixel 3"

  - `data.android_os_version` (string,null)
    The version of the Android OS which the contact is using.
    Example: "10"

  - `data.android_sdk_version` (string,null)
    The version of the Android SDK which the contact is using.
    Example: "28"

  - `data.android_last_seen_at` (integer,null)
    (UNIX timestamp) The time when the contact was last seen on an Android device.
    Example: 1571672154

  - `data.ios_app_name` (string,null)
    The name of the iOS app which the contact is using.
    Example: "Intercom"

  - `data.ios_app_version` (string,null)
    The version of the iOS app which the contact is using.
    Example: "5.0.0"

  - `data.ios_device` (string,null)
    The iOS device which the contact is using.
    Example: "iPhone 11"

  - `data.ios_os_version` (string,null)
    The version of iOS which the contact is using.
    Example: "13.3.1"

  - `data.ios_sdk_version` (string,null)
    The version of the iOS SDK which the contact is using.
    Example: "13.3.1"

  - `data.ios_last_seen_at` (integer,null)
    (UNIX timestamp) The last time the contact used the iOS app.
    Example: 1571672154

  - `data.custom_attributes` (object)
    The custom attributes which are set for the contact.

  - `data.avatar` (object,null)

  - `data.avatar.type` (string)
    The type of object
    Example: "avatar"

  - `data.avatar.image_url` (string,null)
    An image URL containing the avatar of a contact.
    Example: "https://example.org/128Wash.jpg"

  - `data.tags` (object,null)
    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.tags.data` (array)
    This object represents the tags attached to a contact.

  - `data.tags.data.type` (string)
    The addressable object type
    Example: "note"

  - `data.tags.data.id` (string)
    The id of the addressable object
    Example: "123"

  - `data.tags.data.url` (string)
    Url to get more company resources for this contact
    Example: "/contacts/5ba682d23d7cf92bef87bfd4/notes"

  - `data.tags.url` (string)
    url to get more tag resources for this contact
    Example: "/contacts/5ba682d23d7cf92bef87bfd4/tags"

  - `data.tags.total_count` (integer)
    Int representing the total number of tags attached to this contact
    Example: 100

  - `data.tags.has_more` (boolean)
    Whether there's more Addressable Objects to be viewed. If true, use the url to view all
    Example: true

  - `data.notes` (object)
    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.notes.data` (array)
    This object represents the notes attached to a contact.

  - `data.notes.url` (string)
    Url to get more company resources for this contact
    Example: "/contacts/5ba682d23d7cf92bef87bfd4/notes"

  - `data.notes.total_count` (integer)
    Int representing the total number of companyies attached to this contact
    Example: 100

  - `data.notes.has_more` (boolean)
    Whether there's more Addressable Objects to be viewed. If true, use the url to view all
    Example: true

  - `data.companies` (object)
    An object with metadata about companies attached to a contact . Up to 10 will be displayed here. Use the url to get more.

  - `data.companies.data` (array)
    An array of company data objects attached to the contact.

  - `data.companies.data.id` (string)
    The unique identifier for the company which is given by Intercom.
    Example: "5ba682d23d7cf92bef87bfd4"

  - `data.companies.data.type` (string)
    The type of the object. Always company.
    Enum: "company"

  - `data.companies.data.url` (string)
    The relative URL of the company.
    Example: "/companies/5ba682d23d7cf92bef87bfd4"

  - `data.companies.url` (string)
    Url to get more company resources for this contact
    Example: "/contacts/5ba682d23d7cf92bef87bfd4/companies"

  - `data.companies.total_count` (integer)
    Integer representing the total number of companies attached to this contact
    Example: 100

  - `data.companies.has_more` (boolean)
    Whether there's more Addressable Objects to be viewed. If true, use the url to view all
    Example: true

  - `data.location` (object)
    An object containing location meta data about a Intercom contact.

  - `data.location.type` (string,null)
    Always location
    Example: "location"

  - `data.location.country` (string,null)
    The country that the contact is located in
    Example: "Ireland"

  - `data.location.region` (string,null)
    The overal region that the contact is located in
    Example: "Dublin"

  - `data.location.city` (string,null)
    The city that the contact is located in
    Example: "Dublin"

  - `data.social_profiles` (object)
    An object containing social profiles that a contact has.

  - `data.social_profiles.data` (array)
    A list of social profiles objects associated with the contact.

  - `data.social_profiles.data.type` (string)
    value is "social_profile"
    Example: "social_profile"

  - `data.social_profiles.data.name` (string)
    The name of the Social media profile
    Example: "Facebook"

  - `data.social_profiles.data.url` (string)
    The name of the Social media profile
    Example: "http://twitter.com/th1sland"

  - `total_count` (integer)
    The total number of contacts
    Example: 100

  - `pages` (object,null)
    Cursor-based pagination is a technique used in the Intercom API to navigate through large amounts of data.
A "cursor" or pointer is used to keep track of the current position in the result set, allowing the API to return the data in small chunks or "pages" as needed.

  - `pages.type` (string)
    the type of object pages.
    Enum: "pages"

  - `pages.page` (integer)
    The current page
    Example: 1

  - `pages.next` (object,null)

  - `pages.next.per_page` (integer)
    The number of results to fetch per page.
    Example: 2

  - `pages.next.starting_after` (string,null)
    The cursor to use in the next request to get the next page of results.
    Example: "your-cursor-from-response"

  - `pages.per_page` (integer)
    Number of results per page
    Example: 2

  - `pages.total_pages` (integer)
    Total number of pages
    Example: 13

## Response 401 fields (application/json):

  - `type` (string, required)
    The type is error.list
    Example: "error.list"

  - `request_id` (string,null)
    Example: "f93ecfa8-d08a-4325-8694-89aeb89c8f85"

  - `errors` (array, required)
    An array of one or more error objects

  - `errors.code` (string, required)
    A string indicating the kind of error, used to further qualify the HTTP response code
    Example: "unauthorized"

  - `errors.message` (string,null)
    Optional. Human readable description of the error.
    Example: "Access Token Invalid"

  - `errors.field` (string,null)
    Optional. Used to identify a particular field or query parameter that was in error.
    Example: "email"


