# Esquema

En esta sección podrás ver el esquema de los tipos de escrow que ofrece Trustless Work. Con estos diagramas podrás conocer la estructura y las propiedades de un escrow tanto en su versión de Liberación Única como en su versión de Liberaciones Múltiples.

## Esquema de Escrow de Liberación Única

#### Cuerpo del escrow:

| Clave        | Tipo             | Descripción                                                                     |
| ------------ | ---------------- | ------------------------------------------------------------------------------- |
| engagementId | string           | Identificador único para el escrow                                              |
| title        | string           | Nombre del escrow                                                               |
| roles        | Objeto Roles     | Roles que componen la estructura del escrow                                     |
| description  | string           | Texto que describe la función del escrow                                        |
| amount       | number           | Cantidad a transferir al completar los hitos del escrow                         |
| plataformFee | number           | Comisión que la plataforma recibirá cuando el escrow se complete                |
| milestones   | Hito\<Array>     | Objetivos a completar para definir el escrow como finalizado                    |
| flags        | Objeto Flags     | Flags que validan ciertos estados de vida del escrow                            |
| trustline    | Objeto Trustline | Información sobre la trustline que gestionará el movimiento de fondos en escrow |

#### Roles:

| Nombre           | Tipo   | Descripción                                                                                 |
| ---------------- | ------ | ------------------------------------------------------------------------------------------- |
| approver         | string | Dirección de la entidad que requiere el servicio.                                           |
| serviceProvider  | string | Dirección de la entidad que presta el servicio.                                             |
| plataformAddress | string | Dirección de la entidad que posee el escrow                                                 |
| releaseSigner    | string | Dirección del usuario encargado de liberar los fondos del escrow al proveedor del servicio. |
| disputeResolver  | string | Dirección a cargo de resolver disputas dentro del escrow.                                   |
| receiver         | string | Dirección a la que se enviarán los fondos del escrow                                        |

#### Hito:

| Nombre      | Tipo              | Descripción                                                        |
| ----------- | ----------------- | ------------------------------------------------------------------ |
| description | string            | Texto que describe la función del hito.                            |
| status      | string            | Estado del hito. Ej.: Aprobado, En disputa, etc...                 |
| evidence    | string (opcional) | Evidencia del trabajo realizado por el proveedor del servicio.     |
| approved    | boolean           | Indicador que señala si un hito ha sido aprobado por el aprobador. |

#### Flags:

| Nombre   | Tipo    | Descripción                                                           |
| -------- | ------- | --------------------------------------------------------------------- |
| disputed | boolean | Indicador que señala que un escrow está en disputa.                   |
| released | boolean | Indicador que señala que los fondos del escrow ya han sido liberados. |
| resolved | boolean | Indicador que señala que un escrow en disputa ya ha sido resuelto.    |

#### Trustline:

| Nombre  | Tipo   | Descripción                                                                           |
| ------- | ------ | ------------------------------------------------------------------------------------- |
| address | string | Dirección pública que establece permiso para aceptar y usar un token específico.      |
| symbol  | string | Abreviatura oficial que representa el token en billeteras, exchanges y documentación. |

### Flujo de Escrow de Liberación Única:

<figure><img src="/files/a56a5ef0f723a9263563fe346f62e4abb22f32d5" alt=""><figcaption></figcaption></figure>

## Esquema de Escrow de Liberaciones Múltiples

| Clave        | Tipo             | Descripción                                                                     |
| ------------ | ---------------- | ------------------------------------------------------------------------------- |
| engagementId | string           | Identificador único para el escrow                                              |
| title        | string           | Nombre del escrow                                                               |
| description  | string           | Texto que describe la función del escrow                                        |
| roles        | Objeto Roles     | Roles que componen la estructura del escrow                                     |
| plataformFee | number           | Comisión que la plataforma recibirá cuando el escrow se complete                |
| milestones   | Hito\<Array>     | Objetivos a completar para definir el escrow como finalizado                    |
| trustline    | Objeto Trustline | Información sobre la trustline que gestionará el movimiento de fondos en escrow |

#### Roles:

| Nombre           | Tipo   | Descripción                                                                                 |
| ---------------- | ------ | ------------------------------------------------------------------------------------------- |
| approver         | string | Dirección de la entidad que requiere el servicio.                                           |
| serviceProvider  | string | Dirección de la entidad que presta el servicio.                                             |
| plataformAddress | string | Dirección de la entidad que posee el escrow                                                 |
| releaseSigner    | string | Dirección del usuario encargado de liberar los fondos del escrow al proveedor del servicio. |
| disputeResolver  | string | Dirección a cargo de resolver disputas dentro del escrow.                                   |

#### Hito:

| Nombre      | Tipo              | Descripción                                                    |
| ----------- | ----------------- | -------------------------------------------------------------- |
| description | string            | Texto que describe la función del hito.                        |
| status      | string            | Estado del hito. Ej.: Aprobado, En disputa, etc...             |
| flags       | Objeto Flags      | Flags que validan ciertos estados de vida del escrow.          |
| evidence    | string (opcional) | Evidencia del trabajo realizado por el proveedor del servicio. |
| amount      | number            | Cantidad a transferir al completar los hitos del escrow.       |
| receiver    | string            | Dirección a la que se enviarán los fondos del escrow           |

#### Flags:

| Nombre   | Tipo    | Descripción                                                           |
| -------- | ------- | --------------------------------------------------------------------- |
| disputed | boolean | Indicador que señala que un escrow está en disputa.                   |
| released | boolean | Indicador que señala que los fondos del escrow ya han sido liberados. |
| resolved | boolean | Indicador que señala que un escrow en disputa ya ha sido resuelto.    |
| approved | boolean | Indicador que señala si un hito ha sido aprobado por el aprobador.    |

#### Trustline:

| Nombre  | Tipo   | Descripción                                                                           |
| ------- | ------ | ------------------------------------------------------------------------------------- |
| address | string | Dirección pública que establece permiso para aceptar y usar un token específico.      |
| symbol  | string | Abreviatura oficial que representa el token en billeteras, exchanges y documentación. |

### Flujo de Escrow de Liberaciones Múltiples:

<figure><img src="/files/98e019c3ed7dbbd3956286c98e0970555e2628eb" alt=""><figcaption></figcaption></figure>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.trustlesswork.com/trustless-work/v1-es/introduccion/developer-resources/schema.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
