> ## Documentation Index
> Fetch the complete documentation index at: https://docs.fetchhive.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Aprobaciones de acciones del agente

> Qué pausa una ejecución, quién recibe el aviso y cómo continúa una llamada de API

Las acciones de integración con efecto y las acciones destructivas pausan la ejecución hasta que alguien las aprueba. Las acciones de solo lectura no se pausan. Las reglas están en el workspace, en Integraciones, en Ajustes de aprobación.

## Quién recibe el aviso

El propietario del workspace y quien pidió la acción reciben un correo. Telegram se usa cuando ese canal está conectado. La misma solicitud aparece en la página Aprobaciones del panel.

## Qué ve la llamada de API

La invocación con y sin streaming se detiene en la primera ronda de aprobación.

Una respuesta sin streaming incluye `status`, `run_id` y `thread_id`. `status` es `completed` o `awaiting_approval`. `pending_tool_approvals` solo está presente mientras la ejecución espera. `denied_tool_calls` solo está presente cuando una política denegó una llamada, con `reason` `policy_deny`. El texto de la respuesta incluye `[Waiting for approval: …]`.

Una llamada con streaming envía un evento `tool_approval` y luego los mismos campos en el evento `usage` final.

`review_url` abre `https://app.fetchhive.com/{workspace_id}/approvals?approval={approval_id}` después de iniciar sesión. El token del correo no está en la respuesta de la API. Los valores de argumentos que parecen secretos se sustituyen por `[redacted]`.

Si la respuesta también incluye `pending_delegations`, responde primero la aprobación de la herramienta.

Con las aprobaciones desactivadas, `status` es `completed` y se omiten los arrays de aprobación.

## Cómo responder

Abre el enlace del panel, usa el enlace del correo, o decide con una clave de API:

`POST /v1/public/workspaces/{workspace_id}/tool_action_approvals/{id}/decide`

`decision` es `allow_once` o `deny`. `always_allow` devuelve `422` `always_allow_requires_dashboard`. Una segunda decisión devuelve `409`. Una aprobación caducada devuelve `410`.

## Cómo continuar

Vuelve a invocar el mismo agente y `thread_id` con `decided_tool_approvals: [{ "approval_id": "…" }]`. Envía `message` vacío o un mensaje nuevo. Solo se lee `approval_id`.

Si omites `decided_tool_approvals` y reutilizas el hilo, Fetch Hive carga las aprobaciones terminales de ese hilo que aún no se han reanudado. Envía los ids cuando puedas.

Un disparador webhook o una llamada con `async.callback_url` se reanuda sola después de la decisión. El callback recibe `agent.awaiting_approval` y luego `agent.completed` con `resumed_from_run_id`.

## Caducidad y límite de rondas

Una aprobación caduca 24 horas después de crearse, salvo que `TOOL_APPROVAL_TTL_HOURS` esté definido. Una cadena de ejecución se detiene tras cinco rondas de aprobación y añade `[Approval limit reached]`.

## Permitir siempre

Permitir siempre se configura en el panel. Una clave de API no puede crear esa política.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.