---
title: "Natural-language editing, propose half: instruction → typed edit ops + preview"
method: POST
path: "/v1/apps/{id}/edit-proposals"
tags: ["Apps"]
---

# Natural-language editing, propose half: instruction → typed edit ops + preview

`POST /v1/apps/{id}/edit-proposals`

## Request

- Base URL: `https://api.talonic.com`
- URL: `https://api.talonic.com/v1/apps/{id}/edit-proposals`
- Auth: HTTP bearer

Nothing persists — the person reviews the ops and applies them explicitly via POST /v1/apps/{id}/edit-proposals/apply.

## Path parameters

- `id` string, uuid, required

## Request body

- object
  - `instruction` string, required: Plain-language change request translated into typed edit ops.

## Response `200`

The proposal — ops, summary, open questions, warnings, and a diff preview (not persisted).

- object
  - `ops` object[]
  - `summary` string
  - `open_questions` string[]
  - `warnings` string[]
  - `preview` object: The content the ops produce

## Other responses

- `501`: Natural-language editing is not available in this deployment.

---

[API](https://skmtc.dev/talonic/apis/talonic-api.md) · [All operations](https://skmtc.dev/talonic/apis/talonic-api/llms.txt) · [OpenAPI document](https://skmtc.dev/talonic/apis/talonic-api/revisions/678fe5f8c9c3?raw)
