WebHooks

Webhook Payload

Property

Type

Description

type

string

One of:

  • game.create

  • game.update

  • scoresheet.update

game

Game

 

scoresheet

Scoresheet

 



Game

id

number

Use number for presentation

number

string

Displayed game number. Defaults to id, if not otherwise set.

startTime

datetime (ISO-8601)

Scheduled game start time

endTime

datetime

Scheduled game end time

division

string

One of:

  • Initiation

  • Novice

  • Atom

  • PeeWee

  • Bantam

  • Midget

  • Juvenile

  • Junior

  • Senior

gender

string

One of:

  • Male

  • Female

  • CoEd

category

string

One of:

  • AAA

  • AA

  • A

  • B

  • Recreational

scheduleId

number

Schedule

officeId

number

Association/District/etc

homeTeamId

number

 

homeTeam

Team

 

awayTeamId

number

 

awayTeam

Team

 

arenaId

number

 

arena

Arena

 

status

string

One of:

  • Active

  • Cancelled

  • Conflict

  • Postponed

  • Rescheduled

  • Rink Changed

comments

string

Public schedule comments, used to indicate details about a status change

isApproved

boolean

If the game has been completed and scoresheet has been approved by the officials



Team

id

number

 

name

string

 

division

string

See game

gender

string

See game

category

string

See game

seasonId

string

One of:

  • 2017-18

  • 2018-19

  • 2019-20

officeId

number

 

logo

Logo

 



Arena

id

number

 

name

string

If an arena has multiple rinks, the same name is used for all arenas with different rink names

rink

string

 

address

string

 

city

string

 

officeId

number

 

 

Scoresheet

lineups

Lineup{}

Object indexed by teamId

officials

Official[]

Referees and linesmen

keepers.scorekeeper

string

Name of scorekeeper

keepers.timekeeper

string

Name of timekeeper

goals

Goal[]

 

penalties

Penalties[]

 

goalies

Goalie[]

Ordered list of goalie changes. First two are always starter goalies

startTime

datetime

Time of game start

endTime

datetime

Time the game was ended

gameTime

GameTime

Time of last goal/penalty/goalie change

notes

string

Scoresheet notes (not public)

status

string

One of:

  • scheduled

  • started

  • ended

  • approved

approvals

Approvals

End of game signatures

settings.periods

GameTime[]

Period lengths

forfeit

number

ID of team that forfeited



Lineup

teamId

number

 

members

LineupMember

 

approval

Approval

 



LineupMember

id

number

Generally unused, participantId is referenced throughout the scoresheet

participantId

number

 

participant

Participant

 

positions

string[]

One or more of:

  • F

  • C

  • D

  • G

  • Head Coach

  • Assistant Coach

  • Goaltending Coach

  • Manager

  • Trainer

  • Safety Person



Players may only have one position, team officials may have multiple

number

number

Jersey number

isAffiliate

boolean

AP

isOverage

boolean

OA

isCaptain

boolean

Captain

isAlternate

boolean

Alternate Captain

isStarter

boolean

Starter Goalie



Participant

fullName

string

 

firstName

string

 

lastName

string

 

HCRId

string

 



Official

participantId

number

 

participant

Participant

 

positions

string[]

One or more of:

  • Referee

  • Linesman

level

string

One of:

  • I

  • II

  • III

  • IV

  • V

  • VI

grade

string

Sub-classification of level, used by some associations

officeId

number

 



Goal

id

number

 

participantId

number

Scorer

assistIds

number[]

Assists

teamId

number

 

isPowerplay

boolean

Powerplay goal

isShorthanded

boolean

Shorthanded goal

isEmptyNet

boolean

Scored on empty net

isPenaltyShot

boolean

Penalty shot

isEdited

boolean

 



Penalty

id

number

 

participantId

number

Participant that was assessed the penalty

servedById

number

Player that will be serving the penalty

infraction

string

One of:

  • aggressor

  • bench-minor

  • boarding

  • body-checking

  • butt-ending

  • charging

  • checking-from-behind

  • closing-hand-on-puck

  • cross-checking

  • clipping

  • deliberate-attempt-to-injure

  • delay-of-game

  • diving

  • drop-kicking

  • elbowing

  • fighting

  • game-ejection

  • game-misconduct

  • goaltender-interference

  • grabbing-helmet

  • gross-misconduct

  • harassment-of-officials

  • head-contact

  • high-sticking

  • holding

  • holding-stick

  • hooking

  • instigator

  • illegal-equipment

  • ineligible-player

  • interference

  • jersey-tie-down

  • kick-shot

  • kicking

  • kneeing

  • leaving-penalty-bench

  • leaving-players-bench

  • leaving-crease

  • penalty-shot

  • broken-stick

  • refusing-to-start-play

  • roughing

  • roughing-after-whistle

  • slashing

  • spearing

  • throwing-stick

  • too-many-players

  • tripping

  • tripping-slewfooting

  • unsportsmanlike-conduct

  • warm-up-violation

duration

string

One of:

  • minor

  • major

  • match

  • misconduct

  • null

gameTime

GameTime

Time the penalty was assessed

startTime

GameTime

Time the player started serving the penalty

endTime

GameTime

Time the penalty stopped being served

isEnded

boolean

 

isEdited

boolean

 



Goalie

gameTime

GameTime

Time of goalie change

onParticipantId

number

Goale entering the net. If the goalie was pulled, this will be null to indicate an empty net

teamId

number

 

isStarter

boolean

Starter goalie (see lineup)



GameTime

period

string

One of:

  • 1

  • 2

  • 3

  • OT (overtime)

  • SO (shootout)

minutes

number

 

seconds

number

 



Approvals

participantId

number

 

name

string

Scorekeeper/timekeeper name

positions

string

See Official positions

signature

string

base64 image of signature

teamId

number

 



Example game:

{

  "number": "4100",

  "startTime": "2018-10-13T23:30:00.000Z",

  "endTime": "2018-10-14T02:00:00.000Z",

  "division": "Midget",

  "gender": "Male",

  "category": "AAA",

  "arenaId": 6,

  "scheduleId": 7,

  "officeId": 8,

  "homeTeamId": 2177,

  "awayTeamId": 2178,

  "status": "Active",

  "comments": null,

  "isApproved": true,

  "id": 4100,

  "arena": {

    "name": "Burnaby 8 Rinks",

    "rink": "1",

    "address": "6501 Sprott St, Burnaby, BC V5B 3B8",

    "city": "Burnaby",

    "alias": null,

    "officeId": null,

    "id": 6

  },

  "homeTeam": {

    "HCRId": "2200000",

    "name": "VANCOUVER NORTH EAST CHIEFS - MML",

    "shortName": "CHIEFS",

    "division": "Midget",

    "gender": "Male",

    "category": "AAA",

    "seasonId": "2018-19",

    "id": 2177,

    "logoId": 11,

    "officeId": 245,

    "logo": {

      "id": 11,

      "url": "https://s3-ca-central-1.amazonaws.com/hisports-logos/1537208972455.png"

    }

  },

  "awayTeam": {

    "HCRId": "2300000",

    "name": "Greater Vancouver Canadians - MML",

    "shortName": "GVC",

    "division": "Midget",

    "gender": "Male",

    "category": "AAA",

    "seasonId": "2018-19",

    "id": 2178,

    "logoId": 5,

    "officeId": 246,

    "logo": {

      "id": 5,

      "url": "https://s3-ca-central-1.amazonaws.com/hisports-logos/1537208889170.png"

    }

  }

}

 

Example scoresheet:

{

  "goals": [

    {

      "id": 9100,

      "teamId": 2177,

      "gameTime": {

        "period": "1",

        "minutes": 15,

        "seconds": 44

      },

      "isEdited": false,

      "assistIds": [

        10885,

        11651

      ],

      "isEmptyNet": false,

      "isPowerplay": false,

      "isPenaltyShot": false,

      "isShorthanded": false,

      "participantId": 15787

    },

    {

      "id": 9103,

      "teamId": 2177,

      "gameTime": {

        "period": "1",

        "minutes": 0,

        "seconds": 18

      },

      "isEdited": false,

      "assistIds": [

        15787

      ],

      "isEmptyNet": false,

      "isPowerplay": false,

      "isPenaltyShot": false,

      "isShorthanded": false,

      "participantId": 11726

    },

    {

      "id": 9106,

      "teamId": 2177,

      "gameTime": {

        "period": "2",

        "minutes": 18,

        "seconds": 48

      },

      "isEdited": false,

      "assistIds": [

        11266,

        9406

      ],

      "isEmptyNet": false,

      "isPowerplay": false,

      "isPenaltyShot": false,

      "isShorthanded": false,

      "participantId": 11798

    },

    {

      "id": 9113,

      "teamId": 2177,

      "gameTime": {

        "period": "2",

        "minutes": 14,

        "seconds": 5

      },

      "isEdited": false,

      "assistIds": [

        11798,

        11266

      ],

      "isEmptyNet": false,

      "isPowerplay": true,

      "isPenaltyShot": false,

      "isShorthanded": false,

      "participantId": 11720

    },

    {

      "id": 9118,

      "teamId": 2177,

      "gameTime": {

        "period": "2",

        "minutes": 6,

        "seconds": 33

      },

      "isEdited": false,

      "assistIds": [

        15787,

        10495

      ],

      "isEmptyNet": false,

      "isPowerplay": true,

      "isPenaltyShot": false,

      "isShorthanded": false,

      "participantId": 11426

    },

    {

      "id": 9121,

      "teamId": 2177,

      "gameTime": {

        "period": "2",

        "minutes": 0,

        "seconds": 58

      },

      "isEdited": false,

      "assistIds": [

        11798,

        9406

      ],

      "isEmptyNet": false,

      "isPowerplay": false,

      "isPenaltyShot": false,

      "isShorthanded": false,

      "participantId": 11720

    },

    {

      "id": 9132,

      "teamId": 2178,

      "gameTime": {

        "period": "1",

        "minutes": 7,

        "seconds": 1

      },

      "isEdited": false,

      "assistIds": [

        12827

      ],

      "isEmptyNet": false,

      "isPowerplay": false,

      "isPenaltyShot": false,

      "isShorthanded": false,

      "participantId": 1175

    },

    {

      "id": 9134,

      "teamId": 2178,

      "gameTime": {

        "period": "2",

        "minutes": 0,

        "seconds": 22

      },

      "isEdited": false,

      "assistIds": [],

      "isEmptyNet": false,

      "isPowerplay": false,

      "isPenaltyShot": false,

      "isShorthanded": false,

      "participantId": 1175

    },

    {

      "id": 9146,

      "teamId": 2178,

      "gameTime": {

        "period": "3",

        "minutes": 0,

        "seconds": 3

      },

      "isEdited": false,

      "assistIds": [],

      "isEmptyNet": false,

      "isPowerplay": false,

      "isPenaltyShot": false,

      "isShorthanded": false,

      "participantId": 11884

    }

  ],

  "notes": "",

  "status": "approved",

  "endTime": "2018-10-14T03:07:50.805Z",

  "forfeit": null,

  "goalies": [

    {

      "teamId": 2177,

      "gameTime": {

        "period": "1",

        "minutes": 20,

        "seconds": 0

      },

      "isStarter": true,

      "onParticipantId": 10495

    },

    {

      "teamId": 2178,

      "gameTime": {

        "period": "1",

        "minutes": 20,

        "seconds": 0

      },

      "isStarter": true,

      "onParticipantId": 5994

    },

    {

      "id": 9278,

      "teamId": 2178,

      "gameTime": {

        "period": "3",

        "minutes": 20,

        "seconds": 0

      },

      "onParticipantId": 12371

    }

  ],

  "keepers": {

    "timekeeper": "Charlie Black",

    "scorekeeper": "Charlie Black"

  },

  "lineups": {

    "2177": {

      "teamId": 2177,

      "members": [

        {

          "id": 2879,

          "number": 1,

          "isCaptain": false,

          "isOverage": false,

          "isStarter": true,

          "positions": [

            "G"

          ],

          "isAffiliate": false,

          "isAlternate": false,

          "participant": {

            "id": 10495,

            "HCRId": "1400000000000",

            "fullName": "MICHAEL HARROCH",

            "lastName": "HARROCH",

            "firstName": "MICHAEL"

          },

          "participantId": 10495

        },      ],

      "approval": {

        "teamId": 2177,

        "signature": "data:image/png;base64,iVBORw0KGgo...",

        "timestamp": "2018-10-14T02:31:11.972Z",

        "participantId": 8166

      }

    },

    "2178": {

      "teamId": 2178,

      "members": [

        {

          "id": 2463,

          "number": 7,

          "isCaptain": true,

          "isOverage": false,

          "positions": [

            "F"

          ],

          "isAffiliate": false,

          "isAlternate": false,

          "participant": {

            "id": 9566,

            "HCRId": "1400000000000",

            "fullName": "GARRETT WICKS",

            "lastName": "WICKS",

            "firstName": "GARRETT"

          },

          "participantId": 9566

        },

        {

          "id": 2465,

          "number": 30,

          "isCaptain": false,

          "isOverage": false,

          "isStarter": true,

          "positions": [

            "G"

          ],

          "isAffiliate": false,

          "isAlternate": false,

          "participant": {

            "id": 5994,

            "HCRId": "1400000000000",

            "fullName": "GEORGI WILSON",

            "lastName": "WILSON",

            "firstName": "GEORGI"

          },

          "participantId": 5994

        },

        {

          "id": 14919,

          "number": 9,

          "isCaptain": false,

          "isOverage": false,

          "positions": [

            "D"

          ],

          "isAffiliate": false,

          "isAlternate": false,

          "participant": {

            "id": 9486,

            "HCRId": "1400000000000",

            "fullName": "TYLER PRICE",

            "lastName": "PRICE",

            "firstName": "TYLER"

          },

          "participantId": 9486

        },

        {

          "id": 14918,

          "number": null,

          "isCaptain": false,

          "isOverage": false,

          "positions": [

            "Head Coach"

          ],

          "isAffiliate": false,

          "isAlternate": false,

          "participant": {

            "id": 5920,

            "HCRId": "1400000000000",

            "fullName": "PHIL ALALOUF",

            "lastName": "ALALOUF",

            "firstName": "PHIL"

          },

          "participantId": 5920

        }

      ],

      "approval": {

        "teamId": 2178,

        "signature": "data:image/png;base64,iVBORw0K...",

        "timestamp": "2018-10-13T21:27:55.229Z",

        "participantId": 6486

      }

    }

  },

  "gameTime": {

    "period": "3",

    "minutes": 0,

    "seconds": 3

  },

  "settings": {

    "periods": [

      {

        "period": "1",

        "minutes": 20,

        "seconds": 0

      },

      {

        "period": "2",

        "minutes": 20,

        "seconds": 0

      },

      {

        "period": "3",

        "minutes": 20,

        "seconds": 0

      },

      {

        "period": "OT",

        "minutes": 10,

        "seconds": 0

      }

    ]

  },

  "approvals": {

    "officials": [

      {

        "positions": [ "Referee" ],

        "signature": "data:image/png;base64,iVBORw...",

        "participantId": 3536

      },

      {

        "positions": [ "Linesman" ],

        "signature": "data:image/png;base64,iVBORw...",

        "participantId": 2661

      },

      {

        "positions": [ “Linesman" ],

        "signature": "data:image/png;base64,iVBORw...",

        "participantId": 568

      }

    ],

    "timestamp": "2019-01-04T23:22:37.594Z",

    "timekeeper": {

      "name": "Charlie Black",

      "signature": "data:image/png;base64,iVBORw0..."

    },

    "scorekeeper": {

      "name": "Charlie Black",

      "signature": "data:image/png;base64,iVBORw0..."

    }

  },

  "officials": [

    {

      "id": 1852,

      "grade": null,

      "level": "III",

      "officeId": 267,

      "positions": [

        "Referee"

      ],

      "participant": {

        "id": 3536,

        "HCRId": "1400000000000",

        "fullName": "KYLE SIMMS",

        "lastName": "SIMMS",

        "firstName": "KYLE"

      },

      "participantId": 3536

    },

    {

      "id": 1556,

      "grade": null,

      "level": "III",

      "officeId": 267,

      "positions": [

        "Linesman"

      ],

      "participant": {

        "id": 2661,

        "HCRId": "1400000000000",

        "fullName": "ANGUS MIDDLETON",

        "lastName": "MIDDLETON",

        "firstName": "ANGUS"

      },

      "participantId": 2661

    },

    {

      "id": 309,

      "grade": null,

      "level": "III",

      "officeId": 280,

      "positions": [

        "Linesman"

      ],

      "participant": {

        "id": 568,

        "HCRId": "1400000000000",

        "fullName": "GARRETT BROWN",

        "lastName": "BROWN",

        "firstName": "GARRETT"

      },

      "participantId": 568

    }

  ],

  "penalties": [

    {

      "id": 9249,

      "teamId": 2178,

      "endTime": {

        "period": "2",

        "minutes": 14,

        "seconds": 5

      },

      "isEnded": true,

      "duration": "minor",

      "gameTime": {

        "period": "2",

        "minutes": 15,

        "seconds": 8

      },

      "isEdited": false,

      "startTime": {

        "period": "2",

        "minutes": 15,

        "seconds": 8

      },

      "infraction": "head-contact",

      "servedById": 9603,

      "participantId": 9548

    },

    {

      "id": 9251,

      "teamId": 2178,

      "endTime": {

        "period": "2",

        "minutes": 4,

        "seconds": 5

      },

      "isEnded": true,

      "duration": "misconduct",

      "gameTime": {

        "period": "2",

        "minutes": 14,

        "seconds": 5

      },

      "isEdited": false,

      "startTime": {

        "period": "2",

        "minutes": 14,

        "seconds": 5

      },

      "infraction": "misconduct",

      "participantId": 9548

    }

  ],

  "startTime": "2018-10-14T02:31:17.137Z"

}