API para X / Twitter

API para X / Twitter: Tweets do usuário

Linha do tempo paginada dos tweets de um usuário, com texto, mídia e contagens de engajamento. Pagine com o campo cursor.

US$ 0,45/mil req., pague por requisição, sem assinatura.

@nasa / X
x.com/nasa

@nasa

Follow

@nasa

PostsRepliesHighlightsMedia
N

@NASA· Jun 9, 2024

Liftoff! 🚀

3,90021.4K142K
O que a API retornoutweets[0]
{
"id": "1800000000000000000",
"url": "https://x.com/NASA/status/1800000000000000000",
"text": "Liftoff! 🚀",
"likes": 142000,
"retweets": 21400,
"replies": 3900,
"createdAt": "2024-06-09T13:45:00Z",
"authorHandle": string,
... 13 campos a mais
}
Disponibilidade
100,00%
30d · 411.130 chamadas
Requisições
411.417
30d · semanal, últimas 12 sem.
Resposta
1,5s
mediana · 30d

Preços e provedores

Preços do endpoint Tweets do usuário da API para X / Twitter: uma API, 3 provedores intercambiáveis

O provedor mais barato atende primeiro. Se ele falhar, o próximo assume na mesma chamada.

Você paga
US$ 4,50
US$ 0,45/mil req., só pelo que você usar. Sem plano mensal.
Suas primeiras 222 requisições são grátis com o saldo inicial de US$ 0,10.

Teste

Obtenha Tweets do usuário do X / Twitter em uma só requisição

requireFieldsarray
Opcional; se omitido, o roteamento não muda e a fonte mais barata atende. Informe os campos de saída que esta requisição precisa poder retornar, por exemplo `isPinned`, e ela só será atendida por uma fonte que retorne todos eles. Os campos que você não informar continuam sendo retornados sempre que a fonte que atende os tiver. Isso pode aumentar o seu preço: quando a fonte mais barata não consegue retornar um campo informado, uma fonte mais cara atende, e você recebe a cotação e é cobrado pelo preço dela. Um campo informado ainda pode vir ausente em um post que realmente não o tenha. Se você informar uma combinação de campos que nenhuma fonte retorna sozinha, a requisição é recusada como entrada inválida, sem cobrança. Ao paginar, vale só para a primeira página; as páginas seguintes continuam na fonte que a primeira página escolheu, pelo preço cotado.
Abrir em
Obter chave grátis
Resposta de exemplo
Execuções grátis retornam só os primeiros 3 resultados. Recarregue uma chave para receber a resposta completa.

Este exemplo mostra 10 de 30 campos. Ver todos os campos

{
  "found": true,
  "data": {
    "nextCursor": "DAABCgABF__cursor",
    "tweets": [
      {
        "id": "1800000000000000000",
        "url": "https://x.com/NASA/status/1800000000000000000",
        "text": "Liftoff! 🚀",
        "likes": 142000,
        "retweets": 21400,
        "replies": 3900,
        "createdAt": "2024-06-09T13:45:00Z"
      }
    ]
  }
}

Referência completa de parâmetros e resposta - todos os campos, tipos e exemplos deste endpoint.

Referência

Uma requisição, um formato de resposta.

Cada campo que você envia e cada campo que você recebe, cada um com um exemplo real.

Última verificação em 2026-11-14 · disponibilidade e latência medidas em 30d

Corpo da requisição

JSON, enviado via POST para este endpoint.

  • handlestring

    nasa

    Nome de usuário do Twitter/X sem o @ inicial.

  • cursorstring

    0

    Cursor de paginação opaco do nextCursor de uma resposta anterior. Omita na primeira página.

  • limitinteger

    Page size to ask for (1-100, default 20). Some sources honor it; others always return their whole native page of about 20 authored tweets and replies. A page is never trimmed after the call, so follow nextCursor and pass it back as cursor to continue exactly where this response ended.

  • requireFieldsarray

    Opcional; se omitido, o roteamento não muda e a fonte mais barata atende. Informe os campos de saída que esta requisição precisa poder retornar, por exemplo `isPinned`, e ela só será atendida por uma fonte que retorne todos eles. Os campos que você não informar continuam sendo retornados sempre que a fonte que atende os tiver. Isso pode aumentar o seu preço: quando a fonte mais barata não consegue retornar um campo informado, uma fonte mais cara atende, e você recebe a cotação e é cobrado pelo preço dela. Um campo informado ainda pode vir ausente em um post que realmente não o tenha. Se você informar uma combinação de campos que nenhuma fonte retorna sozinha, a requisição é recusada como entrada inválida, sem cobrança. Ao paginar, vale só para a primeira página; as páginas seguintes continuam na fonte que a primeira página escolheu, pelo preço cotado.

  • requireSinglePageboolean

    Exige uma fonte que consiga retornar o limit pedido em uma única resposta.

Você envia. Um corpo JSON pequeno. Os valores mostrados são exemplos para você trocar pelos seus.

Resposta

JSON, um valor de exemplo por campo.

datadata
  • nextCursorstring

    DAABCgABF__cursor

    Opaque cursor for the next page when the selected lane supports pagination, otherwise null.

each tweetdata.tweets[]

Populated whenever the provider has data for the entity.

  • authorHandlestring

    Handle of the account that posted.

  • authorIdstring

    Numeric X user id of the account that posted, as a string.

  • authorImagestring

    Avatar image URL of the account that posted.

  • authorNamestring

    Display name of the account that posted.

  • bookmarksinteger
  • conversationIdstring

    Id of the conversation the post belongs to, as a string.

  • createdUtcnumber

    UTC epoch timestamp in seconds (Unix time). Multiply by 1000 for a JS Date in milliseconds. Populated whenever the provider has data for the entity.

  • idstring

    1800000000000000000

    Populated whenever the provider has data for the entity.

  • isPinnedbooleanpode ser exigido

    Whether X marks the post as pinned on the profile, or null when the serving source does not publish it.

  • isReplyboolean
  • langstring
  • likesinteger

    142000

  • quotesinteger
  • repliesinteger

    3900

  • retweetsinteger

    21400

  • sourcestring

    Client the post was sent from, e.g. "Twitter Web App".

  • textstring

    Liftoff! 🚀

    Populated whenever the provider has data for the entity.

  • urlstring

    https://x.com/NASA/status/1800000000000000000

    Populated whenever the provider has data for the entity.

  • viewsinteger
each mediadata.tweets[].media[]

Photo, video, and GIF attachments on the post. Empty when the post has none.

  • heightinteger
  • typestring

    One of photo, video, or gif.

  • urlstring

    Image URL. For a video or GIF this is the poster/thumbnail frame. X media URLs on pbs.twimg.com are publicly fetchable without authentication; append ?name=orig for the full-resolution original.

  • videoUrlstring

    Playable video file URL. Present only for video and gif items.

  • widthinteger
top level
  • foundboolean

    true

  • reason"not_found"

    Present only when `found` is false, and says why there is no result. `not_found`: the source states the target does not exist, or returned nothing for it. A `found: false` answer is a successful call, not an error, and `costUsd` is what it actually cost.

Você recebe. Campos nomeados e tipados, no mesmo formato, seja qual for a fonte que responder.

Vende esta API? Veja o schema completo que o seu endpoint precisa retornar.

Dúvidas frequentes

Sobre o endpoint Tweets do usuário da API para X / Twitter

O endpoint Tweets do usuário da AnyAPI para X / Twitter retorna dados de X / Twitter em JSON normalizado com uma chamada POST para /v1/run/twitter.user_tweets. Linha do tempo paginada dos tweets de um usuário, com texto, mídia e contagens de engajamento. Pagine com o campo cursor. A AnyAPI distribui cada requisição entre 3 fontes, com failover automático quando uma falha. Custa a partir de US$ 0,45 por mil requisições, em dólares, sem assinatura e sem mínimo mensal. Nos últimos 30 dias, 100,0% das chamadas ao endpoint Tweets do usuário da API para X / Twitter feitas pela AnyAPI tiveram sucesso, com tempo de resposta mediano de 1,5 segundos, em 411.130 chamadas medidas.

Custa a partir de US$ 0,45 por mil requisições, em dólares, sem assinatura e sem mínimo mensal. Você recarrega uma carteira em dólares e cada chamada desconta dela. Algumas requisições pagas pela carteira que falham geram cobranças de processamento, que repassamos pelo custo, sem margem; a resposta de erro mostra o valor cobrado.

Linha do tempo paginada dos tweets de um usuário, com texto, mídia e contagens de engajamento. Pagine com o campo cursor. A resposta é JSON normalizado, com o mesmo envelope que todo endpoint da AnyAPI retorna, então processar um segundo endpoint é só trocar a URL, e nada mais.

Nos últimos 30 dias, 100,0% das chamadas ao endpoint Tweets do usuário da API para X / Twitter feitas pela AnyAPI tiveram sucesso, com tempo de resposta mediano de 1,5 segundos, em 411.130 chamadas medidas. Estas são medições da própria AnyAPI sobre o tráfego que passa pelo gateway, recalculadas continuamente, e não uma meta de nível de serviço publicada.

Sim. Uma conta nova da AnyAPI começa com US$ 0,10 de saldo grátis, sem cartão, o que cobre 222 chamadas de Tweets do usuário do X / Twitter a US$ 0,00045 cada.

A AnyAPI consulta a próxima das suas 3 fontes na mesma requisição, começando pela mais barata, então a queda de uma fonte não derruba sua chamada.

Envie uma requisição POST para https://api.getanyapi.com/v1/run/twitter.user_tweets com sua chave da AnyAPI em um cabeçalho "Authorization: Bearer" e a entrada como corpo JSON. A mesma chave e a mesma carteira funcionam em todos os endpoints da AnyAPI.

Não. Você adiciona dólares a um único saldo pré-pago da AnyAPI e cada requisição desconta dele. Não há plano mensal nem mínimo, e o mesmo saldo paga todos os endpoints da AnyAPI.

Sim. Instale @getanyapi/sdk pelo npm para TypeScript ou getanyapi pelo pip para Python. Os dois chamam todos os endpoints da AnyAPI com a mesma chave, e qualquer cliente HTTP também funciona.

Sim. Um agente pode se conectar ao servidor MCP da AnyAPI em https://api.getanyapi.com/mcp, ou criar a própria chave de teste grátis com um único POST sem autenticação para https://api.getanyapi.com/agent/signup e chamar este endpoint por HTTP.