Unable to call service from picture elements card

I am obviously overlooking something simple here, but I cannot get my tap action to call a service. When I hover, it shows “More info” for hold, but nothing for tap. here is my code:

  - type: state-icon
    entity: climate.upstairs
    style:
      top: 75%
      left: 30%
    tap_action:
      action: call-service
      service: climate.set_hvac_mode
      data:
        hvac_mode: 'off'
      target:
        entity_id: climate.upstairs

I get an error saying “Required key not provided”
Any thoughts?

Should be service_data: for Lovelace actions.

https://www.home-assistant.io/lovelace/actions/#service_data

I knew it was something simple. I had tried service-data but didn’t realize I had a hyphen rather than an underscore. Thanks!