---
title: "Update a contact"
method: PATCH
path: "/audience/contacts/{contactId}"
tags: ["Audience"]
---

# Update a contact

`PATCH /audience/contacts/{contactId}`

## Request

- Base URL: `https://app.lettr.com/api`
- URL: `https://app.lettr.com/api/audience/contacts/{contactId}`
- Auth: HTTP bearer

Partially update a contact. If no fields are provided the contact is returned unchanged. Requires the `audience:write` scope and is blocked for sandbox API keys.

## Path parameters

- `contactId` string, uuid, required

## Request body

- UpdateAudienceContactRequest: Request to update a contact. All fields are optional.
  - `email` string, email: New email address (must remain unique within the team)
  - `status` 'subscribed' | 'unsubscribed'
  - `properties` object: Partial property update. A property set to null is removed.

## Response `200`

Updated

- ShowAudienceContactResponse
  - `message` string, required
  - `data` AudienceContactView, required: Audience contact
    - `id` string, uuid, required
    - `email` string, email, required
    - `status` 'subscribed' | 'unsubscribed' | 'bounced' | 'complained' | 'unverified', required: Contact subscription status
    - `properties` object, required: Custom properties for the contact (string values)
    - `created_at` string, date-time, required
    - `paused_until` string, date-time, nullable, required: End of the contact's send pause, set from the unsubscribe page. While this is in the future the contact keeps status subscribed but campaigns are not delivered to them.
    - `lists` AudienceContactListLink[], required
      - `id` string, uuid, required
      - `name` string, required
    - `topics` AudienceContactTopicLink[], required
      - `id` string, uuid, required
      - `name` string, required

## Other responses

- `401`: Unauthorized - Missing or invalid API key
- `403`: Forbidden - API key does not have the required scope
- `404`: Resource not found
- `422`: Validation error
- `500`: Internal server error
- `503`: Service unavailable - the API key could not be verified, so the request was not processed. This does not mean the key is invalid; retry after the delay given in the Retry-After header.

---

[API](https://skmtc.dev/lettr/apis/lettr-api.md) · [All operations](https://skmtc.dev/lettr/apis/lettr-api/llms.txt) · [OpenAPI document](https://skmtc.dev/lettr/apis/lettr-api/revisions/48ef0dac1ebd?raw)
