Resolver Disputa

Resolve disputas de escrow distribuindo fundos para o aprovador e o provedor de serviço conforme determinado pelo resolvedor de disputas.

Cabeçalhos

Nome
Valor

Content-Type

application/json

x-api-key

<token>

Open API

post
Autorizações
Corpo
contractIdstringObrigatório

ID (address) that identifies the escrow contract

Example: CAZ6UQX7...
disputeResolverstringObrigatório

Address of the user defined to resolve disputes in an escrow

Example: GDISPUTE...XYZ
Respostas
201

This endpoint returns an unsigned transaction in XDR format. This XDR is then used to sign the transaction using the “/helper/send-transaction” endpoint.

application/json
post
/escrow/single-release/resolve-dispute
POST /escrow/single-release/resolve-dispute HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 188

{
  "contractId": "CAZ6UQX7...",
  "disputeResolver": "GAPPROVER1234567890...",
  "distributions": [
    {
      "address": "GAPPROVER1234567890...",
      "amount": 20
    },
    {
      "address": "GRECIPIENT1234567890...",
      "amount": 30
    }
  ]
}
{
  "status": "SUCCESS",
  "unsignedTransaction": "AAAAAgAAAAAtWsgedQ...."
}

O que este endpoint retorna?

Este endpoint retorna a transação não assinada para que a transação possa ser assinada por meio da carteira do cliente.

Exemplo de uso:

import axios from "axios";

const http = axios.create({
  baseURL: "https://dev.api.trustlesswork.com",
  timeout: 10000,
  headers: {
    "Content-Type": "application/json",
    "x-api-key": your_api_key,
  },
});

export const useExample = async () => {
    // Obter o endereço do assinante
    const { address } = await kit.getAddress();

    const response = await http.post(
      "/escrow/single-release/resolve-dispute",
      {
        // corpo solicitado para o endpoint
      },
    ); 
    
    // Obter o hash da transação não assinada
    const { unsignedTransaction } = response.data;

    // Assinar a transação pela carteira
    const { signedTxXdr } = await signTransaction(unsignedTransaction, {
      address,
      networkPassphrase: WalletNetwork.TESTNET,
    });

    // Enviar a transação para a Rede Stellar
    const tx = await http.post("/helper/send-transaction", {
      signedXdr: signedTxXdr,
    });

    const { data } = tx;

    return data;
}

Atualizado

Isto foi útil?