> ## Documentation Index
> Fetch the complete documentation index at: https://docs.quickblox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Get Address Book

> Retrieve all uploaded address book contacts.

#### Recipes

<AccordionGroup>
  <Accordion title="Get address book contacts from the device">
    <Steps>
      <Step title="1. Set a device identifier">
        Set a `udid` parameter to specify a user's device.

        ```curl {5} theme={null}
        curl -X GET \
        -H "Content-Type: application/json" \
        -H "QB-Token: 6d59d901c1231a4d74572224b88ccbc487012bba" \
        -d '{
          "udid": "A337E8A4-80AD-8ABA-9F5D-579EFF6BACAB"
        }' \
        https://api.quickblox.com/address_book.json
        ```
      </Step>

      <Step title="2. As a result, the API returns a list of address book contacts for a specified device.">
        ```curl theme={null}
        curl -X GET \
        -H "Content-Type: application/json" \
        -H "QB-Token: 6d59d901c1231a4d74572224b88ccbc487012bba" \
        -d '{
          "udid": "A337E8A4-80AD-8ABA-9F5D-579EFF6BACAB"
        }' \
        https://api.quickblox.com/address_book.json
        ```
      </Step>
    </Steps>
  </Accordion>
</AccordionGroup>

#### Query Parameters

<ParamField query="udid" type="string">
  User's device identifier. If specified, all operations will be in this context. Max. length is 64 symbols.
  If the device identifier is not specified, it means that a user has one global address book across
  all their devices.
</ParamField>

#### Headers

<ParamField header="QB-Token" type="string" required> A user session token. See [Authentication](/reference/authentication) page to learn more about the session token. </ParamField>

#### Responses

<AccordionGroup>
  <Accordion title="200">
    A successful response

    <Expandable title="array of objects">
      <ResponseField name="name" type="string" />

      <ResponseField name="phone" type="string" />
    </Expandable>
  </Accordion>

  <Accordion title="404">
    An error response

    <ResponseField name="errors" type="array of strings" />
  </Accordion>
</AccordionGroup>

<RequestExample>
  ```bash cURL theme={null}
  curl -X GET \
  -H "Content-Type: application/json" \
  -H "QB-Token: 2c7b29abe6af6322bb6bbe1bf6b530c4d1012bba" \
  https://api.quickblox.com/address_book.json
  ```
</RequestExample>

<ResponseExample>
  ```json 200 theme={null}
  [
    {
      "name": "Mike Howard",
      "phone": "463571393241"
    },
    {
      "name": "Morgan Fuller",
      "phone": "65021272571"
    }
  ]
  ```

  ```json 404 theme={null}
  {
    "errors": [
      "Empty address book"
    ]
  }
  ```
</ResponseExample>
