Skip to main content

Giveaway comment picker API

Paste the comments from your giveaway post or upload a CSV, then draw winners and alternates in your browser. Publish a fingerprint when you announce the giveaway and the seed after the draw, so anyone can re-run it and check.

  • Endpoint: POST https://postboost.co/app/api/tools/giveaway-comment-picker (operationId pickGiveawayWinners)
  • Web tool: postboost.co/tools/giveaway-comment-picker
  • Token: optional (limits)
  • MCP: tool pick-giveaway-winners on https://postboost.co/mcp/tools

Request​

FieldTypeDefaultDescription
entrantsarray of objectThe comments, one item each. The request body is capped at 128 KB.
seedstringThe secret seed, 64 hex characters (32 bytes), whose fingerprint you published before the entries closed. Without it, a seed is generated and pre_committed is false. The steps of the draw (pb-draw-v1) and a test vector are on the web tool page.
one_per_personbooleantrueCount each username once. Off: every comment is an entry, so one person can win more than once.
keywordsarray of string[]Keep only comments that contain at least one of these, case-insensitive.
min_mentionsinteger0Keep only comments that tag at least this many other @handles.
excludearray of string[]Usernames to leave out of the draw, such as the host account.
winnersinteger1
alternatesinteger0Runners-up drawn after the winners, in order.

Call it​

curl -X POST https://postboost.co/app/api/tools/giveaway-comment-picker \
-H 'Content-Type: application/json' \
-d '{"entrants":[{"username":"@Bob","comment":"c"},{"username":"alice","comment":"x"},{"username":"bob","comment":"again"},{"username":"carol"}],"seed":"000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f","winners":2,"alternates":1}'

With a token, send Authorization: Bearer YOUR_API_TOKEN as a default header (how, per SDK).

Response​

{
"winners": [
"alice",
"bob"
],
"alternates": [
"carol"
],
"entrants_before": 4,
"entrants_after": 3,
"entrant_list": [
"alice",
"bob",
"carol"
],
"entrants_hash": "180fb4068fd5af9e707e2cd14ea439ac159703e1baef83af87e8cf2f1868d10f",
"fingerprint": "630dcd2966c4336691125448bbb25b4ff412a49c732db2c8abc1b8581bd710dd",
"seed": "000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f",
"pre_committed": true,
"algorithm": "pb-draw-v1",
"warnings": []
}

With MCP​

Connect https://postboost.co/mcp/tools (setup) and ask, for example: Pick giveaway winners with a draw anyone can verify with the PostBoost pick-giveaway-winners tool.

Errors​

StatusWhen
401The Authorization header holds an invalid token. Leave it out to call as a guest.
413The JSON body is larger than 128 KB.
422A field is invalid; the body lists the errors per field.
429A limit is reached; see limits.