---
title: "Get IAB and Google Vendors"
method: GET
path: "/cfw/cmp/v1/vendors"
tags: ["Vendors"]
---

# Get IAB and Google Vendors

`GET /cfw/cmp/v1/vendors`

Use this API to retrieve a list of active IAB and Google Vendors to be displayed on the Preference Center.

## Headers

- `OT-CDN-Location` 'cdn.cookielaw.org' | 'cdn-apac.onetrust.com' | 'cdn.au.onetrust.com' | 'cdn-ukwest.onetrust.com' | 'cookie-cdn.cookiepro.com' | 'otcc-demo.otprivacy.com' | 'otcc-training.onetrust.com', required — The location of the CDN.
- `OT-App-Id` string, required — The unique identifier for the app or domain.
- `OT-Device-Type` 'mobile' | 'ctv', required — The type of device.
- `OT-SDK-Version` string, required — The published version of the app or domain.
- `OT-SDK-Identification` string, nullable — The OT SDK identification.
- `OT-Language` string, nullable — The language in which the user interface should be displayed.
- `OT-Country-Code` string, nullable — The country code from which the user is accessing the app or website.
- `OT-Region-Code` string, nullable — The region code from which the user is accessing the app or website.
- `OT-Fetch-Type` 'APP_DATA_ONLY' | 'APP_DATA_AND_PROFILE' | 'APP_DATA_AND_SYNC_PROFILE', nullable — The type of data to download.
- `OT-Consent-String` string, nullable — The encoded consent string that contains the interface's metadata.
- `OT-Identifier` string, nullable — The unique identifier for the data subject.
- `OT-Identifier-Type` string, nullable — The identifier type associated with the unique identifier in OT-Identifier header
- `OT-Identifier-UpdateType` 'Rename-Identifier', nullable
- `OT-Sync-Profile-Auth` string, nullable — The JSON Web Token (JWT) generated using Public Keys within the OneTrust application.
- `OT-Platform` 'Apple' | 'Android', nullable — To handle platform-specific features like ATT (App Tracking Transparency for Apple) or GoogleAdId (for Android) in a structured way, you can send the platform type in the parameters of an API or request.
- `OT-Exclude-Html-Tags` boolean, nullable — This is specifically to unbold the vendor numbers only.
- `OT-Tcf-Eu2v2-Consent-String` string, nullable — The IAB TCF string that contains information on consent preferences.
- `OT-Addtl-Consent-String` string, nullable — The Additional Consent string for Google Vendors.

## Response `200`

Success

- object
  - `errors` object[]
    - `code` 'SUCCESS' | 'ERROR_CODE_TEXT_RESOURCE_NOT_FOUND' | 'ERROR_CODE_NO_CONTENT' | 'ERROR_CODE_BLOB_LOCATIONS_UNAVAILABLE' | 'ERROR_CODE_INVALID_LOCATION' | 'ERROR_CODE_INVALID_COUNTRY_OR_REGION' | 'ERROR_CODE_INVALID_DEVICE_TYPE' | 'ERROR_CODE_INVALID_FETCH_TYPE' | 'ERROR_CODE_INVALID_CONSENT_REQUEST' | 'ERROR_CODE_HTTP_IF_NONE_MATCHED' | 'ERROR_CODE_SYNC_GROUP' | 'ERROR_CODE_FAILURE' | 'ERROR_CODE_DEFAULT_PURPOSE_STATUS' | 'ERROR_CODE_INVALID_OT_CONSENT_STRING' | 'ERROR_CODE_GENERIC_ERROR' | 'ERROR_CODE_MISSING_REQUIRED_HEADER' | 'ERROR_CODE_NO_ACCESS' | 'ERROR_CODE_INVALID_INTERACTION_TYPE' | 'ERROR_CODE_INVALID_CONTENT_TYPE_HEADER' | 'ERROR_IDENTIFIER_MISMATCH' | 'ERROR_UCP_NOT_CONFIGURED' | 'ERROR_CODE_INVALID_TC_STRING' | 'ERROR_GOOGLE_ADS_DISABLED' | 'ERROR_CODE_CONSENT_LOGGING' | 'ERROR_CODE_INVALID_REQUEST_BODY' | 'ERROR_CODE_UNSUPPORTED_VERSION' | 'ERROR_CODE_INVALID_AGE_RANGE' | 'ERROR_CODE_EMPTY_CONSENT', required
    - `message` 'Not Found' | 'No content' | 'success' | 'Unable to fetch data for the specified Application ID. Please check your configurations.' | 'Invalid location' | 'Invalid country code or region code. If you want to skip validation, please set the header 'OT-Geolocation-Skip-Validation' to true.' | 'Invalid Device Type' | 'Invalid Fetch type' | 'Missing either or all of TenantId or Identifier or Authorization' | 'If-None-Match' | 'syncGroup' | 'failure' | 'NO_CONSENT' | 'Invalid OT consent string' | 'Something went wrong' | 'No access to this resource' | 'Invalid Interaction Type' | 'Content-Type header should be application/json' | 'Input Identifier does not match with one in consent string' | 'The UC Purposes API call was successful, but no data is available for display.' | 'UC Purposes is disabled.' | 'Error decoding TC string, default consent is returned.' | 'Google Ads is disabled.' | 'Consent Logging has failed, please retry in sometime and if issue still persists please reach out to support team.' | 'Error parsing request body' | 'The published version is not supported. Please publish a newer version.' | 'The upper bound of the age range must be greater than lower bound.' | 'At least one purpose consent is required.', required
  - `warnings` object[]
    - `code` 'WARNING_CODE_PUBLISHED_VERSION_MISMATCH', required
    - `message` 'Requested data for the OT-SDK-Version does not match the published version on the OneTrust server. The latest published version will be returned instead.', required
  - `appConfig` object, required
    - `showBanner` boolean, required
    - `bannerReason` 'Geo rule Banner is not enabled.' | 'Geo rule Banner is enabled and is first launch.' | 'Sdk's Automatic reconsent has expired.' | 'Reconsent triggered for an authenticated user.' | 'The TC String has expired.' | 'Hundred percent sync is not completed for cross device sync enabled scenario.' | 'The template type is updated to IAB.' | 'Sdk has been published with reconsent.' | 'Banner will not be shown as consent validity holds true.' | 'Banner will not be shown as cross device sync is hundred percent complete.', required
    - `templateType` 'GDPR' | 'CCPA' | 'IAB2' | 'IAB2V2' | 'GENERIC' | 'LGPD' | 'GENERIC_PROMPT' | 'CPRA' | 'CDPA' | 'USNATIONAL' | 'CUSTOM' | 'COLORADO' | 'CTDPA' | 'UCPA' | 'OREGON' | 'FLORIDA' | 'DELAWARE' | 'IOWA' | 'MONTANA' | 'NEBRASKA' | 'TENNESSEE' | 'TEXAS' | 'NEW_JERSEY' | 'NEW_HAMPSHIRE', required
    - `bannerReasonCode` 101 | 102 | 103 | 104 | 105 | 107 | 109 | 150 | 151 | 152, required
    - `multiProfileConsent` object
      - `downloadDataAfterSwitch` boolean, required
      - `maxProfilesLimit` number, required
    - `gcmInfo` object
      - `userConsented` boolean, required
      - `gcmConsents` object, required
        - `adPersonalization` 'UNASSIGNED' | 'UNDEFINED' | 'DENIED' | 'GRANTED', required
        - `adStorage` 'UNASSIGNED' | 'UNDEFINED' | 'DENIED' | 'GRANTED', required
        - `adUserData` 'UNASSIGNED' | 'UNDEFINED' | 'DENIED' | 'GRANTED', required
        - `analyticsStorage` 'UNASSIGNED' | 'UNDEFINED' | 'DENIED' | 'GRANTED', required
        - `functionalityStorage` 'UNASSIGNED' | 'UNDEFINED' | 'DENIED' | 'GRANTED', required
        - `personalizationStorage` 'UNASSIGNED' | 'UNDEFINED' | 'DENIED' | 'GRANTED', required
        - `securityStorage` 'UNASSIGNED' | 'UNDEFINED' | 'DENIED' | 'GRANTED', required
    - `countryCode` string
    - `regionCode` string
    - `shouldResetLocalState` boolean — This flag indicates, if any local changes are there at client side, to notify clients to just discard them as we have to collect the consents freshly in certain scenarios like on reconsent triggers etc.
    - `lastReconsentDate` number
    - `rejectAllButtonBehavior` string
  - `iab2V2Vendors` object
    - `groupPrefixes` object, required
      - `stack` string, required
      - `feature` string, required
      - `purpose` string, required
      - `specialPurpose` string, required
      - `specialFeature` string, required
    - `purposes` object, required
      - `1` object
        - `id` number
        - `name` string
        - `description` string
        - `iabIllustrations` string[]
    - `specialPurposes` object, required
      - `1` object, required
        - `id` number
        - `name` string
        - `description` string
        - `iabIllustrations` string[]
    - `features` object, required
      - `1` object, required
        - `id` number
        - `name` string
        - `description` string
        - `iabIllustrations` string[]
    - `specialFeatures` object, required
      - `1` object, required
        - `id` number
        - `name` string
        - `description` string
        - `iabIllustrations` string[]
    - `vendors` object, required
      - `1` object, required
        - `purposes` number[]
        - `legIntPurposes` number[]
        - `flexiblePurposes` number[]
        - `specialPurposes` number[]
        - `features` number[]
        - `specialFeatures` number[]
        - `id` number
        - `name` string
        - `iab2V2GVLVersion` number
        - `dataDeclaration` number[]
        - `urls` object, required
          - `langId` string
          - `privacy` string
          - `legIntClaim` string
        - `dataRetention` object, required
          - `stdRetention` number
          - `purposes` object
          - `specialPurposes` object
        - `cookieMaxAgeSeconds` number
        - `usesNonCookieAccess` boolean
        - `deviceStorageDisclosureUrl` string
        - `legIntStatus` string
        - `consentStatus` string
    - `iabDataCategories` object, required
      - `1` object
        - `id` number
        - `name` string
      - `2` object
        - `id` number
        - `name` string
      - `3` object
        - `id` number
        - `name` string
      - `4` object
        - `id` number
        - `name` string
      - `5` object
        - `id` number
        - `name` string
      - `6` object
        - `id` number
        - `name` string
      - `7` object
        - `id` number
        - `name` string
      - `8` object
        - `id` number
        - `name` string
      - `9` object
        - `id` number
        - `name` string
      - `10` object
        - `id` number
        - `name` string
      - `11` object
        - `id` number
        - `name` string
    - `vendorListVersion` number
    - `lastUpdated` string
  - `googleVendors` object, required
    - `vendors` object, required
      - `320` object
        - `id` number
        - `name` string
        - `policyUrl` string
        - `consentStatus` number
      - `1085` object
        - `id` number
        - `name` string
        - `policyUrl` string
        - `consentStatus` number
      - `1421` object
        - `id` number
        - `name` string
        - `policyUrl` string
        - `consentStatus` number
    - `vendorListVersion` number
  - `generalVendors` object
  - `vendorListUIData` object, required
    - `general` object, required
      - `backgroundColor` string
      - `backgroundColorDark` string
      - `toggleActiveColor` string
      - `toggleActiveColorDark` string
      - `toggleInactiveColor` string
      - `toggleInactiveColorDark` string
      - `lineBreakColor` string
      - `lineBreakColorDark` string
      - `titleTextColor` string
      - `titleTextColorDark` string
      - `disclosureTintColor` string
      - `disclosureTintColorDark` string
      - `pageHeaderTitle` string
      - `iabVendorsTitle` string
      - `googleVendorsTitle` string
      - `allowAllConsentText` string
      - `filter` object, required
        - `onColor` string
        - `onColorDark` string
        - `color` string
        - `colorDark` string
      - `searchBar` object, required
        - `textColor` string
        - `textColorDark` string
        - `searchPlaceholderText` string
        - `searchNoResultsFoundText` string
        - `searchResultsTotalText` string
        - `backgroundColorDark` string
        - `resultsFoundText` string, required
      - `segmentControl` object, required
        - `foreGroundColor` string
        - `foreGroundColorDark` string
        - `selectedForeGroundColor` string
        - `selectedForeGroundColorDark` string
        - `tintColor` string
        - `tintColorDark` string
        - `font` string
        - `selectedFont` string
      - `buttons` object, required
        - `savePreferencesButton` object, required
          - `borderRadius` string
          - `color` string
          - `colorDark` string
          - `fontSize` string
          - `text` string
          - `textColor` string
          - `textColorDark` string
          - `interactionType` string
        - `acceptAll` object
          - `borderRadius` string
          - `color` string
          - `colorDark` string
          - `fontSize` string
          - `text` string
          - `textColor` string
          - `textColorDark` string
          - `interactionType` string, required
          - `position` number — Applicable to ctv device type only
          - `positionBeforePurpose` number — Applicable to mobile device type only
          - `positionAfterPurpose` number — Applicable to mobile device type only
        - `rejectAll` object
          - `borderRadius` string
          - `color` string
          - `colorDark` string
          - `fontSize` string
          - `text` string
          - `textColor` string
          - `textColorDark` string
          - `interactionType` string, required
          - `position` number — Applicable to ctv device type only
          - `positionBeforePurpose` number — Applicable to mobile device type only
          - `positionAfterPurpose` number — Applicable to mobile device type only
      - `useRTL` boolean, required
      - `generalVendorsTitle` string
      - `showTogglesForGeneralVendors` boolean
      - `generalVendorsPolicyText` string
      - `filterVendorListTitle` string
    - `vendorDetailsUIData` object, required
      - `backButtonColor` string
      - `backButtonColorDark` string
      - `vendorsPolicyText` string
      - `legIntClaimPolicyText` string
      - `consentToggleText` string
      - `legitInterestToggleText` string
      - `consentPurposes` string
      - `features` string
      - `specialFeatures` string
      - `specialPurposes` string
      - `legitimateInterestPurposesText` string
      - `lifespan` string
      - `lifespanDay` string
      - `lifespanDays` string
      - `lifespanMonth` string
      - `lifespanMonths` string
      - `disclosureTitle` string
      - `nonCookieUsageText` string
      - `storageIdentifierText` string
      - `storageIdentifierType` string
      - `storagePurposes` string
      - `storageDomain` string
      - `dataDeclarationText` string
      - `dataRetentionText` string
      - `dataStdRetentionText` string
      - `domainsUsed` string
      - `domainUse` string
      - `sdkListText` string
      - `title` object, required
        - `fontSize` string
        - `show` boolean
        - `text` string
        - `textAlign` string
        - `textColor` string
        - `textColorDark` string
      - `description` object, required
        - `show` boolean
        - `fontSize` string
        - `text` string
        - `textAlign` string
        - `textColor` string
        - `textColorDark` string
      - `link` object, required
        - `fontSize` string
        - `show` boolean
        - `text` string
        - `textAlign` string
        - `textColor` string
        - `textColorDark` string
        - `url` string
        - `urlQRCode` string
  - `otConsentString` string

## Other responses

- `400` — Bad Request
- `403` — Forbidden
- `404` — Not Found
- `429` — Too Many Requests. \nFor more information, see [API Rate Limits](https://developer.onetrust.com/onetrust/reference/rate-limits-overview).
- `500` — Internal Server Error

---

[API](https://skmtc.net/onetrust/apis/platform-access-management.md) · [All operations](https://skmtc.net/onetrust/apis/platform-access-management/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/onetrust/platform-access-management/versions/21de3aa0b170/schema)
