Ir al contenido

Desarrolladores

Firma y streams

Los pocos flujos de la API de Ora que firma tu propia wallet, y cómo leer los streams de datos en tiempo real.

La mayoría de las acciones on-chain se ejecutan por completo del lado de Ora, con las wallets que Ora gestiona para tu token: lanzamientos, compras, ventas, nukes, quemas, bloqueos, estrategias y reclamaciones de recompensas. Para ellas, tu script nunca toca una clave privada.

Unos pocos flujos mueven dinero desde tu propia wallet, así que devuelven transacciones para que esa wallet las firme:

Flujo Construir Después
Financiar un lanzamiento POST /engine/fund Firma, envía y luego POST /engine/fund/confirm
Cancelar un lanzamiento POST /engine/cancel POST /engine/cancel/submit con las transacciones firmadas
Recoger lo recaudado POST /engine/collect POST /engine/collect/submit con las transacciones firmadas
Comprar aged wallets POST /portfolio/marketplace/quote POST /portfolio/marketplace/buy con los depósitos firmados

Para ejecutarlos sin interfaz, tu script necesita la clave de esa wallet. Con la wallet integrada que se creó cuando te registraste, fírmalos en la app.

Los datos en tiempo real llegan como Server-Sent Events. El EventSource de los navegadores no puede enviar cabeceras, así que lee los streams con fetch, desde tu servidor, tu script o tu extensión:

stream.mjs
const res = await fetch(`https://api.useora.xyz/engine/tokens/${mint}/stream`, {
headers: { Authorization: `Bearer ${process.env.ORA_API_KEY}`, Accept: 'text/event-stream' },
});
const reader = res.body.pipeThrough(new TextDecoderStream()).getReader();
let buf = '';
for (;;) {
const { value, done } = await reader.read();
if (done) break; // reconnect with backoff
buf += value;
for (let i; (i = buf.indexOf('\n\n')) >= 0; buf = buf.slice(i + 2)) {
const frame = buf.slice(0, i); // "event: …" and "data: {…}" lines
console.log(frame);
}
}

Cada stream abierto cuenta como una solicitud en tu límite de frecuencia.

Stream Contiene
/engine/tokens/{mint}/stream Un token en una sola conexión: un snapshot y luego los eventos de estado, trades_snapshot y luego cada trade, las wallets conocidas que tienen el token y las estadísticas de holders.
/user/tracked-wallets/trades/stream Operaciones en tiempo real de las wallets que sigues.
/sol-usd/events Precio SOL/USD.
/blockhash/events Último blockhash y altura de bloque, aproximadamente cada 220 ms.
/jito/tip-lamports/events Percentiles del tip floor de Jito.
/jito/tip-accounts/events Lista de cuentas de tip de Jito.