---
title: "Reconcile Recordings"
method: POST
path: "/api/internal/reconcile-recordings"
tags: ["Internal — Staff Tools", "internal"]
---

# Reconcile Recordings

`POST /api/internal/reconcile-recordings`

## Request

- Base URL: `https://api.thebetterhire.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://api.thebetterhire.ai/api/internal/reconcile-recordings`
- Auth: HTTP bearer

Backfill Daily recordings that finished but never mirrored to S3 (ADR-0034
P3.11). With `interview_id`, mirror that one interview now; without it, sweep
recent completed pipecat interviews. The on-demand twin of the boot-time sweep —
use it to recover a recording the webhook + /end poll both missed (e.g. after
deploy churn). Internal-staff only (404 otherwise). Idempotent — a no-op when
the recording is already mirrored or not finished at Daily yet.

## Query parameters

- `interview_id` string, nullable
- `limit` integer
- `max_age_hours` integer

## Response `200`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/thebetterhire/apis/interanalysis-b2b-api.md) · [All operations](https://skmtc.dev/thebetterhire/apis/interanalysis-b2b-api/llms.txt) · [OpenAPI document](https://skmtc.dev/thebetterhire/apis/interanalysis-b2b-api/revisions/c8ad03e900ea?raw)
