---
title: "Emit deploy-health notifications (drift / failure)"
method: POST
path: "/cron/deploy-health"
tags: ["Cron"]
---

# Emit deploy-health notifications (drift / failure)

`POST /cron/deploy-health`

## Request

- Base URL: `https://api.apphandoff.com/api`
- URL: `https://api.apphandoff.com/api/cron/deploy-health`
- Auth: none required

Internal endpoint for the deploy-health guard. Accepts drift + deploy-failure events and emits in-portal notifications (deploy_drift / deploy_failed), deduped per app+kind. Protected by CRON_SECRET header.

## Request body

- object
  - `events` object[], required

## Response `200`

Events processed (emitted/skipped counts)

- object

## Other responses

- `400`: Invalid body
- `401`: Missing or invalid CRON_SECRET

---

[API](https://skmtc.dev/apphandoff/apis/apphandoff-api.md) · [All operations](https://skmtc.dev/apphandoff/apis/apphandoff-api/llms.txt) · [OpenAPI document](https://skmtc.dev/apphandoff/apis/apphandoff-api/revisions/9f138fe46d56?raw)
