# Tags and vendors management

Managing tags and vendors on your website is a key aspect of integrating the Didomi CMP.\
You need to ensure that vendors that require consent are only loaded if consent is available so that they do not collect personal data or set cookies without the user consent.

## IAB vendors (TCF and CCPA)

The Didomi SDK automatically shares the user consent status with vendors through the [IAB GDPR Consent framework](https://iabeurope.eu/tcf-2-0/) and the [IAB CCPA Compliance framework](https://www.iab.com/guidelines/ccpa-framework/).

For vendors that support the framework, the only thing you have to do is declare them in the list of vendors that your website uses and they will adapt their data processing to respect the user consent.

## Non-IAB vendors with direct integrations

For other vendors, that do not implement the IAB specification, you will need to share the consent status with their tag if they have an API to do so or prevent their tags from loading until the user has given consent for the vendor and its purposes.

Didomi has built the following direct integrations:

* [Google Ad Manager / DFP](https://developers.didomi.io/cmp/web-sdk/third-parties/direct-integrations/google-ad-manager-adsense/google-dfp-adsense-adx)
* [Google Consent Mode](https://developers.didomi.io/cmp/web-sdk/third-parties/direct-integrations/google-consent-mode)
* [Kameleoon](https://developers.didomi.io/cmp/web-sdk/third-parties/direct-integrations/kameleoon)
* [Piano Analytics (AT Internet)](https://developers.didomi.io/cmp/web-sdk/third-parties/direct-integrations/at-internet)
* [Prebid](https://developers.didomi.io/cmp/web-sdk/third-parties/direct-integrations/prebid/prebid)
* [Salesforce DMP (Krux)](https://developers.didomi.io/cmp/web-sdk/third-parties/direct-integrations/salesforce-dmp-krux)

## Non-IAB vendors without a direct integration

For other non-IAB vendors that Didomi does not have a direct integration with, we support the following integration modes:

| **Mode**                                                                                              | Use case                                                       |
| ----------------------------------------------------------------------------------------------------- | -------------------------------------------------------------- |
| [Custom Didomi \<script> tags](https://developers.didomi.io/cmp/web-sdk/third-parties/no-tag-manager) | Hard-coded tags and vendors on your website as `<script>` tags |
| [Programmatic API](https://developers.didomi.io/cmp/web-sdk/third-parties/programmatic-api)           | Tags and vendors managed from your own JavaScript code         |
| [Tag managers](https://developers.didomi.io/cmp/web-sdk/third-parties/tags-management/tag-managers)   | Tags and vendors managed through your tag manager              |


---

# 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://developers.didomi.io/cmp/web-sdk/third-parties.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.
