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

# Confirmar el resultado

> Consulta solicitudes propias y reconcilia su efecto sobre la cuenta.

`GET /api/v1/trading/requests/{request_id}` obtiene el resultado MT5 de una apertura
o cierre enviado con el mismo token. También exige que la verificación de la cuenta
siga vigente. El ID procede de `answer.id` o `answer.ID` en la respuesta de envío.

```bash theme={"theme":{"light":"github-light","dark":"github-dark"}}
curl --fail-with-body "$API_BASE/api/v1/trading/requests/12345" \
  -H "Authorization: Bearer $MT5_API_TOKEN"
```

`12345` es un ejemplo de ID de solicitud, no un ticket de posición.

## Recogida persistente y consultas repetidas

La API recoge eventos MT5 por lotes en segundo plano usando la conexión física
que envió la solicitud. El GET del cliente lee RDS: no consume eventos de MT5.
El envío devuelve su ID sin esperar la ejecución. Puede haber una breve demora
hasta que el recolector guarde el resultado.

* `200`: resultado final guardado, incluso rechazo o ejecución parcial. Revisar códigos MT5.
* `202`: `{"status":"pending","request_id":1586,"result":null}`. Esperar al menos
  lo indicado en `Retry-After` (un segundo) y repetir únicamente este GET.
* `409` con `TRADE_RESULT_UNAVAILABLE`: no se conservó un resultado final. El campo
  `result` puede contener la última instantánea pública. Reconciliar posiciones y
  órdenes; no reenviar automáticamente la operación.
* `409` con `TRADE_RESULT_AMBIGUOUS`: MT5 reutilizó un ID entre sesiones para ese
  token. Reconciliar sin adivinar a qué operación corresponde.

El resultado final guardado se puede consultar después de reiniciar mientras el
token y la verificación sigan vigentes. Los resultados consumidos antes de instalar
esta mejora no se recuperan con la caché. Una caída entre consumir y guardar un
evento todavía puede perderlo; no disponible no significa operación fallida.

## Proceso de confirmación

1. Conserva la respuesta de envío asociada a la intención y a su clave de idempotencia.
2. Consulta el ID con el token que lo creó.
3. Examina el resultado MT5: recibir una respuesta HTTP correcta no implica ejecución.
4. Si aún no hay un resultado concluyente, espera antes de consultar otra vez.
   Usa un intervalo configurable, respetando el límite de tu token, y un plazo máximo local.
5. Cuando MT5 confirme ejecución o rechazo, consulta posiciones y órdenes para
   reconciliar el efecto real sobre la cuenta.
6. Si vence tu plazo sin poder confirmar, marca la intención como incierta y solicita soporte.

La respuesta usa una lista explícita de campos públicos. Mantiene `retcode` y
`answer`; si MT5 devuelve eventos agrupados por ID, conserva ese formato solo para
la solicitud consultada. También admite resultados planos y listas de eventos.
Los campos ausentes se omiten; no se inventan estados ni valores.

En `result` se conservan `ID`, `Retcode`, `DealID`, `OrderID`, `Volume` y `Price`;
los resultados planos también admiten `ResultRetcode`, `ResultDeal`, `ResultOrder`,
`ResultVolume` y `ResultPrice`. En el evento `answer` se conservan `IDClient`,
`Symbol`, `Type`, `TypeFill`, `Volume`, `PriceOrder`, `Position` y esos cinco campos
`Result*`. Se excluyen cuentas, login Manager, IP, comentarios, datos del gateway,
volúmenes extendidos, `ApiData` y campos nuevos no autorizados.

`Volume` en el evento `answer` es el volumen solicitado; `ResultVolume` es el
volumen ejecutado informado. Un ID de solicitud, orden o deal no debe confundirse
con el ticket de posición. Consulta posiciones para reconciliar el resultado.

## Casos que requieren atención

* Un `403` con `Trade request not owned by this token` indica que el ID no está
  registrado para ese token. Usar otro token no permite recuperar la solicitud original.
* Una verificación vencida debe renovarse para seguir consultando la cuenta.
* Un timeout al consultar el resultado permite repetir la consulta GET; no implica
  que debas reenviar la apertura o el cierre.
* Si no recibiste el ID, no hay búsqueda partner por clave de idempotencia.
  Reconcilia la cuenta y escala el caso si no puedes determinar qué ocurrió.

Sigue [la recuperación de resultados inciertos](/es/trading/idempotency).


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