WebhooksEvent catalogTournaments
tournament.fixture.aggregate-updated
Version 1 of the tournament.fixture.aggregate-updated webhook event.
The tournament.fixture.aggregate-updated event.
| Event type | tournament.fixture.aggregate-updated |
| Schema version | 1 |
| Routing key | event.tournament.fixture.aggregate-updated.v1 |
| Produced by | Tournament Management |
| Schema | urn:defendr:contract:tournament:fixture-aggregate-updated:1 |
data fields
| Field | Type | Required | Description |
|---|---|---|---|
fixtureId | string | yes | |
tournamentId | string | yes | |
stageId | string | yes | |
organizationId | string | yes | |
revision | integer | yes | |
status | "awaiting_results", "awaiting_resolution", "completed" | yes | |
aggregate | object | no | |
winnerEntrantKey | string | no | |
decidedBy | "result", "away_goals", "penalty_shootout", "manual" | no | |
cascadeId | string | no |
Some fields are required only in particular states. The JSON Schema below is authoritative.
Example delivery
Signed with the example secret whsec_placeholder_example_webhooks_signing_secret, so you can check your verifier against it. See Verifying signatures.
POST /your/webhook/endpoint HTTP/1.1
content-type: application/json
webhook-id: whd_00000000-0000-4000-8000-000000000045
webhook-timestamp: 1800000000
webhook-signature: v1,hIaXRw8RmoMT3kwHUjNJJ/4+X+py+x482loS0f8XGX8=
tanitar-event-type: tournament.fixture.aggregate-updated
tanitar-schema-version: 1
tanitar-delivery-attempt: 1
{"messageId":"evt_00000000-0000-4000-8000-000000000045","kind":"event","type":"tournament.fixture.aggregate-updated","schemaVersion":1,"occurredAt":"2027-01-15T10:00:00.000Z","producer":"tournament-management-service","accountId":"acc_11111111-1111-4111-8111-111111111111","correlationId":"corr_00000000-0000-4000-8000-000000000045","data":{"fixtureId":"fix_11111111-1111-4111-8111-111111111111","tournamentId":"trn_11111111-1111-4111-8111-111111111111","stageId":"stg_11111111-1111-4111-8111-111111111111","organizationId":"org_11111111-1111-4111-8111-111111111111","revision":2,"status":"awaiting_resolution","aggregate":{"entrantAKey":"team-a","entrantBKey":"team-b","aggregateTotal":{"a":3,"b":3}},"cascadeId":"csc_11111111-1111-4111-8111-111111111111"}}The same body, formatted:
{
"messageId": "evt_00000000-0000-4000-8000-000000000045",
"kind": "event",
"type": "tournament.fixture.aggregate-updated",
"schemaVersion": 1,
"occurredAt": "2027-01-15T10:00:00.000Z",
"producer": "tournament-management-service",
"accountId": "acc_11111111-1111-4111-8111-111111111111",
"correlationId": "corr_00000000-0000-4000-8000-000000000045",
"data": {
"fixtureId": "fix_11111111-1111-4111-8111-111111111111",
"tournamentId": "trn_11111111-1111-4111-8111-111111111111",
"stageId": "stg_11111111-1111-4111-8111-111111111111",
"organizationId": "org_11111111-1111-4111-8111-111111111111",
"revision": 2,
"status": "awaiting_resolution",
"aggregate": {
"entrantAKey": "team-a",
"entrantBKey": "team-b",
"aggregateTotal": {
"a": 3,
"b": 3
}
},
"cascadeId": "csc_11111111-1111-4111-8111-111111111111"
}
}JSON Schema
urn:defendr:contract:tournament:fixture-aggregate-updated:1
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "urn:defendr:contract:tournament:fixture-aggregate-updated:1",
"type": "object",
"additionalProperties": false,
"required": [
"fixtureId",
"tournamentId",
"stageId",
"organizationId",
"revision",
"status"
],
"properties": {
"fixtureId": {
"type": "string"
},
"tournamentId": {
"type": "string"
},
"stageId": {
"type": "string"
},
"organizationId": {
"type": "string"
},
"revision": {
"type": "integer"
},
"status": {
"enum": [
"awaiting_results",
"awaiting_resolution",
"completed"
]
},
"aggregate": {
"type": "object"
},
"winnerEntrantKey": {
"type": "string"
},
"decidedBy": {
"enum": [
"result",
"away_goals",
"penalty_shootout",
"manual"
]
},
"cascadeId": {
"type": "string"
}
}
}