# `channel.claims.act` Approve, reject (reason + file) or raise an issue on a marketplace claim; restock per policy. - **method + path**: `POST /v1/channel/{ext}/claims/{claim}/act` - **TR label**: Pazaryeri iadesi işlendi - **auth**: authenticated · scope gates: any of `admin`, `orders:read`, `orders:write` — “Siparişleri yalnızca mağaza sahibi görebilir”; then any of `admin`, `orders:write` — “Bu işlem için yetki yok” - **agentPolicy**: `propose` — a live mutation — an Ajan token's call is recorded into its open proposal (202 `proposed: true`); a Geliştirici token executes it directly. - **effects**: `provider`, `db` - **idempotency**: server — the platform derives the key - **wraps**: [`order.return.request`](/reference/commands/order.return.request), [`order.return.approve`](/reference/commands/order.return.approve), [`order.return.receive`](/reference/commands/order.return.receive), [`order.return.reject`](/reference/commands/order.return.reject) Machine-readable body schema: [/schemas/routes/channel.claims.act.json](/schemas/routes/channel.claims.act.json). ## Body ```json { "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "properties": { "action": { "type": "string", "enum": [ "approve", "reject", "issue" ] }, "claimItemIds": { "maxItems": 50, "type": "array", "items": { "type": "string", "maxLength": 64 } }, "reasonId": { "type": "string", "maxLength": 16 }, "note": { "type": "string", "maxLength": 500 }, "restock": { "type": "boolean" } }, "required": [ "action" ], "additionalProperties": false } ```