Edit Runs Migration
What You Get
- Unified async endpoint —
/edit/asyncmerged into/edit_runs, plus a new sync/editendpoint for testing createAndPoll()helper — Easy polling withclient.editRuns.createAndPoll()- Cleaner output structure — Edited file and filled values organized under
output - Better file info —
fileobject instead of justfileId - Simplified response shapes — Single object responses returned directly (no wrapper key)
POST /edit/async has been replaced by POST /edit_runs and is no longer available. The sync POST /edit endpoint has been updated with a new request/response format.
This guide covers all breaking changes to the edit endpoints.
Summary of Changes
SDK Changes
The SDK group and method names have been updated for consistency:
TypeScript
Python
Java
EditRun Schema
The EditRun schema has been restructured with file references changed from string IDs to objects, and output structure reorganized. Status-dependent fields are now required but nullable for a predictable response structure.
EditRun Response Example
EditConfig Schema
The config object now uses a named EditConfig schema with updated advanced options.
File Input Changes
The file input format has been updated to use a oneOf schema with renamed properties.
Request Example
POST /edit_runs (Create Edit Run)
Sync and Async Options
The 2026-02-09 API provides two ways to run edits:
- Sync (
POST /edit) — Returns the completed result directly. Intended for testing and onboarding only. - Async (
POST /edit_runs) — Returns immediately, pollGET /edit_runs/{id}or use webhooks. Recommended for production. See Async Processing for details on polling helpers.
Response Changes
GET /edit_runs/{id} (Get Edit Run)
Response Changes
The response no longer uses a polymorphic oneOf between EditRunStatus and EditRun. It now always returns the full EditRun object.
Response Example
DELETE /edit_runs/{id} (Delete Edit Run)
Response Changes
Response Example
Output Structure Changes
The output structure has been reorganized to separate the edited file from the filled values.
Migration Example
Failure Reasons
The new API documents additional failure reasons that may be returned:
SDK Method Reference
Need Help?
If you encounter any issues while migrating, please contact our support team at support@extend.app.

