Cómo obtener el estado de un intent
En esta guía, aprenderás cómo recuperar el estado actual de un intent en Kamin Ledger y explorar su historial de estados usando la API de lectura de intents.
Requisitos previos
Antes de comenzar:
- Tienes un handle de intent que deseas inspeccionar.
- Tienes un token Bearer válido para autenticación.
- Entiendes que:
- Todas las solicitudes
GETrequieren un token Bearer. - Los intents son los únicos registros que comienzan con el estado
pending.
- Todas las solicitudes
Para recursos relacionados, consulta:
Objetivo
Recuperar el estado actual y el historial de estados de un intent específico consultando su handle.
Formato del endpoint
GET <baseURL>/v2/intents/{intentHandle}Encabezados
Authorization: Bearer <your_token_here>
x-ledger: <ledger-handle>Ejemplo de solicitud
import axios from 'axios';
import { generateJwtToken } from './common';
const keyPair = {
public: '<llave pública key>',
secret: '<llave privada>',
scheme: 'ed25519-raw',
};
const ledgerHandle = '<kamin ledger>';
const ledgerUrl = '<kamin ledger server>';
const listAnchorsExample = async () => {
axios
.get(`${ledgerUrl}/intents/REc7u2unbvirm1hDHxPRH`, {
headers: {
'x-ledger': ledgerHandle,
Authorization: `Bearer ${await generateJwtToken(keyPair, 'backend', ledgerHandle)}`,
},
})
.then((response) => {
console.log('Respuesta:', response.data.meta.status);
})
.catch((error) => {
console.error(
'Error:',
error.response ? error.response.data : error.message
);
});
};
void listAnchorsExample();Cuerpo de la respuesta:
{
"hash": "1e218ea170d6523e54a571ec6ab34c776913c46210f5c0e5010112457ad11924",
"data": {
"handle": "REc7u2unbvirm1hDHxPRH",
"claims": [
{
"action": "transfer",
"amount": 100000,
"source": {
"handle": "kamin.one"
},
"symbol": {
"handle": "cop"
},
"target": {
"handle": "tel:573121231231@transfiya"
}
}
],
"schema": "transfer",
"access": [
{
"action": "any",
"signer": {
"public": "H/bKRjvq+83SWiQdvhcaKM94KKpPkXHsxaualSMJ+YU="
}
}
]
},
"luid": "$int.-0LQuO6kIfk4BKNPq",
"meta": {
"proofs":[
{
"custom": {
"moment": "2025-05-12T17:43:51.097Z",
"status": "created"
},
"digest": "a8fc5604c66d6ef75a5e5048ae5fa196a601bc65684e084ec75edcf469f32470",
"method": "ed25519-v2",
"public": "H/bKRjvq+83SWiQdvhcaKM94KKpPkXHsxaualSMJ+YU=",
"result": "0yDnVIU/NqIaV7NpVjLSadn8YXWyRYcsupABKISLcdKOYn3OmSReh/xeNN4lMG0tjzfXZW3X+gzKRirh8tkHCg=="
},
.
.
.
{
"custom": {
"moment": "2025-05-12T17:43:52.396Z",
"status": "rejected"
},
"digest": "5ba8c3d4d5f65875d50857043dd690f06a42f0046bbf0ebf11202c8cb1dc9b87",
"method": "ed25519-v2",
"public": "5P1b7EBEHhJhhv4D87AQAyMHXzcbZMrP7lMqqB6RtZ0=",
"result": "uHDkuZ73lpmhox0ku5hwwAdjoLkEPsrbcVFxnHo20ae/SaXV37BSvT0AEebRspfBVPEK2uFrC0Zrwpg0t5EQDA=="
}
]
"routed": true,
"status": "rejected",
"thread": "-0LQuO_PE3BpCf9Jy",
"moment": "2025-05-12T17:43:51.724Z",
"owners": [...]
}
}Como se muestra en la respuesta del ejemplo anterior:
meta.statuscontiene el estado actual del intent (por ejemplo,"rejected"en este caso).meta.proofsincluye los cambios históricos de estado, junto con marcas de tiempo. Por ejemplo, puedes ver cuándo el sistema marcó el intent como rechazado.
Esta estructura te permite rastrear tanto el estado actual como el historial completo de estados de cualquier intent.
Historial de cambios
- Corregido• Se corrigieron enlaces que llevaban a la versión en español
- Agregado• Versión inicial