---
title: "Admin Backfill Embeds"
method: POST
path: "/v1/admin/articles/backfill-embeds"
---

# Admin Backfill Embeds

`POST /v1/admin/articles/backfill-embeds`

## Request

- Base URL: `https://api.storyflo.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.storyflo.com/v1/admin/articles/backfill-embeds`
- Auth: none declared

Re-scan legacy articles with the embed_detector (added in commit
da3d16d) and populate ``parsed_json['embeds']`` for rows ingested
before the detector existed.

Body:
  - ``since``: optional ISO datetime — only consider rows created
    after this (default: 60 days ago).
  - ``limit``: max rows to scan (default 200, max 5000).
  - ``dry_run``: if True (default), count only — no writes.
  - ``only_if_no_embeds``: if True (default), skip rows whose
    ``parsed_json['embeds']`` is already a non-empty list.

Returns counts and a ``by_type`` breakdown of newly detected
embeds. Per-row exceptions are caught + logged — one malformed
article never poisons the batch.

## Headers

- `x-storyflo-email-token` string, nullable

## Request body

- object

## Response `200`

Successful Response

- object

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/storyflo/apis/storyflo-inference-router.md) · [All operations](https://skmtc.dev/storyflo/apis/storyflo-inference-router/llms.txt) · [OpenAPI document](https://skmtc.dev/storyflo/apis/storyflo-inference-router/revisions/c3a1a735ac7a?raw)
