> For the complete documentation index, see [llms.txt](https://docs.sirdata.net/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.sirdata.net/notification-api/webhook-endpoint.md).

# Webhook endpoint

## Placeholders

When you create a campaign you must define a property webhook\_endpoint.\
This endpoint in an https url that can contains placeholder

* `[CAMPAIGN_ID]`
* `[AUDIENCE_ID]`
* `[CAMPAIGN_NAME]`
* `[REFERENCE_ID]`
* `[TIMESTAMP]`

All placeholders exists with an ENC\_ name for url encoded values.\
**Example :** \
`https://endpoint.company.com/api/v1/endpoint_notify/campaign/[CAMPAIGN_ID]`<br>

## Body notification

You may have to pass some custom data on your network and get them back in your endpoint.

{% hint style="warning" %}
In the UE, the UK, Iceland, Liechtenstein and Norway, unless specifically and by written authorized not to, do not call the tag if you didn't previously collected a valid consent for Purposes 1 & 3 and Vendor 53 under the [IAB Europe Transparency & Consent Framework](https://iabeurope.eu/tcf-2-0/), and add the mandatory [***gdpr=\[gdpr\_applies\]\&gdpr\_consent=\[tc\_string\]***](https://github.com/InteractiveAdvertisingBureau/GDPR-Transparency-and-Consent-Framework/blob/master/TCFv2/IAB%20Tech%20Lab%20-%20CMP%20API%20v2.md) parameters in the URL.
{% endhint %}

{% hint style="danger" %}
**TAG WILL ACCESS A COOKIE : DO NOT CALL IT UNLESS YOU PREVIOUSLY COLLECTED A VALID CONSENT TO DO SO WHENEVER REQUESTED BY LOCAL LAW**
{% endhint %}

Add this pixel in your network :

&#x20;[`https://js.sddan.com/PMAP.d?pa=[PARTNER_ID]&gdpr=[gdpr_applies]&gdpr_consent=[CONSENT_STRING]`](https://js.sddan.com/PMAP.d?pa=\[PARTNER_ID]\&gdpr_consent=\[CONSENT_STRING])`&`**`args_myfirstarg`**`=XXXX&`**`args_mysecondarg`**`=YYYYY`

{% hint style="info" %}
(mandatory) ***\[PARTNER\_ID]*** : *numerical value* - is given by **your contact** at Sirdata&#x20;

(mandatory for EEA/UK users) ***gdpr** :* [TCF V2 *gdpr\_applies* parameter](https://github.com/InteractiveAdvertisingBureau/GDPR-Transparency-and-Consent-Framework/blob/master/TCFv2/IAB%20Tech%20Lab%20-%20Consent%20string%20and%20vendor%20list%20formats%20v2.md#full-tc-string-passing)

(mandatory for EEA/UK users) ***gdpr\_consent** :* [TCF V2 TC String](https://github.com/InteractiveAdvertisingBureau/GDPR-Transparency-and-Consent-Framework/blob/master/TCFv2/IAB%20Tech%20Lab%20-%20Consent%20string%20and%20vendor%20list%20formats%20v2.md#full-tc-string-passing)
{% endhint %}

When you create your campaign you must precise **filter\_partner\_audience: true**.

In the JSON body notification you will receive this object `:`

```javascript
{
    campaign_id: "MY_CAMPAIGN_ID",
    audience_id: "MY_AUDIENCE_ID",
    value: "MD5 OR REFERENCE_ID",
    campaign_name: "MY_CAMPAIGN_NAME",
    arguments: {
        myfirstarg: "XXXX",
        mysecondarg: "YYYYY"
    }
}
```
