---
title: "Receive a signed status transition for one organization-scoped upload."
method: POST
path: "uploadStatusChanged"
---

# Receive a signed status transition for one organization-scoped upload.

`POST uploadStatusChanged` (webhook)

The callback URL and signing secret are configured per tenant through a secure channel. Consumers must deduplicate event_id, enforce immutable sequence ordering, and recover gaps through the canonical status endpoint.

## Payload

- object
  - `event_id` string, required
  - `upload_id` string, required
  - `pipeline_id` string
  - `sequence` integer, required
  - `status` string, required
  - `stage` string
  - `occurred_at` string, date-time, required
  - `request_id` string
  - `trace_id` string

## Acknowledgement `202`

Event accepted idempotently

## Other responses

- `400`: Invalid signature or event shape
- `409`: Duplicate, stale, or out-of-order sequence

---

[API](https://skmtc.dev/basecite/apis/basecite-stable-ai-context-api.md) · [All operations](https://skmtc.dev/basecite/apis/basecite-stable-ai-context-api/llms.txt) · [OpenAPI document](https://skmtc.dev/basecite/apis/basecite-stable-ai-context-api/revisions/2a269a68ba07?raw)
