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

Pipedream

Automatiza flujos en Pipedream para búsqueda de tweets, perfiles, tendencias, disparadores HTTP y publicaciones aprobadas a través de TwexAPI.

Crea una integración de Twitter en Pipedream para búsquedas, perfiles, tweets en tendencia y publicaciones aprobadas. TwexAPI proporciona una sola REST API y una sola API key para cada flujo.

Elige un disparador webhook para entregas de agentes, un disparador programado para búsquedas recurrentes o pasos de código inline cuando necesites normalización personalizada.

Elige un patrón de automatización en Pipedream

Disparador HTTP + paso de código

Recibe JSON estricto de un agente MCP, normaliza filas y enruta a Slack o Sheets.

Lecturas REST programadas

Llama a TwexAPI según una cadencia para búsqueda de tweets o informes de tendencias.

Paquete de componentes privado

Empaqueta solicitudes autenticadas repetidas cuando todo el equipo necesita las mismas acciones.

Separa búsquedas, entregas por webhook, exportaciones de seguidores y escrituras aprobadas en flujos distintos. Flujos más pequeños exponen errores y límites de tasa con más claridad.

Requisitos previos

  • API key de TwexAPI
  • Cuenta de Pipedream
  • Cuentas conectadas opcionales para Slack, Google Sheets, Airtable o una base de datos
  • Agente opcional compatible con MCP conectado a https://api.twexapi.io/mcp

Integración API serverless

Inicia cada solicitud TwexAPI en https://api.twexapi.io. Envía la API key mediante el encabezado Authorization: Bearer. Mantén las keys en variables de entorno de Pipedream, no en exportaciones de pasos ni logs.

export TWEXAPI_API_KEY="YOUR_API_KEY"

Usa GET /balance como primera comprobación de autenticación. Verifica la API key sin cambiar una cuenta de X.

Helper compartido de solicitudes

export default defineComponent({
  props: {
    twexapi: {
      type: "string",
      label: "TwexAPI API Key",
      secret: true,
    },
  },
  methods: {
    async twexapiRequest($, { method, path, body, params }) {
      const url = new URL(`https://api.twexapi.io${path}`);
      if (params) {
        Object.entries(params).forEach(([key, value]) => {
          if (value !== undefined && value !== null) {
            url.searchParams.set(key, String(value));
          }
        });
      }

      const response = await fetch(url, {
        method,
        headers: {
          Authorization: `Bearer ${this.twexapi}`,
          "Content-Type": "application/json",
        },
        body: body ? JSON.stringify(body) : undefined,
      });

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

      return response.json();
    },
  },
});

Acciones iniciales

Acción Ruta TwexAPI
Buscar tweets POST /twitter/advanced_search/page
Obtener perfil de usuario GET /twitter/{screen_name}/about
Buscar usuarios GET /twitter/search-user/{keyword}/{target_count}
Obtener tendencias GET /twitter/global-trending/tweets
Listar seguidores POST /v3/twitter/users/followers
Crear tweet POST /twitter/tweets/create

Paso de código para búsqueda de tweets

export default defineComponent({
  async run({ steps, $ }) {
    const response = await fetch("https://api.twexapi.io/twitter/advanced_search/page", {
      method: "POST",
      headers: {
        Authorization: `Bearer ${process.env.TWEXAPI_API_KEY}`,
        "Content-Type": "application/json",
      },
      body: JSON.stringify({
        searchTerms: ["AI agents lang:en"],
        sortBy: "Latest",
        nextCursor: "",
      }),
    });

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

    return response.json();
  },
});

Flujo webhook-first

  1. Crea un disparador HTTP en Pipedream.
  2. Pide a un agente compatible con MCP que recopile filas de TwexAPI y devuelva JSON estricto.
  3. Haz POST del JSON al endpoint de Pipedream.
  4. Normaliza y deduplica filas en un paso de código.

Paso de normalización en JavaScript

export default defineComponent({
  async run({ steps }) {
    const payload = steps.trigger.event.body;

    return (payload.tweets || []).map((tweet) => ({
      id: tweet.tweet_id || tweet.id,
      url: tweet.public_url ?? `https://x.com/i/web/status/${tweet.tweet_id || tweet.id}`,
      author: tweet.author_username,
      text: tweet.text || tweet.full_text,
      created_at: tweet.created_at,
      route_used: payload.route_used,
      next_cursor: payload.next_cursor,
    }));
  },
});

Prompt sugerido para agente MCP:

Use Twexapi MCP to get quote tweets for tweet ID 1803006263529541838.
Return only JSON with route_used, source_tweet_id, has_more, next_cursor, and tweets.
Each tweet must include tweet_id, author_username, text, created_at, and public_url.
Do not call write endpoints.

Entrega de resultados

Páginas de tweets

Exporta tweet_count, has_more y next_cursor; devuelve filas con tweet_id, text, author_username y created_at.

Filas de perfil

Exporta user_id, username, name, conteos de seguidores y campos de verificación.

Lotes de tendencias

Exporta país, tema, etiqueta de contenido y filas de tweets con metadatos del flujo.

Acciones de escritura

Previsualiza con el CLI --dry-run. Las acciones de escritura requieren una cookie o auth_token.

Manejo de errores

Enruta cada estado antes de exportar filas posteriores.

Estado Acción
400 Corrige campos de la solicitud; no reintentes sin cambios.
401 Reemplaza la API key.
403 Resuelve acceso a la cuenta o créditos.
429 Haz backoff y conserva el cursor.
5xx Reintenta lecturas seguras con backoff acotado.

Persiste un cursor de página solo después de que el procesamiento posterior tenga éxito.

Recetas

Búsqueda de tweets a Slack

  1. Programa el flujo según tu cadencia de informes.
  2. Llama a POST /twitter/advanced_search/page.
  3. Filtra tweets por umbral de engagement.
  4. Envía texto del tweet seleccionado, autor y enlace a Slack.

Entrega de agente a Google Sheets

  1. El disparador HTTP recibe JSON de entrega MCP.
  2. Normaliza filas de tweets.
  3. Haz upsert en Sheets por tweet_id.

Página de seguidores a CRM

  1. El paso HTTP o programado llama a POST /v3/twitter/users/followers.
  2. Normaliza filas de seguidores.
  3. El CRM hace upsert por user_id.
  4. El data store conserva next_cursor.

Lista de verificación de pruebas

  • Confirma que el cuerpo del disparador es JSON válido.
  • Usa tweet_id o user_id como clave de deduplicación.
  • Guarda next_cursor en data stores de Pipedream para continuación programada.
  • Mantén TWEXAPI_API_KEY solo en variables de entorno.
  • Nunca registres tokens Bearer en la salida de pasos.

Próximos pasos

¿Te ha resultado útil esta página?