Home/Guides/Data Hub

Soccer webhook field names

The field names ScoreCastr reads from a soccer webhook or Scoreboard OCR feed, the value formats it accepts, and what each one changes on the dashboard and scorebug.

Updated 3 min readPro

If a stadium scoreboard or another program already knows the soccer score and clock, you can send them to ScoreCastr instead of typing them. The sender has to use field names ScoreCastr reads. This page lists every soccer field, the formats it accepts and what each one changes.

Short versionPOST a JSON body to your match's Webhook URL with fields like away_score, home_score, clock, period and stoppage_time, plus stats like away_shots and away_corners. Send the clock as MM:SS or seconds. Needs the Pro plan.

Before you start

  • The Pro plan. The ScoreCastr button on the soccer Scoring tab opens the Data Hub.
  • A webhook turned on for the match: on the Scoreboard OCR tab, pick HTTP Client (Webhooks), click Enable ScoreCastr and copy the Webhook URL. See Send live data by webhook.
  • Scoreboard OCR users: see Connect Scoreboard OCR. Request format and replies: Webhook API reference.

Away means the away team from match setup; home is the home team. Field names are case sensitive. You can send only the fields that changed; anything you leave out keeps its value.

Score, clock and half

Field names What it changes Format
away_score, awayScore Away goals Number
home_score, homeScore Home goals Number
clock, time, game_clock, period_time, periodTimeLeft Match clock MM:SS, like 67:12, or seconds
period, half, currentPeriod Half 1 = 1st half, 2 = 2nd half, 3 = Full Time
stoppage_time, stoppageTime, injury_time, injuryTime, addedTime Stoppage time Minutes, like 3

Clock: send the time the clock should show. If you count up, that's the time played, so 67:12 means the 68th minute. Minutes over 59 are fine: "67:12" is read as 67 minutes and 12 seconds.

Stoppage time: a number above 0 shows the stoppage flag (+3) on the scorebug. Send 0 to hide it.

Half: send a number. A value of 3 or more shows Full Time.

Team stats

Replace away_ with home_ for the home team.

Field name (away) Stat
away_shots Shots
away_shots_on_target Shots on target
away_corners Corners
away_yellow_cards Yellow cards
away_red_cards Red cards
away_offsides Offsides
away_possession Possession, as a percentage from 0 to 100

Stats must use these snake_case names. Values that aren't numbers are skipped, and possession is kept between 0 and 100. Send both teams' possession; one doesn't fill in the other.

Fouls and saves can't be set from the webhook. Keep them on the dashboard if you track them.

Example body

{
  "away_score": 1,
  "home_score": 2,
  "clock": "67:12",
  "period": 2,
  "stoppage_time": 0,
  "away_shots": 7,
  "home_shots": 11,
  "away_corners": 3,
  "home_corners": 5,
  "away_yellow_cards": 1,
  "home_yellow_cards": 2,
  "away_possession": 44,
  "home_possession": 56
}

What the scorebug does on its own

ScoreCastr compares each update with the one before:

  • A team's score goes up by 1: the goal animation plays for that team.
  • Yellow or red cards go up: the card animation plays for that team, once per new card.

The goal animation needs the score to go up by exactly one in a single update. Send running totals, so the score climbs one goal at a time.

Fix common problems

The half shows 1ST all match. Send period (or half) as a number: 1, 2 or 3.

The clock jumps around. Let one source run the clock: the feed, or the dashboard's clock buttons, not both.

Stoppage time won't go away. Send stoppage_time as 0.

Nothing changes at all. Check the names letter for letter and that the match's method is HTTP. See the Webhook API reference.

Checklist

  • Pro plan, webhook enabled with HTTP Client (Webhooks)
  • Clock sent as the time it should show
  • Half sent as 1, 2 or 3
  • Stoppage time in minutes, 0 to hide
  • Cards and score sent as running totals
  • One source running the clock