Webhook Event Reference for FBL
Complete reference for every FBL webhook event type, its payload schema, and example payloads.
FBL webhooks deliver two event types: upvote, fired when a user votes for your project, and test, sent when you trigger a test from the dashboard. Both events share the same payload shape.
upvote
FBL fires this event each time a user upvotes your project. Use it to reward voters, update leaderboards, or log activity.
The weight field indicates how many votes this event counts as. During weekend double-vote periods, weight is 2.
| Field | Type | Description |
|---|---|---|
type | string | Always "upvote" |
bot_id | string | FBL bot ID (Fluxer snowflake) |
user_id | string | Fluxer user ID of the voter |
weight | number | Vote weight (1 normally, 2 during weekend multiplier) |
created_at | string | ISO 8601 timestamp when the vote was cast |
expires_at | string | ISO 8601 timestamp when the user can vote again |
is_weekend | boolean | true when the weekend multiplier is active |
query | string | Query string parameters appended to the vote page URL (may be empty) |
Example payload:
{
"type": "upvote",
"bot_id": "803190510032756736",
"user_id": "160105994217586689",
"weight": 1,
"created_at": "2026-04-23T14:22:00.000Z",
"expires_at": "2026-04-24T02:22:00.000Z",
"is_weekend": false,
"query": ""
}
test
FBL sends this payload when you click Send Test on your bot's API dashboard. It's identical in shape to upvote but with type set to "test" so you can branch on it and skip the voter-reward logic during testing.
{
"type": "test",
"bot_id": "803190510032756736",
"user_id": "160105994217586689",
"weight": 1,
"created_at": "2026-04-23T14:22:00.000Z",
"expires_at": "2026-04-24T02:22:00.000Z",
"is_weekend": false,
"query": ""
}