Live Activities for real-time business updates

Keep revenue, sales, uptime, deploys, jobs, AI agent runs, and any other live data from your business visible on your iPhone Lock Screen in real time.

Four Live Activity types

Choose the Live Activity type that best fits what you want to keep visible, then send updates whenever the underlying state changes.

Stats

Best for showing business numbers side by side: revenue, sales, new users, conversion, uptime, refunds, or any other value you want visible at a glance.

Stats Live Activity on iPhone

Progress

Best for tracking real-time progress with percentage, like tasks, backups, migrations, syncs, or uploads.

Progress Live Activity on iPhone

Start or update with PUT

Use PUT /api/live-activity/stream/:stream_key to start a Live Activity, then call it again with fresh data whenever something changes.

The stream_key is your name for the thing being tracked, like daily-revenue, prod-web-1, or nightly-backup. Use the same key each time so ActivitySmith knows which Live Activity to update.

The response tells you whether ActivitySmith started, updated, or skipped the update because nothing changed.

Metrics Live Activity on iPhone
await activitysmith.liveActivities.stream("prod-web-1", {
content_state: {
title: "Server Health",
subtitle: "prod-web-1",
type: "metrics",
metrics: [
{ label: "CPU", value: 9, unit: "%" },
{ label: "MEM", value: 45, unit: "%" },
],
},
});

End the Live Activity with DELETE

When the tracked metric, job, deploy, or incident is done, call DELETE /api/live-activity/stream/:stream_key with the same key to dismiss the Live Activity.

You can include an optional content_state with the final values. By default, iOS removes the Live Activity after two minutes. Set auto_dismiss_minutes to choose a different dismissal time, including 0 for immediate dismissal.

Finished Metrics Live Activity on iPhone
await activitysmith.liveActivities.endStream("prod-web-1", {
content_state: {
title: "Server Health",
subtitle: "prod-web-1",
type: "metrics",
metrics: [
{ label: "CPU", value: 7, unit: "%" },
{ label: "MEM", value: 38, unit: "%" },
],
auto_dismiss_minutes: 2,
},
});

Add an action button

Live Activities can include one optional action button. Use it to open the workflow behind a deploy, jump to a runbook, open a dashboard, or trigger a backend webhook.

Segmented Progress Live Activity with an Open Workflow action button
await activitysmith.liveActivities.stream("deploy-payments-api", {
content_state: {
title: "Deploying payments-api",
subtitle: "Running database migrations",
type: "segmented_progress",
number_of_steps: 5,
current_step: 3,
},
action: {
title: "Open Workflow",
type: "open_url",
url: "https://github.com/acme/payments/actions/runs/123456789",
},
});

Integrate in minutes

Pick your stack and start triggering Live Activities from your backend in a few lines of code.

Frequently asked questions

Can I show business metrics in iOS Live Activities?

Yes. If you can send the value through an API, ActivitySmith can show it in a Live Activity. Common examples include revenue, sales, signups, uptime, server health, job progress, and AI agent runs.

How does ActivitySmith know which Live Activity to update?

You choose a stable stream_key for the metric, process, or system you are tracking, such as daily-revenue, prod-web-1, or nightly-backup. Send the same stream_key again whenever the value changes.

What happens when I send a stream update?

If there is no active Live Activity for that stream_key, ActivitySmith starts one. If one already exists, ActivitySmith updates it with the new content_state.

Can I use ActivitySmith Live Activities for deployments, CI jobs, and AI agent runs?

Yes. Live Activities also work well for deployments, build pipelines, cron jobs, ETL runs, and AI agent workflows where teams want persistent lock-screen visibility while work is in progress.

Do I need to build my own iOS app to send Live Activities?

No. ActivitySmith provides the iOS app and delivery plumbing. Your backend sends the event data, and ActivitySmith delivers the Live Activity to your team's paired iPhone and iPad devices.

Keep the numbers that matter visible on your team's iOS devices

Give your team one persistent view of revenue, sales, uptime, jobs, and operational progress. When the work is done, the Live Activity is automatically dismissed. Pair it with Push Notifications for final outcomes and one-off alerts.