# List granted companies for a contact (Preview)

List the companies a contact has been granted access to.
A granted company lets the contact read that company's tickets in the customer portal. It is separate from company membership — granting a company does not attach the contact to it, and [`GET /contacts/{id}/companies`](/docs/references/preview/rest-api/api.intercom.io/contacts/listcompaniesforacontact) does not include grants.
`company_ids` holds the `company_id` values you set on your companies, so the list round-trips with the `company_ids` you send to `PUT /contacts/{contact_id}/granted_companies`. The list is sorted by company id and paginated.
Returns an empty list when granted companies are not enabled for the workspace.
Requires the `read_users_companies` OAuth scope. Set `Intercom-Version: Preview`.

Endpoint: GET /contacts/{contact_id}/granted_companies
Version: Preview
Security: bearerAuth

## Path parameters:

  - `contact_id` (string, required)
    The unique identifier for the contact which is given by Intercom

## Query parameters:

  - `page` (integer)
    The page number to retrieve, starting at 1.

  - `per_page` (integer)
    The number of company ids to return per page. Values above 150 are reduced to 150.

  - `order` (string)
    The direction to sort the company ids in. Any other value is treated as `desc`.

## Header parameters:

  - `Intercom-Version` (string)

## Response 200 fields (application/json):

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

  - `company_ids` (array)
    The `company_id` values of the companies the contact has been granted access to.

  - `pages` (object)
    Pagination details. Null on the replace response, which returns the whole stored set.

  - `pages.type` (string)
    Enum: "pages"

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

  - `pages.next` (string)
    A link to the next page of results. A response that does not contain a next link does not have further data to fetch.

  - `pages.per_page` (integer)
    Example: 50

  - `pages.total_pages` (integer)
    Example: 1

  - `total_count` (integer)
    The total number of companies the contact has been granted access to.
    Example: 2

## Response 401 fields (application/json):

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

  - `request_id` (string)
    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)
    Optional. Human readable description of the error.
    Example: Access Token Invalid

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

## Response 404 fields (application/json):

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

  - `request_id` (string)
    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)
    Optional. Human readable description of the error.
    Example: Access Token Invalid

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

