> For the complete documentation index, see [llms.txt](https://docs.facephi.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.facephi.com/api-rest/midapi-v2/operations/get-file-keys.md).

# Get File Keys

Servicio que devuelve los assets almacenados en una operación, indexados por su contexto.

Es la vía recomendada para obtener las claves que se envían a los servicios de validación, en lugar de conservarlas en el cliente.

### Endpoint

```
GET /operation/{operationId}/file-keys
```

### Headers

| Nombre            | Tipo   | Requerido | Descripción                                                                                               |
| ----------------- | ------ | --------- | --------------------------------------------------------------------------------------------------------- |
| **Authorization** | string | **Sí**    | Token de consumer en formato `Bearer <token>`. Ver [Autenticación](/api-rest/midapi-v2/autenticacion.md). |
| **consumer-id**   | string | **Sí**    | Identificador del consumer.                                                                               |

### Parámetros de ruta

| Parámetro     | Tipo   | Requerido | Descripción                    |
| ------------- | ------ | --------- | ------------------------------ |
| `operationId` | string | **Sí**    | Identificador de la operación. |

### Respuestas

#### `200` Éxito

#### Parámetros de respuesta

| Parámetro           | Tipo   | Descripción                                                                                                                             |
| ------------------- | ------ | --------------------------------------------------------------------------------------------------------------------------------------- |
| `operationId`       | string | Identificador de la operación.                                                                                                          |
| `merchantReference` | string | La referencia indicada al [crear la operación](/api-rest/midapi-v2/operations/create-operation.md). No aparece si no se indicó ninguna. |
| `fileKeys`          | object | Objeto indexado por contexto, donde cada valor es la clave del asset de ese contexto. Los contextos sin asset almacenado no aparecen.   |

#### Ejemplo de respuesta

```json
{
  "operationId": "0192a3f4-7b21-7c44-9e1a-3f5b8c2d1e04",
  "merchantReference": "ORD-4417",
  "fileKeys": {
    "TOKEN_FRONT_DOCUMENT": "0192a3f4-7b21-7c44-9e1a-3f5b8c2d1e04/TOKEN_FRONT_DOCUMENT",
    "TOKEN_BACK_DOCUMENT": "0192a3f4-7b21-7c44-9e1a-3f5b8c2d1e04/TOKEN_BACK_DOCUMENT",
    "TOKEN_BEST_IMAGE": "0192a3f4-7b21-7c44-9e1a-3f5b8c2d1e04/TOKEN_BEST_IMAGE"
  }
}
```

{% hint style="info" %}
`merchantReference` se devuelve para reconciliar la operación con el sistema propio. No es un criterio de consulta: esta ruta se direcciona por `operationId`.
{% endhint %}

#### Otras respuestas

| Código | Descripción                                                                                                                                                                                    |
| ------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `401`  | Token ausente, inválido o caducado.                                                                                                                                                            |
| `403`  | El consumer no está aprovisionado con el servicio `OPERATION`.                                                                                                                                 |
| `404`  | La operación no existe o pertenece a otro consumer.                                                                                                                                            |
| `410`  | La operación declarada en `operation-id` ha caducado.                                                                                                                                          |
| `429`  | El consumer ha superado su límite de tasa de peticiones. La respuesta incluye `Retry-After` con los segundos de espera, y `X-RateLimit-Limit` y `X-RateLimit-Burst` con los umbrales vigentes. |
| `503`  | El servicio no está disponible temporalmente.                                                                                                                                                  |

El cuerpo de una respuesta de error tiene la forma descrita en [Middleware API v2](/api-rest/midapi-v2.md#respuestas-de-error).
