Saltar al contenido
Twexapi
Español
Esc
navegarabrir⌘Jvista previa
En esta página

Inicio rápido de MPP

Paga una página de búsqueda avanzada de TwexAPI con Tempo USDC y el cliente mppx.

Inicio rápido de MPP

Realiza una solicitud pay-per-use de búsqueda avanzada de TwexAPI sin una API key de TwexAPI. Esta guía usa el cliente mppx para responder al desafío HTTP 402, pagar con Tempo USDC y reintentar la solicitud automáticamente.

Paso 1: Instala las dependencias del cliente

npm install mppx viem

mppx maneja desafíos y pagos MPP. viem convierte una clave privada Tempo en la cuenta de wallet usada por el cliente.

Paso 2: Crea y financia una wallet Tempo

Crea una cuenta MPP local, luego exporta su clave privada:

mppx account create
mppx account export

Financia la dirección impresa con USDC en Tempo. Almacena la clave privada 0x... exportada en una variable de entorno:

export TEMPO_PRIVATE_KEY="0x..."

Paso 3: Realiza una solicitud MPP

Crea mpp-search.ts:

import { Mppx, tempo } from "mppx/client";
import { privateKeyToAccount } from "viem/accounts";

Mppx.create({
  methods: [
    tempo({
      account: privateKeyToAccount(
        process.env.TEMPO_PRIVATE_KEY as `0x${string}`,
      ),
    }),
  ],
});

const response = await fetch(
  "https://api.twexapi.io/twitter/advanced_search/page",
  {
    method: "POST",
    headers: { "Content-Type": "application/json" },
    body: JSON.stringify({
      searchTerms: ["openai"],
      sortBy: "Latest",
    }),
  },
);

if (!response.ok) {
  throw new Error(`TwexAPI request failed: ${response.status}`);
}

console.log(await response.json());

Mppx.create() configura fetch para manejar un desafío MPP 402 Payment Required. Para un endpoint elegible, paga la oferta Tempo proporcionada por el servidor y reintenta la misma solicitud con la credencial de pago. Inspecciona response.headers.get("Payment-Receipt") cuando necesites registrar la liquidación.

Pasa next_cursor en el cuerpo JSON al continuar desde una página anterior:

{
  "searchTerms": ["openai"],
  "sortBy": "Latest",
  "next_cursor": "cursor-from-the-previous-response"
}

Paso 4: Implementa el flujo HTTP en bruto

Sin mppx, primero solicita la página de búsqueda normalmente:

curl -i --request POST 'https://api.twexapi.io/twitter/advanced_search/page' \
  --header 'Content-Type: application/json' \
  --data '{"searchTerms":["openai"],"sortBy":"Latest"}'

En 402, procesa el desafío WWW-Authenticate: Payment con una implementación MPP Tempo compatible. Luego reintenta la solicitud exacta con la credencial generada:

curl -i --request POST 'https://api.twexapi.io/twitter/advanced_search/page' \
  --header 'Content-Type: application/json' \
  --header 'Authorization: Payment eyJjaGFsbGVuZ2UiOnsi...' \
  --data '{"searchTerms":["openai"],"sortBy":"Latest"}'

La respuesta exitosa contiene el envelope JSON habitual de TwexAPI y un header de respuesta Payment-Receipt. Guarda recibos con tus propios registros de solicitud si tu aplicación necesita reconciliación.

Próximos pasos

  • Machine Payments Protocol — revisa la operación soportada, la secuencia de pago y la comparación con API key.
  • API overview — explora autenticación con API key y el catálogo completo de endpoints.

¿Te ha resultado útil esta página?