> ## Documentation Index
> Fetch the complete documentation index at: https://docs.genviral.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Create Pack

> Create a reusable image pack

Creates a new pack in the authenticated key scope.

<Note>
  This endpoint creates an empty pack record (metadata only). Add images with
  [Add Pack Image](/api-reference/add-pack-image).
</Note>

## Body Parameters

<ParamField body="name" type="string" required>
  Pack name (`1-120` chars after trimming).
</ParamField>

<ParamField body="is_public" type="boolean">
  Optional visibility flag. Default: `false`.
</ParamField>

<RequestExample>
  ```bash cURL theme={null}
  curl --request POST \
    --url https://www.genviral.io/api/partner/v1/packs \
    --header 'Authorization: Bearer <token>' \
    --header 'Content-Type: application/json' \
    --data '{
    "name": "Motivation Pack",
    "is_public": false
  }'
  ```
</RequestExample>

<ResponseExample>
  ```json Response theme={null}
  {
    "ok": true,
    "code": 201,
    "message": "Pack created",
    "data": {
      "id": "11111111-1111-1111-1111-111111111111",
      "name": "Motivation Pack",
      "image_count": 0,
      "is_public": false,
      "created_at": "2026-02-14T09:00:00.000Z",
      "images": []
    }
  }
  ```
</ResponseExample>

## Error Responses

* `400 invalid_json` - body is not valid JSON
* `422 invalid_payload` - schema validation failed
* `401` - authentication failed (missing/invalid/revoked token)
* `402 subscription_required` - active Creator/Professional/Business plan required
* `403 tier_not_allowed` - Scheduler tier cannot use Partner API
* `500 pack_create_failed` - unexpected creation failure
