## List Contacts

`print_mail.contacts.list(ContactListParams**kwargs)  -> SyncSkipLimit[Contact]`

**get** `/print-mail/v1/contacts`

Get a list of contacts.

### Parameters

- `limit: Optional[int]`

- `search: Optional[str]`

  You can supply any string to help narrow down the list of resources. For example, if you pass `"New York"` (quoted), it will return resources that have that string present somewhere in their response. Alternatively, you can supply a structured search query. See the documentation on `StructuredSearchQuery` for more details.

- `skip: Optional[int]`

### Returns

- `class Contact: …`

  - `id: str`

    A unique ID prefixed with contact_

  - `address_line1: str`

    The first line of the contact's address.

  - `address_status: Literal["verified", "corrected", "failed"]`

    One of `verified`, `corrected`, or `failed`.

    - `"verified"`

    - `"corrected"`

    - `"failed"`

  - `country_code: str`

    The ISO 3611-1 country code of the contact's address.

  - `created_at: datetime`

    The UTC time at which this resource was created.

  - `live: bool`

    `true` if this is a live mode resource else `false`.

  - `object: Literal["contact"]`

    Always `contact`.

    - `"contact"`

  - `updated_at: datetime`

    The UTC time at which this resource was last updated.

  - `address_errors: Optional[str]`

    A series of human-readable errors/warnings that were raised when running the provided address through our address verification.

  - `address_line2: Optional[str]`

    Second line of the contact's address, if applicable.

  - `city: Optional[str]`

    The city of the contact's address.

  - `company_name: Optional[str]`

    Company name of the contact.

  - `description: Optional[str]`

    An optional string describing this resource. Will be visible in the API and the dashboard.

  - `email: Optional[str]`

    Email of the contact.

  - `first_name: Optional[str]`

    First name of the contact.

  - `force_verified_status: Optional[bool]`

    If `true`, PostGrid will force this contact to have an `addressStatus` of `verified` even if our address verification system says otherwise.

  - `job_title: Optional[str]`

    Job title of the contact.

  - `last_name: Optional[str]`

    Last name of the contact.

  - `metadata: Optional[Dict[str, object]]`

    See the section on Metadata.

  - `phone_number: Optional[str]`

    Phone number of the contact.

  - `postal_or_zip: Optional[str]`

    The postal or ZIP code of the contact's address.

  - `province_or_state: Optional[str]`

    Province or state of the contact's address.

  - `skip_verification: Optional[bool]`

    If `true`, PostGrid will skip running this contact's address through our address verification system.

### Example

```python
import os
from postgrid import PostGrid

client = PostGrid(
    print_mail_api_key=os.environ.get("POSTGRID_PRINT_MAIL_API_KEY"),  # This is the default and can be omitted
)
page = client.print_mail.contacts.list()
page = page.data[0]
print(page.id)
```

#### Response

```json
{
  "skip": 0,
  "limit": 10,
  "totalCount": 1,
  "object": "list",
  "data": [
    {
      "id": "contact_pxd7wnnD1xY6H6etKNvjb4",
      "object": "contact",
      "live": false,
      "companyName": "PostGrid",
      "addressLine1": "90 CANAL ST STE 600",
      "city": "BOSTON",
      "provinceOrState": "MA",
      "postalOrZip": "90210-1234",
      "countryCode": "US",
      "skipVerification": false,
      "forceVerifiedStatus": false,
      "addressStatus": "verified",
      "createdAt": "2022-02-16T15:08:41.052Z",
      "updatedAt": "2022-02-16T15:08:41.052Z"
    }
  ]
}
```
