---
title: "Set plans for 1 to 500 users"
method: POST
path: "/billing/v1/ai-models-included/users/plan/bulk"
tags: ["Users"]
---

# Set plans for 1 to 500 users

`POST /billing/v1/ai-models-included/users/plan/bulk`

## Request

- Base URL: `https://api.langdock.com`
- URL: `https://api.langdock.com/billing/v1/ai-models-included/users/plan/bulk`
- Auth: HTTP bearer

If any ID is not an active human workspace member, returns 400 with details.userIds and changes nothing. alreadyOnPlanUserIds identifies members unchanged because they already had the plan.

## Request body

- IncludedBulkPlanRequest
  - `userIds` string[], required
  - `plan` 'business' | 'business_max', required

## Response `200`

Successful response.

- IncludedBulkPlanResult
  - `plan` 'business' | 'business_max', required
  - `updatedUserIds` string[], required
  - `alreadyOnPlanUserIds` string[], required

## Other responses

- `400`: Invalid body/query, unknown fields, empty PATCH, invalid limit, invalid bulk member IDs, or a cursor outside this workspace (INVALID_CURSOR).
- `401`: Missing or invalid authentication.
- `403`: Missing Billing scope, personal key, unavailable feature, missing active service-account Admin authority, or email filter without the USER_MANAGEMENT_API scope.
- `404`: Resource not in this workspace, inactive/non-human user, privacy-hidden agent, usage request not found for that member, or endpoint unavailable in this mode.
- `405`: Unsupported HTTP method.
- `409`: Workspace mode differs from the requested mode. details.mode identifies the workspace mode.
- `429`: API rate limit exceeded.

## Changes

- **2026-11-03** `c62bf90b4013`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/langdock/apis/langdock-api/changes/billing/v1/ai-models-included/users/plan/bulk/post.md)

---

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