---
title: "Desktop gateway alive ping (defers cloud scheduler when fresh)"
method: POST
path: "/v1/cloud/runtime/heartbeat"
tags: ["v1", "Cloud Runtime"]
---

# Desktop gateway alive ping (defers cloud scheduler when fresh)

`POST /v1/cloud/runtime/heartbeat`

## Request

- Base URL: `https://memory.papr.ai`
- URL: `https://memory.papr.ai/v1/cloud/runtime/heartbeat`
- Auth: one of:
  - API key in header `X-API-Key`
  - HTTP bearer

## Request body

- DesktopHeartbeatRequest
  - `external_user_id` string, nullable: Parse _User.objectId of the acting user (desktop OAuth). Used for ownership-scoped cloud operations instead of the API key user.
  - `syncProtocol` string, nullable: Desktop sync capability version (v2 | v3)
  - `appVersion` string, nullable: Desktop gateway semver for straggler tracking
  - `namespaceId` string, nullable: Active namespace from desktop client
  - `syncV3Capabilities` string[], nullable: Enabled Sync V3 flags on this desktop build

## Response `200`

Successful Response

- DesktopHeartbeatResponse
  - `recordedAt` string, required
  - `staleAfterSeconds` integer, required
  - `desktopAwake` boolean, required
  - `pendingCloudRuns` JobRuntimePatch[]
    - `jobId` string, required
    - `status` string, required
    - `lastRunAt` string, nullable
    - `completedAt` string, nullable
    - `exitCode` integer, nullable
    - `error` string, nullable
    - `lastOutput` string, nullable
    - `scheduleState` JobScheduleStatePatch
      - `nextRunAt` string, nullable
      - `lastScheduledRunAt` string, nullable
      - `lastTriggeredAt` string, nullable
      - `currentIdempotencyKey` string, nullable
      - `lastIdempotencyKey` string, nullable
      - `pendingDueAtForApproval` string, nullable
    - `recordedAt` string, required
    - `source` string, nullable
    - `jobName` string, nullable
    - `orgId` string, nullable
    - `namespaceId` string, nullable
    - `userId` string, nullable
    - `notificationId` string, nullable

## Other responses

- `422`: Validation Error

## Changes

- **2026-10-16** `0e7a5c0d125d`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/papr-ai/apis/papr-memory-api/changes/v1/cloud/runtime/heartbeat/post.md)

---

[API](https://skmtc.dev/papr-ai/apis/papr-memory-api.md) - [All operations](https://skmtc.dev/papr-ai/apis/papr-memory-api/llms.txt) - [OpenAPI document](https://skmtc.dev/papr-ai/apis/papr-memory-api/revisions/6fc381dc78b3?raw)
