---
title: "Set member credit limit"
method: PUT
path: "/api/workspace/members/{email}/credit-limit"
---

# Set member credit limit

`PUT /api/workspace/members/{email}/credit-limit`

## Request

- Base URL: `https://app.base44.com`
- URL: `https://app.base44.com/api/workspace/members/{email}/credit-limit`
- Auth: HTTP bearer

<Info>This API is in beta. Endpoints, fields, and behavior may still change, so avoid depending on it in production.</Info>

Sets the most credits a member can use in a workspace each month, or removes their own limit when `credit_limit` is `null`. A member without their own limit gets the workspace default from [Set default member credit limit](/api-reference/set-default-member-credit-limit), if there is one.

A limit can't be more than the workspace's monthly credits. Viewers can't have a limit, since they can't use credits, but you can remove one. The workspace owner is never limited. Setting the same limit again changes nothing, so retrying is safe.

Member credit limits need the Business plan or higher. Below it, this returns a `402`.

This is limited to 30 requests per minute, shared with [Update workspace member role](/api-reference/update-workspace-member-role), [Remove workspace member](/api-reference/remove-workspace-member), [Set member credit limit](/api-reference/set-member-credit-limit), and [Set default member credit limit](/api-reference/set-default-member-credit-limit). A signed-in session has its own limit, and every personal access token for the workspace shares one. Some workspaces have a different limit.

<Note>Call this as an owner or admin of the workspace, with a personal access token for that workspace sent as a Bearer token, or from a signed-in session. A read-only token is refused, and workspace API keys aren't accepted.</Note>

## Path parameters

- `email` string, required: Email of the member whose limit to set, exactly as `email` in [List workspace members](/api-reference/list-workspace-members) returns it. Matching is exact, including case. URL-encode it: `@` as `%40` and `+` as `%2B`.

## Query parameters

- `workspaceId` string, required: ID of the workspace. With a personal access token, use the token's workspace. Get it from `organization_id` in [Get app](/api-reference/get-app).

## Request body

- UpdateMemberCreditLimitRequest: A member's credit limit.
  - `credit_limit` integer, nullable: Most credits the member can use in the workspace each month, at least 1. `null`, or leaving it out, removes their own limit, so the workspace default applies.

## Response `200`

The member's limit changed.

- ChangeResult: Confirms the change.
  - `status` 'success', required: Always `success`.
  - `message` string, required: Short confirmation. Its wording can change, so don't parse it.

## Other responses

- `400`: The limit is more than the workspace's monthly credits, or the member is a viewer.
- `401`: Missing or invalid credentials.
- `402`: The workspace's plan doesn't include member credit limits.
- `403`: You aren't an owner or admin of the workspace, your token is for a different workspace or is read-only, or your credential can't be used on this endpoint.
- `404`: No member or pending invitation with this email in the workspace.
- `409`: Your workspace requires an unlocked SSO session.
- `422`: Validation Error
- `429`: Rate limit exceeded.

## Changes

> 58 revisions in range; 1 not diffed.

- **2026-10-12** `5e139db2e643`: 1 info
  - the endpoint scheme security `PersonalAccessTokenAuth` was added to the API
- **2026-10-06** `dddf17e0f9f0`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/adexad/apis/base44-app-management-api/changes/api/workspace/members/:email/credit-limit/put.md)

---

[API](https://skmtc.dev/adexad/apis/base44-app-management-api.md) · [All operations](https://skmtc.dev/adexad/apis/base44-app-management-api/llms.txt) · [OpenAPI document](https://skmtc.dev/adexad/apis/base44-app-management-api/revisions/fa29e915c226?raw)
