---
title: "Change newsletter settings"
method: PATCH
path: "/newsletter-settings"
tags: ["Campaigns"]
---

# Change newsletter settings

`PATCH /newsletter-settings`

## Request

- Base URL: `https://sendhq.cc/api/v1`
- URL: `https://sendhq.cc/api/v1/newsletter-settings`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/sendhq/apis/sendhq-api/docs/newsletter-settings/patch.ts> (a function with typed inputs; its response is checked against the schema)

Change `postalAddress`, `design` ({ accentColor, font: sans, serif, or mono, align: left or center }), `cleanup`, or `testRecipients` (up to 5). Keys are camelCase. List cleanup is on by default: a subscriber who received `afterSends` broadcasts in a row without opening or clicking, and has not engaged for `quietDays`, gets one email asking whether to stay subscribed (`subject`, `body`, sent from `from` or the last broadcast's sender, paid plans only). A week later, anyone who did not click to stay becomes dormant: still on the list, but left out of broadcasts until they open or click again.

## Request body

- object: Keys are camelCase. Omitted keys keep their value.
  - `postalAddress` string, nullable: Shown in every marketing email footer (CAN-SPAM, CASL).
  - `design` object
    - `accentColor` string, nullable
    - `font` 'sans' | 'serif' | 'mono'
    - `align` 'left' | 'center'
  - `cleanup` object
    - `enabled` boolean
    - `afterSends` integer
    - `quietDays` integer
    - `subject` string, nullable
    - `body` string, nullable
    - `from` string, nullable: Sender on a verified domain; defaults to the last sent broadcast's sender.
  - `testRecipients` string[]

## Response `200`

Successful response

- object
  - `postalAddress` string, required
  - `design` object, required
    - `accentColor` string, required
    - `font` string, required
    - `align` string, required
  - `cleanup` object, required
    - `enabled` boolean, required
    - `afterSends` integer, required
    - `quietDays` integer, required
    - `subject` string, required
    - `body` string, required
    - `from` unknown, required
  - `testRecipients` string[], required

## Other responses

- `400`: Invalid request
- `401`: Missing or invalid authentication
- `402`: A paid entitlement is required for this recipient or feature
- `403`: The workspace, domain, policy, or suppression state forbids the operation
- `404`: Tenant-scoped resource not found
- `409`: Resource state or idempotency conflict
- `413`: Attachment count or bytes exceed the accepted limit
- `422`: Request validation or suppression check failed
- `423`: Sending is paused for this sender identity or workspace; the message gives the reason and how to appeal
- `429`: A monthly, daily, or trial usage limit was reached
- `500`: Unexpected server error
- `502`: An upstream provider operation failed
- `503`: A required provider or signing configuration is unavailable
- `default`: An error response using SendHQ's standard JSON envelope

---

[API](https://skmtc.dev/sendhq/apis/sendhq-api.md) - [All operations](https://skmtc.dev/sendhq/apis/sendhq-api/llms.txt) - [OpenAPI document](https://skmtc.dev/sendhq/apis/sendhq-api/revisions/98e39e48cb9a?raw)
