Real-Time Sports Scores w/ TeamTracker and TeamTracker-Card (Beta)

I thought I would post this here for everyone to use/comment/change as you please.
I created a Dashboard Side Panel that uses decluttering and tabbed cards for all NHL, MLB, NFL standings and PRE, IN and POST stat views (sorry NBA fans!)

It uses three main REST sensors to get the overall stats and then template sensors for each conference. Of course it uses teamtracker for individual teams for each of the sports, not posted here.

Some examples:

NHL Standings by Division:

NHL Standings Overall:

NHL Pregame:

The sensors are defines in my included sensor.yaml as follows. Note that I also set seasontype in the query to “2” to get the regular season. This is not built for pre-season although it could be easily done if you wanted pre-season stats.

###
### Divisional Stats
###
- platform: rest
  scan_interval: 36000
  name: NHL Standings
  unique_id: sensor.nhl_standings
  resource: https://site.web.api.espn.com/apis/v2/sports/hockey/nhl/standings?seasontype=2&type=0&level=3
  value_template: "{{ now() }}"
  json_attributes:
      - children

- platform: rest
  scan_interval: 36000
  name: MLB Standings
  unique_id: sensor.mlb_standings
  resource: https://site.web.api.espn.com/apis/v2/sports/baseball/mlb/standings?seasontype=2&type=0&level=3
  value_template: "{{ now() }}"
  json_attributes:
      - children

- platform: rest
  scan_interval: 36000
  name: NFL Standings
  unique_id: sensor.nfl_standings
  resource: https://site.web.api.espn.com/apis/v2/sports/football/nfl/standings?seasontype=2&type=0&level=3
  value_template: "{{ now() }}"
  json_attributes:
      - children

The template sensors are defined in my included template.yaml as:

###
### MLB Divisions
###
  - name: MLB American East
    unique_id: sensor.mlb_american_east
    state: "{{ now() }}"
    attributes:
        entries: "{{ state_attr('sensor.mlb_standings','children')[0]['children'][0]['standings']['entries'] }}"
  - name: MLB American Central
    unique_id: sensor.mlb_american_central
    state: "{{ now() }}"
    attributes:
        entries: "{{ state_attr('sensor.mlb_standings','children')[0]['children'][1]['standings']['entries'] }}"
  - name: MLB American West
    unique_id: sensor.mlb_american_west
    state: "{{ now() }}"
    attributes:
        entries: "{{ state_attr('sensor.mlb_standings','children')[0]['children'][2]['standings']['entries'] }}"
  - name: MLB National East
    unique_id: sensor.mlb_national_east
    state: "{{ now() }}"
    attributes:
        entries: "{{ state_attr('sensor.mlb_standings','children')[1]['children'][0]['standings']['entries'] }}"
  - name: MLB National Central
    unique_id: sensor.mlb_national_central
    state: "{{ now() }}"
    attributes:
        entries: "{{ state_attr('sensor.mlb_standings','children')[1]['children'][1]['standings']['entries'] }}"
  - name: MLB National West
    unique_id: sensor.mlb_national_west
    state: "{{ now() }}"
    attributes:
        entries: "{{ state_attr('sensor.mlb_standings','children')[1]['children'][2]['standings']['entries'] }}"
###
### NHL Divisions
###
  - name: NHL East Atlantic
    unique_id: sensor.nhl_east_atlantic
    state: "{{ now() }}"
    attributes:
      entries: "{{ state_attr('sensor.nhl_standings','children')[0]['children'][0]['standings']['entries'] }}"
  - name: NHL East Metropolitan
    unique_id: sensor.nhl_east_metropolitan
    state: "{{ now() }}"
    attributes:
      entries: "{{ state_attr('sensor.nhl_standings','children')[0]['children'][1]['standings']['entries'] }}"
  - name: NHL West Central
    unique_id: sensor.nhl_west_central
    state: "{{ now() }}"
    attributes:
      entries: "{{ state_attr('sensor.nhl_standings','children')[1]['children'][0]['standings']['entries'] }}"
  - name: NHL West Pacific
    unique_id: sensor.nhl_west_pacific
    state: "{{ now() }}"
    attributes:
      entries: "{{ state_attr('sensor.nhl_standings','children')[1]['children'][1]['standings']['entries'] }}"
###
### NFL Divisions
###
  - name: NFL AFC East
    unique_id: sensor.nfl_afc_east
    state: "{{ now() }}"
    attributes:
        entries: "{{ state_attr('sensor.nfl_standings','children')[0]['children'][0]['standings']['entries'] }}"
  - name: NFL AFC North
    unique_id: sensor.nfl_afc_north
    state: "{{ now() }}"
    attributes:
        entries: "{{ state_attr('sensor.nfl_standings','children')[0]['children'][1]['standings']['entries'] }}"
  - name: NFL AFC South
    unique_id: sensor.nfl_afc_south
    state: "{{ now() }}"
    attributes:
        entries: "{{ state_attr('sensor.nfl_standings','children')[0]['children'][2]['standings']['entries'] }}"
  - name: NFL AFC West
    unique_id: sensor.nfl_afc_west
    state: "{{ now() }}"
    attributes:
        entries: "{{ state_attr('sensor.nfl_standings','children')[0]['children'][3]['standings']['entries'] }}"
  - name: NFL NFC East
    unique_id: sensor.nfl_nfc_east
    state: "{{ now() }}"
    attributes:
        entries: "{{ state_attr('sensor.nfl_standings','children')[1]['children'][0]['standings']['entries'] }}"
  - name: NFL NFC North
    unique_id: sensor.nfl_nfc_north
    state: "{{ now() }}"
    attributes:
        entries: "{{ state_attr('sensor.nfl_standings','children')[1]['children'][1]['standings']['entries'] }}"
  - name: NFL NFC South
    unique_id: sensor.nfl_nfc_south
    state: "{{ now() }}"
    attributes:
        entries: "{{ state_attr('sensor.nfl_standings','children')[1]['children'][2]['standings']['entries'] }}"
  - name: NFL NFC West
    unique_id: sensor.nfl_nfc_west
    state: "{{ now() }}"
    attributes:
        entries: "{{ state_attr('sensor.nfl_standings','children')[1]['children'][3]['standings']['entries'] }}"

And the whole dashboard is like this:

decluttering_templates:
  nhl_settings:
    card:
      type: custom:flex-table-card
      title: '[[title]]'
      css:
        table+: 'padding: 0px'
        tbody tr td:first-child: 'width: 20%;'
        tbody tr td:nth-child(n+2): 'width: 5%;'
        tbody tr:hover: 'background-color: lightgreen!important;'
        tbody tr td:nth-child(6): 'background-color: #E3F5D4;'
      card_mod:
        style:
          $: |
            .card-header {
               padding: 12px 0px 8px 4px!important;
               font-size: 16px!important;
               line-height: 18px!important;
               font-weight: bold!important;
             }
      entities:
        include: '[[entity]]'
      sort_by: entries-
      columns:
        - hidden: true
          data: entries
          modify: x.stats[6].value
        - name: Team
          data: entries
          modify: x.team.displayName
        - name: GP
          data: entries
          modify: x.stats[3].displayValue
        - name: W
          data: entries
          modify: x.stats[10].displayValue
        - name: L
          data: entries
          modify: x.stats[4].displayValue
        - name: OTL
          data: entries
          modify: x.stats[11].displayValue
        - name: PTS
          data: entries
          modify: x.stats[6].displayValue
        - name: RW
          data: entries
          modify: x.stats[14].displayValue
        - name: ROW
          data: entries
          modify: x.stats[15].displayValue
        - name: SOW
          data: entries
          modify: x.stats[17].displayValue
        - name: SOL
          data: entries
          modify: x.stats[16].displayValue
        - name: HOME
          data: entries
          modify: x.stats[19].displayValue
        - name: AWAY
          data: entries
          modify: x.stats[20].displayValue
        - name: GF
          data: entries
          modify: x.stats[8].displayValue
        - name: GA
          data: entries
          modify: x.stats[7].displayValue
        - name: DIFF
          data: entries
          modify: x.stats[13].displayValue
        - name: L10
          data: entries
          modify: x.stats[21].summary
        - name: STRK
          data: entries
          modify: x.stats[9].displayValue
  mlb_settings:
    card:
      type: custom:flex-table-card
      title: '[[title]]'
      css:
        table+: 'padding: 0px'
        tbody tr td:first-child: 'width: 20%;'
        tbody tr td:nth-child(n+2): 'width: 5%;'
        tbody tr:hover: 'background-color: lightgreen!important;'
        tbody tr td:nth-child(6): 'background-color: #E3F5D4;'
      card_mod:
        style:
          $: |
            .card-header {
               padding: 12px 0px 8px 4px!important;
               font-size: 16px!important;
               line-height: 18px!important;
               font-weight: bold!important;
             }
      entities:
        include: '[[entity]]'
      sort_by: entries-
      columns:
        - hidden: true
          data: entries
          modify: x.stats[16].value
        - name: Team
          data: entries
          modify: x.team.displayName
        - name: GP
          data: entries
          modify: x.stats[7].displayValue
        - name: W
          data: entries
          modify: x.stats[17].displayValue
        - name: L
          data: entries
          modify: x.stats[9].displayValue
        - name: T
          data: entries
          modify: x.stats[15].displayValue
        - name: PCT
          data: entries
          modify: x.stats[16].displayValue
        - name: GB
          data: entries
          modify: x.stats[6].displayValue
        - name: PS
          data: entries
          modify: x.stats[10].displayValue
        - name: HOME
          data: entries
          modify: x.stats[33].displayValue
        - name: AWAY
          data: entries
          modify: x.stats[34].displayValue
        - name: RS
          data: entries
          modify: x.stats[13].displayValue
        - name: RA
          data: entries
          modify: x.stats[12].displayValue
        - name: DIFF
          data: entries
          modify: x.stats[27].displayValue
        - name: L10
          data: entries
          modify: x.stats[37].summary
        - name: STRK
          data: entries
          modify: x.stats[14].displayValue
  nfl_settings:
    card:
      type: custom:flex-table-card
      title: '[[title]]'
      css:
        table+: 'padding: 0px'
        tbody tr td:first-child: 'width: 2%;'
        tbody tr td:nth-child(2): 'width: 20%;'
        tbody tr td:nth-child(n+3): 'width: 6%;'
        tbody tr:hover: 'background-color: lightgreen!important;'
        tbody tr td:nth-child(7): 'background-color: #E3F5D4;'
      card_mod:
        style:
          $: |
            .card-header {
               padding: 12px 0px 8px 4px!important;
               font-size: 16px!important;
               line-height: 18px!important;
               font-weight: bold!important;
             }
      sort_by: entries-
      entities:
        include: '[[entity]]'
      columns:
        - hidden: true
          data: entries
          modify: x.stats[9].displayValue
        - name: C
          data: entries
          modify: x.stats[0].displayValue
        - name: Team
          data: entries
          modify: x.team.displayName
        - name: GP
          data: entries
          modify: x.stats[10].value + x.stats[3].value + x.stats[8].value
        - name: W
          data: entries
          modify: x.stats[10].displayValue
        - name: L
          data: entries
          modify: x.stats[3].displayValue
        - name: T
          data: entries
          modify: x.stats[8].displayValue
        - name: PCT
          data: entries
          modify: x.stats[9].displayValue
        - name: HOME
          data: entries
          modify: x.stats[16].displayValue
        - name: AWAY
          data: entries
          modify: x.stats[17].displayValue
        - name: DIV
          data: entries
          modify: x.stats[18].displayValue
        - name: CONF
          data: entries
          modify: x.stats[19].displayValue
        - name: PF
          data: entries
          modify: x.stats[6].displayValue
        - name: PA
          data: entries
          modify: x.stats[5].displayValue
        - name: DIFF
          data: entries
          modify: x.stats[1].displayValue
        - name: STRK
          data: entries
          modify: x.stats[7].displayValue
  game_stats:
    card:
      type: custom:auto-entities
      unique: true
      show_empty: false
      card:
        type: custom:layout-card
        layout_type: masonry
      card_param: cards
      filter:
        template: |
          {%- for team in integration_entities("teamtracker") -%}
            {%- if state_attr(team, "league") == "[[sport]]" -%}
            {%- if states(team) == "[[status]]" -%}
            {%- if state_attr(team, "team_homeaway") == "home" -%}
              {{{"type": "custom:teamtracker-card",
                "entity": team }}},
            {%- endif -%}
            {%- endif -%}
            {%- endif -%}
          {%- endfor -%}
        exclude:
          - entity_id: '*team_tracker*'
      sort:
        method: attribute
        attribute: date
views:
  - theme: Backend-selected
    title: Sports
    type: panel
    icon: mdi:strategy
    badges: []
    cards:
      - type: custom:tabbed-card
        styles:
          '--mdc-theme-primary': green
          '--mdc-tab-text-label-color-default': gray
          '--mdc-typography-button-font-size': 12px
        tabs:
          - attributes:
              label: NHL Standings
              icon: mdi:ballot
            card:
              type: custom:tabbed-card
              styles:
                '--mdc-theme-primary': green
                '--mdc-tab-text-label-color-default': gray
                '--mdc-typography-button-font-size': 12px
              tabs:
                - attributes:
                    label: Divisional
                  card:
                    type: custom:stack-in-card
                    mode: vertical
                    cards:
                      - type: custom:decluttering-card
                        template: nhl_settings
                        variables:
                          - title: Eastern Atlantic
                          - entity: sensor.nhl_east_atlantic
                      - type: custom:decluttering-card
                        template: nhl_settings
                        variables:
                          - title: Eastern Metropolitan
                          - entity: sensor.nhl_east_metropolitan
                      - type: custom:decluttering-card
                        template: nhl_settings
                        variables:
                          - title: West Central
                          - entity: sensor.nhl_west_central
                      - type: custom:decluttering-card
                        template: nhl_settings
                        variables:
                          - title: West Pacific
                          - entity: sensor.nhl_west_pacific
                - attributes:
                    label: Conference
                  card:
                    type: custom:stack-in-card
                    mode: vertical
                    cards:
                      - type: custom:decluttering-card
                        template: nhl_settings
                        variables:
                          - title: Eastern
                          - entity: sensor.nhl_east_*
                      - type: custom:decluttering-card
                        template: nhl_settings
                        variables:
                          - title: Western
                          - entity: sensor.nhl_west_*
                - attributes:
                    label: Overall
                  card:
                    type: custom:decluttering-card
                    template: nhl_settings
                    variables:
                      - title: Overall
                      - entity: sensor.nhl_*_*
          - attributes:
              label: NHL Postgame
              icon: mdi:hockey-sticks
            card:
              type: custom:decluttering-card
              template: game_stats
              variables:
                - sport: NHL
                - status: POST
          - attributes:
              label: NHL Live
              icon: mdi:hockey-puck
            card:
              type: custom:decluttering-card
              template: game_stats
              variables:
                - sport: NHL
                - status: IN
          - attributes:
              label: NHL Pregame
              icon: mdi:blood-bag
            card:
              type: custom:decluttering-card
              template: game_stats
              variables:
                - sport: NHL
                - status: PRE
          - attributes:
              label: MLB Standings
              icon: mdi:ballot
            card:
              type: custom:tabbed-card
              styles:
                '--mdc-theme-primary': green
                '--mdc-tab-text-label-color-default': gray
                '--mdc-typography-button-font-size': 12px
              tabs:
                - attributes:
                    label: Divisional
                  card:
                    type: custom:stack-in-card
                    mode: vertical
                    cards:
                      - type: custom:decluttering-card
                        template: mlb_settings
                        variables:
                          - title: American League East
                          - entity: sensor.mlb_american_east
                      - type: custom:decluttering-card
                        template: mlb_settings
                        variables:
                          - title: American League Central
                          - entity: sensor.mlb_american_central
                      - type: custom:decluttering-card
                        template: mlb_settings
                        variables:
                          - title: American League West
                          - entity: sensor.mlb_american_west
                      - type: custom:decluttering-card
                        template: mlb_settings
                        variables:
                          - title: National League East
                          - entity: sensor.mlb_national_east
                      - type: custom:decluttering-card
                        template: mlb_settings
                        variables:
                          - title: National League Central
                          - entity: sensor.mlb_national_central
                      - type: custom:decluttering-card
                        template: mlb_settings
                        variables:
                          - title: National League West
                          - entity: sensor.mlb_national_west
                - attributes:
                    label: Conference
                  card:
                    type: custom:stack-in-card
                    mode: vertical
                    cards:
                      - type: custom:decluttering-card
                        template: mlb_settings
                        variables:
                          - title: Americal League
                          - entity: sensor.mlb_american_*
                      - type: custom:decluttering-card
                        template: mlb_settings
                        variables:
                          - title: National League
                          - entity: sensor.mlb_national_*
                - attributes:
                    label: Overall
                  card:
                    type: custom:decluttering-card
                    template: mlb_settings
                    variables:
                      - title: Overall
                      - entity: sensor.mlb_*_*
          - attributes:
              label: MLB Postgame
              icon: mdi:baseball
            card:
              type: custom:decluttering-card
              template: game_stats
              variables:
                - sport: MLB
                - status: POST
          - attributes:
              label: MLB Live
              icon: mdi:baseball-bat
            card:
              type: custom:decluttering-card
              template: game_stats
              variables:
                - sport: MLB
                - status: IN
          - attributes:
              label: MLB Pregame
              icon: mdi:baseball-diamond
            card:
              type: custom:decluttering-card
              template: game_stats
              variables:
                - sport: MLB
                - status: PRE
          - attributes:
              label: NFL Standings
              icon: mdi:ballot
            card:
              type: custom:tabbed-card
              styles:
                '--mdc-theme-primary': green
                '--mdc-tab-text-label-color-default': gray
                '--mdc-typography-button-font-size': 12px
              tabs:
                - attributes:
                    label: Divisional
                  card:
                    type: custom:stack-in-card
                    mode: vertical
                    cards:
                      - type: custom:decluttering-card
                        template: nfl_settings
                        variables:
                          - title: American Football Conference East
                          - entity: sensor.nfl_afc_east
                      - type: custom:decluttering-card
                        template: nfl_settings
                        variables:
                          - title: American Football Conference North
                          - entity: sensor.nfl_afc_north
                      - type: custom:decluttering-card
                        template: nfl_settings
                        variables:
                          - title: American Football Conference South
                          - entity: sensor.nfl_afc_south
                      - type: custom:decluttering-card
                        template: nfl_settings
                        variables:
                          - title: American Football Conference West
                          - entity: sensor.nfl_afc_west
                      - type: custom:decluttering-card
                        template: nfl_settings
                        variables:
                          - title: National Football Conference East
                          - entity: sensor.nfl_nfc_east
                      - type: custom:decluttering-card
                        template: nfl_settings
                        variables:
                          - title: National Football Conference North
                          - entity: sensor.nfl_nfc_north
                      - type: custom:decluttering-card
                        template: nfl_settings
                        variables:
                          - title: National Football Conference South
                          - entity: sensor.nfl_nfc_south
                      - type: custom:decluttering-card
                        template: nfl_settings
                        variables:
                          - title: National Football Conference West
                          - entity: sensor.nfl_nfc_west
                - attributes:
                    label: Conference
                  card:
                    type: custom:stack-in-card
                    mode: vertical
                    cards:
                      - type: custom:decluttering-card
                        template: nfl_settings
                        variables:
                          - title: American Football Conference
                          - entity: sensor.nfl_afc_*
                      - type: custom:decluttering-card
                        template: nfl_settings
                        variables:
                          - title: National Football Conference
                          - entity: sensor.nfl_nfc_*
                - attributes:
                    label: Overall
                  card:
                    type: custom:decluttering-card
                    template: nfl_settings
                    variables:
                      - title: Overall
                      - entity: sensor.nfl_*_*
          - attributes:
              label: NFL Postgame
              icon: mdi:football-helmet
            card:
              type: custom:decluttering-card
              template: game_stats
              variables:
                - sport: NFL
                - status: POST
          - attributes:
              label: NFL Live
              icon: mdi:football
            card:
              type: custom:decluttering-card
              template: game_stats
              variables:
                - sport: NFL
                - status: IN
          - attributes:
              label: NFL Pregame
              icon: mdi:strategy
            card:
              type: custom:decluttering-card
              template: game_stats
              variables:
                - sport: MLB
                - status: PRE
title: Sports Scores

Big thanks to @Ildar_Gabdullin for assistance in this, sorry for pestering until I understod how things work in flex-table. And I have to say I am now in process of moving many things to use decluttering. That dashboard would have 20 times the lines of code without it.

2 Likes

I got the standings and stats working, however I can’t get the PRE, IN, and POST to show anything. Where did you define these sensors? I found the post here: Real-Time Sports Scores w/ TeamTracker and TeamTracker-Card (Beta) - #230 by kbrown01 but it’s still not showing me anything in the games tabs and I have a red circle exclamation mark with no text (sort of indicating an error in the dashboard code)
I fixed this. Not only was I missing the custom card layout-card, there was also an incorrect double quote character around the custom:teamtracker-card on line 237. Also the NFL Pregame tab was showing MLB Pregame because the decluttering card had MLB for the sport.

Also, is there a way to make the table dynamic in size or allow horizontal scrolling? on the HA Mobile App the right columns (example: on NHL anything after ‘SOL’) get cut off and there’s no way to view anything after that.

Something like this for scrolling (partial snip from top of decluttering_templates for one of the flex tables):

decluttering_templates:
  nhl_settings:
    card:
      type: custom:flex-table-card
      title: '[[title]]'
      css:
        table+: 'padding: 0px; width: 1600px;'
        tbody tr td:first-child: 'width: 20%;'
        tbody tr td:nth-child(n+2): 'width: 5%;'
        tbody tr:hover: 'background-color: lightgreen!important;'
        tbody tr td:nth-child(6): 'background-color: #E3F5D4;'
      card_mod:
        style: |
          ha-card {
              overflow: auto;
            }
          $: |
            .card-header {
               padding: 12px 0px 8px 4px!important;
               font-size: 16px!important;
               line-height: 18px!important;
               font-weight: bold!important;
             }

So adding a fixed table width (you pick what you like for PC dashboard) and then adding overflow:auto on the ha-card itself. This will allow you to scroll the table left/right.

As for the other issues, I will take a look and be sure all is good. I was creating a Git with all the sensors and dashboard view over the next day (while I added NBA too).

Hmmm, that didn’t work. The fixed width worked, but the overflow: auto did not, I still can’t scroll horizontally. I’ll mess around with the code a bit and see if I can get it to scroll.

What platform? Works on my Windows PC in Chrome and Edge and my Android using Chrome.

Windows 10, chrome. Also tried on the HA mobile app for iOS. I did clear cache and refresh the page.

Not sure, works for me. Here is PC Window shrank which pops the scroll bar:

Here is view scrolled on my Android phone (only top table in multiple stats):

I have put everything I have out on GITHUB. You will find all the rest, template and teamtracker sensors for NFL, NHL, MLB and NBA along with the PRE, IN, POST views in a tabbed Dashboard.

Looking for someone that wants to help do the last missing piece! a PLAYOFF/WILDCARD type view under standings. I have yet to implement that yet.

Leave comments on GITHUB or here.

I don’t know why it didn’t work before, but I just copied the dashboard from your repo and horizontal scrolling is working.

One suggestion I might make is on the team tracker card, since most sports (at least the 4 major North American sports) list the home team on the right, add the option to do so where it generates the team tracker card. {{{"type": "custom:teamtracker-card", "entity": team, "home_side": "right" }}}

@kbrown01 Very nice work! This probably deserves its own thread with a link to it from here.

The questions and troubleshooting are different enough that separating them out will likely make both easier to follow. If you post the link to the thread here, I’ll include it in the Wiki as well.

I have install all extra cards in put the code in the sonsor.yaml and template.yaml.

But if I put the code into the dasboard, I got this error:

Configuration error detected:
No type specified.

I take the code from the dasboard.yaml from the github

What I make wrong?

Did you create an empty side dashboard? If yes then you need to manage the full YAML by selecting the “Raw configuration editor”.

That code should paste in there. It is important that you create an empty Dashboard and do not replace your main one. This would destroy your existing dashboard if you did wipe that out.

An empty dashboard is much easier to work with and would appear in your side bar.

I will do so, I just noticed an issue this AM not sure how to address. Because Boston already cliched a playoff sport, ESPN added a field to their entry called “clincher” which throws off all the indexes for their team only.

How dumb of ESPN. You would have thought they would have added that to every team, not just one. I will take a look at solving that first.

I will need to convert all the templates to use “find” as in:

        - name: OTL
          data: entries
          modify: x.stats.find(y=>y.shortDisplayName == 'OTL').displayValue

This way, as long as they do not change the shortDisplayName, it will always pick the right data

1 Like

perfect, now I don´t get an error :blush:

But if I click on “Devisional” the are only headlines:

I have the following code in my configuration.yaml:

  - binary_sensor:
    - name: NHL East Atlantic
      unique_id: sensor.nhl_east_atlantic
      state: "{{ now() }}"
      attributes:
        entries: "{{ state_attr('sensor.nhl_standings','children')[0]['children'][0]['standings']['entries'] }}"
    - name: NHL East Metropolitan
      unique_id: sensor.nhl_east_metropolitan
      state: "{{ now() }}"
      attributes:
        entries: "{{ state_attr('sensor.nhl_standings','children')[0]['children'][1]['standings']['entries'] }}"
    - name: NHL West Central
      unique_id: sensor.nhl_west_central
      state: "{{ now() }}"
      attributes:
        entries: "{{ state_attr('sensor.nhl_standings','children')[1]['children'][0]['standings']['entries'] }}"
    - name: NHL West Pacific
      unique_id: sensor.nhl_west_pacific
      state: "{{ now() }}"
      attributes:
        entries: "{{ state_attr('sensor.nhl_standings','children')[1]['children'][1]['standings']['entries'] }}"

and in sensors.yaml:

  - platform: rest
    scan_interval: 36000
    name: NHL Standings
    unique_id: sensor.nhl_standings
    resource: https://site.web.api.espn.com/apis/v2/sports/hockey/nhl/standings?seasontype=2&type=0&level=3
    value_template: "{{ now() }}"
    json_attributes:
        - children

Did you reload entities?

Developer tools → YAML → Rest Entities
Then reload Template Entities.

It likely has not reached out for the stats yet unless you restart or reload.
Note I am looking at changes because ESPN changed the field order last night which broke NHL Standings for Boston only but throws off other things too

I have reastart homeassistent complet.

But now I try reload “rest entities” and then reload “template entities”.

Also check in the developer states too, search for nhl and see if the main sensor was even created and if so, does it have attribute ‘children’

I have now check the states.
Here are some examples from the attributes of NHL East Atlantic:

entries:
  - team:
      id: '1'
      uid: s:70~l:90~t:1
      location: Boston
      name: Bruins
      abbreviation: BOS
      displayName: Boston Bruins
      shortDisplayName: Bruins
      isActive: true
      logos:
        - href: https://a.espncdn.com/i/teamlogos/nhl/500/scoreboard/bos.png
          width: 500
          height: 500
          alt: ''
          rel:
            - full
            - scoreboard
          lastUpdated: 2018-06-05T12:12Z
        - href: https://a.espncdn.com/i/teamlogos/nhl/500-dark/scoreboard/bos.png
          width: 500
          height: 500
          alt: ''
          rel:
            - full
            - scoreboard
            - dark
          lastUpdated: 2018-06-05T12:12Z
      links:
        - language: en-US
          rel:
            - clubhouse
            - desktop
            - team
          href: http://www.espn.com/nhl/team/_/name/bos/boston-bruins
          text: Clubhouse
          shortText: Clubhouse
          isExternal: false
          isPremium: false
        - language: en-US
          rel:
            - clubhouse
            - mobile
            - team
          href: http://m.espn.com/nhl/clubhouse?teamId=1
          text: Clubhouse
          shortText: Clubhouse
          isExternal: false
          isPremium: false
    stats:
      - name: otLosses
        displayName: Overtime Losses
        shortDisplayName: OTL
        description: Number of Overtime Losses
        abbreviation: OTL
        type: otlosses
        value: 5
        displayValue: '5'
      - name: clincher
        displayName: Clincher
        shortDisplayName: CLINCH
        description: Clinched Playoff Berth
        abbreviation: CLINCH
        type: clincher
        value: 2
        displayValue: x
      - name: differential
        displayName: Average Point Differential
        shortDisplayName: DIFF
        description: Average Point Differential
        abbreviation: DIFF
        type: differential
        value: 1.6999999999999997
        displayValue: '+1.7'
      - name: gamesBehind
        displayName: Games Back
        shortDisplayName: GB
        description: Games Back
        abbreviation: GB
        type: gamesbehind
        value: 0
        displayValue: '-'
      - name: gamesPlayed
        displayName: Games Played
        shortDisplayName: GP
        description: Games Played
        abbreviation: GP
        type: gamesplayed
        value: 64
        displayValue: '64'
      - name: losses
        displayName: Losses
        shortDisplayName: L
        description: Losses
        abbreviation: L
        type: losses
        value: 9
        displayValue: '9'
      - name: playoffSeed
        displayName: Position
        shortDisplayName: POS
        description: Projected seed in the NBA Playoffs, according to BPI
        abbreviation: SEED
        type: playoffseed
        value: 1
        displayValue: '1'
      - name: points
        displayName: Points
        shortDisplayName: PTS
        description: Total Points
        abbreviation: PTS
        type: points
        value: 105
        displayValue: '105'
      - name: pointsAgainst
        displayName: Goals Against
        shortDisplayName: GA
        description: Goals Against
        abbreviation: GA
        type: pointsagainst
        value: 137
        displayValue: '137'
      - name: pointsFor
        displayName: Goals For
        shortDisplayName: GF
        description: Goals For
        abbreviation: GF
        type: pointsfor
        value: 242
        displayValue: '242'
      - name: streak
        displayName: Streak
        shortDisplayName: STRK
        description: Current Streak
        abbreviation: STRK
        type: streak
        value: 1
        displayValue: W1
      - name: winPercent
        displayName: Win Percentage
        shortDisplayName: PCT
        description: Winning Percentage
        abbreviation: PCT
        type: winpercent
        value: 0.8203125
        displayValue: '.820'
      - name: wins
        displayName: Wins
        shortDisplayName: W
        description: Wins
        abbreviation: W
        type: wins
        value: 50
        displayValue: '50'
      - name: overtimeLosses
        displayName: Overtime Losses
        shortDisplayName: OT Losses
        description: Number of Overtime Losses
        abbreviation: OTL
        type: overtimelosses
        value: 5
        displayValue: '5'
      - name: overtimeWins
        displayName: Overtime Wins
        shortDisplayName: OTW Wins
        description: Number Overtime Wins
        abbreviation: OTW
        type: overtimewins
        value: 7
        displayValue: '7'
      - name: penaltyKillPct
        displayName: Penalty Kill Percentage
        shortDisplayName: Penalty Kill Percentage
        description: Percentage of penalties killed.
        abbreviation: PK%
        type: penaltykillpct
        value: 86.321
        displayValue: '86.3'
      - name: pointsDiff
        displayName: Goal Differential
        shortDisplayName: DIFF
        description: Goal Differential
        abbreviation: DIFF
        type: pointsdiff
        value: 105
        displayValue: '+105'
      - name: powerPlayPct
        displayName: Power Play %
        shortDisplayName: Power Play Percentage
        description: Percentage of power play scored on.
        abbreviation: PP%
        type: powerplaypct
        value: 23.041
        displayValue: '23.0'
      - name: regWins
        displayName: Regulation Wins
        shortDisplayName: RW
        description: Number of Regulation Wins
        abbreviation: RW
        type: regwins
        value: 43
        displayValue: '43'
      - name: rotWins
        displayName: Regulation and Overtime Wins
        shortDisplayName: ROW Wins
        description: Number of Regulation and Overtime Wins
        abbreviation: ROW
        type: rotwins
        value: 48
        displayValue: '48'
      - name: shootoutLosses
        displayName: Shootout Losses
        shortDisplayName: SOL
        description: Shootout Losses
        abbreviation: SOL
        type: shootoutlosses
        value: 3
        displayValue: '3'
      - name: shootoutWins
        displayName: Shootout Wins
        shortDisplayName: SOW
        description: Shootout Wins
        abbreviation: SOW
        type: shootoutwins
        value: 2
        displayValue: '2'
      - id: '0'
        name: overall
        abbreviation: TOTAL
        displayName: Team Season Record
        shortDisplayName: Season
        description: Overall Record
        type: total
        summary: 50-9-5
        displayValue: 50-9-5, 105 PTS
      - id: '2'
        name: Home
        abbreviation: HOME
        displayName: Home
        shortDisplayName: HOME
        description: Home Record
        type: home
        summary: 27-3-3
        displayValue: 27-3-3
      - id: '3'
        name: Road
        abbreviation: AWAY
        displayName: Away
        shortDisplayName: AWAY
        description: Away Record
        type: road
        summary: 23-6-2
        displayValue: 23-6-2
      - id: '5'
        name: Last Ten Games
        abbreviation: L10
        displayName: Last Ten Games
        shortDisplayName: L10
        description: Record last 10 games
        type: lasttengames
        summary: 9-1-0
        displayValue: 9-1-0, 0 PTS
      - id: '6'
        name: vs. Div.
        abbreviation: DIV
        type: vsdiv
        summary: 12-4-3
        displayValue: 12-4-3, 0 PTS
  - team:
      id: '21'
      uid: s:70~l:90~t:21
      location: Toronto
      name: Maple Leafs
      abbreviation: TOR
      displayName: Toronto Maple Leafs
      shortDisplayName: Maple Leafs
      isActive: true
      logos:
        - href: https://a.espncdn.com/i/teamlogos/nhl/500/scoreboard/tor.png
          width: 500
          height: 500
          alt: ''
          rel:
            - full
            - scoreboard
          lastUpdated: 2018-06-05T12:12Z
        - href: https://a.espncdn.com/i/teamlogos/nhl/500-dark/scoreboard/tor.png
          width: 500
          height: 500
          alt: ''
          rel:
            - full
            - scoreboard
            - dark
          lastUpdated: 2018-06-05T12:12Z
      links:
        - language: en-US
          rel:
            - clubhouse
            - desktop
            - team
          href: http://www.espn.com/nhl/team/_/name/tor/toronto-maple-leafs
          text: Clubhouse
          shortText: Clubhouse
          isExternal: false
          isPremium: false
        - language: en-US
          rel:
            - clubhouse
            - mobile
            - team
          href: http://m.espn.com/nhl/clubhouse?teamId=21
          text: Clubhouse
          shortText: Clubhouse
          isExternal: false
          isPremium: false
    stats:
      - name: otLosses
        displayName: Overtime Losses
        shortDisplayName: OTL
        description: Number of Overtime Losses
        abbreviation: OTL
        type: otlosses
        value: 8
        displayValue: '8'
      - name: differential
        displayName: Average Point Differential
        shortDisplayName: DIFF
        description: Average Point Differential
        abbreviation: DIFF
        type: differential
        value: 0.6999999999999997
        displayValue: '+0.7'
      - name: gamesBehind
        displayName: Games Back
        shortDisplayName: GB
        description: Games Back
        abbreviation: GB
        type: gamesbehind
        value: 17
        displayValue: '17'
      - name: gamesPlayed
        displayName: Games Played
        shortDisplayName: GP
        description: Games Played
        abbreviation: GP
        type: gamesplayed
        value: 65
        displayValue: '65'
      - name: losses
        displayName: Losses
        shortDisplayName: L
        description: Losses
        abbreviation: L
        type: losses
        value: 17
        displayValue: '17'
      - name: playoffSeed
        displayName: Position
        shortDisplayName: POS
        description: Projected seed in the NBA Playoffs, according to BPI
        abbreviation: SEED
        type: playoffseed
        value: 4
        displayValue: '4'
      - name: points
        displayName: Points
        shortDisplayName: PTS
        description: Total Points
        abbreviation: PTS
        type: points
        value: 88
        displayValue: '88'
      - name: pointsAgainst
        displayName: Goals Against
        shortDisplayName: GA
        description: Goals Against
        abbreviation: GA
        type: pointsagainst
        value: 175
        displayValue: '175'
      - name: pointsFor
        displayName: Goals For
        shortDisplayName: GF
        description: Goals For
        abbreviation: GF
        type: pointsfor
        value: 223
        displayValue: '223'
      - name: streak
        displayName: Streak
        shortDisplayName: STRK
        description: Current Streak
        abbreviation: STRK
        type: streak
        value: 2
        displayValue: W2
      - name: ties
        displayName: Ties
        shortDisplayName: T
        description: Ties
        abbreviation: T
        type: ties
        value: 0
        displayValue: '0'
      - name: wins
        displayName: Wins
        shortDisplayName: W
        description: Wins
        abbreviation: W
        type: wins
        value: 40
        displayValue: '40'
      - name: overtimeLosses
        displayName: Overtime Losses
        shortDisplayName: OT Losses
        description: Number of Overtime Losses
        abbreviation: OTL
        type: overtimelosses
        value: 8
        displayValue: '8'
      - name: overtimeWins
        displayName: Overtime Wins
        shortDisplayName: OTW Wins
        description: Number Overtime Wins
        abbreviation: OTW
        type: overtimewins
        value: 6
        displayValue: '6'
      - name: penaltyKillPct
        displayName: Penalty Kill Percentage
        shortDisplayName: Penalty Kill Percentage
        description: Percentage of penalties killed.
        abbreviation: PK%
        type: penaltykillpct
        value: 80.928
        displayValue: '80.9'
      - name: pointsDiff
        displayName: Goal Differential
        shortDisplayName: DIFF
        description: Goal Differential
        abbreviation: DIFF
        type: pointsdiff
        value: 48
        displayValue: '+48'
      - name: powerPlayGoals
        displayName: Power Play Goals
        shortDisplayName: Power Play Goals
        description: Total power play goals.
        abbreviation: PPG
        type: powerplaygoals
        value: 51
        displayValue: '51'
      - name: regWins
        displayName: Regulation Wins
        shortDisplayName: RW
        description: Number of Regulation Wins
        abbreviation: RW
        type: regwins
        value: 34
        displayValue: '34'
      - name: rotWins
        displayName: Regulation and Overtime Wins
        shortDisplayName: ROW Wins
        description: Number of Regulation and Overtime Wins
        abbreviation: ROW
        type: rotwins
        value: 40
        displayValue: '40'
      - name: shootoutLosses
        displayName: Shootout Losses
        shortDisplayName: SOL
        description: Shootout Losses
        abbreviation: SOL
        type: shootoutlosses
        value: 1
        displayValue: '1'
      - name: shootoutWins
        displayName: Shootout Wins
        shortDisplayName: SOW
        description: Shootout Wins
        abbreviation: SOW
        type: shootoutwins
        value: 0
        displayValue: '0'
      - name: timesShortHanded
        displayName: Power Play Opportunities Against
        shortDisplayName: Power Play Opportunities Against
        description: Total power play opportunities against.
        abbreviation: PPOA
        type: timesshorthanded
        value: 194
        displayValue: '194'
      - id: '0'
        name: overall
        abbreviation: TOTAL
        displayName: Team Season Record
        shortDisplayName: Season
        description: Overall Record
        type: total
        summary: 40-17-8
        displayValue: 40-17-8, 88 PTS
      - id: '2'
        name: Home
        abbreviation: HOME
        displayName: Home
        shortDisplayName: HOME
        description: Home Record
        type: home
        summary: 24-6-4
        displayValue: 24-6-4
      - id: '3'
        name: Road
        abbreviation: AWAY
        displayName: Away
        shortDisplayName: AWAY
        description: Away Record
        type: road
        summary: 16-11-4
        displayValue: 16-11-4
      - id: '5'
        name: Last Ten Games
        abbreviation: L10
        displayName: Last Ten Games
        shortDisplayName: L10
        description: Record last 10 games
        type: lasttengames
        summary: 7-3-0
        displayValue: 7-3-0, 0 PTS
      - id: '6'
        name: vs. Div.
        abbreviation: DIV
        type: vsdiv
        summary: 9-5-2
        displayValue: 9-5-2, 0 PTS
  - team:
      id: '20'
      uid: s:70~l:90~t:20
      location: Tampa Bay
      name: Lightning
      abbreviation: TB
      displayName: Tampa Bay Lightning
      shortDisplayName: Lightning
      isActive: true
      logos:
        - href: https://a.espncdn.com/i/teamlogos/nhl/500/scoreboard/tb.png
          width: 500
          height: 500
          alt: ''
          rel:
            - full
            - scoreboard
          lastUpdated: 2021-07-23T18:10Z
        - href: https://a.espncdn.com/i/teamlogos/nhl/500-dark/scoreboard/tb.png
          width: 500
          height: 500
          alt: ''
          rel:
            - full
            - scoreboard
            - dark
          lastUpdated: 2021-07-23T18:11Z
      links:
        - language: en-US
          rel:
            - clubhouse
            - desktop
            - team
          href: http://www.espn.com/nhl/team/_/name/tb/tampa-bay-lightning
          text: Clubhouse
          shortText: Clubhouse
          isExternal: false
          isPremium: false
        - language: en-US
          rel:
            - clubhouse
            - mobile
            - team
          href: http://m.espn.com/nhl/clubhouse?teamId=20
          text: Clubhouse
          shortText: Clubhouse
          isExternal: false
          isPremium: false
    stats:
      - name: otLosses
        displayName: Overtime Losses
        shortDisplayName: OTL
        description: Number of Overtime Losses
        abbreviation: OTL
        type: otlosses
        value: 6
        displayValue: '6'
      - name: differential
        displayName: Average Point Differential
        shortDisplayName: DIFF
        description: Average Point Differential
        abbreviation: DIFF
        type: differential
        value: 0.3999999999999999
        displayValue: '+0.4'
      - name: gamesBehind
        displayName: Games Back
        shortDisplayName: GB
        description: Games Back
        abbreviation: GB
        type: gamesbehind
        value: 21
        displayValue: '21'
      - name: gamesPlayed
        displayName: Games Played
        shortDisplayName: GP
        description: Games Played
        abbreviation: GP
        type: gamesplayed
        value: 66
        displayValue: '66'
      - name: losses
        displayName: Losses
        shortDisplayName: L
        description: Losses
        abbreviation: L
        type: losses
        value: 21
        displayValue: '21'
      - name: playoffSeed
        displayName: Position
        shortDisplayName: POS
        description: Projected seed in the NBA Playoffs, according to BPI
        abbreviation: SEED
        type: playoffseed
        value: 5
        displayValue: '5'
      - name: points
        displayName: Points
        shortDisplayName: PTS
        description: Total Points
        abbreviation: PTS
        type: points
        value: 84
        displayValue: '84'
      - name: pointsAgainst
        displayName: Goals Against
        shortDisplayName: GA
        description: Goals Against
        abbreviation: GA
        type: pointsagainst
        value: 203
        displayValue: '203'
      - name: pointsFor
        displayName: Goals For
        shortDisplayName: GF
        description: Goals For
        abbreviation: GF
        type: pointsfor
        value: 231
        displayValue: '231'
      - name: streak
        displayName: Streak
        shortDisplayName: STRK
        description: Current Streak
        abbreviation: STRK
        type: streak
        value: 1
        displayValue: W1
      - name: ties
        displayName: Ties
        shortDisplayName: T
        description: Ties
        abbreviation: T
        type: ties
        value: 0
        displayValue: '0'
      - name: wins
        displayName: Wins
        shortDisplayName: W
        description: Wins
        abbreviation: W
        type: wins
        value: 39
        displayValue: '39'
      - name: overtimeLosses
        displayName: Overtime Losses
        shortDisplayName: OT Losses
        description: Number of Overtime Losses
        abbreviation: OTL
        type: overtimelosses
        value: 6
        displayValue: '6'
      - name: overtimeWins
        displayName: Overtime Wins
        shortDisplayName: OTW Wins
        description: Number Overtime Wins
        abbreviation: OTW
        type: overtimewins
        value: 7
        displayValue: '7'
      - name: penaltyKillPct
        displayName: Penalty Kill Percentage
        shortDisplayName: Penalty Kill Percentage
        description: Percentage of penalties killed.
        abbreviation: PK%
        type: penaltykillpct
        value: 80
        displayValue: '80.0'
      - name: pointsDiff
        displayName: Goal Differential
        shortDisplayName: DIFF
        description: Goal Differential
        abbreviation: DIFF
        type: pointsdiff
        value: 28
        displayValue: '+28'
      - name: powerPlayGoals
        displayName: Power Play Goals
        shortDisplayName: Power Play Goals
        description: Total power play goals.
        abbreviation: PPG
        type: powerplaygoals
        value: 60
        displayValue: '60'
      - name: regWins
        displayName: Regulation Wins
        shortDisplayName: RW
        description: Number of Regulation Wins
        abbreviation: RW
        type: regwins
        value: 32
        displayValue: '32'
      - name: rotWins
        displayName: Regulation and Overtime Wins
        shortDisplayName: ROW Wins
        description: Number of Regulation and Overtime Wins
        abbreviation: ROW
        type: rotwins
        value: 37
        displayValue: '37'
      - name: shootoutLosses
        displayName: Shootout Losses
        shortDisplayName: SOL
        description: Shootout Losses
        abbreviation: SOL
        type: shootoutlosses
        value: 2
        displayValue: '2'
      - name: shootoutWins
        displayName: Shootout Wins
        shortDisplayName: SOW
        description: Shootout Wins
        abbreviation: SOW
        type: shootoutwins
        value: 2
        displayValue: '2'
      - name: timesShortHanded
        displayName: Power Play Opportunities Against
        shortDisplayName: Power Play Opportunities Against
        description: Total power play opportunities against.
        abbreviation: PPOA
        type: timesshorthanded
        value: 210
        displayValue: '210'
      - id: '0'
        name: overall
        abbreviation: TOTAL
        displayName: Team Season Record
        shortDisplayName: Season
        description: Overall Record
        type: total
        summary: 39-21-6
        displayValue: 39-21-6, 84 PTS
      - id: '2'
        name: Home
        abbreviation: HOME
        displayName: Home
        shortDisplayName: HOME
        description: Home Record
        type: home
        summary: 24-5-5
        displayValue: 24-5-5
      - id: '3'
        name: Road
        abbreviation: AWAY
        displayName: Away
        shortDisplayName: AWAY
        description: Away Record
        type: road
        summary: 15-16-1
        displayValue: 15-16-1
      - id: '5'
        name: Last Ten Games
        abbreviation: L10
        displayName: Last Ten Games
        shortDisplayName: L10
        description: Record last 10 games
        type: lasttengames
        summary: 3-4-3
        displayValue: 3-4-3, 0 PTS
      - id: '6'
        name: vs. Div.
        abbreviation: DIV
        type: vsdiv
        summary: 10-8-1
        displayValue: 10-8-1, 0 PTS
  - team:
      id: '26'
      uid: s:70~l:90~t:26
      location: Florida
      name: Panthers
      abbreviation: FLA
      displayName: Florida Panthers
      shortDisplayName: Panthers
      isActive: true
      logos:
        - href: https://a.espncdn.com/i/teamlogos/nhl/500/scoreboard/fla.png
          width: 500
          height: 500
          alt: ''
          rel:
            - full
            - scoreboard
          lastUpdated: 2018-06-05T12:12Z
        - href: https://a.espncdn.com/i/teamlogos/nhl/500-dark/scoreboard/fla.png
          width: 500
          height: 500
          alt: ''
          rel:
            - full
            - scoreboard
            - dark
          lastUpdated: 2018-06-05T12:12Z
      links:
        - language: en-US
          rel:
            - clubhouse
            - desktop
            - team
          href: http://www.espn.com/nhl/team/_/name/fla/florida-panthers
          text: Clubhouse
          shortText: Clubhouse
          isExternal: false
          isPremium: false
        - language: en-US
          rel:
            - clubhouse
            - mobile
            - team
          href: http://m.espn.com/nhl/clubhouse?teamId=26
          text: Clubhouse
          shortText: Clubhouse
          isExternal: false
          isPremium: false
    stats:
      - name: otLosses
        displayName: Overtime Losses
        shortDisplayName: OTL
        description: Number of Overtime Losses
        abbreviation: OTL
        type: otlosses
        value: 7
        displayValue: '7'
      - name: differential
        displayName: Average Point Differential
        shortDisplayName: DIFF
        description: Average Point Differential
        abbreviation: DIFF
        type: differential
        value: 0
        displayValue: '0.0'
      - name: gamesBehind
        displayName: Games Back
        shortDisplayName: GB
        description: Games Back
        abbreviation: GB
        type: gamesbehind
        value: 32
        displayValue: '32'
      - name: gamesPlayed
        displayName: Games Played
        shortDisplayName: GP
        description: Games Played
        abbreviation: GP
        type: gamesplayed
        value: 67
        displayValue: '67'
      - name: losses
        displayName: Losses
        shortDisplayName: L
        description: Losses
        abbreviation: L
        type: losses
        value: 27
        displayValue: '27'
      - name: playoffSeed
        displayName: Position
        shortDisplayName: POS
        description: Projected seed in the NBA Playoffs, according to BPI
        abbreviation: SEED
        type: playoffseed
        value: 9
        displayValue: '9'
      - name: points
        displayName: Points
        shortDisplayName: PTS
        description: Total Points
        abbreviation: PTS
        type: points
        value: 73
        displayValue: '73'
      - name: pointsAgainst
        displayName: Goals Against
        shortDisplayName: GA
        description: Goals Against
        abbreviation: GA
        type: pointsagainst
        value: 226
        displayValue: '226'
      - name: pointsFor
        displayName: Goals For
        shortDisplayName: GF
        description: Goals For
        abbreviation: GF
        type: pointsfor
        value: 229
        displayValue: '229'
      - name: streak
        displayName: Streak
        shortDisplayName: STRK
        description: Current Streak
        abbreviation: STRK
        type: streak
        value: -1
        displayValue: L1
      - name: ties
        displayName: Ties
        shortDisplayName: T
        description: Ties
        abbreviation: T
        type: ties
        value: 0
        displayValue: '0'
      - name: wins
        displayName: Wins
        shortDisplayName: W
        description: Wins
        abbreviation: W
        type: wins
        value: 33
        displayValue: '33'
      - name: overtimeLosses
        displayName: Overtime Losses
        shortDisplayName: OT Losses
        description: Number of Overtime Losses
        abbreviation: OTL
        type: overtimelosses
        value: 7
        displayValue: '7'
      - name: overtimeWins
        displayName: Overtime Wins
        shortDisplayName: OTW Wins
        description: Number Overtime Wins
        abbreviation: OTW
        type: overtimewins
        value: 5
        displayValue: '5'
      - name: penaltyKillPct
        displayName: Penalty Kill Percentage
        shortDisplayName: Penalty Kill Percentage
        description: Percentage of penalties killed.
        abbreviation: PK%
        type: penaltykillpct
        value: 74.286
        displayValue: '74.3'
      - name: pointsDiff
        displayName: Goal Differential
        shortDisplayName: DIFF
        description: Goal Differential
        abbreviation: DIFF
        type: pointsdiff
        value: 3
        displayValue: '+3'
      - name: powerPlayGoals
        displayName: Power Play Goals
        shortDisplayName: Power Play Goals
        description: Total power play goals.
        abbreviation: PPG
        type: powerplaygoals
        value: 50
        displayValue: '50'
      - name: regWins
        displayName: Regulation Wins
        shortDisplayName: RW
        description: Number of Regulation Wins
        abbreviation: RW
        type: regwins
        value: 28
        displayValue: '28'
      - name: rotWins
        displayName: Regulation and Overtime Wins
        shortDisplayName: ROW Wins
        description: Number of Regulation and Overtime Wins
        abbreviation: ROW
        type: rotwins
        value: 31
        displayValue: '31'
      - name: shootoutLosses
        displayName: Shootout Losses
        shortDisplayName: SOL
        description: Shootout Losses
        abbreviation: SOL
        type: shootoutlosses
        value: 1
        displayValue: '1'
      - name: shootoutWins
        displayName: Shootout Wins
        shortDisplayName: SOW
        description: Shootout Wins
        abbreviation: SOW
        type: shootoutwins
        value: 2
        displayValue: '2'
      - name: timesShortHanded
        displayName: Power Play Opportunities Against
        shortDisplayName: Power Play Opportunities Against
        description: Total power play opportunities against.
        abbreviation: PPOA
        type: timesshorthanded
        value: 245
        displayValue: '245'
      - id: '0'
        name: overall
        abbreviation: TOTAL
        displayName: Team Season Record
        shortDisplayName: Season
        description: Overall Record
        type: total
        summary: 33-27-7
        displayValue: 33-27-7, 73 PTS
      - id: '2'
        name: Home
        abbreviation: HOME
        displayName: Home
        shortDisplayName: HOME
        description: Home Record
        type: home
        summary: 19-10-4
        displayValue: 19-10-4
      - id: '3'
        name: Road
        abbreviation: AWAY
        displayName: Away
        shortDisplayName: AWAY
        description: Away Record
        type: road
        summary: 14-17-3
        displayValue: 14-17-3
      - id: '5'
        name: Last Ten Games
        abbreviation: L10
        displayName: Last Ten Games
        shortDisplayName: L10
        description: Record last 10 games
        type: lasttengames
        summary: 6-3-1
        displayValue: 6-3-1, 0 PTS
      - id: '6'
        name: vs. Div.
        abbreviation: DIV
        type: vsdiv
        summary: 11-4-2
        displayValue: 11-4-2, 0 PTS

sorry you mean the sensor.nhl_standings.

This looks like:

children:
  - uid: s:70~l:90~g:7
    id: '7'
    name: Eastern Conference
    abbreviation: East
    children:
      - uid: s:70~l:90~g:32
        id: '32'
        name: Atlantic Division
        abbreviation: ATL
        standings:
          id: '0'
          name: overall
          displayName: Overall Standings
          links:
            - language: en-US
              rel:
                - standings
                - desktop
              href: https://www.espn.com/nhl/standings/_/group/32
              text: Table
              shortText: Standings
              isExternal: false
              isPremium: false
          season: 2023
          seasonType: 2
          entries:
            - team:
                id: '1'
                uid: s:70~l:90~t:1
                location: Boston
                name: Bruins
                abbreviation: BOS
                displayName: Boston Bruins
                shortDisplayName: Bruins
                isActive: true
                logos:
                  - href: >-
                      https://a.espncdn.com/i/teamlogos/nhl/500/scoreboard/bos.png
                    width: 500
                    height: 500
                    alt: ''
                    rel:
                      - full
                      - scoreboard
                    lastUpdated: 2018-06-05T12:12Z
                  - href: >-
                      https://a.espncdn.com/i/teamlogos/nhl/500-dark/scoreboard/bos.png
                    width: 500
                    height: 500
                    alt: ''
                    rel:
                      - full
                      - scoreboard
                      - dark
                    lastUpdated: 2018-06-05T12:12Z
                links:
                  - language: en-US
                    rel:
                      - clubhouse
                      - desktop
                      - team
                    href: http://www.espn.com/nhl/team/_/name/bos/boston-bruins
                    text: Clubhouse
                    shortText: Clubhouse
                    isExternal: false
                    isPremium: false
                  - language: en-US
                    rel:
                      - clubhouse
                      - mobile
                      - team
                    href: http://m.espn.com/nhl/clubhouse?teamId=1
                    text: Clubhouse
                    shortText: Clubhouse
                    isExternal: false
                    isPremium: false
              stats:
                - name: otLosses
                  displayName: Overtime Losses
                  shortDisplayName: OTL
                  description: Number of Overtime Losses
                  abbreviation: OTL
                  type: otlosses
                  value: 5
                  displayValue: '5'
                - name: clincher
                  displayName: Clincher
                  shortDisplayName: CLINCH
                  description: Clinched Playoff Berth
                  abbreviation: CLINCH
                  type: clincher
                  value: 2
                  displayValue: x
                - name: differential
                  displayName: Average Point Differential
                  shortDisplayName: DIFF
                  description: Average Point Differential
                  abbreviation: DIFF
                  type: differential
                  value: 1.6999999999999997
                  displayValue: '+1.7'
                - name: gamesBehind
                  displayName: Games Back
                  shortDisplayName: GB
                  description: Games Back
                  abbreviation: GB
                  type: gamesbehind
                  value: 0
                  displayValue: '-'
                - name: gamesPlayed
                  displayName: Games Played
                  shortDisplayName: GP
                  description: Games Played
                  abbreviation: GP
                  type: gamesplayed
                  value: 64
                  displayValue: '64'
                - name: losses
                  displayName: Losses
                  shortDisplayName: L
                  description: Losses
                  abbreviation: L
                  type: losses
                  value: 9
                  displayValue: '9'
                - name: playoffSeed
                  displayName: Position
                  shortDisplayName: POS
                  description: Projected seed in the NBA Playoffs, according to BPI
                  abbreviation: SEED
                  type: playoffseed
                  value: 1
                  displayValue: '1'
                - name: points
                  displayName: Points
                  shortDisplayName: PTS
                  description: Total Points
                  abbreviation: PTS
                  type: points
                  value: 105
                  displayValue: '105'
                - name: pointsAgainst
                  displayName: Goals Against
                  shortDisplayName: GA
                  description: Goals Against
                  abbreviation: GA
                  type: pointsagainst
                  value: 137
                  displayValue: '137'
                - name: pointsFor
                  displayName: Goals For
                  shortDisplayName: GF
                  description: Goals For
                  abbreviation: GF
                  type: pointsfor
                  value: 242
                  displayValue: '242'
                - name: streak
                  displayName: Streak
                  shortDisplayName: STRK
                  description: Current Streak
                  abbreviation: STRK
                  type: streak
                  value: 1
                  displayValue: W1
                - name: winPercent
                  displayName: Win Percentage
                  shortDisplayName: PCT
                  description: Winning Percentage
                  abbreviation: PCT
                  type: winpercent
                  value: 0.8203125
                  displayValue: '.820'
                - name: wins
                  displayName: Wins
                  shortDisplayName: W
                  description: Wins
                  abbreviation: W
                  type: wins
                  value: 50
                  displayValue: '50'
                - name: overtimeLosses
                  displayName: Overtime Losses
                  shortDisplayName: OT Losses
                  description: Number of Overtime Losses
                  abbreviation: OTL
                  type: overtimelosses
                  value: 5
                  displayValue: '5'
                - name: overtimeWins
                  displayName: Overtime Wins
                  shortDisplayName: OTW Wins
                  description: Number Overtime Wins
                  abbreviation: OTW
                  type: overtimewins
                  value: 7
                  displayValue: '7'
                - name: penaltyKillPct
                  displayName: Penalty Kill Percentage
                  shortDisplayName: Penalty Kill Percentage
                  description: Percentage of penalties killed.
                  abbreviation: PK%
                  type: penaltykillpct
                  value: 86.321
                  displayValue: '86.3'
                - name: pointsDiff
                  displayName: Goal Differential
                  shortDisplayName: DIFF
                  description: Goal Differential
                  abbreviation: DIFF
                  type: pointsdiff
                  value: 105
                  displayValue: '+105'
                - name: powerPlayPct
                  displayName: Power Play %
                  shortDisplayName: Power Play Percentage
                  description: Percentage of power play scored on.
                  abbreviation: PP%
                  type: powerplaypct
                  value: 23.041
                  displayValue: '23.0'
                - name: regWins
                  displayName: Regulation Wins
                  shortDisplayName: RW
                  description: Number of Regulation Wins
                  abbreviation: RW
                  type: regwins
                  value: 43
                  displayValue: '43'
                - name: rotWins
                  displayName: Regulation and Overtime Wins
                  shortDisplayName: ROW Wins
                  description: Number of Regulation and Overtime Wins
                  abbreviation: ROW
                  type: rotwins
                  value: 48
                  displayValue: '48'
                - name: shootoutLosses
                  displayName: Shootout Losses
                  shortDisplayName: SOL
                  description: Shootout Losses
                  abbreviation: SOL
                  type: shootoutlosses
                  value: 3
                  displayValue: '3'
                - name: shootoutWins
                  displayName: Shootout Wins
                  shortDisplayName: SOW
                  description: Shootout Wins
                  abbreviation: SOW
                  type: shootoutwins
                  value: 2
                  displayValue: '2'
                - id: '0'
                  name: overall
                  abbreviation: TOTAL
                  displayName: Team Season Record
                  shortDisplayName: Season
                  description: Overall Record
                  type: total
                  summary: 50-9-5
                  displayValue: 50-9-5, 105 PTS
                - id: '2'
                  name: Home
                  abbreviation: HOME
                  displayName: Home
                  shortDisplayName: HOME
                  description: Home Record
                  type: home
                  summary: 27-3-3
                  displayValue: 27-3-3
                - id: '3'
                  name: Road
                  abbreviation: AWAY
                  displayName: Away
                  shortDisplayName: AWAY
                  description: Away Record
                  type: road
                  summary: 23-6-2
                  displayValue: 23-6-2
                - id: '5'
                  name: Last Ten Games
                  abbreviation: L10
                  displayName: Last Ten Games
                  shortDisplayName: L10
                  description: Record last 10 games
                  type: lasttengames
                  summary: 9-1-0
                  displayValue: 9-1-0, 0 PTS
                - id: '6'
                  name: vs. Div.
                  abbreviation: DIV
                  type: vsdiv
                  summary: 12-4-3
                  displayValue: 12-4-3, 0 PTS
            - team:
                id: '21'
                uid: s:70~l:90~t:21
                location: Toronto
                name: Maple Leafs
                abbreviation: TOR
                displayName: Toronto Maple Leafs
                shortDisplayName: Maple Leafs
                isActive: true
                logos:
                  - href: >-
                      https://a.espncdn.com/i/teamlogos/nhl/500/scoreboard/tor.png
                    width: 500
                    height: 500
                    alt: ''
                    rel:
                      - full
                      - scoreboard
                    lastUpdated: 2018-06-05T12:12Z
                  - href: >-
                      https://a.espncdn.com/i/teamlogos/nhl/500-dark/scoreboard/tor.png
                    width: 500
                    height: 500
                    alt: ''
                    rel:
                      - full
                      - scoreboard
                      - dark
                    lastUpdated: 2018-06-05T12:12Z
                links:
                  - language: en-US
                    rel:
                      - clubhouse
                      - desktop
                      - team
                    href: >-
                      http://www.espn.com/nhl/team/_/name/tor/toronto-maple-leafs
                    text: Clubhouse
                    shortText: Clubhouse
                    isExternal: false
                    isPremium: false
                  - language: en-US
                    rel:
                      - clubhouse
                      - mobile
                      - team
                    href: http://m.espn.com/nhl/clubhouse?teamId=21
                    text: Clubhouse
                    shortText: Clubhouse
                    isExternal: false
                    isPremium: false
              stats:
                - name: otLosses
                  displayName: Overtime Losses
                  shortDisplayName: OTL
                  description: Number of Overtime Losses
                  abbreviation: OTL
                  type: otlosses
                  value: 8
                  displayValue: '8'
                - name: differential
                  displayName: Average Point Differential
                  shortDisplayName: DIFF
                  description: Average Point Differential
                  abbreviation: DIFF
                  type: differential
                  value: 0.6999999999999997
                  displayValue: '+0.7'
                - name: gamesBehind
                  displayName: Games Back
                  shortDisplayName: GB
                  description: Games Back
                  abbreviation: GB
                  type: gamesbehind
                  value: 17
                  displayValue: '17'
                - name: gamesPlayed
                  displayName: Games Played
                  shortDisplayName: GP
                  description: Games Played
                  abbreviation: GP
                  type: gamesplayed
                  value: 65
                  displayValue: '65'
                - name: losses
                  displayName: Losses
                  shortDisplayName: L
                  description: Losses
                  abbreviation: L
                  type: losses
                  value: 17
                  displayValue: '17'
                - name: playoffSeed
                  displayName: Position
                  shortDisplayName: POS
                  description: Projected seed in the NBA Playoffs, according to BPI
                  abbreviation: SEED
                  type: playoffseed
                  value: 4
                  displayValue: '4'
                - name: points
                  displayName: Points
                  shortDisplayName: PTS
                  description: Total Points
                  abbreviation: PTS
                  type: points
                  value: 88
                  displayValue: '88'
                - name: pointsAgainst
                  displayName: Goals Against
                  shortDisplayName: GA
                  description: Goals Against
                  abbreviation: GA
                  type: pointsagainst
                  value: 175
                  displayValue: '175'
                - name: pointsFor
                  displayName: Goals For
                  shortDisplayName: GF
                  description: Goals For
                  abbreviation: GF
                  type: pointsfor
                  value: 223
                  displayValue: '223'
                - name: streak
                  displayName: Streak
                  shortDisplayName: STRK
                  description: Current Streak
                  abbreviation: STRK
                  type: streak
                  value: 2
                  displayValue: W2
                - name: ties
                  displayName: Ties
                  shortDisplayName: T
                  description: Ties
                  abbreviation: T
                  type: ties
                  value: 0
                  displayValue: '0'
                - name: wins
                  displayName: Wins
                  shortDisplayName: W
                  description: Wins
                  abbreviation: W
                  type: wins
                  value: 40
                  displayValue: '40'
                - name: overtimeLosses
                  displayName: Overtime Losses
                  shortDisplayName: OT Losses
                  description: Number of Overtime Losses
                  abbreviation: OTL
                  type: overtimelosses
                  value: 8
                  displayValue: '8'
                - name: overtimeWins
                  displayName: Overtime Wins
                  shortDisplayName: OTW Wins
                  description: Number Overtime Wins
                  abbreviation: OTW
                  type: overtimewins
                  value: 6
                  displayValue: '6'
                - name: penaltyKillPct
                  displayName: Penalty Kill Percentage
                  shortDisplayName: Penalty Kill Percentage
                  description: Percentage of penalties killed.
                  abbreviation: PK%
                  type: penaltykillpct
                  value: 80.928
                  displayValue: '80.9'
                - name: pointsDiff
                  displayName: Goal Differential
                  shortDisplayName: DIFF
                  description: Goal Differential
                  abbreviation: DIFF
                  type: pointsdiff
                  value: 48
                  displayValue: '+48'
                - name: powerPlayGoals
                  displayName: Power Play Goals
                  shortDisplayName: Power Play Goals
                  description: Total power play goals.
                  abbreviation: PPG
                  type: powerplaygoals
                  value: 51
                  displayValue: '51'
                - name: regWins
                  displayName: Regulation Wins
                  shortDisplayName: RW
                  description: Number of Regulation Wins
                  abbreviation: RW
                  type: regwins
                  value: 34
                  displayValue: '34'
                - name: rotWins
                  displayName: Regulation and Overtime Wins
                  shortDisplayName: ROW Wins
                  description: Number of Regulation and Overtime Wins
                  abbreviation: ROW
                  type: rotwins
                  value: 40
                  displayValue: '40'
                - name: shootoutLosses
                  displayName: Shootout Losses
                  shortDisplayName: SOL
                  description: Shootout Losses
                  abbreviation: SOL
                  type: shootoutlosses
                  value: 1
                  displayValue: '1'
                - name: shootoutWins
                  displayName: Shootout Wins
                  shortDisplayName: SOW
                  description: Shootout Wins
                  abbreviation: SOW
                  type: shootoutwins
                  value: 0
                  displayValue: '0'
                - name: timesShortHanded
                  displayName: Power Play Opportunities Against
                  shortDisplayName: Power Play Opportunities Against
                  description: Total power play opportunities against.
                  abbreviation: PPOA
                  type: timesshorthanded
                  value: 194
                  displayValue: '194'
                - id: '0'
                  name: overall
                  abbreviation: TOTAL
                  displayName: Team Season Record
                  shortDisplayName: Season
                  description: Overall Record
                  type: total
                  summary: 40-17-8
                  displayValue: 40-17-8, 88 PTS
                - id: '2'
                  name: Home
                  abbreviation: HOME
                  displayName: Home
                  shortDisplayName: HOME
                  description: Home Record
                  type: home
                  summary: 24-6-4
                  displayValue: 24-6-4
                - id: '3'
                  name: Road
                  abbreviation: AWAY
                  displayName: Away
                  shortDisplayName: AWAY
                  description: Away Record
                  type: road
                  summary: 16-11-4
                  displayValue: 16-11-4
                - id: '5'
                  name: Last Ten Games
                  abbreviation: L10
                  displayName: Last Ten Games
                  shortDisplayName: L10
                  description: Record last 10 games
                  type: lasttengames
                  summary: 7-3-0
                  displayValue: 7-3-0, 0 PTS
                - id: '6'
                  name: vs. Div.
                  abbreviation: DIV
                  type: vsdiv
                  summary: 9-5-2
                  displayValue: 9-5-2, 0 PTS
            - team:
                id: '20'
                uid: s:70~l:90~t:20
                location: Tampa Bay
                name: Lightning
                abbreviation: TB
                displayName: Tampa Bay Lightning
                shortDisplayName: Lightning
                isActive: true
                logos:
                  - href: >-
                      https://a.espncdn.com/i/teamlogos/nhl/500/scoreboard/tb.png
                    width: 500
                    height: 500
                    alt: ''
                    rel:
                      - full
                      - scoreboard
                    lastUpdated: 2021-07-23T18:10Z
                  - href: >-
                      https://a.espncdn.com/i/teamlogos/nhl/500-dark/scoreboard/tb.png
                    width: 500
                    height: 500
                    alt: ''
                    rel:
                      - full
                      - scoreboard
                      - dark
                    lastUpdated: 2021-07-23T18:11Z
                links:
                  - language: en-US
                    rel:
                      - clubhouse
                      - desktop
                      - team
                    href: http://www.espn.com/nhl/team/_/name/tb/tampa-bay-lightning
                    text: Clubhouse
                    shortText: Clubhouse
                    isExternal: false
                    isPremium: false
                  - language: en-US
                    rel:
                      - clubhouse
                      - mobile
                      - team
                    href: http://m.espn.com/nhl/clubhouse?teamId=20
                    text: Clubhouse
                    shortText: Clubhouse
                    isExternal: false
                    isPremium: false
              stats:
                - name: otLosses
                  displayName: Overtime Losses
                  shortDisplayName: OTL
                  description: Number of Overtime Losses
                  abbreviation: OTL
                  type: otlosses
                  value: 6
                  displayValue: '6'
                - name: differential
                  displayName: Average Point Differential
                  shortDisplayName: DIFF
                  description: Average Point Differential
                  abbreviation: DIFF
                  type: differential
                  value: 0.3999999999999999
                  displayValue: '+0.4'
                - name: gamesBehind
                  displayName: Games Back
                  shortDisplayName: GB
                  description: Games Back
                  abbreviation: GB
                  type: gamesbehind
                  value: 21
                  displayValue: '21'
                - name: gamesPlayed
                  displayName: Games Played
                  shortDisplayName: GP
                  description: Games Played
                  abbreviation: GP
                  type: gamesplayed
                  value: 66
                  displayValue: '66'
                - name: losses
                  displayName: Losses
                  shortDisplayName: L
                  description: Losses
                  abbreviation: L
                  type: losses
                  value: 21
                  displayValue: '21'
                - name: playoffSeed
                  displayName: Position
                  shortDisplayName: POS
                  description: Projected seed in the NBA Playoffs, according to BPI
                  abbreviation: SEED
                  type: playoffseed
                  value: 5
                  displayValue: '5'
                - name: points
                  displayName: Points
                  shortDisplayName: PTS
                  description: Total Points
                  abbreviation: PTS
                  type: points
                  value: 84
                  displayValue: '84'
                - name: pointsAgainst
                  displayName: Goals Against
                  shortDisplayName: GA
                  description: Goals Against
                  abbreviation: GA
                  type: pointsagainst
                  value: 203
                  displayValue: '203'
                - name: pointsFor
                  displayName: Goals For
                  shortDisplayName: GF
                  description: Goals For
                  abbreviation: GF
                  type: pointsfor
                  value: 231
                  displayValue: '231'
                - name: streak
                  displayName: Streak
                  shortDisplayName: STRK
                  description: Current Streak
                  abbreviation: STRK
                  type: streak
                  value: 1
                  displayValue: W1
                - name: ties
                  displayName: Ties
                  shortDisplayName: T
                  description: Ties
                  abbreviation: T
                  type: ties
                  value: 0
                  displayValue: '0'
                - name: wins
                  displayName: Wins
                  shortDisplayName: W
                  description: Wins
                  abbreviation: W
                  type: wins
                  value: 39
                  displayValue: '39'
                - name: overtimeLosses
                  displayName: Overtime Losses
                  shortDisplayName: OT Losses
                  description: Number of Overtime Losses
                  abbreviation: OTL
                  type: overtimelosses
                  value: 6
                  displayValue: '6'
                - name: overtimeWins
                  displayName: Overtime Wins
                  shortDisplayName: OTW Wins
                  description: Number Overtime Wins
                  abbreviation: OTW
                  type: overtimewins
                  value: 7
                  displayValue: '7'
                - name: penaltyKillPct
                  displayName: Penalty Kill Percentage
                  shortDisplayName: Penalty Kill Percentage
                  description: Percentage of penalties killed.
                  abbreviation: PK%
                  type: penaltykillpct
                  value: 80
                  displayValue: '80.0'
                - name: pointsDiff
                  displayName: Goal Differential
                  shortDisplayName: DIFF
                  description: Goal Differential
                  abbreviation: DIFF
                  type: pointsdiff
                  value: 28
                  displayValue: '+28'
                - name: powerPlayGoals
                  displayName: Power Play Goals
                  shortDisplayName: Power Play Goals
                  description: Total power play goals.
                  abbreviation: PPG
                  type: powerplaygoals
                  value: 60
                  displayValue: '60'
...
friendly_name: NHL Standings

It the lower level (template) one has the data, it is being taken from the REST one. It is not clear what is wrong. I can only think that you do not have decluttering installed. If you right click and debug in browser, can you see any errors in the console? Not sure the error is coming from the change in Boston stats which I am in process of fixing now, but mine has the data … it is just wrong as they added a field and changed the positional index for Boston only.

As stated above, I am fixing this now to use names to locate the fields and not positional information.