Aprobar hito
Responsable de modificar la propiedad "flag" de un hito específico en el escrow para aprobar ese hito.
Encabezados
Nombre
Valor
Content-Type
application/json
x-api-key
<token>
Open API
post
Autorizaciones
Cuerpo
contractIdstringRequeridoExample:
ID (address) that identifies the escrow contract
CAZ6UQX7...milestoneIndexstringRequeridoExample:
Position that identifies the milestone within the group of milestones in the escrow
1approverstringRequeridoExample:
Address of the entity requiring the service
GCLIENT...XYZRespuestas
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
400
Bad request
401
Unauthorized access
429
Too Many Requests
500
Possible errors:
- Escrow not found
- Only the approver can change milestone flag
- You cannot approve a milestone that has already been approved previously
- The milestone status cannot be empty
- Escrow initialized without milestone
- Invalid milestone index
- An unexpected error occurred
application/json
post
/escrow/multi-release/approve-milestonePOST /escrow/multi-release/approve-milestone HTTP/1.1
Host:
Content-Type: application/json
Accept: */*
Content-Length: 85
{
"contractId": "CAZ6UQX7...",
"milestoneIndex": "1",
"approver": "GAPPROVER1234567890..."
}{
"status": "SUCCESS",
"unsignedTransaction": "AAAAAgAAAAAtWsgedQ...."
}
¿Qué devuelve este Endpoint?
Este endpoint devuelve la transacción sin firmar para que la transacción pueda ser firmada mediante la cartera del cliente.
Ejemplo 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 () => {
// Obtener la dirección del firmante
const { address } = await kit.getAddress();
const response = await http.post(
"/escrow/multi-release/approve-milestone",
{
// cuerpo solicitado para el endpoint
},
);
// Obtener el hash de la transacción sin firmar
const { unsignedTransaction } = response.data;
// Firmar la transacción con la cartera
const { signedTxXdr } = await signTransaction(unsignedTransaction, {
address,
networkPassphrase: WalletNetwork.TESTNET,
});
// Enviar la transacción a la red Stellar
const tx = await http.post("/helper/send-transaction", {
signedXdr: signedTxXdr,
});
const { data } = tx;
return data;
}Última actualización
¿Te fue útil?