saved

Retry Import

Retry a failed (or needs-review) import.

Two routes, both leaving the list back in importing and streaming to the same GET /saved/import/{list_id}/stream the initial import used:

  • replay — for a failed list with a stored run. hatchet.runs. aio_replay(hatchet_run_id) resumes the stored run from its failed task, reusing the outputs of tasks that already succeeded (no re-fetch, no re-extract). A failed run by definition has a failed task to re-run; replay of a fully-succeeded run is deliberately never relied on.
  • fresh — a brand-new enqueue (new run). Taken when force=true, when there's no stored run to replay (hatchet_run_id IS NULL — e.g. a pre-column list), automatically for failed_reason= 'post_unavailable' (replaying a deleted/private post just re-fails on the same cached step, so "the creator fixed it" needs a real re-fetch), and always for needs_review: that run's tasks all succeeded (finalize just judged the result thin), so there's nothing failed to replay — retrying a thin list should genuinely re-run it.

The side-effect (replay/enqueue) runs BEFORE the status flip is committed: if it throws, the request 500s while the list stays failed/needs_review — still retryable. Committing first would strand a list in 'importing' that no workflow will ever finish (and this route's own status gate would then 409 every future retry).

post/saved/import/{list_id}/retry

Path parameters

list_idstring uuid required

Query parameters

forceboolean

Response

Successful Response

list_idstring uuid required
statusstring required
already_importedboolean

Changes

No recorded changes to this endpoint across all 1 revision of this API.