PRIVATE / LIVE FOOTBALL API
Football control room
Choose games, watch live alerts, and connect your notification service through the API.
Administrator sign-in
Only approved administrators can access these settings. No password required.
Open the email link in this browser. The link expires after 10 minutes.
Confirm your sign-in
Continue only if you requested this administrator login in this browser.
Request a new linkWaiting for sign-in…
About alert timing
This private display checks for published alerts every 5 seconds while visible. It does not start the football workers. Provider and processing delays still apply. Publication time is not event time; earlier reports may be historical. Pausing this display does not pause reporting.
Tick a game to send its new alerts to connected API clients. Changes save immediately. Enabled leagues start with all games selected.
Live games appear regardless of date. Scores refresh every 15 seconds while this screen is open. Unchecking stops future publication; alerts already delivered remain with your developer.
Generate credentials for your developer to receive automatic live notifications for selected games. A key is shown once; only its hash is stored. Approved administrators can sign in here and generate keys.
Connect your notification service
- Generate and copy a key below.
- Open
https://api-1lc3.vercel.app/v1/feed/streamfrom your server withAuthorization: Bearer YOUR_API_KEY. - Read each alert from
items[].text.short(maximum 150 characters for new alerts) and deliver it through your service. - Save each cursor after processing the full batch. Reconnect with
Last-Event-IDand deduplicate using each item'sid.
The stream starts with new alerts. Use GET /v1/feed?after=SAVED_CURSOR to catch up after a disconnect. The connection rotates regularly; reconnect automatically. Your server initiates an outbound HTTPS connection, so your private database needs no public access. Selecting matches governs future publication; previously published alerts remain in history. Keep API keys on your server.
Treat it like a password. Do not put it in a slide, screenshot, or public document.
Issued clients
Revoking a key blocks its next authenticated request. To replace a lost key, create a new one, update your client, then revoke the old one.
Choose the leagues and seasons to report automatically. No per-event approval is needed for eligible fresh events.
Enabled means selected, not proof that workers are running. Changes affect the next polling cycle. A request already in progress may finish; pausing blocks new automatic publication after the pause is saved. Previously published reports remain visible.
Add a league season
Tick the major leagues you want to report. Their API-Football IDs are filled in automatically.
New selections begin automatic reporting after confirmation. API-Football coverage for each league and season is not verified here; check provider coverage before relying on alerts. More selected leagues can use more of your shared API allowance.
Manage configured leagues
Advanced: add another league by ID
For leagues not in the checklist, use the API-Football league ID and season start year. This form adds the league paused; enable it above when ready. It does not verify provider coverage.
League change history (latest 50)
Only addresses approved for administrator sign-in can receive match alerts. An address listed here does not itself grant sign-in access.
Email sending requires the separate worker, which is not yet enabled. Editing, disabling or removing an address cancels its remaining queued alerts, except a send already in progress.
Add an administrator inbox
Change history
Latest 100 changes, including previous addresses.
More tools
Open a category only when you need deeper operational or technical information.
Platform status and data
Loading operational data…
This snapshot uses this admin app's configured database and Redis. It does not verify that another deployment uses the same connections.
Background workers
A recent signal is evidence of activity, not proof every job succeeded. No recent signal can mean stopped, disconnected, or between polls.
Football API allowance
Leagues being tracked
Recent data fetches
A successful fetch with zero matches is not an error. It does not prove there are no matches outside the checked window.
Latest fixtures
Latest 20 stored fixtures by kickoff time—not a full schedule.
Recent generated content
Latest 20 previews. Viewing this page does not generate or publish anything.
Historical and withheld reports
Fresh eligible events from enabled leagues publish automatically; routine reporting needs no approval. Historical imports, delayed or unverified events, and existing drafts stay out of the live feed. The optional manual action below publishes the exact text and cannot be undone here; it is not required for live reporting.
Manual publication history
Email delivery history
Latest 50 deliveries. Accepted means Resend accepted the request, not confirmed inbox delivery. Pending can mean the sender is stopped or waiting to retry.