Push

Update a Live Activity

Changed on

Sends new content state to every running copy of the contact's activity (one per device that reported an update token). Each request carries a fixed timestamp, so a retried or late delivery never replaces newer content. Returns tokenCount 0 when no running copy has reported a token. Requires the transactional:send scope.

post/push/live-activities/update

Request

  • Base URL
    https://api.sequenzy.com/api/v1
  • URL
    https://api.sequenzy.com/api/v1/push/live-activities/update
  • Auth
    HTTP bearer

Request body

emailstring

Contact whose activity it is. Provide email or subscriberId; activities are always addressed per contact, so a token registered under the same activityId by another device never receives this content.

subscriberIdstring

Subscriber whose activity it is.

activityIdstring required

Your id for the activity, chosen when it starts.

contentStateobject required

Your Swift ContentState as JSON. Date fields decode as seconds since 2001-01-01 unless your struct decodes them differently.

priority'high' | 'low'

high (default) delivers immediately and counts against Apple's Live Activity update budget; low (apns-priority 5) does not. Pushes with an alert always go at high priority.

relevanceScorenumber

Orders a person's concurrent activities; higher shows first.

Example request

{
  "activityId": "order-1234",
  "contentState": {
    "status": "out_for_delivery",
    "minutesAway": 8
  },
  "alert": {
    "title": "Your order is on its way",
    "body": "Arriving in about 8 minutes."
  },
  "staleDate": 1760979600
}

Response

Queued (or nothing to send when tokenCount is 0)

successboolean
event'start' | 'update' | 'end'
activityIdstring
tokenCountinteger

Devices the push was queued for. 0 means nothing was sent.

jobIdsstring[]

Queued delivery jobs, one per batch of 100 devices.

messagestring

Example response

{
  "activityId": "order-1234",
  "tokenCount": 1,
  "message": "Update queued for 1 device."
}

Changes