End Live Activity
End a Live Activity (legacy manual lifecycle)
Legacy manual lifecycle endpoint. For new integrations, use DELETE /live-activity/stream/{stream_key} to end a managed Live Activity stream. This endpoint remains supported for existing integrations and advanced lifecycle control. Ends a Live Activity and archives its lifecycle. Supports segmented_progress, progress, metrics, stats, alert, timer, and value activity types. For segmented_progress activities, you can send the latest number_of_steps here if the workflow changed after start. Use secondary_action for a second button on alert, progress, segmented_progress, and value Live Activities.
POST https://activitysmith.com/api/live-activity/endAuthentication#
Use your API key in the request header.
Authorization: Bearer $YOUR_API_KEYRequest examples#
import ActivitySmith from "activitysmith";const activitysmith = new ActivitySmith({ apiKey: process.env.ACTIVITYSMITH_API_KEY,});await activitysmith.liveActivities.end({ activity_id: "pLAr-Hnq9ZFW4sxlk43Lhbuok4GLh7UW", content_state: { title: "Nightly database backup", subtitle: "verify restore", number_of_steps: 3, current_step: 3, auto_dismiss_minutes: 2, },});Bodyapplication/json
End an existing Live Activity by activity_id.
metadataMetadataactivity_idstringrequiredtagsarray of string- Tags for notification history. Omit to keep existing Tags, supply an array to replace them, or send an empty array to clear them.
- Max Items:
20Item constraints:Min Length:1Max Length:64 content_stateContentStateEndrequiredactionLiveActivityActionsecondary_actionLiveActivityAction- Optional secondary action button. Supported for alert, progress, segmented_progress, and value Live Activities. Uses the same open_url, shortcuts://, and webhook shapes as action.
Additional Properties: false
segmented progress
{ "activity_id": "pLAr-Hnq9ZFW4sxlk43Lhbuok4GLh7UW", "content_state": { "title": "Nightly database backup", "subtitle": "verify restore", "number_of_steps": 3, "current_step": 3, "auto_dismiss_minutes": 2 }}progress
{ "activity_id": "pLAr-Hnq9ZFW4sxlk43Lhbuok4GLh7UW", "content_state": { "title": "EV Charging", "subtitle": "Added 200 mi range", "percentage": 100, "auto_dismiss_minutes": 2 }}metrics
{ "activity_id": "pLAr-Hnq9ZFW4sxlk43Lhbuok4GLh7UW", "content_state": { "title": "Server Health", "subtitle": "prod-web-1", "type": "metrics", "metrics": [ { "label": "CPU", "value": 0, "unit": "%" }, { "label": "MEM", "value": 0, "unit": "%" } ], "auto_dismiss_minutes": 2 }}open url action
{ "activity_id": "pLAr-Hnq9ZFW4sxlk43Lhbuok4GLh7UW", "content_state": { "title": "Deploying payments-api", "subtitle": "Production rollout complete", "number_of_steps": 5, "current_step": 5, "auto_dismiss_minutes": 10 }, "action": { "title": "Open Workflow", "type": "open_url", "url": "https://github.com/acme/payments-api/actions/runs/1234567890" }}timer
{ "activity_id": "pLAr-Hnq9ZFW4sxlk43Lhbuok4GLh7UW", "content_state": { "title": "Benchmark Run", "subtitle": "complete", "type": "timer", "auto_dismiss_minutes": 2 }}Responses#
200#
Live Activity ended
Content type: application/json
Schema: LiveActivityEndResponse#
Returned after a Live Activity end event is sent or queued.
successbooleanrequiredactivity_idstringrequireddevices_queuedintegerdevices_notifiedintegertimestampstring<date-time>required
Additional Properties: false
segmented progress
{ "success": true, "activity_id": "pLAr-Hnq9ZFW4sxlk43Lhbuok4GLh7UW", "devices_notified": 2, "devices_queued": 0, "timestamp": "2026-01-28T09:57:29.258Z"}403#
Forbidden (activity not owned by this API key account)
Content type: application/json
Schema: ForbiddenError#
errorstringrequiredmessagestringrequired
Additional Properties: true
forbidden
{ "error": "Forbidden", "message": "This API key cannot end this Live Activity"}429#
Rate limit exceeded
Content type: application/json
Schema: RateLimitError#
codestring- Enum:
["rate_limited"] errorstringrequiredmessagestringrequired
Additional Properties: false
rate limited
{ "error": "Rate limit exceeded", "message": "Too many requests, please try again later."}