FIFA World Cup 2026 - Real-Time Events Notifications 🔥 Free
Pricing
Pay per usage
FIFA World Cup 2026 - Real-Time Events Notifications 🔥 Free
Free ⚽ World Cup 2026 live alerts straight to your webhook! Goals 🎯 (scorer + assist when available), cards, subs, kickoff/HT/FT & more!. One setup, real-time JSON POSTs all tournament - no polling, no F5. Paste your webhook URL & never miss a moment! 🏆
Pricing
Pay per usage
Rating
5.0
(1)
Developer
Azzouzana
Maintained by CommunityActor stats
1
Bookmarked
2
Total users
1
Monthly active users
5 hours ago
Last modified
Categories
Share
⚽ World Cup 2026 — Real-Time Events Notifications
Hook up your app, bot, or automation to live match pings for World Cup 2026. This setup actor is the one-time “where should we send stuff?” step.
What you get đź””
Once you’re in, your webhook gets instant POST notifications when the action hits the pitch:
- âš˝ Goals (scorer + assist when available)
- 🟨🟥 Cards (Red/Yellow)
- 🔄 Substitutions
- ⏱️ Match phases — kickoff, HT, 2nd half, FT, stoppage time
No polling. No F5 spam. Events land on your URL as they happen.
Live examples on Webhook.site
Real POSTs from the delivery service during live WC26 — open the inbox to inspect full JSONs: https://webhook.site/#!/view/01b18b65-2625-4129-88f1-3ca2cdfe0615
Each notification is a separate POST.
How it works (5 seconds setup)
- Run this actor with your webhook URL
- We save it next to your Apify account
- Our delivery service fires JSON at you during live matches
One setup run → notifications in the background all tournament long. Free. Easy.
Input
| Field | Default | Description |
|---|---|---|
webhookUrl | — | Your HTTPS endpoint for notifications (required) |
subscribeGoals | true | Goals (scorer + assist when available) |
subscribeYellowCards | false | Yellow cards |
subscribeRedCards | false | Red cards |
subscribePeriods | false | Match phases — kickoff, HT, 2nd half, FT, stoppage time |
subscribeSubstitutions | false | Substitutions |
{"webhookUrl": "https://your-server.com/notifications/wc26","subscribeGoals": true,"subscribeYellowCards": false,"subscribeRedCards": true,"subscribePeriods": false,"subscribeSubstitutions": true}
Node, Python, Zapier, Make, n8n, Discord/Slack bridges — if it accepts POST, you’re good.
Output (dataset)
Successful run = one confirmation row:
{"subscriptionId": "uuid","apifyUserId": "your-apify-user-id","webhookUrl": "https://your-server.com/notifications/wc26","eventTypes": {"goals": true,"yellowCards": false,"redCards": true,"periods": false,"substitutions": true},"updatedAt": "2026-06-11T12:00:00.000Z"}
Changing your URL
- One slot per Apify user
- Run again with a new URL → we swap it in
- No duplicate subscriptions cluttering things
What a notification looks like 📬
During live World Cup matches, the delivery service POSTs JSON to your webhookUrl.
HTTP request
POST /notifications/wc26 HTTP/1.1Host: your-server.comContent-Type: application/json{ ... body below ... }
You only receive event types you enabled at setup (subscribeGoals, subscribeYellowCards, etc.). If you left only Goals checked, you will not get cards or subs.
Below: JSON shapes from live delivery. For raw POSTs with timestamps, see the Webhook.site inbox.
Goal (with scorer + assist)
Live delivery — Canada vs Bosnia & Herzegovina (event 15186836), also visible on Webhook.site:
{"ts": "2026-06-12T20:59:02.379Z","eventId": 15186836,"subject": "event.15186836","channel": "incidents","incidentId": 351558696,"homeTeam": "Canada","awayTeam": "Bosnia & Herzegovina","match": "Canada vs Bosnia & Herzegovina","summary": {"kind": "goal","type": "goal","class": "regular","side": "away","team": "Bosnia & Herzegovina","minute": 21,"player": "J. Lukić","assist": "S. Kolašinac","text": "Goal — J. Lukić 21' (assist S. Kolašinac) (0-1)","score": { "home": 0, "away": 1 }},"team": "Bosnia & Herzegovina","player": "J. Lukić","assist": "S. Kolašinac"}
Earlier WC26 example — Mexico vs South Africa (event 15186710):
{"ts": "2026-06-11T19:14:50.813Z","eventId": 15186710,"subject": "event.15186710","channel": "score","homeTeam": "Mexico","awayTeam": "South Africa","match": "Mexico vs South Africa","summary": {"kind": "goal","side": "home","team": "Mexico","score": "1-0","player": "J. Quiñones","assist": "E. Lira","minute": 9,"text": "Goal — J. Quiñones 9' (assist E. Lira) (1-0)"},"patch": {"homeScore.current": 1,"awayScore.current": 0},"incidentId": 351455858,"player": "J. Quiñones","assist": "E. Lira"}
summary.text is ready to forward to Discord, Slack, or SMS as-is.
Red card
{"ts": "2026-06-11T20:16:38.921Z","eventId": 15186710,"subject": "event.15186710","channel": "incidents","incidentId": 125277734,"homeTeam": "Mexico","awayTeam": "South Africa","match": "Mexico vs South Africa","summary": {"kind": "red","type": "card","class": "red","side": "away","team": "South Africa","minute": 49,"player": "S. Sithole","text": "red — S. Sithole 49'"},"team": "South Africa","player": "S. Sithole"}
Yellow card
Live delivery — Canada vs Bosnia & Herzegovina:
{"ts": "2026-06-12T19:46:42.144Z","eventId": 15186836,"subject": "event.15186836","channel": "incidents","incidentId": 125279344,"homeTeam": "Canada","awayTeam": "Bosnia & Herzegovina","match": "Canada vs Bosnia & Herzegovina","summary": {"kind": "yellow","type": "card","class": "yellow","side": "away","team": "Bosnia & Herzegovina","minute": 45,"player": "E. Demirović","text": "yellow — E. Demirović 45'"},"team": "Bosnia & Herzegovina","player": "E. Demirović"}
Substitution
playerIn / playerOut appear only on substitutions. Live delivery — Canada vs Bosnia & Herzegovina:
{"ts": "2026-06-12T20:22:12.251Z","eventId": 15186836,"subject": "event.15186836","channel": "incidents","incidentId": 126397427,"homeTeam": "Canada","awayTeam": "Bosnia & Herzegovina","match": "Canada vs Bosnia & Herzegovina","summary": {"kind": "substitution","type": "substitution","class": "regular","side": "home","team": "Canada","minute": 61,"text": "Sub — L. Millar → J. Shaffelburg 61'","playerIn": "J. Shaffelburg","playerOut": "L. Millar"},"team": "Canada","playerIn": "J. Shaffelburg","playerOut": "L. Millar"}
Match phases (kickoff → HT → 2H → FT)
Enable subscribePeriods for whistle-to-whistle milestones. One POST per phase change. Same top-level shape as goals and cards: homeTeam, awayTeam, match, and a readable summary.text.
| Moment | summary.phase | summary.text example |
|---|---|---|
| First half | first_half | First half — Mexico vs South Africa (0-0) |
| Halftime | halftime | Halftime — Mexico vs South Africa (1-0) |
| Second half | second_half | Second half — Mexico vs South Africa (1-0) |
Full time — webhook JSON sample:
{"ts": "2026-06-14T13:18:21.287Z","eventId": 16159825,"subject": "sport.football","channel": "score","homeTeam": "Ăšvalno","awayTeam": "Sokol ZlatnĂky","match": "Ăšvalno vs Sokol ZlatnĂky","summary": {"kind": "status","type": "period","phase": "full_time","text": "Full time — Ăšvalno vs Sokol ZlatnĂky (2-3)","score": { "home": 2, "away": 3 },"status": { "code": 100, "description": "Ended" }}}
Halftime — webhook JSON sample:
{"ts": "2026-06-11T19:55:00.676Z","eventId": 15186710,"subject": "sport.football","channel": "score","homeTeam": "Mexico","awayTeam": "South Africa","match": "Mexico vs South Africa","summary": {"kind": "status","type": "period","phase": "halftime","text": "Halftime — Mexico vs South Africa (1-0)","score": { "home": 1, "away": 0 },"status": { "code": 31, "description": "Halftime" }}}
Stoppage time uses summary.kind: "stoppage_time" with minutes and period (1 or 2).
Other phases use the same shape: first_half, second_half, extra_time, penalties.
Field cheat sheet
| Field | Meaning |
|---|---|
ts | When we sent the notification (ISO 8601) |
eventId | Match id — stable for the whole game |
channel | score (live socket) or incidents (API enrich for cards/subs) |
summary.kind | goal, yellow, red, substitution, status, stoppage_time, … |
summary.type | goal, card, substitution, or period for match phases |
summary.phase | Period only: first_half, halftime, second_half, full_time, stoppage_time, … |
summary.text | Human-readable one-liner |
summary.score | { "home": 1, "away": 0 } on goals and periods |
player / assist | Scorer and assist on goals; player on cards |
playerIn / playerOut | Substitution only |
You’re live when…
Delivery kicks in once your URL is on the notification service. Changed URL or event toggles? Picked up within about 5 minutes (no restart needed).
Want to try it? Plug in your webhook, open your logs, and wait for the beautiful chaos of live World Cup football. 🏆
📬 Contact & Support
Need a custom solution? Have a feature request, a collaboration beyond the FIFA 2026 World Cup or just want to chat? We'd love to hear from you!
- đź’¬ Discord:
@azzouzana - đź“§ Email: labs@azzouzana.com