A problem replacing action: service with perform-action

Because call-service is deprecated in favor of action, I've been replacing service and ran into trouble with the last one. In particular, this code works fine:

      - type: custom:folder-gallery-card
        title: MasterTest
        folder_sensor: sensor.mastertv_personal
        columns: 3
        aspect_ratio: "16/9"
        tap_action: action
        action:
          service: samsungtv_smart.art_select_image
          target:
            entity_id: media_player.mastertv
          data:
            content_id: "{{content_id}}"
            entity_id: media_player.mastertv

and the tap action in this code does not work:

      - type: custom:folder-gallery-card
        title: MasterTest
        folder_sensor: sensor.mastertv_personal
        columns: 3
        aspect_ratio: "16/9"
        tap_action: action
        action: 
          perform_action: samsungtv_smart.art_select_image
          target:
            entity_id: media_player.mastertv
          data:
            content_id: "{{content_id}}"
            entity_id: media_player.mastertv

I've also tried several variations suggested by Gemini, like

tap_action: 
  action: perform-action
  perform_action: samsungtv_smart.art_select_image
  target:
    entity_id: media_player.mastertv
  data:
    content_id: "{{content_id}}"
    entity_id: media_player.mastertv

I've run out of things to try and am living with one service call. In reading about this, I did learn that one uses underscore _ for the key and hyphen for the action, e.g. "action: perform-action" and then "perform_action:" so that doesn't seem to be the mistake.

I also wonder what was wrong with action: call-service, which seems less redundant than action: perform-action. But my main purpose is to future-proof my dashboards, whatever the future holds.

That's a custom card and it would be up to the cards developer to implement modern script syntax into its configuration options.

Also, call-service isn't deprecated & won't be for the foreseeable future. You can keep using it until the dev of that custom card implements perform_action or the devs at HA change their mind & actually decide to deprecate call-service, whichever comes sooner.

I have a related question. I have the following code at the top of an Entities card, which works currently. I just added a second siren for another part of the house and want it to toggle along with the first one USING THE SAME BUTTON. Is this possible? IOW, I’d like to add a second entity_id a the bottom, using whatever syntax is permitted (if any). I really can’t tell from the docs since the syntax is now different, as the OP found.

type: entities
show_header_toggle: false
state_color: true
title: Siren / Chime
entities:
  - type: button
    action_name: Toggle Siren
    name: Alarm Siren
    icon: mdi:bullhorn
    tap_action:
      action: call-service
      confirmation:
        text: Toggle Alarm Siren?
      service: switch.toggle
      service_data:
        entity_id: switch.zooz_zse19_siren_switch