---
title: "Grant organization access or Free Auto usage"
method: POST
path: "/v1/admin/organizations/{organizationId}/control-panel/grants"
tags: ["Admin"]
---

# Grant organization access or Free Auto usage

`POST /v1/admin/organizations/{organizationId}/control-panel/grants`

## Request

- Base URL: `https://api.openworklabs.com`
- URL: `https://api.openworklabs.com/v1/admin/organizations/{organizationId}/control-panel/grants`
- Auth: one of:
  - API key in header `x-api-key`
  - HTTP bearer

Creates an idempotent organization-scoped grant. A null expiry means until spent or revoked; unlimited usage is a separate grant kind. Does not change billing.

## Path parameters

- `organizationId` string, required

## Request body

- object
  - `requestId` string, uuid, required
  - `feature` 'freeAuto' | 'openworkWeb', required
  - `kind` 'access' | 'usage' | 'unlimited', required
  - `amountUsd` number, nullable, required
  - `startsAt` string, date-time, nullable, required
  - `expiresAt` string, date-time, nullable, required
  - `reason` string, required

## Response `200`

Grant created or original retry returned.

- object
  - `ok` true, required
  - `grantId` string, required

## Other responses

- `400`: Invalid organization, grant or request.
- `401`: Sign in required.
- `403`: Platform administrator required.
- `404`: Organization, grant or rollout not available.
- `409`: The request conflicts with an existing grant or paid Web subscription.

## Changes

- **2026-10-20** `4466ec930cde`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/openworklabs/apis/den-api/changes/v1/admin/organizations/:organizationId/control-panel/grants/post.md)

---

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