API para Facebook

API para Facebook: Busca de anúncios

Busque na Biblioteca de Anúncios da Meta por palavra-chave e receba os anúncios correspondentes (anunciante, texto do criativo, CTA, plataformas e datas de veiculação) com paginação por cursor.

POST/v1/run/facebook.ads_search
Disponibilidade
99,78%
30d · 4.514 chamadas
Requisições
4.515
30d · semanal, últimas 12 sem.
Resposta
2,8s
mediana · 30d

Teste

Faça sua primeira 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 `totalResults`, 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 anúncio 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.
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.
{
  "data": {
    "ads": [
      {
        "active": true,
        "adCount": 12500,
        "caption": "A short example description of this item.",
        "categories": [
          "example"
        ],
        "ctaText": "A short example description of this item.",
        "ctaType": "general",
        "displayFormat": "example",
        "endDate": 42,
        "id": "a1b2c3d4",
        "isReshared": true,
        "linkDescription": "https://example.com/page",
        "linkUrl": "https://example.com/page",
        "media": [
          {
            "height": 42,
            "type": "general",
            "url": "https://example.com/page",
            "videoUrl": "https://example.com/page",
            "width": 1024
          }
        ],
        "pageCategories": [
          "example"
        ],
        "pageDeleted": false,
        "pageId": "a1b2c3d4",
        "pageLikes": 12500,
        "pageName": "Example title",
        "pageProfilePicture": "https://example.com/image.jpg",
        "pageUrl": "https://example.com/page",
        "platforms": [
          "example"
        ],
        "sourceUrl": "https://example.com/page",
        "startDate": 42,
        "text": "A short example description of this item.",
        "title": "Example title"
      }
    ],
    "nextCursor": "example",
    "totalResults": 12500
  },
  "found": true,
  "reason": "not_found"
}
Interface da resposta
interface FacebookAdsSearchResponse {
  data: {
    ads: {
      active: boolean;
      adCount: number | null;
      caption?: string;
      categories?: string[];
      ctaText: string;
      ctaType: string;
      displayFormat: string;
      endDate: number;
      id: string;
      isReshared?: boolean;
      linkDescription?: string;
      linkUrl: string;
      media?: {
        height?: number;
        type: string;
        url: string;
        videoUrl?: string;
        width?: number;
      }[];
      pageCategories?: string[];
      pageDeleted?: boolean;
      pageId: string;
      pageLikes?: number;
      pageName: string;
      pageProfilePicture?: string;
      pageUrl?: string;
      platforms: string[];
      sourceUrl: string;
      startDate: number;
      text: string;
      title: string;
    }[];
    nextCursor: string | null;
    totalResults: number | null;
  } | null;
  found: boolean;
  reason?: "not_found";
}

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

Referência

Requisição, resposta e preço

Última verificação em 2026-09-29 · disponibilidade e latência medidas em 30d
POST /v1/run/facebook.ads_search
curl -X POST https://api.getanyapi.com/v1/run/facebook.ads_search \
  -H "Authorization: Bearer $ANYAPI_KEY" \
  -H "Content-Type: application/json" \
  -d '{"country":"US","query":"nike","searchType":"keyword_exact_phrase"}'
CampoTipoValor de exemplo
Corpo da requisição
querystring"nike"Palavra-chave a buscar na Biblioteca de Anúncios da Meta (ex.: "protein powder").
adTypeenumRestringe a todos os anúncios (padrão) ou apenas anúncios políticos e sobre temas sociais.
countrystring"US"Código de país de duas letras para delimitar os resultados. Omita para todos os países.
cursorstringCursor de paginação opaco do nextCursor de uma resposta anterior.
endDatestringFiltra anúncios com impressões nesta data ou antes, no formato YYYY-MM-DD.
mediaTypeenumFiltro de tipo de mídia do criativo.
requireFieldsarrayOpcional; 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 `totalResults`, 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 anúncio 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.
searchTypeenum"keyword_exact_phrase"Modo de correspondência da consulta: palavra-chave flexível (keyword_unordered, o padrão) ou frase exata (keyword_exact_phrase).
sortByenumOrdenação: impressions (mais impressões primeiro, o padrão) ou recent (mais recentes).
startDatestringFiltra anúncios com impressões nesta data ou depois, no formato YYYY-MM-DD.
statusenumFiltro de status do anúncio.
Resposta
dataobject
data.adsobject[]
data.ads[].activeboolean
data.ads[].adCountintegerNumber of ads in this campaign (collation count). Null when the source does not report it.
data.ads[].captionstringCaption line of the ad creative, usually the advertiser's display domain.
data.ads[].categoriesstring[]Ad Library categories the ad is filed under.
data.ads[].ctaTextstringPopulated whenever the provider has data for the entity.
data.ads[].ctaTypestringPopulated whenever the provider has data for the entity.
data.ads[].displayFormatstringPopulated whenever the provider has data for the entity.
data.ads[].endDateintegerEpoch seconds.
data.ads[].idstringAd Library archive ID. Populated whenever the provider has data for the entity.
data.ads[].isResharedbooleanWhether the ad creative is a reshare of another post.
data.ads[].linkDescriptionstringDescription text shown under the ad's link.
data.ads[].linkUrlstringPopulated whenever the provider has data for the entity.
data.ads[].mediaobject[]Creative attached to the ad: one element per image, video, or carousel card, in the order the ad presents them. Empty when the ad has none.
data.ads[].media[].heightintegerPixel height of the media item, when the lane reports it.
data.ads[].media[].typestringOne of photo, video, or gif.
data.ads[].media[].urlstringImage URL. For a video or GIF this is the poster/thumbnail frame.
data.ads[].media[].videoUrlstringPlayable video file URL. Present only for video and gif items.
data.ads[].media[].widthintegerPixel width of the media item, when the lane reports it.
data.ads[].pageCategoriesstring[]Categories Facebook lists the advertising page under.
data.ads[].pageDeletedbooleanWhether the advertising page has been deleted.
data.ads[].pageIdstringPopulated whenever the provider has data for the entity.
data.ads[].pageLikesintegerLike count of the advertising page.
data.ads[].pageNamestringPopulated whenever the provider has data for the entity.
data.ads[].pageProfilePicturestringProfile picture of the advertising page. This is the advertiser's identity image, not ad creative.
data.ads[].pageUrlstringCanonical Facebook URL of the advertising page.
data.ads[].platformsstring[]Populated whenever the provider has data for the entity.
data.ads[].sourceUrlstringInspectable Meta Ad Library URL for this ad. Populated whenever the provider has data for the entity.
data.ads[].startDateintegerEpoch seconds. Populated whenever the provider has data for the entity.
data.ads[].textstringAd body text. Populated whenever the provider has data for the entity.
data.ads[].titlestringPopulated whenever the provider has data for the entity.
data.nextCursorstringOpaque cursor for the next page of ads, or null when this lane has no more. Pass it back as cursor to continue.
data.totalResultspode ser exigidointegerTotal number of ads matching the search. Null when the source cannot report an exact count.
foundboolean
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.
Preço
Preço por requisiçãoUSDUS$ 0,0012
Preço /mil req.USDUS$ 1,20

Dúvidas frequentes

Sobre o endpoint Busca de anúncios da API para Facebook

O endpoint Busca de anúncios da AnyAPI para Facebook retorna dados de Facebook em JSON normalizado com uma chamada POST para /v1/run/facebook.ads_search. Busque na Biblioteca de Anúncios da Meta por palavra-chave e receba os anúncios correspondentes (anunciante, texto do criativo, CTA, plataformas e datas de veiculação) com paginação por cursor. A AnyAPI distribui cada requisição entre 3 fontes, com failover automático quando uma falha. Custa a partir de US$ 1,20 por mil requisições, em dólares, sem assinatura e sem mínimo mensal. Nos últimos 30 dias, 99,8% das chamadas ao endpoint Busca de anúncios da API para Facebook feitas pela AnyAPI tiveram sucesso, com tempo de resposta mediano de 2,8 segundos, em 4.514 chamadas medidas.

Custa a partir de US$ 1,20 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.

Busque na Biblioteca de Anúncios da Meta por palavra-chave e receba os anúncios correspondentes (anunciante, texto do criativo, CTA, plataformas e datas de veiculação) com paginação por 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, 99,8% das chamadas ao endpoint Busca de anúncios da API para Facebook feitas pela AnyAPI tiveram sucesso, com tempo de resposta mediano de 2,8 segundos, em 4.514 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.