Visão geral
Os dados da integração OpenAI Ads sincronizados na V4MOS.AI, pelos endpoints da própria integração
A API OpenAI Ads da V4MOS.AI entrega os registros brutos sincronizados das contas OpenAI Ads conectadas à sua organização: contas de anúncio, campanhas, grupos de anúncios, anúncios e os insights diários. As linhas vêm como foram sincronizadas, com os nomes de coluna do data warehouse (snake_case), prontas para levar ao seu BI. Todos os endpoints usam o prefixo /v1/openai-ads e seguem a mesma autenticação, paginação e formato de resposta.
Primeiros passos
URL base: https://data.v4mos.ai. Toda chamada exige suas credenciais de API e o organizationId — veja Autenticação.
- Conecte a integração OpenAI Ads em app.v4mos.ai (Contas conectadas) e aguarde a primeira sincronização.
- Chame qualquer endpoint abaixo com o seu
organizationId, por exemploGET /v1/openai-ads/ad-accounts?organizationId=…. - Toda linha traz
integration_ideintegration_name: a conta conectada de onde ela veio. Para ler uma conta só, passe esse valor emintegrationId.
Endpoints disponíveis
- getContas de anúncio
/v1/openai-ads/ad-accountsUma linha por conta de anúncio: nome, status, fuso horário, moeda e status de revisão. - getCampanhas
/v1/openai-ads/campaignsUma linha por campanha: status, modo, objetivo, lances e limites de orçamento (em micros). - getGrupos de anúncios
/v1/openai-ads/ad-groupsUma linha por grupo de anúncios: status e configuração de lance (lance máximo em micros). - getAnúncios
/v1/openai-ads/adsUma linha por anúncio: status, status de revisão e criativo (título, texto, URL de destino, imagem). - getInsights de campanhas
/v1/openai-ads/campaign-insightsUma linha por campanha por dia: impressões, cliques, investimento e conversões. - getInsights de conversão de campanhas
/v1/openai-ads/campaign-conversion-insightsUma linha por campanha por dia: conversões separadas em pós-clique e pós-visualização, e vendas atribuídas. - getInsights de grupos de anúncios
/v1/openai-ads/ad-group-insightsUma linha por grupo de anúncios por dia: impressões, cliques, investimento e conversões. - getInsights de anúncios
/v1/openai-ads/ad-insightsUma linha por anúncio por dia: impressões, cliques, investimento e conversões.
Recursos
| Endpoint | O que é cada linha | Filtro dateFrom / dateTo |
|---|---|---|
GET /v1/openai-ads/ad-accounts | Uma linha por conta de anúncio: nome, status, fuso horário, moeda e status de revisão. | — |
GET /v1/openai-ads/campaigns | Uma linha por campanha: status, modo, objetivo, lances e limites de orçamento (em micros). Os horários estão em segundos desde a época Unix. | — |
GET /v1/openai-ads/ad-groups | Uma linha por grupo de anúncios: status e configuração de lance (lance máximo em micros). Os horários estão em segundos desde a época Unix. | — |
GET /v1/openai-ads/ads | Uma linha por anúncio: status, status de revisão e criativo (título, texto, URL de destino, imagem). Os horários estão em segundos desde a época Unix. | — |
GET /v1/openai-ads/campaign-insights | Uma linha por campanha por dia: impressões, cliques, investimento e conversões. | date |
GET /v1/openai-ads/campaign-conversion-insights | Uma linha por campanha por dia: conversões separadas em pós-clique e pós-visualização, e vendas atribuídas. | date |
GET /v1/openai-ads/ad-group-insights | Uma linha por grupo de anúncios por dia: impressões, cliques, investimento e conversões. | date |
GET /v1/openai-ads/ad-insights | Uma linha por anúncio por dia: impressões, cliques, investimento e conversões. | date |
Paginação e filtros
page(padrão 1) elimit(padrão 500, máximo 5000).meta.hasNextPagediz se existe outra página; as linhas vêm sempre na mesma ordem, então avance as páginas até ele serfalse.dateFrom/dateTo(YYYY-MM-DD, inclusivos) filtram pela coluna de data indicada na tabela acima. Recursos sem coluna de data recusam esses parâmetros.integrationIdmantém só as linhas de uma conta conectada.- As respostas ficam em cache por 30 minutos e os dados são sincronizados uma vez por dia — veja Sincronização de dados.
Formato da resposta
{
"data": [{ "...": "um objeto por linha, com as colunas listadas em cada endpoint" }],
"meta": {
"page": 1,
"limit": 500,
"hasNextPage": true,
"hasPreviousPage": false
}
}Valores monetários e contadores grandes (campos format: decimal e format: int64 no schema de cada endpoint) chegam como texto, por exemplo "125.50", para não perder precisão. Converta para um tipo decimal do seu lado.