I think you have to update/replace the current 30311 event with status ended and timestamp and ZS picks it up automatically.
"Live Activity management clients are expected to constantly update kind:30311 during the event. Clients MAY choose to consider status=live events after 1hr without any update as ended. The starts and ends timestamp SHOULD be updated when the status changes to and from live"
Or is there something you need to do something specific on the ZS backend. What docs have ZS btw, I haven't seen those yet :)