---
title: "Set a user plan override"
method: PUT
path: "/admin/users/{user_id}/plan"
tags: ["Admin"]
---

# Set a user plan override

`PUT /admin/users/{user_id}/plan`

## Request

- Base URL: `https://app.openpo.st/api/v1`
- URL: `https://app.openpo.st/api/v1/admin/users/{user_id}/plan`
- Auth: one of:
  - HTTP bearer
  - API key in cookie `openpost_session`

Assigns or removes an administrator plan override for a user. The override creates an admin-managed subscription on the user's personal organization, bypassing Paddle checkout. Pass an empty plan_id to remove the override.

## Path parameters

- `user_id` string, required: Target user ID

## Request body

- SetUserPlanInputBody
  - `$schema` string, uri: A URL to the JSON Schema for this object.
  - `plan_id` string, required: Plan ID to assign: founder (Solo), team, agency, or empty string to remove the override

## Response `200`

OK

- SetUserPlanOutputBody
  - `$schema` string, uri: A URL to the JSON Schema for this object.
  - `plan_id` string, required: Assigned plan ID, empty if override was removed
  - `user_id` string, required: User ID

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not Found
- `422`: Unprocessable Entity
- `500`: Internal Server Error

---

[API](https://skmtc.dev/openpo/apis/openpost-api.md) · [All operations](https://skmtc.dev/openpo/apis/openpost-api/llms.txt) · [OpenAPI document](https://skmtc.dev/openpo/apis/openpost-api/revisions/67d3964458a7?raw)
