> For the complete documentation index, see [llms.txt](https://docs.exoclick.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.exoclick.com/api/pt/api-publica-exoclick/api-de-desenvolvimento.md).

# API de Desenvolvimento

Com a API da plataforma, é possível automatizar todas as funcionalidades encontradas no Painel de Administração.

<details>

<summary>1. O que os anunciantes podem automatizar?</summary>

* Campanhas/grupos, variações, ofertas e formatos de anúncios
* Segmentação/bloqueio de opções de segmentação, categorias
* Objetivos
* Obter estatísticas, incluindo dados de utilizadores com adblock
* Orçamento diário, financiamento da conta, tipos de pagamento
* Nome da página de destino, URL e algoritmo de partilha de tráfego

</details>

<details>

<summary>2. O que os editores podem automatizar?</summary>

* Formatos de anúncios e zonas de anúncios
* Sites, verificações de URL
* Bloquear tipos de anúncios e categorias de produtos
* Obter todas as estatísticas, incluindo dados de utilizadores com adblock
* Preços de licitação por formato de anúncio/GEO, modelos de preços
* Tipos de pagamento

</details>

<details>

<summary>3. Como usar a API</summary>

* A interface da API é rápida e fácil de usar
* Basta selecionar um parâmetro e premir o **Experimentar** botão para gerar o código automaticamente

</details>

<details>

<summary>4. Transferir a documentação técnica</summary>

* [Cliente PHP](https://github.com/exads/exads-api-client-php)

</details>

## Como usar a API da plataforma

Acabámos de atualizar a nossa API da plataforma para a versão 2. Esta versão mais recente permite automatizar cada funcionalidade dentro do Painel de Administração. Pode usar a API para processos simples, como automatizar tarefas repetitivas para poupar tempo, até projetos mais complexos, como alterar criativos de banners em tempo real.

### Funcionalidades

Tanto os editores como os anunciantes dispõem de uma vasta gama de funcionalidades. Aqui está um resumo do que pode ser automatizado:

#### Anunciantes

* Campanhas individuais/em grupo, variações, ofertas, formatos de anúncios.
* Segmentação/bloqueio de opções de segmentação, categorias, agendamento por período do dia.
* Objetivos.
* Obter estatísticas, incluindo dados de utilizadores com adblock.
* Orçamento diário, financiamento da conta, tipos de pagamento.
* Nome da página de destino, URL e algoritmo de partilha de tráfego.

#### Editores

* Formatos de anúncios e zonas de anúncios.
* Sites, verificações de URL.
* Bloquear tipos de anúncios e categorias de produtos.
* Obter todas as estatísticas, incluindo dados de utilizadores com adblock.
* Preços de licitação por formato de anúncio/GEO, modelos de preços.
* Tipos de pagamento.

**Antes de começar**

A interface da API mostra uma lista de títulos de grupos. Clique num grupo e todas as opções disponíveis serão expandidas.

![lista da API](/files/7a58bc92738608789c9f5f6c1bf92da0587fd9fb)

### Verbos HTTP

A API suporta o seguinte subconjunto de verbos HTTP. Tenha em atenção que nem todas as funcionalidades suportam todos os verbos.

![Usos da API](/files/cf7730b42b180cecf861853c7acfafd7b6df7b11)

Vamos começar!

### Configuração

Para aceder a pedidos restritos da API, tem de existir um Token de Sessão definido. Para definir um token, deve ter uma conta válida.

A criação do Token de API está disponível em **O meu perfil** menu. Selecione Tokens de API.

![o meu perfil](/files/ae904942bf83630c38e81ba072df58359e88dddb)

Clique em **Novo Token de API**.

![tokens de API](/files/1428332e6a340b4f55b2fa931eb5269dbe47d0a5)

Introduza o nome do token; para este tutorial chamámos ao nosso ‘testToken’ e depois clique em **Guardar**.

O ID do token é criado.

![ID do token](/files/d509242f22bc8b674f313787634a5f90036f525a)

### Iniciar sessão na API

Na interface da API, clique no **Iniciar sessão** botão no canto superior direito do ecrã e introduza o seu nome de utilizador e palavra-passe ou forneça um token de API. Clique em **Enviar** e será enviado um pedido de início de sessão para a API para obter um token de sessão válido. Esse token será depois usado para validar todos os pedidos da API que pretenda fazer durante a sessão.

![início de sessão na API](/files/a229167eb8bba72688edd93d2ad2a134277ec43f)

![início de sessão na API](/files/c32740b3feca46aae87b1b423f8c4de49d8b29ce)

### Como fazer um pedido à API

Vamos usar o exemplo do grupo Campaigns; clique nele e o grupo será expandido para listar os pedidos disponíveis:

Clique no pedido que pretende automatizar; neste exemplo, vamos pedir dados para o CID 1923724 usando:

![obter campanha](/files/2542cc94db195e50bc5bfd88151fa515535948be)

Clique em **Obter campanha** o que expande a janela. Introduza o número de ID da campanha no campo:

![ID da campanha](/files/45ec56360ab567ce3fbed4e96cd35fbd810aeb24)

Depois clique no **Experimentar agora** botão. O corpo da resposta gerará o código automaticamente.

![corpo da resposta](/files/956ab523a155434078839982cfa9cd102f0cc7d0)

Um código de resposta 200 significa que está tudo bem para usar.

### Como pausar uma campanha

Aqui está outro exemplo. Primeiro selecione a função correta no grupo Campaigns:

![pausar campanha](/files/a6a8daf8093fcf2741c88d7a2d26a5e6dea6b78c)

Clique em **Pausar** para uma ou mais campanhas. Depois de aberto, clique em Example Value e depois clique na caixa amarela; isto colará automaticamente a estrutura JSON na caixa do corpo.

![pausa](/files/03a7e3acc2641da2e3740bcb97b57002c3003512)

Agora o valor atual é zero, por isso altere o zero para o CID que pretende colocar em pausa. Depois clique no **Experimente** botão para gerar o código necessário.

![ID da campanha](/files/03625126617cf0507ccf635af110e1f4437ab3d0)

### Como atualizar o preço de uma campanha

Selecione a função correta:

![ID da campanha](/files/62b1008404152469a0037f2bc2237835ed58ea93)

Clique em **Atualizar uma campanha**, para abrir a janela. Adicione o CID no campo campaign id e depois clique em Example Value, clique na caixa amarela que copiará a estrutura JSON para a caixa do corpo.

Este código contém algumas funções diferentes, mas queremos o código de preços da campanha, por isso elimine a parte do código que não é necessária, deixando o código de preços da campanha na caixa, como abaixo:

![ID da campanha](/files/635362f2db89d17a4a2f89fac17dc5471b350801)

Agora precisamos de alterar duas coisas na caixa do corpo, o modelo (abaixo está uma lista dos valores relacionados com o modelo de preços).

```
CampaignPricing {
model (inteiro, opcional): modelo de preços da campanha (1: CPC, 2: CPM, 3: CPA, 4: Smart CPM, 5: CPV) = [‘1’, ‘2’, ‘3’, ‘4’, ‘5’],
price (número, opcional): preço da campanha
}
```

Vamos manter o CPC, por isso deixaremos o model em 1

Agora precisamos de alterar o preço de zero para o preço que queremos. Vamos alterar isto para 200, o que significa que o novo preço será 200 cêntimos, ou dois euros.

![ID da campanha](/files/195e3d319829a119acec3405983ecfd106dd4655)

Depois basta clicar no **Experimente** botão para gerar o código. Fácil!

Como pode ver, a API está repleta de funcionalidades para automatizar; o único limite é a sua imaginação para desbloquear o poder da automatização.

Por fim, certifique-se de que subscreve a nossa newsletter da API, que encontra na parte inferior da interface da API, para poder receber as últimas notícias e atualizações.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.exoclick.com/api/pt/api-publica-exoclick/api-de-desenvolvimento.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
