---
title: "POST /v1/chat/commands/add-members"
method: POST
path: "/v1/chat/commands/add-members"
tags: ["chat"]
---

# POST /v1/chat/commands/add-members

`POST /v1/chat/commands/add-members`

## Request

- Base URL: `https://app.legend.trade/api/rest`
- URL: `https://app.legend.trade/api/rest/v1/chat/commands/add-members`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/legend/apis/legend-api/docs/v1/chat/commands/add-members/post.ts> (a function with typed inputs; its response is checked against the schema)

Persist each item UUID before transport. Each item has its own durable receipt. Retry identical items after an unknown outcome.

## Request body

- object
  - `expectedUserId` string, uuid, required
  - `roomId` string, uuid, required
  - `members` object[], required
    - `operationId` string, uuid, required
    - `targetUserId` string, uuid, required

## Response `200`

Successful response

- object
  - `receipts` ChatCommandReceipt[], required
    - `operationId` string, uuid, required
    - `status` 'succeeded' | 'rejected', required
    - `result` ChatCommandResult, required
      - `viewerId` string, uuid, required
      - `sent` ChatSendResult
        - `roomId` string, uuid, required
        - `messages` object[], required
          - `id` string, uuid, required
          - `clientMessageId` string, required
      - `action` object
        - `readVersion` string, uuid, nullable
        - `draftVersion` string, uuid, nullable
        - `unreadCount` integer
        - `acknowledged` boolean
        - `cancelled` boolean
        - `enabled` boolean
        - `roomId` string, uuid
        - `attachmentId` string, uuid, nullable
      - `administration` object
        - `roomId` string, uuid, required
        - `name` string, nullable, required
        - `imageUrl` string, nullable, required
        - `members` object[], required
          - `userId` string, uuid, required
          - `role` 'owner' | 'admin' | 'member', required
          - `status` 'accepted' | 'pending' | 'declined', required
        - `removedUserIds` string[], required
      - `message` object, nullable, required
        - `id` string, uuid, required
        - `roomId` string, uuid, required
        - `deletedAt` string, nullable, required
        - `pinnedAt` string, nullable, required
        - `liked` boolean, required
        - `likeCount` integer, required
        - `content` string: Present only when this command edits content.
        - `reaction` object, nullable, required
          - `emoji` string, required
          - `selected` boolean, required
      - `room` object, nullable, required
        - `id` string, uuid, required
        - `muted` boolean, required
        - `pinned` boolean, required
        - `archived` boolean, required
        - `hidden` boolean, required
        - `markedUnread` boolean, required
    - `error` object, nullable, required
      - `code` string, required
      - `message` string, required

## Other responses

- `400`: Invalid input data
- `401`: Authorization not provided
- `403`: Insufficient access
- `500`: Internal server error

## Changes

> 110 revisions in range; 1 not diffed.

- **2026-11-04** `db819a090f3f`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/legend/apis/legend-api/changes/v1/chat/commands/add-members/post.md)

---

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