API Reference
Bonus Actions
Retrieve and complete bonus actions for contest entries
Bonus Actions
Bonus actions are tasks that participants can complete to earn extra points in a contest. Use these endpoints to retrieve available bonus actions and mark them as completed.
Get Bonus Actions
/api/v1/entries/:entryId/bonus-actionsRetrieve all bonus actions for a specific entry, including their completion status.
Path Parameters
entryIdstring required The unique entry identifier. Use 'lookup' with query params to find by email.
Query Parameters (when entryId is "lookup")
emailstring required Email address to look up
contestIdstring required Contest ID to look up within
Request
# By entry ID
curl -X GET https://blitzrocket.com/api/v1/entries/entry_abc123/bonus-actions \
-H "x-api-key: your_api_key_here"
# By email lookup
curl -X GET "https://blitzrocket.com/api/v1/entries/lookup/bonus-actions?email=jane@example.com&contestId=clx1abc123" \
-H "x-api-key: your_api_key_here"
Response
{
"success": true,
"data": {
"entryId": "entry_abc123",
"email": "jane@example.com",
"totalPoints": 150,
"bonusActionsCompleted": 2,
"bonusActionsTotal": 5,
"bonusPointsEarned": 30,
"actions": [
{
"id": "ba_001",
"action": "follow_twitter",
"description": "Follow us on Twitter",
"icon": "twitter",
"iconColor": "#1DA1F2",
"points": 10,
"confirmationType": "auto",
"destinationUrl": "https://twitter.com/blitzrocket",
"order": 1,
"completed": true,
"completedAt": "2025-06-15T12:00:00.000Z",
"completionStatus": "verified"
},
{
"id": "ba_002",
"action": "share_referral",
"description": "Share your referral link",
"icon": "share",
"iconColor": "#10B981",
"points": 20,
"confirmationType": "manual",
"destinationUrl": null,
"order": 2,
"completed": true,
"completedAt": "2025-06-16T09:30:00.000Z",
"completionStatus": "verified"
},
{
"id": "ba_003",
"action": "visit_website",
"description": "Visit our product page",
"icon": "link",
"iconColor": "#6366F1",
"points": 5,
"confirmationType": "click",
"destinationUrl": "https://example.com/product",
"order": 3,
"completed": false,
"completedAt": null,
"completionStatus": null
}
]
}
}
Response Fields
entryIdstringThe entry identifier
emailstringParticipant email
totalPointsnumberTotal points for the entry
bonusActionsCompletednumberNumber of completed bonus actions
bonusActionsTotalnumberTotal number of available bonus actions
bonusPointsEarnednumberPoints earned from bonus actions
actions[].idstringUnique identifier for the bonus action
actions[].actionstringAction type identifier
actions[].pointsnumberPoints awarded for completing this action
actions[].completedbooleanWhether this action has been completed
Complete Bonus Action
/api/v1/entries/:entryId/bonus-actions/:bonusActionId/completeMark a bonus action as completed for an entry and award the associated points.
Path Parameters
entryIdstring required The unique entry identifier
bonusActionIdstring required The unique bonus action identifier
Request Body
proofstring optional Proof of completion (optional, e.g., screenshot URL)
answerstring optional Answer for quiz-type bonus actions (optional)
Request
curl -X POST https://blitzrocket.com/api/v1/entries/entry_abc123/bonus-actions/ba_003/complete \
-H "x-api-key: your_api_key_here" \
-H "Content-Type: application/json" \
-d '{}'
Response (New Completion)
{
"success": true,
"data": {
"alreadyCompleted": false,
"completedAt": "2025-06-17T14:00:00.000Z",
"pointsAdded": 5,
"newTotalPoints": 155,
"message": "Bonus action completed successfully."
}
}
Response (Already Completed)
{
"success": true,
"data": {
"alreadyCompleted": true,
"completedAt": "2025-06-15T12:00:00.000Z",
"message": "This bonus action has already been completed."
}
}
Error Responses
Common error responses for this endpoint.
| Status | Error | Description |
|---|---|---|
400 | Missing entryId or bonusActionId | Both path parameters are required |
401 | Invalid API key | API key is missing or invalid |
404 | Entry or bonus action not found | The specified resource does not exist |