BrazeEx.Api.MessagingLiveActivities (braze_ex v1.0.22)

API calls for all endpoints tagged MessagingLiveActivities.

Link to this section Summary

Functions

Update Live Activity

Use this endpoint to update and end Live Activities displayed by your iOS app. This endpoint requires additional setup.

Link to this section Functions

Link to this function

messages_live_activity_update_post(connection, opts \\ [])

@spec messages_live_activity_update_post(
  Tesla.Env.client(),
  keyword()
) :: {:ok, nil} | {:error, Tesla.Env.t()}

update-live-activity

Update Live Activity

Use this endpoint to update and end Live Activities displayed by your iOS app. This endpoint requires additional setup.

Before using this endpoint, you must register an activity with the Braze Swift SDK using the <code>launchActivity</code> method. Required request parameters will be defined during this step. Refer to Live Activities for more information on registration.

Once you have registered your activity, pass a JSON payload with updates to the Apple Push Notification service (APNs) through this endpoint. See Apple's documentation on updating your Live Activity with push notification payloads for more information.

prerequisites

Prerequisites

To use this endpoint, you’ll need to generate an API key with the messages.live_activity.update permission.

rate-limit

Rate limit

We apply the default Braze rate limit of 250,000 requests per hour to this endpoint, as documented in API rate limits.

request-parameters

Request parameters

ParameterRequiredData TypeDescription
app_idRequiredStringApp API identifier retrieved from Settings > Setup and Testing > API Keys.
activity_idRequiredStringWhen you register your Live Activity using <code>launchActivity</code>, you use the pushTokenTag parameter to name the Activity's push token to a custom string. <br> <br>Set activity_id to this custom string to define which Live Activity you want to update.
content_stateRequiredObjectYou define the ContentState parameters when you create your Live Activity. Pass the updated values for your ContentState using this object. <br> <br>The format of this request must match the shape you initially defined.
end_activityOptionalBooleanIf true, this request ends the Live Activity.
dismissal_dateOptionalDatetime <br>(ISO-8601 string)This parameter defines the time to remove the Live Activity from the user's UI. If this time is in the past, the Live Activity will be removed immediately.
stale_dateOptionalDatetime <br>(ISO-8601 string)This parameter tells the system when the Live Activity content is marked as outdated in the user's UI.
notificationOptionalObjectInclude an <code>apple_push</code> object to define a push notification. This behavior of this push notification depends on if the user is active or if the user is using a proxy device. {::nomarkdown} <br> <br> <br> <br> <br> <br>- If a notification is included and the user is active on their iPhone when the update is delivered, the updated Live Activity UI will slide down and display like a push notification. <br>- If a notification is included and the user is not active on their iPhone, their screen will light up to display the updated Live Activity UI on their lock screen. <br>- The notification alert will not display as a standard push notification. Additionally, if a user has a proxy device, like an Apple Watch, the alert will be displayed there.

response

Response

There are two status code responses for this endpoint: 201 and 4XX.

example-success-response

Example success response

A 201 status code is returned if the request was formatted correctly and we received the request. The status code 201 could return the following response body.

{
"message": "success"
}

example-error-response

Example error response

The 4XX class of status code indicates a client error. Refer to the API errors and responses article for more information about errors you may encounter.

The status code 400 could return the following response body.

{
  "error": "
Problem:
  message body does not match declared format
Resolution:
  when specifying application/json as content-type, you must pass valid application/json in the request's 'body' "
}

parameters

Parameters

  • connection (BrazeEx.Connection): Connection to server
  • opts (keyword): Optional parameters
    • :"Content-Type" (String.t):
    • :Authorization (String.t):
    • :body (String.t):

returns

Returns

  • {:ok, nil} on success
  • {:error, Tesla.Env.t} on failure