openapi: 3.0.2 info: title: Didomi consents/events notices API description: 'A REST API to communicate with the Didomi platform (https://api.didomi.io/v1/) This is the complete specification of the API. A complete guide to authenticating and using the API is available on our Developers Portal. All HTTP calls to the API require a valid JWT token. The token must be provided in an **Authorization** header with the value "Bearer ". Click on the Authorize button in the header of this page to provide a token before testing requests from this documentation. ' version: '1.0' servers: - url: https://api.didomi.io/v1 description: Didomi Platform API security: - bearer: [] tags: - name: notices paths: /widgets/notices/texts: get: parameters: [] responses: '200': description: A list of NoticeText objects content: application/json: schema: type: array items: $ref: '#/components/schemas/notices-text' description: Returns a list of notice texts summary: Retrieve a list of notice texts tags: - notices security: - bearer: [] post: parameters: - name: notices-text in: body description: The notice text object to create required: true schema: $ref: '#/components/schemas/notices-text-input' responses: '200': description: The created NoticeText object content: application/json: schema: $ref: '#/components/schemas/notices-text' description: Create a new notice text for an organization summary: Create a notice text tags: - notices security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/notices' /widgets/notices/texts/{id}: get: parameters: - name: id in: path description: The ID of the notice text to retrieve required: true schema: type: string responses: '200': description: A NoticeText object content: application/json: schema: $ref: '#/components/schemas/notices-text' description: Returns a single notice text summary: Retrieve a notice text tags: - notices security: - bearer: [] put: parameters: - name: id in: path description: The ID of the notice text to update required: true schema: type: string - name: notices-text in: body description: The new notice text to update required: true schema: $ref: '#/components/schemas/notices-text-input' responses: '200': description: The updated NoticeText object content: application/json: schema: $ref: '#/components/schemas/notices-text' description: Update an existing notice text summary: Update a notice text tags: - notices security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/notices' patch: parameters: - name: id in: path description: The ID of the notice text to patch required: true schema: type: string - name: notices-text in: body description: The properties to replace on the notice text object required: true schema: $ref: '#/components/schemas/notices-text-input' responses: '200': description: The patched NoticeText object content: application/json: schema: $ref: '#/components/schemas/notices-text' description: Partially update a notice text summary: Patch a notice text tags: - notices security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/notices' /widgets/notices/texts-contents: get: parameters: [] responses: '200': description: A list of NoticeTextContent objects content: application/json: schema: type: array items: $ref: '#/components/schemas/notices-text-content' description: Returns a list of notice text contents summary: Retrieve a list of notice text contents tags: - notices security: - bearer: [] post: parameters: - name: notices-text-content in: body description: The notice text content object to create required: true schema: $ref: '#/components/schemas/notices-text-content-input' responses: '200': description: The created NoticeTextContent object content: application/json: schema: $ref: '#/components/schemas/notices-text-content' description: Create a new notice text content for an organization. A content version will be automatically assigned and the content will need to go through the approval process from the Didomi team before it can be used in a notice. If there is already an approved content for a given notice text, it remains available for notices until the new version of the content get approved. summary: Create a notice text content tags: - notices security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/notices' /widgets/notices/texts-contents/{id}: get: parameters: - name: id in: path description: The ID of the notice text content to retrieve required: true schema: type: string responses: '200': description: A NoticeTextContent object content: application/json: schema: $ref: '#/components/schemas/notices-text-content' description: Returns a single notice text content summary: Retrieve a notice text content tags: - notices security: - bearer: [] put: parameters: - name: id in: path description: The ID of the notice text content to update required: true schema: type: string - name: notices-text-content in: body description: The new notice text content to update required: true schema: $ref: '#/components/schemas/notices-text-content-input' responses: '200': description: The updated NoticeTextContent object content: application/json: schema: $ref: '#/components/schemas/notices-text-content' description: Update an existing notice text content. Text contents cannot be modified once their status is "approved". If you want to update an approved text content, create a new content for the same text and get it approved again by the Didomi team. summary: Update a notice text content tags: - notices security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/notices' patch: parameters: - name: id in: path description: The ID of the notice text content to patch required: true schema: type: string - name: notices-text-content in: body description: The properties to replace on the notice text content object required: true schema: $ref: '#/components/schemas/notices-text-content-input' responses: '200': description: The patched NoticeTextContent object content: application/json: schema: $ref: '#/components/schemas/notices-text-content' description: Partially update an existing notice text content. Text contents cannot be modified once their status is "approved". If you want to update an approved text content, create a new content for the same text and get it approved again by the Didomi team. summary: Patch a notice text content tags: - notices security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/notices' delete: parameters: - name: id in: path description: The ID of the notice text content to delete required: true schema: type: string responses: '200': description: The deleted NoticeTextContent object content: application/json: schema: $ref: '#/components/schemas/notices-text-content' description: Delete an existing notice text content. Text contents cannot be deleted once their status is "approved". If you want to update an approved text content, create a new content for the same text and get it approved again by the Didomi team. summary: Delete a notice text content tags: - notices security: - bearer: [] /widgets/notices/generators/sdk: post: parameters: - name: config in: body description: The notice configuration object to transform required: true schema: $ref: '#/components/schemas/sdk-configs-input' responses: '200': description: The generated SDK configuration content: application/json: schema: $ref: '#/components/schemas/sdk-configs' description: Generate a SDK configuration from a notice configuration summary: Generate a SDK configuration tags: - notices security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/notices' /widgets/notices/generators/configs: post: parameters: - name: config in: body description: The SDK configuration object to transform required: true schema: $ref: '#/components/schemas/notice-configs-input' responses: '200': description: The generated notice configuration content: application/json: schema: $ref: '#/components/schemas/notice-configs' description: Generate a Notice configuration from a SDK configuration summary: Generate a Notice configuration tags: - notices security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/notices' /widgets/notices/templates/configs: get: parameters: - name: $limit in: query required: false schema: type: number default: 0 minimum: 0 - name: $skip in: query required: false schema: type: number default: 10 minimum: 0 responses: '200': description: A NoticeTemplateConfig object content: application/json: schema: type: object description: A paginated list of notice template configuration objects properties: total: type: number description: The total number of template configurations limit: type: number description: The maximum number of template configurations returned skip: type: number description: Number of template configurations skipped data: type: array items: $ref: '#/components/schemas/notices-templates-configs' description: Returns a list of notice template configurations summary: Retrieve a list of notice template configurations tags: - notices security: - bearer: [] /widgets/notices/templates/configs/{id}: get: parameters: - name: template_id in: path description: The ID of the notice template to retrieve configuration required: false schema: type: string - name: $limit in: query required: false schema: type: number default: 0 minimum: 0 - name: $skip in: query required: false schema: type: number default: 10 minimum: 0 responses: '200': description: A NoticeTemplateConfig object content: application/json: schema: type: object description: A paginated list of notice template configuration objects properties: total: type: number description: The total number of template configurations limit: type: number description: The maximum number of template configurations returned skip: type: number description: Number of template configurations skipped data: type: array items: $ref: '#/components/schemas/notices-templates-configs' description: Returns a single notice template configuration summary: Retrieve a notice template configuration tags: - notices security: - bearer: [] put: parameters: - name: id in: path description: The ID of the notice template configuration to update required: true schema: type: string - name: notice-template-config in: body description: The new notice template configuration to update required: true schema: $ref: '#/components/schemas/notices-templates-configs-input' responses: '200': description: The updated NoticeTemplateConfig object content: application/json: schema: $ref: '#/components/schemas/notices-templates-configs' description: Update an existing notice template configuration. summary: Update a notice template configuration tags: - notices security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/notices' patch: parameters: - name: id in: path description: The ID of the notice template configuration to patch required: true schema: type: string - name: notice-template in: body description: The properties to replace on the notice template configuration object required: true schema: $ref: '#/components/schemas/notices-templates-configs' responses: '200': description: The patched NoticeTemplateConfig object content: application/json: schema: $ref: '#/components/schemas/notices-templates-configs' description: Partially update an existing notice template configuration. summary: Patch a notice template configuration tags: - notices security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/notices' delete: parameters: - in: path name: id description: ID of notices to remove schema: type: integer required: true responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/notices' '401': description: not authenticated '404': description: not found '500': description: general error description: Removes the resource with id. summary: '' tags: - notices security: [] /widgets/notices/templates: get: parameters: - name: $limit in: query required: false schema: type: number default: 0 minimum: 0 - name: $skip in: query required: false schema: type: number default: 10 minimum: 0 responses: '200': description: A NoticeTemplate object content: application/json: schema: type: object description: A paginated list of notices templates objects properties: total: type: number description: The total number of templates limit: type: number description: The maximum number of templates returned skip: type: number description: Number of templates skipped data: type: array items: $ref: '#/components/schemas/notices-templates' description: Returns a list of notices templates summary: Retrieve a list of notices templates tags: - notices security: - bearer: [] post: parameters: - name: notice-template in: body description: The notice template name to create required: true schema: $ref: '#/components/schemas/notices-templates-input' responses: '200': description: The created NoticeTemplate object content: application/json: schema: $ref: '#/components/schemas/notices-templates' description: Create a new notice template for an organization. summary: Create a notice template tags: - notices security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/notices' /widgets/notices/templates/{id}: get: parameters: - name: id in: path description: The ID of the notice template to retrieve required: false schema: type: string - name: $limit in: query required: false schema: type: number default: 0 minimum: 0 - name: $skip in: query required: false schema: type: number default: 10 minimum: 0 responses: '200': description: A NoticeTemplate object content: application/json: schema: type: object description: A paginated list of notices templates objects properties: total: type: number description: The total number of templates limit: type: number description: The maximum number of templates returned skip: type: number description: Number of templates skipped data: type: array items: $ref: '#/components/schemas/notices-templates' description: Returns a single notice template summary: Retrieve a notice template tags: - notices security: - bearer: [] put: parameters: - in: path name: id description: ID of notices to update schema: type: integer required: true responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/notices' '401': description: not authenticated '404': description: not found '500': description: general error description: Updates the resource identified by id using data. summary: '' tags: - notices security: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/notices' patch: parameters: - name: id in: path description: The ID of the notice template to patch required: true schema: type: string - name: notice-template in: body description: The properties to replace on the notice template object required: true schema: $ref: '#/components/schemas/notices-templates-input' responses: '200': description: The patched NoticeTemplate object content: application/json: schema: $ref: '#/components/schemas/notices-templates' description: Partially update an existing notice template. summary: Patch a notice template, and associate notice template with notices tags: - notices security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/notices' delete: parameters: - name: id in: path description: The ID of the notice template to patch required: true schema: type: string responses: '200': description: The removed NoticeTemplate object content: application/json: schema: $ref: '#/components/schemas/notices-templates' description: Removes the notice template. summary: Removes the notice template, and associated notice template config tags: - notices security: - bearer: [] /widgets/notices/deployments: get: parameters: [] responses: '200': description: A list of NoticeDeployment objects content: application/json: schema: type: array items: $ref: '#/components/schemas/notices-deployments' description: Returns a list of deployments summary: Retrieve a list of deployments tags: - notices security: - bearer: [] post: parameters: - name: notice in: body description: The deployment object to create required: true schema: $ref: '#/components/schemas/notices-deployments-input' responses: '200': description: The created NoticeDeployment object content: application/json: schema: $ref: '#/components/schemas/notices-deployments' description: Create a new deployment for an organization summary: Create a deployment tags: - notices security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/notices' /widgets/notices/deployments/{id}: get: parameters: - name: id in: path description: The ID of the deployment to retrieve required: true schema: type: string responses: '200': description: A NoticeDeployment object content: application/json: schema: $ref: '#/components/schemas/notices-deployments' description: Returns a single deployment summary: Retrieve a deployment tags: - notices security: - bearer: [] /widgets/notices/configs: get: parameters: - name: download in: query description: Flag to indicate the response should be returned as an attachment (interpreted as true if present regardless of value). Responds with a CSV extract of the items or Not Found if no items match the query. required: false allowEmptyValue: true type: string - name: v in: header description: 'Header to indicate Notice-Config API version. 1: Legacy. 2: Multi-Regulation' required: false allowEmptyValue: false schema: type: string enum: - '1' - '2' default: '1' responses: '200': description: A list of NoticeConfig objects content: application/json: schema: type: array items: $ref: '#/components/schemas/notices-config' description: Returns a list of configurations summary: Retrieve a list of configurations tags: - notices security: - bearer: [] /widgets/notices/configs/{id}: get: parameters: - name: id in: path description: The ID of the notice configuration to retrieve required: true schema: type: string - name: download in: query description: Flag to indicate the response should be returned as an attachment (interpreted as true if present regardless of value) required: false allowEmptyValue: true type: string - name: v in: header description: 'Header to indicate Notice-Config API version. 1: Legacy. 2: Multi-Regulation' required: false allowEmptyValue: false schema: type: string enum: - '1' - '2' default: '1' responses: '200': description: A NoticeConfig object content: application/json: schema: $ref: '#/components/schemas/notices-config' description: Returns a single notice configuration summary: Retrieve a notice configuration tags: - notices security: - bearer: [] patch: parameters: - name: id in: path description: The ID of the notice configuration to patch required: true schema: type: string - name: notices-config in: body description: The properties to replace on the notice configuration object required: true schema: $ref: '#/components/schemas/notices-config-input' - name: v in: header description: 'Header to indicate Notice-Config API version. 1: Legacy. 2: Multi-Regulation' required: false allowEmptyValue: false schema: type: string enum: - '1' - '2' default: '1' responses: '200': description: The patched NoticeConfig object content: application/json: schema: $ref: '#/components/schemas/notices-config' description: Partially update a notice configuration summary: Patch a notice configuration tags: - notices security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/notices' /widgets/notices/sdk-configs: get: parameters: [] responses: '200': description: A list of SDK Configs objects content: application/json: schema: type: array items: $ref: '#/components/schemas/notices-sdk-config' description: Returns a list of SDK configurations summary: Retrieve a list of SDK configurations tags: - notices security: - bearer: [] /widgets/notices/sdk-configs/{id}: get: parameters: - name: id in: path description: The ID of the SDK configuration to retrieve required: true schema: type: string responses: '200': description: A SDK config object content: application/json: schema: $ref: '#/components/schemas/notices-sdk-config' description: Returns a single SDK configuration summary: Retrieve a SDK configuration tags: - notices security: - bearer: [] /widgets/notices: get: parameters: [] responses: '200': description: A list of Notice objects content: application/json: schema: type: array items: $ref: '#/components/schemas/notices' description: Returns a list of notices summary: Retrieve a list of notices tags: - notices security: - bearer: [] post: parameters: - name: duplicate in: query description: The ID of the notice you want to duplicate required: false schema: type: string - name: notice in: body description: The Notice object to create required: true schema: $ref: '#/components/schemas/notices-input' responses: '200': description: The created Notice object content: application/json: schema: $ref: '#/components/schemas/notices' description: Create a new notice for an organization summary: Create a notice tags: - notices security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/notices' /widgets/notices/{id}: get: parameters: - name: id in: path description: ID of the notice to retrieve required: true schema: type: string responses: '200': description: A Notice object content: application/json: schema: $ref: '#/components/schemas/notices' description: Returns a single notice summary: Retrieve a notice tags: - notices security: - bearer: [] put: parameters: - name: id in: path description: The ID of the notice to update required: true schema: type: string - name: notices in: body description: The new notice to update required: true schema: $ref: '#/components/schemas/notices-input' responses: '200': description: The updated Notice object content: application/json: schema: $ref: '#/components/schemas/notices' description: Update an existing notice summary: Update a notice tags: - notices security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/notices' patch: parameters: - name: id in: path description: The ID of the notice to patch required: true schema: type: string - name: notices in: body description: The properties to replace on the notice object required: true schema: $ref: '#/components/schemas/notices-input' responses: '200': description: The patched Notice object content: application/json: schema: $ref: '#/components/schemas/notices' description: Partially update a notice summary: Patch a notice tags: - notices security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/notices' delete: parameters: - name: id in: path description: The ID of the notice to delete required: true schema: type: string responses: '200': description: The deleted Notice object content: application/json: schema: $ref: '#/components/schemas/notices' description: Delete an existing notice summary: Delete a notice tags: - notices security: - bearer: [] components: schemas: notices-templates-input: type: object title: NoticeTemplateInput description: A template defines common configuration shared across multiple consent notices properties: name: type: string description: Name of the notice template notices_id: type: array description: List items: type: string notices-input: title: NoticeInput type: object properties: organization_id: type: string description: ID of the organization that owns the notice name: type: string description: Internal name of the notice ; this is only used for you to distinguish between the different notices in your account archived_at: type: string description: Archival date of the notice format: date-time privacy_experience_id: type: string description: ID of the linked privacy experience environment: type: string description: Deployment environment for the notice external_source: type: string description: Source system for imported notices external_id: type: string description: Original ID from the external source system required: - organization_id - name notices-templates-configs: type: object title: NoticeTemplateConfig description: A template config defines a notice configuration associated with a template properties: id: type: string description: The ID of the notice template config template_id: type: string description: The ID of the template that this template configuration belongs to config: type: object description: Notice configuration properties: app: type: object description: Application configuration section properties: essentialPurposes: type: array description: List of IDs of purposes to mark as essential (https://developers.didomi.io/cmp/web-sdk/consent-notice/vendors-and-purposes#essential-purposes) items: type: string description: ID of a custom purpose vendors: type: object description: Vendors and purposes configuration (https://developers.didomi.io/cmp/web-sdk/consent-notice/vendors-and-purposes) properties: include: type: array description: Vendor IDs to include in the notice items: type: string description: ID of the vendor iab: type: object description: IAB configuration properties: all: type: boolean description: Include all vendors from the IAB list include: type: array description: Custom list of IAB vendors to include items: type: number description: ID of the vendor exclude: type: array description: Vendors IDs to exclude items: type: number description: Vendors to be excluded if 'all' is set to 'true' enabled: type: boolean description: Whether the TCF integration is enabled or not version: type: integer minimum: 1 maximum: 2 description: IAB TCF Version restrictions: type: array description: IAB TCF restrictions to apply to vendors and purposes (https://developers.didomi.io/cmp/web-sdk/consent-notice/vendors-and-purposes#publisher-restrictions-iab-tcf) items: type: object description: Publisher restrictions configuration properties: id: type: string description: Unique identifier for the specified publisher restriction purposeId: type: array description: IAB purpose IDs items: type: string restrictionType: type: string enum: - allow - disallow - req-consent - req-li description: Type of the restriction vendors: type: object description: Vendors that the restriction applies to properties: restrictionType: type: string enum: - list - all description: Type of the list of vendors (either a specific list or all vendors) purposeId: type: array description: List of vendor IDs that the restriction applies to if `type` is `list` items: type: string stacks: type: object description: Configuration used to override stacks configuration (https://developers.didomi.io/cmp/web-sdk/consent-notice/vendors-and-purposes#stacks-iab-tcf) properties: auto: type: boolean description: Automatic configuration ids: type: array description: IDs of the Stack items: type: string preferences: type: object description: Preferences (Purposes and Vendors) properties: categories: type: array description: Purposes and categories properties: children: type: array description: The children purposes properties: purposeId: type: string description: ID of the purpose type: type: string description: Whether it is a category or a purpose enum: - purpose description: type: object description: Category description items: $ref: '#/components/schemas/notices-templates-translatable-string' expanded: type: boolean description: Whether the category is expanded by default in the list of purposes id: type: string description: ID of the category name: type: object description: Category name items: $ref: '#/components/schemas/notices-templates-translatable-string' type: type: string description: Whether it is a category or a purpose enum: - category regulation_settings: type: object description: Field to store regulation settings for the template properties: privacySignals: type: array description: List of privacy signals items: type: object properties: namespaces: type: object description: Namespaces section: type: string description: Section purposes: type: array description: List of purposes items: type: string description: Purpose ID organization_id: type: string description: The ID of the organization that this template configuration belongs to version: type: number description: Current version of the template configuration created_at: type: string description: Creation date of the template configuration format: date-time updated_at: type: string description: Last update date of the template configuration format: date-time required: - id - template_id - config notices-templates-configs-input: type: object title: NoticeTemplateConfigInput description: A template config defines a notice configuration associated with a template properties: template_id: type: string description: The ID of the template that this template configuration belongs to config: type: object description: Configuration of the template required: - template_id - config notices-text-content: type: object title: NoticeTextContent description: The actual content of a notice text (the text itself, approval status, etc.). properties: id: type: string description: The ID of the content content: type: string description: Text content status: type: string description: 'Approval status of the content: submitted, approved, or rejected. This is set by the Didomi team after reviewing the content and whether it follows the TCF policies.' includes_purposes: type: boolean description: Whether the content includes a complete list of purposes content_version: type: integer description: Version of the content for the notice text. The content version is automatically assigned when creating new content. organization_id: type: string description: The ID of the organization that owns this text text_id: type: string description: Notice text ID that this content applies to created_at: type: string description: Creation date of the content format: date-time updated_at: type: string description: Last update date of the content format: date-time version: type: number description: Revision number of the content required: - id - content - status - includes_purposes - content_version - organization_id - text_id - created_at - updated_at - version notices-templates: type: object title: NoticeTemplate description: A template defines common configuration shared across multiple consent notices properties: id: type: string description: The ID of the notice template name: type: string description: Name of the notice template organization_id: type: string description: The ID of the organization that the template version: type: number description: Current version of the template notices_id: type: array description: Notice IDs associated with this template items: type: string created_at: type: string description: Creation date of the template format: date-time updated_at: type: string description: Last update date of the template format: date-time required: - id - name - created_at notices-text-input: title: NoticeTextInput type: object description: Texts that can be used in notices for consent collection on various platforms (web, mobile, etc.). The actual content of a text (the text itself, approval status, etc.) is managed and versioned through the /widgets/notices/texts-contents service. properties: organization_id: type: string description: The ID of the organization that owns this text name: type: string description: The name of the text. This is used for easily distinguishing between multiple texts and is not displayed to end users for consent collection. platforms: type: array description: List of platforms that the content can be used on items: type: string description: ID of a platform (web, amp, app or ctv) default: type: boolean description: Whether the text is the default text for the organization and the platform(s) required: - organization_id - name notices-config-input: title: NoticeConfigInput type: object properties: id: type: string description: ID of the configuration organization_id: type: string description: ID of the organization that owns this configuration notice_id: type: string description: ID of the notice that this configuration belongs to custom_json: type: object description: Custom JSON that will be merged into the final configuration config: type: object description: Configuration of the notice platform: type: string description: Platform (web, amp, mobile or television) that this notice is running on default: type: boolean description: Whether the notice should be used when no other notice is available and matching the target. If `default` is set to true, `targets` must be empty. targets: type: array items: type: string description: Domains or mobile app IDs that this notice should apply to. * can be used for glob matching. full_atp: type: boolean description: Whether the notice uses the ATP vendors selected by Didomi (false) or if it uses the client's ATP vendor selection (true) text_mode: type: string description: 'Whether the notice is using a custom or an approved text. Possible values: approved, custom.' text_id: type: string description: ID of an approved notice text if this notice is configured for using an approved text in "text_mode" template_id: type: string description: The ID of the notice template associated with this notice. "null" if this notice does not use configuration from a template. enable_ignore_consent_before: type: boolean description: Whether the consent must be recollected after a certain date. ignore_consent_before: type: string description: The date after which consent must be recollected if "enable_ignore_consent_before" is set to true. negative_action: type: string enum: - button - link description: 'What negative action should be displayed in the notice: Disagree to all ("button"), Continue without agreeing ("link") or no negative action (null)' disagree_button_style: type: string enum: - primary - secondary description: The style of the Disagree button country: type: string description: The country that the consent notice belongs to (two letter ISO code) notice_deny_applies_to_li: type: boolean description: Do not keep legitimate interest enabled when the user disagrees in the notice preferences_deny_applies_to_li: type: boolean description: Do not keep legitimate interest enabled when the user clicks on "Disagree to all" in the Preferences consent_duration: type: number description: The duration that applies to collected consent. Consent is recollected after the expiration of the duration consent_duration_unit: type: string enum: - months - days - seconds description: The unit of the consent duration denied_consent_duration: type: number description: The duration that applies to fully negative consent. Consent is recollected after the expiration of the duration denied_consent_duration_unit: type: string enum: - months - days - seconds description: The unit of the denied consent duration denied_consent_duration_custom: type: boolean description: Whether the duration for denied consent is different from the generic gcm_enabled: type: boolean description: Whether Google consent mode is enabled gcm_tcf_enabled: type: boolean description: Whether the Google consent mode TCF integration is enabled gcm_set_default_status: type: boolean description: Whether to set the default status for analytics and ads gcm_data_layer_name: type: string description: Data layer name for Google consent mode gcm_analytics_default_status: type: boolean description: Default status for analytics in Google Consent Mode gcm_ads_default_status: type: boolean description: Default status for ads in Google Consent Mode gcm_functionality_default_status: type: boolean description: Default status for functionality of the website e.g. language settings in Google Consent Mode gcm_personalization_default_status: type: boolean description: Default status for personalization in Google Consent Mode gcm_security_default_status: type: boolean description: Default status for security in Google Consent Mode gcm_ad_user_data_default_status: type: boolean description: Default status for ad user data in Google Consent Mode gcm_ad_personalization_default_status: type: boolean description: Default status for ad personalization in Google Consent Mode microsoft_enabled: type: boolean description: Whether Microsoft consent mode is enabled microsoft_set_default_status: type: boolean description: Whether to set the default status for ads microsoft_ad_storage_default_status: type: boolean description: Default status for ad storage in Microsoft Consent Mode microsoft_enable_tcf_advertiser_consent_mode: type: boolean description: Whether to enable TCF advertiser consent mode in Microsoft Consent Mode amazon_enabled: type: boolean description: Whether Amazon consent mode is enabled amazon_set_default_status: type: boolean description: Whether to set the default status for ads/user data in Amazon Consent Mode amazon_ad_storage_default_status: type: boolean description: Default status for ad storage in Amazon Consent Mode amazon_ad_user_data_default_status: type: boolean description: Default status for ad user data in Amazon Consent Mode wordpress_enabled: type: boolean description: Whether WordPress consent mode is enabled gcm_firebase_enabled: type: boolean description: Whether Firebase SDK is enabled for GCM third-party SDKs gcm_airbridge_enabled: type: boolean description: Whether Airbridge SDK is enabled for GCM third-party SDKs gcm_kochava_enabled: type: boolean description: Whether Kochava SDK is enabled for GCM third-party SDKs gcm_branch_enabled: type: boolean description: Whether Branch SDK is enabled for GCM third-party SDKs gcm_appsflyer_enabled: type: boolean description: Whether AppsFlyer SDK is enabled for GCM third-party SDKs ctv_focus_on_agree_and_close: type: boolean description: Whether the consent notice initial focus is on the Agree and Close button secure_cookies: type: boolean description: Whether SDKs should create secure cookies on HTTPS websites regulation_configurations: type: array items: $ref: '#/components/schemas/notices-regulation-config-input' notice_disabled: type: boolean description: Whether the notice is disabled consent_string_partners_encoding: type: string description: 'The encoding selected for the partners section in the didomi consent string: One of "bit_field_2_bits", "ranges_u16", "ranges_fibonacci"' consent_string_purposes_encoding: type: string description: 'The encoding selected for the purposes section in the didomi consent string: One of "bit_field_2_bits", "ranges_u16", "ranges_fibonacci"' enable_web_view: type: boolean description: Whether the web view is enabled notice_active_elements_order: type: object description: The order of active elements in the notice dismiss_button_enabled: type: boolean description: Whether the dismiss button (Agree & Close) is enabled preferences_title_enabled: type: boolean description: Whether the title is enabled in the preferences view preferences_cross_button_enabled: type: boolean description: Whether the cross button (top right) is enabled in the preferences view preferences_view_all_partners_button_enabled: type: boolean description: Whether the view all partners button is enabled in the preferences view preferences_active_elements_order: type: object description: The order of active elements (buttons) in the preferences view sdk_version: type: string description: The SDK version that the notice config is for required: - organization_id - notice_id notice-configs-input: title: NoticeConfigInput type: object properties: organization_id: type: string description: ID of the organization to generate the notice configuration for config: type: object description: SDK Configuration of the notice required: - organization_id - config notices-text-content-input: type: object title: NoticeTextContentInput description: The actual content of a notice text (the text itself, approval status, etc.). properties: content: type: string description: Text content includes_purposes: type: boolean description: Whether the content includes a complete list of purposes organization_id: type: string description: The ID of the organization that owns this text text_id: type: string description: Notice text ID that this content applies to required: - content - organization_id - text_id notices-config: type: object title: NoticeConfig description: Configuration (purposes and vendors, theme, format, etc.) of a consent notice properties: id: type: string description: The ID of the configuration organization_id: type: string description: The ID of the organization that owns this configuration notice_id: type: string description: The ID of the notice that this configuration belongs to platform: type: string description: Platform (web, amp, mobile, or television) that this notice is running on default: type: boolean description: Whether the notice should be used when no other notice is available and matching the target. If `default` is set to true, `targets` must be empty. targets: type: array items: type: string description: Domains or mobile app IDs that this notice should apply to. * can be used for glob matching. custom_json: type: object description: Custom JSON that will be merged into the final SDK configuration for GDPR config: type: object description: Configuration of the notice full_atp: type: boolean description: Whether the notice uses the ATP vendors selected by Didomi (false) or if it uses the client's ATP vendor selection (true) text_mode: type: string description: 'Whether the notice is using a custom or an approved text. Possible values: approved, custom.' text_id: type: string description: ID of an approved notice text if this notice is configured for using an approved text in "text_mode" template_id: type: string description: The ID of the notice template associated with this notice. "null" if this notice does not use configuration from a template. enable_ignore_consent_before: type: boolean description: Whether the consent must be recollected after a certain date. ignore_consent_before: type: string description: The date after which consent must be recollected if "enable_ignore_consent_before" is set to true. negative_action: type: string enum: - button - link description: 'What negative action should be displayed in the notice: Disagree to all ("button"), Continue without agreeing ("link") or no negative action (null)' negative_action_link: type: boolean description: Whether negative action should be a link or not. negative_action_link_format: type: string enum: - text - cross description: 'What format of negative action link should be displayed in the notice: Link with te text Continue without agreeing or link with the X icon.' negative_action_button: type: boolean description: Whether negative action should be a button or not. disagree_button_style: type: string enum: - primary - secondary description: The style of the Disagree button country: type: string description: The country that the consent notice belongs to (two letter ISO code) notice_deny_applies_to_li: type: boolean description: Do not keep legitimate interest enabled when the user disagrees in the notice preferences_deny_applies_to_li: type: boolean description: Do not keep legitimate interest enabled when the user clicks on "Disagree to all" in the Preferences consent_duration: type: number description: The duration that applies to collected consent. Consent is recollected after the expiration of the duration consent_duration_unit: type: string enum: - months - days - seconds description: The unit of the consent duration denied_consent_duration: type: number description: The duration that applies to fully negative consent. Consent is recollected after the expiration of the duration denied_consent_duration_unit: type: string enum: - months - days - seconds description: The unit of the denied consent duration denied_consent_duration_custom: type: boolean description: Whether the duration for denied consent is different from the generic cross_device_enabled: type: boolean description: Whether the cross device feature is enabled cross_device_timeout: type: number description: The timeout that applies to sync with consent notice gcm_enabled: type: boolean description: Whether Google consent mode is enabled gcm_tcf_enabled: type: boolean description: Whether the Google consent mode TCF integration is enabled gcm_set_default_status: type: boolean description: Whether to set the default status for analytics and ads gcm_data_layer_name: type: string description: Data layer name for Google consent mode gcm_analytics_default_status: type: boolean description: Default status for analytics in Google Consent Mode gcm_ads_default_status: type: boolean description: Default status for ads in Google Consent Mode gcm_functionality_default_status: type: boolean description: Default status for functionality of the website e.g. language settings in Google Consent Mode gcm_personalization_default_status: type: boolean description: Default status for personalization in Google Consent Mode gcm_security_default_status: type: boolean description: Default status for security in Google Consent Mode gcm_ad_user_data_default_status: type: boolean description: Default status for ad user data in Google Consent Mode gcm_ad_personalization_default_status: type: boolean description: Default status for ad personalization in Google Consent Mode microsoft_enabled: type: boolean description: Whether Microsoft consent mode is enabled microsoft_set_default_status: type: boolean description: Whether to set the default status for ad storage in Microsoft Consent Mode microsoft_ad_storage_default_status: type: boolean description: Default status for ad storage in Microsoft Consent Mode microsoft_enable_tcf_advertiser_consent_mode: type: boolean description: Whether to enable TCF advertiser consent mode in Microsoft Consent Mode amazon_enabled: type: boolean description: Whether Amazon consent mode is enabled amazon_set_default_status: type: boolean description: Whether to set the default status for ads/user data in Amazon Consent Mode amazon_ad_storage_default_status: type: boolean description: Default status for ad storage in Amazon Consent Mode amazon_ad_user_data_default_status: type: boolean description: Default status for ad user data in Amazon Consent Mode wordpress_enabled: type: boolean description: Whether WordPress consent mode is enabled gcm_firebase_enabled: type: boolean description: Whether Firebase SDK is enabled for GCM third-party SDKs gcm_airbridge_enabled: type: boolean description: Whether Airbridge SDK is enabled for GCM third-party SDKs gcm_kochava_enabled: type: boolean description: Whether Kochava SDK is enabled for GCM third-party SDKs gcm_branch_enabled: type: boolean description: Whether Branch SDK is enabled for GCM third-party SDKs gcm_appsflyer_enabled: type: boolean description: Whether AppsFlyer SDK is enabled for GCM third-party SDKs ctv_focus_on_agree_and_close: type: boolean description: Whether the consent notice initial focus is on the Agree and Close button secure_cookies: type: boolean description: Whether SDKs should create secure cookies on HTTPS websites gpp_enabled: type: boolean description: Whether GPP is enabled gpp_mspa_signatory: type: boolean description: Whether GPP MSPA signatory is enabled gpp_mspa_mode: enum: - service_provider - opt_out description: GPP MSPA mode (service provider or opt out) gpp_mspa_generate_usnat_string: type: boolean description: Whether to generate the US national string when MSPA is enabled deployed_at: type: string description: Date of deployment of this configuration deployed_by: type: string description: The ID of the user that deployed this configuration deployed_by_type: type: string description: The type of an ID (deployed_by) that deployed the notice deployed_by_name: type: string description: The name of the user that deployed this configuration deployed_metadata: type: object properties: all_iab_enabled: type: boolean description: Indicates whether all IAB vendors are selected iab_vendor_count: type: number description: Count of custom-included IAB vendors (0 if all IAB vendors are selected) custom_vendor_count: type: string description: Count of non-IAB vendors iab_purpose_count: type: object description: Count of IAB purposes used by the selected vendors custom_purpose_count: type: object description: Count of non-IAB purposes used by the selected vendors regulation_configurations: type: array items: $ref: '#/components/schemas/notices-regulations-config' created_at: type: string description: Creation date of the configuration format: date-time updated_at: type: string description: Last update date of the configuration format: date-time version: type: number description: Revision number of the configuration notice_disabled: type: boolean description: Whether the notice is disabled consent_string_partners_encoding: type: string description: 'The encoding selected for the partners section in the didomi consent string: One of "bit_field_2_bits", "ranges_u16", "ranges_fibonacci"' consent_string_purposes_encoding: type: string description: 'The encoding selected for the purposes section in the didomi consent string: One of "bit_field_2_bits", "ranges_u16", "ranges_fibonacci"' enable_web_view: type: boolean description: Whether the web view is enabled notice_active_elements_order: type: object description: The order of active elements in the notice dismiss_button_enabled: type: boolean description: Whether the dismiss button (Agree & Close) is enabled preferences_title_enabled: type: boolean description: Whether the title is enabled in the preferences view preferences_cross_button_enabled: type: boolean description: Whether the cross button (top right) is enabled in the preferences view preferences_view_all_partners_button_enabled: type: boolean description: Whether the view all partners button is enabled in the preferences view preferences_active_elements_order: type: object description: The order of active elements (buttons) in the preferences view required: - id - notice_id - organization_id notices-sdk-config: type: object title: NoticeSDKConfig description: Published SDK configuration properties: id: type: string description: Primary key allowNull: false regulation_id: type: string description: Regulation ID allowNull: false geo_locations: type: array items: type: string description: Geographical locations that will load this SDK config allowNull: false defaultValue: [] sdk_config: type: object description: SDK configuration allowNull: false defaultValue: {} created_at: type: string format: date-time description: Creation date allowNull: false deployment_id: type: string description: Deployment ID allowNull: false notice_id: type: string description: Notice ID allowNull: false notice_config_id: type: string description: Notice configuration ID allowNull: false notice_regulation_config_id: type: string description: Notice regulation configuration ID allowNull: false organization_id: type: string description: Organization ID allowNull: false required: - id - regulation_id - geo_locations - sdk_config - created_at - deployment_id - notice_id - notice_config_id - notice_regulation_config_id - organization_id notice-configs: type: object title: NoticeConfig description: Consent notice configuration structured for Didomi API properties: config: type: object description: Notice configuration required: - config notices: type: object title: Notice description: Consent notices (for mobile and desktop) properties: id: type: string description: ID of the notice organization_id: type: string description: ID of the organization that owns the notice name: type: string description: Internal name of the notice ; this is only used for you to distinguish between the different notices in your account created_at: type: string description: Creation date of the notices format: date-time updated_at: type: string description: Last update date of the notices format: date-time archived_at: type: string description: Archival date of the notice format: date-time version: type: number description: Revision number of the notices privacy_experience_id: type: string description: ID of the linked privacy experience environment: type: string description: Deployment environment for the notice external_source: type: string description: Source system for imported notices external_id: type: string description: Original ID from the external source system required: - id - name - organization_id notices-deployments-input: title: NoticeDeploymentInput type: object properties: notice_id: type: string description: ID of the notice for which a new configuration is deployed organization_id: type: string description: ID of the organization that owns this deployment production_config_id: type: string description: ID of the notice configuration to deploy message: type: string description: Description of the deployment content required: - notice_id - organization_id - production_config_id notices-regulation-config-input: title: NoticeRegulationConfigInput type: object properties: id: type: string description: The ID of the configuration regulation_id: type: string description: The ID of the regulation. This is a reference to the regulations service. organization_id: type: string description: The ID of the organization that owns this configuration notice_config_id: type: string description: The ID of the notice config that this configuration belongs to is_default_regulation_config: type: boolean description: If this is the default configuration for a given regulation geo_locations: type: array items: type: string description: List of geo locations enabled for the notice regulation configuration (e.g. *, ES, US_CA) regulation_settings: type: object description: Regulation specific configuration of the notice regulation configuration config: type: object description: Configuration of the notice text_id: type: string description: ID of an approved notice text if this notice is configured for using an approved text in "text_mode" template_id: type: string description: The ID of the notice template associated with this notice. "null" if this notice does not use configuration from a template. enable_ignore_consent_before: type: boolean description: Whether the consent must be recollected after a certain date. negative_action_link_format: type: string enum: - text - cross description: 'What format of negative action link should be displayed in the notice: Link with te text Continue without agreeing or link with the X icon.' disagree_button_style: type: string enum: - primary - secondary description: The style of the Disagree button country: type: string description: The country that the consent notice belongs to (two letter ISO code) notice_deny_applies_to_li: type: boolean description: Do not keep legitimate interest enabled when the user disagrees in the notice preferences_deny_applies_to_li: type: boolean description: Do not keep legitimate interest enabled when the user clicks on "Disagree to all" in the Preferences consent_duration: type: number description: The duration that applies to collected consent. Consent is recollected after the expiration of the duration consent_duration_unit: type: string enum: - months - days - seconds description: The unit of the consent duration denied_consent_duration: type: number description: The duration that applies to fully negative consent. Consent is recollected after the expiration of the duration denied_consent_duration_unit: type: string enum: - months - days - seconds description: The unit of the denied consent duration denied_consent_duration_custom: type: boolean description: Whether the duration for denied consent is different from the generic cross_device_enabled: type: boolean description: Whether the cross device feature is enabled cross_device_timeout: type: number description: The timeout that applies to sync with consent notice gcm_enabled: type: boolean description: Whether Google consent mode is enabled gcm_tcf_enabled: type: boolean description: Whether the Google consent mode TCF integration is enabled gcm_set_default_status: type: boolean description: Whether to set the default status for analytics and ads gcm_analytics_default_status: type: boolean description: Default status for analytics in Google Consent Mode gcm_ads_default_status: type: boolean description: Default status for ads in Google Consent Mode gcm_functionality_default_status: type: boolean description: Default status for functionality of the website e.g. language settings in Google Consent Mode gcm_personalization_default_status: type: boolean description: Default status for personalization in Google Consent Mode gcm_security_default_status: type: boolean description: Default status for security in Google Consent Mode gcm_ad_user_data_default_status: type: boolean description: Default status for ad user data in Google Consent Mode gcm_ad_personalization_default_status: type: boolean description: Default status for ad personalization in Google Consent Mode microsoft_enabled: type: boolean description: Whether Microsoft consent mode is enabled microsoft_set_default_status: type: boolean description: Whether to set the default status for ads microsoft_ad_storage_default_status: type: boolean description: Default status for ad storage in Microsoft Consent Mode microsoft_enable_tcf_advertiser_consent_mode: type: boolean description: Whether to enable TCF advertiser consent mode in Microsoft Consent Mode amazon_enabled: type: boolean description: Whether Amazon consent mode is enabled amazon_set_default_status: type: boolean description: Whether to set the default status for ads/user data in Amazon Consent Mode amazon_ad_storage_default_status: type: boolean description: Default status for ad storage in Amazon Consent Mode amazon_ad_user_data_default_status: type: boolean description: Default status for ad user data in Amazon Consent Mode wordpress_enabled: type: boolean description: Whether WordPress consent mode is enabled gcm_firebase_enabled: type: boolean description: Whether Firebase SDK is enabled for GCM third-party SDKs gcm_airbridge_enabled: type: boolean description: Whether Airbridge SDK is enabled for GCM third-party SDKs gcm_kochava_enabled: type: boolean description: Whether Kochava SDK is enabled for GCM third-party SDKs gcm_branch_enabled: type: boolean description: Whether Branch SDK is enabled for GCM third-party SDKs gcm_appsflyer_enabled: type: boolean description: Whether AppsFlyer SDK is enabled for GCM third-party SDKs created_at: type: string description: Creation date of the configuration format: date-time updated_at: type: string description: Last update date of the configuration format: date-time disabled_at: type: string description: If present represents when the Notice Regulation Config was disabled. format: date-time version: type: number description: Revision number of the configuration notice_disabled: type: boolean description: Whether the notice is disabled notice_active_elements_order: type: object description: The order of active elements in the notice dismiss_button_enabled: type: boolean description: Whether the dismiss button (Agree & Close) is enabled preferences_title_enabled: type: boolean description: Whether the title is enabled in the preferences view preferences_cross_button_enabled: type: boolean description: Whether the cross button (top right) is enabled in the preferences view preferences_view_all_partners_button_enabled: type: boolean description: Whether the view all partners button is enabled in the preferences view preferences_active_elements_order: type: object description: The order of active elements (buttons) in the preferences view required: - organization_id - notice_config_id - regulation_id notices-text: type: object title: NoticeText description: Texts that can be used in notices for consent collection on various platforms (web, mobile, etc.). The actual content of a text (the text itself, approval status, etc.) is managed and versioned through the /widgets/notices/texts-contents service. properties: id: type: string description: The ID of the text organization_id: type: string description: The ID of the organization that owns this text name: type: string description: The name of the text. This is used for easily distinguishing between multiple texts and is not displayed to end users for consent collection. platforms: type: array description: List of platforms that the content can be used on items: type: string description: ID of a platform (web, amp, app or ctv) default: type: boolean description: Whether the text is the default text for the organization and the platform(s) created_at: type: string description: Creation date of the text format: date-time updated_at: type: string description: Last update date of the text format: date-time version: type: number description: Revision number of the text required: - id - name - platforms - organization_id - default - created_at - updated_at - version notices-regulations-config: type: object title: NoticeRegulationConfig description: Regulation configuration (purposes and vendors, theme, format, etc.) of a consent notice properties: id: type: string description: The ID of the configuration regulation_id: type: string description: The ID of the regulation. This is a reference to the regulations service. organization_id: type: string description: The ID of the organization that owns this configuration notice_config_id: type: string description: The ID of the notice config that this configuration belongs to is_default_regulation_config: type: boolean description: If this is the default configuration for a given regulation geo_locations: type: array items: type: string description: List of geo locations enabled for the notice regulation configuration (e.g. *, ES, US_CA) regulation_settings: type: object description: Regulation specific configuration of the notice regulation configuration config: type: object description: Configuration of the notice template_id: type: string description: The ID of the notice template associated with this notice. "null" if this notice does not use configuration from a template. enable_ignore_consent_before: type: boolean description: Whether the consent must be recollected after a certain date. negative_action_link_format: type: string enum: - text - cross description: 'What format of negative action link should be displayed in the notice: Link with te text Continue without agreeing or link with the X icon.' disagree_button_style: type: string enum: - primary - secondary description: The style of the Disagree button country: type: string description: The country that the consent notice belongs to (two letter ISO code) notice_deny_applies_to_li: type: boolean description: Do not keep legitimate interest enabled when the user disagrees in the notice preferences_deny_applies_to_li: type: boolean description: Do not keep legitimate interest enabled when the user clicks on "Disagree to all" in the Preferences consent_duration: type: number description: The duration that applies to collected consent. Consent is recollected after the expiration of the duration consent_duration_unit: type: string enum: - months - days - seconds description: The unit of the consent duration denied_consent_duration: type: number description: The duration that applies to fully negative consent. Consent is recollected after the expiration of the duration denied_consent_duration_unit: type: string enum: - months - days - seconds description: The unit of the denied consent duration denied_consent_duration_custom: type: boolean description: Whether the duration for denied consent is different from the generic cross_device_enabled: type: boolean description: Whether the cross device feature is enabled cross_device_timeout: type: number description: The timeout that applies to sync with consent notice gcm_enabled: type: boolean description: Whether Google consent mode is enabled gcm_tcf_enabled: type: boolean description: Whether the Google consent mode TCF integration is enabled gcm_set_default_status: type: boolean description: Whether to set the default status for analytics and ads gcm_analytics_default_status: type: boolean description: Default status for analytics in Google Consent Mode gcm_ads_default_status: type: boolean description: Default status for ads in Google Consent Mode gcm_functionality_default_status: type: boolean description: Default status for functionality of the website e.g. language settings in Google Consent Mode gcm_personalization_default_status: type: boolean description: Default status for personalization in Google Consent Mode gcm_security_default_status: type: boolean description: Default status for security in Google Consent Mode gcm_ad_user_data_default_status: type: boolean description: Default status for ad user data in Google Consent Mode gcm_ad_personalization_default_status: type: boolean description: Default status for ad personalization in Google Consent Mode microsoft_enabled: type: boolean description: Whether Microsoft consent mode is enabled microsoft_set_default_status: type: boolean description: Whether to set the default status for ad storage in Microsoft Consent Mode microsoft_ad_storage_default_status: type: boolean description: Default status for ad storage in Microsoft Consent Mode microsoft_enable_tcf_advertiser_consent_mode: type: boolean description: Whether to enable TCF advertiser consent mode in Microsoft Consent Mode amazon_enabled: type: boolean description: Whether Amazon consent mode is enabled amazon_set_default_status: type: boolean description: Whether to set the default status for ads/user data in Amazon Consent Mode amazon_ad_storage_default_status: type: boolean description: Default status for ad storage in Amazon Consent Mode amazon_ad_user_data_default_status: type: boolean description: Default status for ad user data in Amazon Consent Mode wordpress_enabled: type: boolean description: Whether WordPress consent mode is enabled gcm_firebase_enabled: type: boolean description: Whether Firebase SDK is enabled for GCM third-party SDKs gcm_airbridge_enabled: type: boolean description: Whether Airbridge SDK is enabled for GCM third-party SDKs gcm_kochava_enabled: type: boolean description: Whether Kochava SDK is enabled for GCM third-party SDKs gcm_branch_enabled: type: boolean description: Whether Branch SDK is enabled for GCM third-party SDKs gcm_appsflyer_enabled: type: boolean description: Whether AppsFlyer SDK is enabled for GCM third-party SDKs created_at: type: string description: Creation date of the configuration format: date-time updated_at: type: string description: Last update date of the configuration format: date-time disabled_at: type: string description: If present represents when the Notice Regulation Config was disabled. format: date-time version: type: number description: Revision number of the configuration gpp_mspa_generate_usnat_string: type: boolean description: Whether to generate the US national string when MSPA is enabled notice_disabled: type: boolean description: Whether the notice is disabled notice_active_elements_order: type: object description: The order of active elements in the notice dismiss_button_enabled: type: boolean description: Whether the dismiss button (Agree & Close) is enabled preferences_title_enabled: type: boolean description: Whether the title is enabled in the preferences view preferences_cross_button_enabled: type: boolean description: Whether the cross button (top right) is enabled in the preferences view preferences_view_all_partners_button_enabled: type: boolean description: Whether the view all partners button is enabled in the preferences view preferences_active_elements_order: type: object description: The order of active elements in the preferences layer required: - id - notice_config_id - organization_id - regulation_id sdk-configs: type: object title: Didomi SDK configuration description: Consent notice configuration structured for a Didomi SDK properties: config: type: object description: Didomi SDK configuration (see https://developers.didomi.io/cmp/introduction) required: - config notices-templates-translatable-string: type: object title: NoticeTemplateTranslatableString description: An object that represens translatable string, to support translations to different languages properties: language_code: type: string maxLength: 2 minLength: 2 description: Two character language codes (ISO 639-1) translated_text: type: string description: Text translated to appropriate language required: - language_code sdk-configs-input: title: Notice configuration type: object properties: notice_deployment_id: type: string description: ID of the deployed notice configuration organization_id: type: string description: ID of the organization to generate an SDK configuration for platform: type: string description: Platform (web, amp, mobile or television) that this notice is running on custom_json: type: object description: Custom JSON that will be merged into the final configuration config: type: object description: Configuration of the notice full_atp: type: boolean description: Whether the notice uses the ATP vendors selected by Didomi (false) or if it uses the client's ATP vendor selection (true) text_mode: type: string description: 'Whether the notice is using a custom or an approved text. Possible values: approved, custom.' text_id: type: string description: ID of an approved notice text if this notice is configured for using an approved text in "text_mode" enable_ignore_consent_before: type: boolean description: Whether the consent must be recollected after a certain date. ignore_consent_before: type: string description: The date after which consent must be recollected if "enable_ignore_consent_before" is set to true. negative_action: type: string enum: - button - link description: 'What negative action should be displayed in the notice: Disagree to all ("button"), Continue without agreeing ("link") or no negative action (null)' disagree_button_style: type: string enum: - primary - secondary description: The style of the Disagree button country: type: string description: The country that the consent notice belongs to (two letter ISO code) notice_deny_applies_to_li: type: boolean description: Do not keep legitimate interest enabled when the user disagrees in the notice preferences_deny_applies_to_li: type: boolean description: Do not keep legitimate interest enabled when the user clicks on ”Disagree to all” in the Preferences consent_duration: type: number description: The duration that applies to collected consent. Consent is recollected after the expiration of the duration consent_duration_unit: type: string enum: - months - days - seconds description: The unit of the consent duration denied_consent_duration: type: number description: The duration that applies to fully negative consent. Consent is recollected after the expiration of the duration denied_consent_duration_unit: type: string enum: - months - days - seconds description: The unit of the denied consent duration denied_consent_duration_custom: type: boolean description: Whether the duration for denied consent is different from the generic gcm_enabled: type: boolean description: Whether Google consent mode is enabled gcm_tcf_enabled: type: boolean description: Whether the Google consent mode TCF integration is enabled gcm_set_default_status: type: boolean description: Whether to set the default status for analytics and ads gcm_data_layer_name: type: string description: Data layer name for Google consent mode gcm_analytics_default_status: type: boolean description: Default status for analytics gcm_ads_default_status: type: boolean description: Default status for ads in Google Consent Mode gcm_functionality_default_status: type: boolean description: Default status for functionality of the website e.g. language settings in Google Consent Mode gcm_personalization_default_status: type: boolean description: Default status for personalization in Google Consent Mode gcm_security_default_status: type: boolean description: Default status for security in Google Consent Mode gcm_ad_user_data_default_status: type: boolean description: Default status for ad user data in Google Consent Mode gcm_ad_personalization_default_status: type: boolean description: Default status for ad personalization in Google Consent Mode microsoft_enabled: type: boolean description: Whether Microsoft consent mode is enabled microsoft_set_default_status: type: boolean description: Whether to set the default status for ads microsoft_ad_storage_default_status: type: boolean description: Default status for ad storage in Microsoft Consent Mode microsoft_enable_tcf_advertiser_consent_mode: type: boolean description: Whether to enable TCF advertiser consent mode in Microsoft Consent Mode ctv_focus_on_agree_and_close: type: boolean description: Whether the consent notice initial focus is on the Agree and Close button sdk_version: type: string description: The SDK version that the notice config is for required: - organization_id - platform - config notices-deployments: type: object title: NoticeDeployment description: A deployment updates the live configuration used by a notice properties: id: type: string description: Deployment ID notice_id: type: string description: ID of the notice for which a new configuration is deployed organization_id: type: string description: ID of the organization that owns this deployment production_config_id: type: string description: ID of the notice configuration to deploy message: type: string description: Description of the deployment content status: type: string description: Status of the deployment (ready, running, failure, success) created_at: type: string description: Creation date of the deployment format: date-time updated_at: type: string description: Last update date of the deployment format: date-time version: type: number description: Revision number of the deployment required: - id - notice_id - organization_id - production_config_id - message securitySchemes: bearer: scheme: bearer bearerFormat: JWT type: http