Atualizar Escrow
Este endpoint permite que você altere as propriedades de um escrow desde que uma série de requisitos seja atendida, os quais serão mencionados nesta seção.
Requisitos para usar:
Apenas a entidade com o papel de plataforma tem permissão para executar este endpoint
Você não pode alterar as propriedades de um escrow que já possui um marco aprovado
Você não pode alterar as propriedades de um escrow que já possui fundos
Você não pode alterar as propriedades de um escrow que está em disputa.
Cabeçalhos
Content-Type
application/json
x-api-key
<token>
Funções:
aprovador
string
Endereço da entidade que requisita o serviço.
prestadorDeServiço
string
Endereço da entidade que fornece o serviço.
endereçoDaPlataforma
string
Endereço da entidade que possui o escrow
assinanteDeLiberação
string
Endereço do usuário responsável por liberar os fundos do escrow para o prestador de serviço.
resolvedorDeDisputa
string
Endereço responsável por resolver disputas dentro do escrow.
recebedor
string
Endereço para onde os recursos do escrow serão enviados
Marco:
descrição
string
Texto descrevendo a função do marco.
status
string
Status do marco. Ex: Aprovado, Em disputa, etc...
aprovado
booleano
Indicador que sinaliza se um marco foi aprovado pelo aprovador.
Sinalizadores
contestada
booleano
Indicador que sinaliza que um escrow está em disputa.
liberado
booleano
Indicador que sinaliza que os fundos em escrow já foram liberados.
resolvido
booleano
Indicador que sinaliza que um escrow disputado já foi resolvido.
Trustline
endereço
string
Endereço público estabelecendo permissão para aceitar e usar um token específico.
Open API
Entity that signs the transaction that deploys and initializes the escrow
GSIGN...XYZID (address) that identifies the escrow contract
CAZ6UQX7...Escrow data to update
This endpoint returns an unsigned transaction in XDR format. This XDR is then used to sign the transaction using the “/helper/send-transaction” endpoint.
Bad request
Unauthorized access
Too Many Requests
PUT /escrow/single-release/update-escrow HTTP/1.1
Host:
Content-Type: application/json
Accept: */*
Content-Length: 846
{
"signer": "GAPPROVER1234567890...",
"contractId": "CAZ6UQX7...",
"isActive": true,
"escrow": {
"signer": "GAPPROVER1234567890...",
"engagementId": "ENG12345",
"title": "Project Title",
"description": "This is a detailed description of the project.",
"roles": {
"approver": "GAPPROVER1234567890...",
"serviceProvider": "GAPPROVER1234567890...",
"platformAddress": "GAPPROVER1234567890...",
"releaseSigner": "GAPPROVER1234567890...",
"disputeResolver": "GAPPROVER1234567890...",
"receiver": "GAPPROVER1234567890..."
},
"amount": 1000,
"platformFee": 50,
"milestones": [
{
"description": "test1",
"status": "pending",
"evidence": "Any evidence that the milestone is completed"
},
{
"description": "test2",
"status": "pending",
"evidence": "Any evidence that the milestone is completed"
}
],
"flags": {
"disputed": false,
"released": false,
"resolved": false
},
"trustline": {
"address": "GAPPROVER1234567890..."
}
}
}{
"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.put(
"/escrow/single-release/update-escrow",
{
// 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?