# Introducción

### ¿Qué es la API de Trustless Work?

El **API REST de Trustless Work** te permite crear y gestionar **contratos de escrow descentralizados** en **Stellar** usando **Soroban** contratos inteligentes.

Úsala para desplegar escrows, financiarlos, seguir hitos y liberar fondos.

### URLs base

{% tabs %}
{% tab title="Mainnet" %}
{% code title="URL base (Mainnet)" %}

```
https://api.trustlesswork.com
```

{% endcode %}
{% endtab %}

{% tab title="Testnet" %}
{% code title="URL base (Testnet)" %}

```
https://dev.api.trustlesswork.com
```

{% endcode %}
{% endtab %}
{% endtabs %}

### Capacidades principales

* **Desplegar escrows** con roles, hitos y condiciones.
* **Financiar escrows** usando activos de Stellar (ejemplo: USDC).
* **Aprobar / actualizar hitos** para impulsar liberaciones.
* **Disputa y resolución** flujos (a nivel de escrow o a nivel de hito).
* **Liberar fondos** solo cuando se cumplan las condiciones.
* **Consultar estado** de escrows, hitos y saldos.

### Tipos de escrow

1. **Escrow de liberación única**
   * Una acción de liberación por el monto total.
2. **Escrow de liberaciones múltiples**
   * Pagos múltiples por hitos.
   * Cada hito puede ser aprobado, disputado y liberado de forma independiente.

### Límites de tasa

{% hint style="warning" %}
Límite: **50 solicitudes por 60 segundos** por cliente.
{% endhint %}

### Transacciones, firma y permisos

{% hint style="info" %}
La mayoría de los endpoints de escritura devuelven **XDR no firmado**.\
Debes firmar del lado del cliente con la cartera del rol correcto.
{% endhint %}

Las acciones son **restringidas por rol** (aprobar, disputar, resolver, liberar).

### Mapa de endpoints (alto nivel)

Usa Swagger para la especificación completa. Estos grupos cubren la mayoría de las integraciones:

#### Despliegue

* `/deployer/single-release`
* `/deployer/multi-release`

#### Financiación

* `/escrow/{type}/fund-escrow`

#### Hitos

* `/escrow/{type}/approve-milestone`
* `/escrow/{type}/change-milestone-status`

#### Liberación

* `/escrow/{type}/release-funds` (único)
* `/escrow/{type}/release-milestone-funds` (múltiple)

#### Disputas

* `/escrow/{type}/dispute-escrow`
* `/escrow/{type}/resolve-dispute`
* `/escrow/{type}/dispute-milestone` (múltiple)
* `/escrow/{type}/resolve-milestone-dispute` (múltiple)

#### Actualizaciones

* `/escrow/{type}/update-escrow`

#### Consultas / helpers

* `/escrow/get-multiple-escrow-balance`
* `/helper/get-escrows-by-signer`
* `/helper/get-escrows-by-role`
* `/helper/set-trustline`
* `/helper/send-transaction`

### Tarifas

Mainnet cobra una **tarifa de protocolo del 0.3%**.

### Documentación de la API (Swagger)

{% tabs %}
{% tab title="Mainnet" %}
{% embed url="<https://api.trustlesswork.com/docs>" %}
{% endtab %}

{% tab title="Testnet" %}
{% embed url="<https://dev.api.trustlesswork.com/docs>" %}
{% endtab %}
{% endtabs %}

### Recursos para desarrolladores

* Mapa para desarrolladores: <https://www.trustlesswork.com/developers>

### Repositorio de GitHub

{% embed url="<https://github.com/Trustless-Work>" %}
