---
title: "Issue Promotional Grants"
method: POST
path: "/api/v1/admin/clients/{client_id}/issue-promotional-grants"
tags: ["Admin APIs", "clients"]
---

# Issue Promotional Grants

`POST /api/v1/admin/clients/{client_id}/issue-promotional-grants`

Issue a promotional token grant to a client using existing or newly created promotional tokens.

This endpoint finds an existing promotional token and issues a single grant to the client.
If no promotional tokens exist, it creates a new one with a safe priority (10) to avoid conflicts.
This prevents the priority conflicts that occur when creating tokens with priority 1.

Args:
    client_id: ID of the client to issue grant to
    request: Promotional grant request with amount, expires_at, and priority
    funding_service: Service for issuing token grants
    token_service: Service for finding/creating promotional tokens
    user: Authenticated admin user

Returns:
    Dict containing details of the issued grant

Raises:
    ValidationError: If promotional token creation fails or client not found

## Path parameters

- `client_id` string, required

## Request body

- IssuePromotionalGrantsRequest
  - `amount` union, required — Maximum 100,000 tokens allowed per allocation
    - number
    - string
  - `effective_at` string, date-time, required
  - `expires_at` string, date-time, required

## Response `200`

Successful Response

- unknown

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/carbonarc/apis/carbon-arc-client-admin-api.md) · [All operations](https://skmtc.net/carbonarc/apis/carbon-arc-client-admin-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/carbonarc/carbon-arc-client-admin-api/revisions/a8ca30023371/schema)
