---
title: "Add accounts to an account list"
method: POST
path: "/v3/contact-account-lists/{id}/add-accounts"
tags: ["Account Lists"]
---

# Add accounts to an account list

`POST /v3/contact-account-lists/{id}/add-accounts`

<small>_Requires the `contacts:operate` scope (or a broader one that includes it)._</small>

Adds accounts to the specified account list, preserving any other list memberships.
This is a non-atomic operation: successfully added accounts are not rolled back if some fail.
The response contains only the failed items with their error details.

## Path parameters

- `id` integer, required

## Request body

- object
  - `accountIds` integer[], required — Account IDs to add or move (1 to 1000 items)

## Response `200`

Add operation completed. Response is a dictionary keyed by account ID.
Only failed items appear; missing IDs were added successfully.

Possible per-item error codes:

| error | Meaning |
|-------|---------|
| 7 | `AccountNotProcessed` — account could not be added (e.g. wrong team, deleted, invalid ID) |

- object

## Other responses

- `400` — Route parameter or request body validation failure
- `401` — Unauthorized. The response body is empty; check the `WWW-Authenticate` header for the expected scheme.
- `404` — Account list not found
- `429` — Too Many Requests

---

[API](https://skmtc.net/reply/apis/reply-api.md) · [All operations](https://skmtc.net/reply/apis/reply-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/reply/reply-api/revisions/1c3d32eaf95e/schema)
