# API de Criação de Oferta

```
POST https://api.offer18.com/api/m/offer_create
```

:link: [<mark style="color:azul;">**Clique para testar a API de criação de oferta**</mark>](https://offer18.readme.io/reference/offers-api)

### Parâmetros Comuns

| **Query**  | **Tipo** | **Descrição**         |
| ---------- | -------- | --------------------- |
| mid        | Inteiro  | ID da Conta da Rede   |
| api-key    | String   | Chave de API da Rede  |
| secret-key | String   | Chave Secreta da Rede |

**Ação**

<table data-header-hidden><thead><tr><th width="207.16379474883627"></th><th width="194.99924751175493"></th><th></th></tr></thead><tbody><tr><td><strong>Query</strong></td><td><strong>Tipo</strong></td><td><strong>Descrição</strong></td></tr><tr><td>type</td><td>String</td><td><strong>Valores Permitidos:</strong><br>create / update</td></tr><tr><td>oid</td><td>Inteiro</td><td>Obrigatório na Atualização da Oferta</td></tr></tbody></table>

***

### **Campos**&#x20;

<table data-header-hidden data-full-width="false"><thead><tr><th width="329.1820791993198"> </th><th width="124"> </th><th width="293.1921073532865"> </th></tr></thead><tbody><tr><td><strong>Corpo</strong></td><td><strong>Tipo</strong></td><td><strong>Descrição</strong></td></tr><tr><td>offer_name</td><td>String</td><td>Nome da Campanha</td></tr><tr><td>advertiser_id</td><td>Inteiro</td><td>ID do Anunciante </td></tr><tr><td>offer_url</td><td>URL</td><td>URL da Campanha</td></tr><tr><td>external_offer_id</td><td>String</td><td>ID externo da Campanha (se houver)</td></tr><tr><td>app_id</td><td>String</td><td>ID do app (se houver)</td></tr><tr><td>logo</td><td>URL</td><td>URL do logo da Campanha</td></tr><tr><td>category</td><td>String</td><td>Categoria da Campanha</td></tr><tr><td>preview_url</td><td>URL</td><td>URL de visualização da Campanha</td></tr><tr><td>currency</td><td>String</td><td><p>Moeda da Oferta</p><p><span data-gb-custom-inline data-tag="emoji" data-code="1f517">🔗</span> <a href="../../../universal/valores-comuns#currency"><mark style="color:azul;">Ver Moedas</mark></a></p></td></tr><tr><td>price_advertiser</td><td>Decimal</td><td>Preço dado pelo Anunciante pela Campanha</td></tr><tr><td>price_affiliate</td><td>Decimal</td><td>Preço dado ao Afiliado pela Campanha</td></tr><tr><td>model_advertiser</td><td>String</td><td>Modelo do Anunciante da Campanha<br><span data-gb-custom-inline data-tag="emoji" data-code="1f517">🔗</span> <a href="../../../universal/valores-comuns#models"><mark style="color:azul;">Ver Modelos</mark></a></td></tr><tr><td>model_affiliate</td><td>String</td><td>Modelo do Anunciante da Campanha<br><span data-gb-custom-inline data-tag="emoji" data-code="1f517">🔗</span> <a href="../../../universal/valores-comuns#models"><mark style="color:azul;">Ver Modelos</mark> </a></td></tr><tr><td>hide_affiliate_payout</td><td>Inteiro</td><td>Valores permitidos <br><strong>1:</strong> Para ocultar o pagamento ao Afiliado</td></tr><tr><td>start_datetime</td><td>Timestamp UTC</td><td>Data/hora de início<br>(AAAA-MM-DD HH:MM:SS) </td></tr><tr><td>end_datetime</td><td>Timestamp UTC</td><td>Data/hora de término<br>(AAAA-MM-DD HH:MM:SS )</td></tr><tr><td>visibility</td><td>String</td><td><strong>Valores permitidos:</strong><br>public, permission, private</td></tr><tr><td>status</td><td>String</td><td><strong>Valores permitidos:</strong> approve, pending</td></tr><tr><td>deep_links</td><td>Inteiro</td><td>Valores permitidos<br><strong>1:</strong> Para habilitar deeplinks nas Ofertas</td></tr><tr><td>offer_terms</td><td>String</td><td>Termos da Campanha</td></tr><tr><td>offer_kpi</td><td>String</td><td>Termos de KPI da Campanha</td></tr><tr><td>private_note</td><td>String</td><td>Notas privadas na Campanha</td></tr><tr><td>imps_url</td><td>URL</td><td>URL de Impressão</td></tr><tr><td>landing_page_name_1</td><td>String</td><td>Nome da primeira landing page </td></tr><tr><td>landing_page_url_1</td><td>URL</td><td>URL da primeira landing page da Campanha</td></tr><tr><td>landing_page_name_2</td><td>String</td><td>Nome da segunda landing page</td></tr><tr><td>landing_page_url_2</td><td>URL</td><td>URL da segunda landing page da Campanha</td></tr><tr><td>creatives</td><td>URL</td><td>URL dos Criativos da Campanha</td></tr><tr><td>fallback</td><td>boolean</td><td>Valores permitidos:<br><strong>1:</strong> Para habilitar Fallback</td></tr><tr><td>fallback_offer_id</td><td>Inteiro</td><td>ID da Oferta de Fallback</td></tr><tr><td>fallback_url</td><td>URL</td><td>URL do Fallback</td></tr><tr><td>fraud_conv_speed</td><td>Inteiro</td><td>Tempo em segundos</td></tr><tr><td>proxy_block</td><td>Inteiro</td><td>Valores permitidos:<br><strong>1:</strong> Para bloquear proxies</td></tr><tr><td>blank_ref_block</td><td>Inteiro</td><td>Valores permitidos:<br><strong>1:</strong> Para bloquear Referência em branco</td></tr><tr><td>hide_referral</td><td>Inteiro</td><td>Valores permitidos:<br><strong>1:</strong> Para ocultar indicação</td></tr><tr><td>assign_affiliates</td><td>Inteiro</td><td>Atribuir Afiliados a esta Campanha<br>(Valores separados por vírgula)</td></tr><tr><td>capping_rule_id</td><td>String</td><td>Caso o usuário queira Atualizar regra de capping existente</td></tr><tr><td>capping[0][capping_rule_name]</td><td>String</td><td>Nome da Regra de Capping </td></tr><tr><td>capping[0][capping_rule_type]</td><td>String</td><td>Tipo de regra de capping <br>1. <strong>advertiser_capping</strong><br>2. <strong>affiliate_capping</strong></td></tr><tr><td>capping[0][capping_timezone]</td><td>Timestamp</td><td>Fuso horário do Capping</td></tr><tr><td>capping[0][capping_events]</td><td>String</td><td>Eventos de Capping</td></tr><tr><td>capping[0][capping_type]</td><td>String</td><td>Tipo de capping<br>1. <strong>gross_conversions</strong><br>2. <strong>approved_conversions</strong><br>3. <strong>gross_revenue</strong><br>4. <strong>approved_revenue</strong><br>5. <strong>gross_payout</strong><br>6. <strong>approved_payout</strong><br>7. <strong>gross_clicks</strong><br>8. <strong>approved_clicks</strong></td></tr><tr><td>capping[0][capping_period]</td><td>String</td><td>Período de capping<br>1. <strong>daily</strong><br>2. <strong>weekly</strong><br>3. <strong>monthly</strong><br>4. <strong>hourly</strong></td></tr><tr><td>capping[0][capping_value]</td><td>Inteiro</td><td>Valor de Capping</td></tr><tr><td>capping[0][overcap_action]</td><td>String</td><td>Ação de Overcap<br>1. <strong>stop</strong><br>2. <strong>fallback</strong><br>3. <strong>fallback_conversion_accept</strong><br>4. <strong>conversion_accept</strong><br>5. <strong>conversion_reject</strong><br>6. <strong>conversion_pending</strong></td></tr><tr><td>capping[0][capping_notification_email]</td><td>Stirng</td><td>Email de Notificação de Capping</td></tr><tr><td>capping[0][capping_affiliate_visibility]</td><td>Inteiro</td><td><strong>1:</strong> Mostrar Regra de Capping para o afiliado</td></tr><tr><td>capping[0][capping_affiliate_id]</td><td>Stirng</td><td>IDs de Afiliado (separados por vírgula)</td></tr><tr><td>target_country</td><td>String</td><td>Permitir País específico <br><span data-gb-custom-inline data-tag="emoji" data-code="1f517">🔗</span> <a href="../../../universal/valores-comuns#countries"><mark style="color:azul;">Ver Países</mark></a></td></tr><tr><td>block_country</td><td>String</td><td>Bloquear País específico <br><span data-gb-custom-inline data-tag="emoji" data-code="1f517">🔗</span> <a href="../../../universal/valores-comuns#countries"><mark style="color:azul;">Ver Países</mark></a></td></tr><tr><td>target_os</td><td>String</td><td>Permitir sistema operacional específico<br><span data-gb-custom-inline data-tag="emoji" data-code="1f517">🔗</span> <a href="../../../universal/valores-comuns#operating-systems"><mark style="color:azul;">Ver SO</mark></a></td></tr><tr><td>block_os</td><td>String</td><td>Bloquear sistema operacional específico<br><span data-gb-custom-inline data-tag="emoji" data-code="1f517">🔗</span> <a href="../../../universal/valores-comuns#operating-systems"><mark style="color:azul;">Ver SO</mark></a></td></tr><tr><td>target_device</td><td>String</td><td>Permitir Dispositivos específicos<br><span data-gb-custom-inline data-tag="emoji" data-code="1f517">🔗</span><a href="../../../universal/valores-comuns#devices"> <mark style="color:azul;">Ver Dispositivos</mark></a></td></tr><tr><td>block_device</td><td>String</td><td>Bloquear Dispositivos específicos<br><span data-gb-custom-inline data-tag="emoji" data-code="1f517">🔗</span><a href="../../../universal/valores-comuns#devices"> <mark style="color:azul;">Ver Dispositivos</mark></a></td></tr><tr><td>target_browser</td><td>String</td><td>Permitir Navegador específico<br><span data-gb-custom-inline data-tag="emoji" data-code="1f517">🔗</span> <a href="../../../universal/valores-comuns#browsers"><mark style="color:azul;">Ver Navegadores</mark></a></td></tr><tr><td>block_browser</td><td>String</td><td>Bloquear Navegador específico<br><span data-gb-custom-inline data-tag="emoji" data-code="1f517">🔗</span> <a href="../../../universal/valores-comuns#browsers"><mark style="color:azul;">Ver Navegadores</mark></a></td></tr><tr><td>target_isp</td><td>String</td><td>Permitir ISP específico</td></tr><tr><td>block_isp</td><td>String</td><td>Bloquear ISP específico</td></tr><tr><td>events[0][event_name]</td><td>String</td><td>Nome do evento </td></tr><tr><td>events[0][event_token]</td><td>String</td><td>Token para o evento</td></tr><tr><td>capping_conversion_period</td><td>String</td><td><mark style="color:laranja;"><strong>Depreciado</strong></mark></td></tr><tr><td>capping_budget</td><td>Inteiro</td><td><mark style="color:laranja;"><strong>Depreciado</strong></mark></td></tr><tr><td>capping_conversion</td><td>Inteiro</td><td><mark style="color:laranja;"><strong>Depreciado</strong></mark></td></tr><tr><td>capping_budget_period</td><td>String</td><td><mark style="color:laranja;"><strong>Depreciado</strong></mark></td></tr></tbody></table>

**Regras de Capping (Instruções)**&#x20;

{% hint style="info" %}

1. Se você quiser definir várias regras de capping, pode fazê-lo atribuindo regras a números diferentes\
   **Exemplo 1:** \
   &#x20; capping\[**1**]\[capping\_rule\_name] \
   &#x20; capping\[**1**]\[capping\_rule\_type]\
   **Exemplo 2:**\
   &#x20; capping\[**2**]\[capping\_rule\_name] \
   &#x20; capping\[**2**]\[capping\_rule\_type]
2. Se você quiser atualizar uma regra de capping existente, você deve postar **capping\_rule\_id** em Solicitação de API junto com novos dados para **0**(Zero) número\
   **Exemplo:**\
   &#x20; capping\[**0**]\[capping\_rule\_name] \
   &#x20; capping\[**0**]\[capping\_rule\_type]
   {% endhint %}

**Eventos (Instruções)**&#x20;

{% hint style="info" %}

1. Se você quiser criar múltiplos eventos, pode fazê-lo atribuindo eventos a números diferentes\
   **Exemplo 1:** \
   &#x20; events\[1]\[event\_name] \
   &#x20; events\[1]\[event\_token]\
   **Exemplo 2:**\
   &#x20; events\[2]\[event\_name] \
   &#x20; events\[2]\[event\_token]
   {% endhint %}

***

### Exemplo de Requisição API

**Criação de Oferta**

![](https://4294454144-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F41f2EboJipeUA6flsLGK%2Fuploads%2Fdx5QTRNVdSSn89Lmib9O%2Fimage.png?alt=media\&token=855f8e50-bbf1-4c8d-998d-2a0bf3133d67)

**Resposta da API**

```
{
    "status": "200",
    "response": "offer_created_successfully",
    "offer_id": 000012    
}
```

**Atualização de Oferta**

![](https://4294454144-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F41f2EboJipeUA6flsLGK%2Fuploads%2Fp9ZW5G3rU3gMmESmYWwY%2Fimage.png?alt=media\&token=ba10f54b-9203-4576-b029-139456429b94)

**Resposta da API**

```
{
    "status": "200",
    "response": "offer_updated_successfully",
    "offer_id": "000001"
}
```

***

{% hint style="info" %}
**Para interações seguras, sempre chame a API a partir do lado do servidor.**
{% endhint %}


---

# Agent Instructions: 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:

```
GET https://knowledgebase.offer18.com/pt/rede/api-da-rede/api-de-criacao-de-oferta.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
