Actionable notification - send help!

Hi, I’m trying and failing with actionable notifications. Basically I’d like a notification that when I arrive at work, it asks me if I want to let my wife know and if i say yes she gets an alert on her HA companion app. I’m doing this on iphone…
This is my ios config

  push:
    categories:
      - name: work
        identifier: 'work'
        actions:
          - identifier: 'ARRIVED'
            title: 'Yes'

and this is my automations that I am trying and failing with…

- id: '1592466090509'
  alias: Matt left work
  description: ''
  trigger:
  - entity_id: device_tracker.matts_iphone
    event: enter
    platform: zone
    zone: zone.matt_work
  - entity_id: light.wardrobe_light
    platform: state
  condition: []
  action:
    service: notify.mobile_app_matts_iphone
    data:
      title: Work
      message: Want to let Amy know you've arrived?
      data:
        push:
          badge: 0
          category: 'work'
- id: '1592466090510'
  alias: IOS App Notification Action Work
  description: ''
  trigger:
  - event: ios.notification_action_fired
    event_data:
      actionName: ARRIVED
  action:
  - data:
      message: Matt is on his way home!
    service: notify.mobile_app_matts_iphone

I can get the automation to trigger asking if I want to let Amy know if I have arrived, but the action buttons do not appear at the bottom and I have these errors in my log

Invalid config for [automation]: [message] is an invalid option for [automation]. Check: automation->action->0->message. (See /config/configuration.yaml, line 10).
Invalid config for [automation]: [event] is an invalid option for [automation]. Check: automation->event. (See /config/configuration.yaml, line 10).
Invalid config for [automation]: extra keys not allowed @ data['action'][0]['message']. Got None required key not provided @ data['trigger'][0]['platform']. Got None. (See /config/configuration.yaml, line 10).
Invalid config for [automation]: required key not provided @ data['trigger'][0]['platform']. Got None. (See /config/configuration.yaml, line 10).

Any help gratefully received.

Figure it out?

Sadly not, would be grateful for any advice?

you made this with GUI or automation.yaml?

I made it with automation.yaml trying to follow the docs

whats here? See /config/configuration.yaml, line 10

It’s weird, I’ve pasted it below but the 10th line is in relation to groups…

# Configure a default setup of Home Assistant (frontend, api, etc)
default_config:

# Uncomment this if you are using SSL/TLS, running in Docker container, etc.
# http:
#   base_url: example.duckdns.org:8123

# Text to speech

group: !include groups.yaml
automation: !include automations.yaml
script: !include scripts.yaml
scene: !include scenes.yaml
sensor: !include sensor.yaml
#packages: !include_dir_named packages

This has my spider senses tingling. You have a single quotation inside an uwrapped string (sentence)

On the companion documentation for iOS they wrap the message and title inside double quotes:

        title: "Check this out!"
        message: "Something happened at home!"

Maybe wrap this in quotes too, just in case the ! is being rendered in some other way?

I have no quotes around title and message and it was ok on my automations.

I show top automation is fine, the bottom one is not working.

Thanks for the reply, I tried this but still had the same error message as above?

Here is actually working example.
First triggering the notifcation if iron is turned on for more that 30 minutes:

- id: iron_on_30_minutes
  alias: Iron Turned On for 30 minutes
  initial_state: True
  trigger:
  - platform: event
    event_type: timer.finished
    event_data:
      entity_id: timer.iron
  action:
  - service: notify.mobile_app_mireks_iphone
    data:
      title: "UWAGA !!!"
      message: "Żelazko jest włączone już ponad 30 minut!"
      data:
        push:
          badge: 1
          category: "iron_alarm"

Then the notification configuration:

ios:
  push:
    categories:
      - name: Iron Alarm
        identifier: 'iron_alarm'
        actions:
          - identifier: 'WYLACZ_ZELAZKO'
            title: 'Wyłącz żelazko'
            activationMode: 'background'
            authenticationRequired: false
            destructive: true
          - identifier: 'KONTYNUUJ'
            title: 'Kontynuuj prasowanie'
            activationMode: 'background'
            authenticationRequired: false
            destructive: true

And automations triggered by one of selection from notification:

# Turn off iron from notification
- id: turn_off_iron
  alias: Turn off iron from notification
  initial_state: True
  trigger:
  - platform: event
    event_type: ios.notification_action_fired
    event_data:
      actionName: WYLACZ_ZELAZKO
  action:
  - service: switch.turn_off
    entity_id: switch.iron_outlet

# Continue ironing for another 30 minutes
- id: continue_ironing
  alias: Continue ironing from notification
  initial_state: True
  trigger:
  - platform: event
    event_type: ios.notification_action_fired
    event_data:
      actionName: KONTYNUUJ
  action:
  - service: timer.start
    entity_id: timer.iron

This is working and passing validation, so hope you can find some analogies…

Thanks so much for this, I’ve managed to get it working although weirdly the actionable notification options only appear on my apple watch to select and not my iphone. My iphone only shows the title and message from the below and not the options to select but my watch does? I don’t suppose you’ve come across this before?

    data:
      title: "Location Alert"
      message: "Let Amy know where you are?"
      data:
        push:
          badge: 1
          category: "LOCATION_ALERT"

Title and message only are displayed by default and I found no way to change this. What you can do, however, is to 3D Touch or long press the message to unveil action buttons. I believe it was workig instantly some time ago, but then something changed (not sure if iOS or HA app) that action buttons are hidden now :frowning:

Thanks for this, all good and got it working!