---
title: "Draw winners (creator only)"
method: POST
path: "/v1/giveaway/{giveaway_id}/draw"
tags: ["giveaway"]
---

# Draw winners (creator only)

`POST /v1/giveaway/{giveaway_id}/draw`

Draw winners for the giveaway. Requires the account JWT of the giveaway creator.

**For random selection** (`selection_mode='random'`):
Send empty body `{}`. System will randomly select winners weighted by entry count.

**For manual selection** (`selection_mode='manual'`):
Provide `winner_account_ids` list with account IDs in rank order.

## Path parameters

- `giveaway_id` string, required — Giveaway ID

## Headers

- `authorization` string, nullable — Bearer <account_jwt>

## Request body

- DrawWinnersRequest — Request body for manual winner selection.
  - `winner_account_ids` string[], nullable — For manual selection: list of account IDs to select as winners (in rank order)

## Response `200`

Successful Response

- DrawWinnersResponse — Response for draw operation.
  - `giveaway_id` string, required
  - `drawn_at` string, date-time, required
  - `winners` WinnerResponse[], required
    - `rank` integer, required
    - `entry_id` string, required
    - `winner_account_id` string, required
    - `earning_address` string, required
    - `handle` string, nullable
    - `ens_name` string, nullable
    - `base_name` string, nullable
    - `entry_count` integer, nullable
    - `selected_at` string, date-time, nullable
    - `client_address` string, required

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/grove/apis/grove-api.md) · [All operations](https://skmtc.net/grove/apis/grove-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/grove/grove-api/revisions/f286b48a8105/schema)
