info: title: Didomi 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' components: securitySchemes: bearer: scheme: bearer bearerFormat: JWT type: http schemas: sessions: type: object title: Session description: A session contains authentication information for a user or an API key properties: type: type: string description: The type of session ("api-key" or "email") key: type: string description: The key used for authentication (either an email address or an API key) access_token: type: string description: The access token to use when making API calls with this session required: - type - key - secret sessions-input: type: object title: SessionInput properties: type: type: string description: The type of session ("api-key" or "email") key: type: string description: The key to use for authentication (either an email address or an API key) secret: type: string description: The secret to use for authentication (either a password or an API secret) required: - type - key - secret keys: type: object title: APIKey description: An API key allows machine-to-machine authentication and authorization properties: id: type: string description: Unique ID of the API key name: type: string description: Name of the API key to help identify it. This could be the name of the app or team that will be using it, or a short description of what the key will be used for description: type: string description: Description of the API key organization_id: type: string description: ID of the organization that owns the API key created_at: type: string description: Creation date of the API key (ISO8601) enabled: type: boolean description: Status of the API key. A disabled API key cannot be used for obtaining a token. Already issued tokens remain valid until their expiration. is_internal: type: boolean description: Marks an API key as internal. These keys are managed by Didomi. Internal keys are excluded from list results unless explicitly requested. keys-input-create: type: object title: APIKeyInputCreate properties: organization_id: type: string description: ID of the organization that owns the API key name: type: string description: Unique name to identify this key like the app or team that will be using it, or what it will be used for description: type: string description: Description of the API key is_internal: type: boolean description: Marks an API key as internal. These keys are managed by Didomi. Internal keys are excluded from list results unless explicitly requested. keys-input-update: type: object title: APIKeyInputUpdate properties: name: type: string description: Unique name to identify this key like the app or team that will be using it, or what it will be used for description: type: string description: Description of the API key enabled: type: boolean description: Status of the API key. A disabled API key cannot be used for obtaining a token. Already issued tokens remain valid until their expiration. quotas: type: object title: Quota description: A quota defines some resource limits on the didomi platform by organization properties: id: type: string description: Quota ID created_at: type: string description: Creation date of the quota format: date-time updated_at: type: string description: Last update date of the quota format: date-time organization_id: type: string description: Identifier of the organization the quota belongs to exports_configs: type: number description: Limit on enabled export configs for the organization exports_destinations: type: number description: Limit on export destinations per export config for the organization scraper_enabled_properties: type: number description: Limit on enabled scraper properties for the organization parallel_notices_deployments: type: number description: Maximum number of notices deployments that can be run in parallel for the organization consent_proof_reports: type: number description: Maximum number of consent proof reports that can be generated by an organization per month api_requests: type: number description: Maximum number of API requests (excluding requests to the /consents/* endpoint) that can be made by an organization per quota period delivery_clouds: type: number description: Maximum number of delivery clouds per organization services_per_delivery_cloud: type: number description: Maximum number of services per delivery cloud regions_per_delivery_cloud: type: number description: Maximum number of regions per delivery cloud domains_per_delivery_cloud: type: number description: Maximum number of custom domains associated with a delivery cloud. acm_scan_max_pages_per_property: type: number description: Maximum number of pages that can be scanned during an ACM report scan. secrets: type: number description: Maximum number of secrets allowed to be created by an organization. metadata_purposes: type: number description: Maximum number of metadata purposes allowed to be created by an organization. metadata_partners: type: number description: Maximum number of metadata partners allowed to be created by an organization. version: type: number description: Revision number of the quota object required: - id - organization_id domains: title: Domain type: object properties: id: type: string description: Fully qualified domain name organization_id: type: string description: The ID of the organization that owns this data processing description: type: string description: Description of the domain name usage in your organization enabled: type: boolean description: Whether the domain is enabled or not. Disabling a domain triggers de-provisioning of the domain on the Didomi platform which might break existing notices or privacy centers if the domain is still in use. Make sure that the domain is not used anymore before disabling it. entity_id: type: string description: Which entity the domain is used by. This entity ID is currently used by PMP for the domain to properly redirect to the correct S3 bucket (preference-center/organization_id/entity_id/) type: type: string description: Type of the domain. "custom" indicates a domain owned and delegated by a client while "managed" indicates a domain that Didomi owns and manages like "privacy-center.org". This is automatically set when a domain is created status: type: string description: "Provisioning status on the Didomi platform. \n Possible values: \n draft (domain is created\ \ but not deployed yet), \n scheduled (domain is scheduled for deployment), \n to_be_deleted (domain\ \ is scheduled for deletion),\n deploying (domain is being provisioned),\n deleting (domain is being\ \ deleted),\n failed (domain deployment/deletion failed),\n ready (domain is provisioned and ready for\ \ use)" usage: type: string description: 'What the domain is used for: CMP ("cmp"), Privacy Center ("privacy-center"), Preference Center ("preference-center")' bots_crawl: type: string description: 'Controls whether bots are allowed to crawl the domain. Possible values: "allow_all" (allow crawls from any bots) or "disallow_all" (disallow crawls from all bots)' enum: - allow_all - disallow_all created_at: type: string description: Creation date of the domain format: date-time updated_at: type: string description: Last update date of the domain format: date-time version: type: number description: Revision number of the domain entity domains-input-create: title: DomainInputCreate type: object properties: id: type: string description: Fully qualified domain name organization_id: type: string description: The ID of the organization that owns this data processing description: type: string description: Description of the domain name usage in your organization enabled: type: boolean description: Whether the domain is enabled or not. Disabling a domain triggers de-provisioning of the domain on the Didomi platform which might break existing notices or privacy centers if the domain is still in use. Make sure that the domain is not used anymore before disabling it. entity_id: type: string description: Which entity the domain is used by. This entity ID is currently used by PMP for the domain to properly redirect to the correct S3 bucket (preference-center/organization_id/entity_id/) status: type: string description: "Provisioning status on the Didomi platform. \n Possible values: \n draft (domain is created\ \ but not deployed yet), \n scheduled (domain is scheduled for deployment), \n to_be_deleted (domain\ \ is scheduled for deletion),\n deploying (domain is being provisioned),\n deleting (domain is being\ \ deleted),\n failed (domain deployment/deletion failed),\n ready (domain is provisioned and ready for\ \ use)" usage: type: string description: 'What the domain is used for: CMP ("cmp"), Privacy Center ("privacy-center"), Preference Center ("preference-center")' bots_crawl: type: string description: 'Controls whether bots are allowed to crawl the domain. Possible values: "allow_all" (allow crawls from any bots) or "disallow_all" (disallow crawls from all bots)' enum: - allow_all - disallow_all required: - id - usage - organization_id domains-input-update: title: DomainInputUpdate type: object properties: description: type: string description: Description of the domain name usage in your organization enabled: type: boolean description: Whether the domain is enabled or not. Disabling a domain triggers de-provisioning of the domain on the Didomi platform which might break existing notices or privacy centers if the domain is still in use. Make sure that the domain is not used anymore before disabling it. entity_id: type: string description: Which entity the domain is used by. This entity ID is currently used by PMP for the domain to properly redirect to the correct S3 bucket (preference-center/organization_id/entity_id/) status: type: string description: "Provisioning status on the Didomi platform. \n Possible values: \n draft (domain is created\ \ but not deployed yet), \n scheduled (domain is scheduled for deployment), \n to_be_deleted (domain\ \ is scheduled for deletion),\n deploying (domain is being provisioned),\n deleting (domain is being\ \ deleted),\n failed (domain deployment/deletion failed),\n ready (domain is provisioned and ready for\ \ use)" bots_crawl: type: string description: 'Controls whether bots are allowed to crawl the domain. Possible values: "allow_all" (allow crawls from any bots) or "disallow_all" (disallow crawls from all bots)' enum: - allow_all - disallow_all secrets: type: object title: Secret description: A secret is used to authenticate API requests in unsecure environments (client-side, emails, etc.) properties: id: type: string description: Secret ID name: type: string description: Name of the secret description: type: string description: Description of the secret secret: type: string description: The actual secret organization_id: type: string description: The ID of the organization that owns this secret created_at: type: string description: Creation date of the secret format: date-time updated_at: type: string description: Last update date of the secret format: date-time version: type: number description: Revision number of the secret required: - id - name - organization_id secrets-input: title: SecretInput type: object properties: name: type: string description: Name of the secret description: type: string description: Description of the secret organization_id: type: string description: The ID of the organization that owns this secret required: - name - organization_id platform-integrations-sessions-input: type: object properties: {} required: [] platform-integrations-sessions: type: object properties: type: type: string description: Session type (always "api-key") example: api-key key: type: string description: API key ID access_token: type: string description: JWT access token for API authentication platform_integration_id: type: string description: ID of the platform integration this token authenticates against. required: - type - key - access_token - platform_integration_id cookies: type: object title: Cookie description: A cookie that is set by a property when consumers visit it properties: id: type: string description: Cookie ID name: type: string description: Name of the cookie domain: type: string description: Domain that the cookie is set on lifetime: type: integer description: Lifetime of the cookie (in seconds) status: type: string description: The status of the cookie for the privacy center (draft or published) taxonomy_id: type: string description: The ID of the taxonomy item for classifying this cookie property_id: type: string description: The ID of the property that sets this cookie vendor_id: type: string description: The ID of the vendor that sets or uses this cookie (if any) created_at: type: string description: Creation date of the property format: date-time updated_at: type: string description: Last update date of the property format: date-time version: type: number description: Revision number of the property object required: - id - name - taxonomy_id - property_id cookies-input: title: CookieInput type: object properties: name: type: string description: Name of the cookie domain: type: string description: Domain that the cookie is set on (should be the same as the property or a sub-domain) lifetime: type: integer description: Lifetime of the cookie (in seconds) status: type: string description: The status of the cookie for the privacy center (draft or published) taxonomy_id: type: string description: The ID of the taxonomy item for classifying this cookie vendor_id: type: string description: The ID of the vendor that sets or uses this cookie (if any) property_id: type: string description: The ID of the property that sets this cookie required: - name - domain - taxonomy_id - property_id languages: title: Languages type: object properties: available: type: array items: type: string description: List of available locales default: type: string description: Fallback locale to use if the configured language is not a supported language defaultCountries: type: object description: Mapping of default countries if the locale does not provide it dashboards-urls: type: object title: dashboard properties: id: type: string description: Dashboard ID name: type: string description: Dashboard name order: type: number description: The dashboard order url: type: string description: Signed URL of the dashboard category: type: string $ref: '#/components/schemas/DashboardUrlCategory' description: The category of the dashboard. Used for grouping dashboard (per page for example). type: type: string $ref: '#/components/schemas/DashboardUrlType' description: Type of the dashboard product: type: string $ref: '#/components/schemas/DashboardUrlProduct' description: The product that the dashboard belongs to. aggregation_period: type: string $ref: '#/components/schemas/DashboardUrlAggregationPeriod' description: The aggregation period. description: type: string description: The dashboard description. illustration_ref: type: string description: The illustration ref url. required: - id - url - type - aggregation_period - product DashboardUrlCategory: type: string enum: - analytics - home DashboardUrlType: type: string enum: - cluvio - redash DashboardUrlProduct: type: string enum: - cmp - pmp - integration - acm DashboardUrlAggregationPeriod: type: string enum: - monthly - weekly - daily - hourly organizations: type: object title: Organization description: An organization can have multiple properties and users properties: id: type: string description: Organization ID name: type: string description: Name of the organization website: type: string format: uri description: Website URL of the organization created_at: type: string description: Creation date of the organization format: date-time updated_at: type: string description: Last update date of the organization format: date-time industry_id: type: string description: Identifier of industry that the organization belongs to analytics_url: type: string description: URL to a public Redash dashboard public_api_key: type: string description: Public API key of the organization (for consent collection on public properties) version: type: number description: Revision number of the organization object validate_purpose_id: type: boolean description: Enable or disable the validation of the purposes in the consent API disable_preferences_in_consents: type: boolean description: Allow or disallow the use of preferences of the consents object in the consent API auth_enabled: type: boolean description: Enable or disable authentication for end users auth_allow_user_creation: type: boolean description: Enable or disable creation of an end user on authentication if it doesn't exist auth_message_priority: type: array description: List the priority of message channels, from the most important to the least items: type: string allow_tcf_with_custom_text: type: boolean description: Whether the organization is allowed to publish consent notices without a standard approved text self_register: type: boolean description: Whether the organization is created by a user (true) or via Didomi's Customer Succes team (false) organization_group_id: type: string description: Identifier of the organization group that the organization belongs to organization_group_name: type: string description: Name of the organization group that the organization belongs to nullable: true iab_tcf_cmp_id: type: integer description: The IAB TCF CMP ID of the organization. If available, the ID will be added to generated TCF consent strings. If not available, the ID will be set to Didomi. If an ID is provided, it must be present in the IAB TCF CMP list (https://cmplist.consensu.org/v2/cmp-list.json). nullable: true allow_chat_support: type: boolean description: Controls wether the organization should be allowed to contact support via chat required: - id - name organizations-input: title: OrganizationInput type: object properties: name: type: string description: Unique name of the organization website: type: string format: uri description: Website URL of the organization industry_id: type: string description: identifier of industry that the organization belongs to analytics_url: type: string description: URL to a public Redash dashboard auth_enabled: type: boolean description: Enable or disable authentication for end users - (DEPRECATED - auth is now always enabled) auth_allow_user_creation: type: boolean description: Enable or disable creation of an end user on authentication if it doesn't exist auth_message_priority: type: array description: List the priority of message channels, from the most important to the least items: type: string organization_group_id: type: string description: Identifier of the organization group that the organization belongs to salesforce_account_id: type: string description: Identifier of the salesforce account that the organization group belongs to required: - name members: type: object title: Member description: A member of an organization properties: id: type: string description: Member ID (ie, ID of the user in the organization) role_id: type: - string - 'null' description: Role identifier attached to the user membership organization_id: type: string description: Organization ID user_id: type: string description: User ID authentication_method: type: string enum: - email_password - google - microsoft - saml_sso saml_active: type: boolean created_at: type: string description: Date when the user was added to the organization format: date-time updated_at: type: string description: Last update date of the member format: date-time version: type: number description: Revision number of the member record required: - id - organization_id - user_id members-invite-to-org-input: title: InvitedMemberInput type: object properties: name: type: string description: The invited user's name email: type: string description: The invited user's email organization_id: type: string description: Organization ID required: - name - email - organization_id privacy-centers: type: object title: PrivacyCenter description: A privacy center gives legal information to users as well as options to manage consent properties: id: type: string description: Privacy Center ID name: type: string description: Display name of the privacy center (usually the company or website name) website: type: string format: uri description: URL of the website linked to the privacy center custom_domains: type: array description: 'Sub-domains that the privacy center should be served on (without http or / ; example: privacy.domain.com)' items: type: string contact: $ref: '#/components/schemas/privacy-centers-contact' customization: $ref: '#/components/schemas/privacy-centers-customization' legal_name: type: string description: Full legal name of the company display_cookies: type: string description: How to display the cookies section in the privacy center? enum: - list - choices - none privacy_policy: type: string description: The privacy policy to display in the privacy center formatted with Markdown (English) content: type: object description: Texts of the privacy center languages: type: array description: Languages enabled in the privacy center (two-letter codes or two-letter language and two-letter country code); an empty list or a null value will enabled all available languages items: type: string auth_required: type: boolean description: Whether end users must be authenticated when accessing a privacy center organization_id: type: string description: The ID of the organization that owns this privacy center created_at: type: string description: Creation date of the privacy center format: date-time updated_at: type: string description: Last update date of the privacy center format: date-time version: type: number description: Revision number of the privacy center object required: - id - name privacy-centers-input: title: PrivacyCenterInput type: object properties: name: type: string description: Display name of the privacy center (usually the company or website name) website: type: string format: uri description: URL of the website linked to the privacy center custom_domains: type: array description: Sub-domains that the privacy center should be served on items: type: string contact: $ref: '#/components/schemas/privacy-centers-contact' customization: $ref: '#/components/schemas/privacy-centers-customization' legal_name: type: string description: Full legal name of the company display_cookies: type: string description: How to display the cookies section in the privacy center? enum: - list - choices - none privacy_policy: type: string description: The privacy policy to display in the privacy center formatted with Markdown (English) content: type: object description: Texts of the privacy center languages: type: array description: Languages enabled in the privacy center (two-letter codes); an empty list or a null value will enabled all available languages items: type: string auth_required: type: boolean description: Whether end users must be authenticated when accessing a privacy center organization_id: type: string description: The ID of the organization that owns this property required: - name - organization_id privacy-centers-contact: type: object title: Contact description: Contact information of the DPO or person in charge of privacy properties: email: type: string description: Email address schedule: type: string description: Phone number address: type: string description: Postal address privacy-centers-customization: type: object title: Customization description: Customization options for the privacy center properties: logo: type: string format: uri description: URL of the logo to display (must be HTTPS) colors: type: object title: Colors description: Colors information properties: primary: type: string description: Primary color to use in the Privacy Center theme vendors: type: object title: Vendor description: A vendor that provides services to a property properties: id: type: string description: The ID of the vendor for the property (ie different from the ID of the vendor metadata on the Didomi platform) status: type: string description: The status of the vendor for the privacy center (draft or published) property_id: type: string description: The ID of the property that sets this cookie metadata_id: type: string description: The ID of the vendor metadata created_at: type: string description: Creation date of the property format: date-time updated_at: type: string description: Last update date of the property format: date-time version: type: number description: Revision number of the property object required: - id - property_id - metadata_id vendors-input: title: VendorInput type: object properties: status: type: string description: The status of the vendor for the privacy center (draft or published) property_id: type: string description: The ID of the property that sets this cookie metadata_id: type: string description: The ID of the vendor metadata required: - property_id - metadata_id premium-features: type: object title: PremiumFeature description: A premium feature represents the activation status of premium functionalities offered by the Didomi Platform for an organization. properties: id: type: string description: Premium feature ID created_at: type: string description: Creation date of the premium feature format: date-time updated_at: type: string description: Last update date of the premium feature format: date-time organization_id: type: string description: Identifier of the organization the premium feature belongs to preference_center: type: boolean description: Flag to enable or disable the Consents API for the "Preference Center" product. preference_management_platform: type: boolean description: Flag to enable or disable the PMP SPA in the console. propagate_consents_on_sync: type: boolean description: Flag to enable or disable the propagation to secondary users during synchronization process. consent_management_platform: type: boolean description: Flag to enable or disable the CMP SPA in the console. cross_device: type: boolean description: Flag to enable or disable the "Cross Device" product. batch_exports: type: boolean description: Flag to enable or disable the "Batch Exports" product. batch_exports_manual_run: type: boolean description: Flag to enable the /exports/execute endpoint to run exports from the API. batch_exports_analytics: type: boolean description: Flag to enable or disable the "Analytics Exports" product. data_residency_russia: type: boolean description: Flag to enable or disable the "Data residency" product for Russia. integrations: type: boolean description: Flag to enable the Didomi integrations product. integrations_v2: type: boolean description: Flag to enable the delivery of Consents API events to the new integrations platform. smart_vendor_list: type: boolean description: Flag to enable or disable the "Smart Vendor list" product. compliance_report_v2: type: boolean description: Flag to enable or disable the "Compliance Report Premium" product. versions_and_proofs: type: boolean description: Flag to enable the "Versions & Proofs" product. mass_update: type: boolean description: Flag to enable or disable the "Mass Update" product. consents_api: type: boolean description: Flag to enable the Consents API (used by various premium features such as cross_device or batch_exports). All products that require the Consents API will enable this feature by default. store_cmp_consents: type: boolean description: If enabled, it will send cmp consents that have an organization_user_id in their payload, commonly used for the cross_device feature. store_guest_cmp_consents: type: boolean description: A subset of the store_cmp_consents flag, it will also enable sending cmp consents that do not have an organization_user_id. sso: type: boolean description: Flag to enable SSO authentication. version: type: number description: Revision number of the premium feature object mailchimp: type: boolean description: Flag to enable or disable Mailchimp integration. actito: type: boolean description: Flag to enable or disable Actito integration. hubspot: type: boolean description: Flag to enable or disable Hubspot integration. sendinblue: type: boolean description: Flag to enable or disable Sendinblue integration. selligent: type: boolean description: Flag to enable or disable Selligent integration. adobe_campaign_classic: type: boolean description: Flag to enable or disable Adobe Campaign Classic integration. adobe_campaign_standard: type: boolean description: Flag to enable or disable Adobe Campaign Standard integration. webhooks: type: boolean description: Flag to enable or disable Webhooks integration. sf_marketing_cloud: type: boolean description: Flag to enable or disable Salesforce Marketing Cloud integration. braze: type: boolean description: Flag to enable or disable Braze integration. marketo: type: boolean description: Flag to enable or disable Marketo integration. microsoft_dynamics: type: boolean description: Flag to enable or disable Microsoft Dynamics 365 integration. microsoft_dynamics_cpc: type: boolean description: Flag to enable or disable Microsoft Dynamics 365 — Customer Insights — Journeys / Contact Point Consent integration. dotdigital: type: boolean description: Flag to enable or disable dotdigital integration. adobe_experience_cloud: type: boolean description: Flag to enable or disable adobe experience cloud integration. advanced_internal_monitoring: type: boolean description: Flag to enable or disable advanced internal monitoring. sf_sales_cloud: type: boolean description: Flag to enable or disable Salesforce Sales Cloud integration. server_side: type: boolean description: Flag to enable or disable the Server-Side product. acm_static_ip: type: boolean description: Flag to enable or disable the ACM static IP. acm_vendor_templates: type: boolean description: Flag to enable or disable the ACM vendors comparison with templates. acm_data_exports: type: boolean description: Flag to enable or disable the ACM data exports feature. acm_high_frequency: type: boolean description: Flag to enable or disable the ACM high frequency scheduled reports (up to 1 hour). acm_full_website_scan: type: boolean description: Flag to enable or disable the ACM full website scan feature. web_sdk_versioning: type: boolean description: Flag to enable or disable the Web SDK versioning feature. web_sdk_fixed_versioning: type: boolean description: Flag to enable or disable the Web SDK fixed versioning feature. privacy_widgets_advanced: type: boolean description: Flag to enable the Privacy Widgets Advanced feature. Fully manage privacy widgets, add new components, layers. cmp_consent_or_pay: type: boolean description: Flag to enable the CMP Consent or Pay widget template. cmp_rules_underage: type: boolean description: Flag to enable the CMP Rules Underage feature. Grants access to Didomi underage template + access to the Age group condition group in the privacy experience. privacy_widgets_versions: type: boolean description: Flag to enable the Privacy Widgets Versions feature. dsar_experience: type: boolean description: Flag to enable the DSAR Experience feature. brand_manager: type: boolean description: Flag to enable the Brand Manager feature. cmp_advanced_widgets: type: boolean description: Flag to enable the CMP Advanced Widgets feature. pmp_data_exports: type: boolean description: Flag to enable or disable the PMP data exports feature. cmp_data_exports: type: boolean description: Flag to enable or disable the CMP data exports feature. cmp_ctv_widgets: type: boolean description: Flag to enable the CMP CTV Widgets feature. required: - id - organization_id premium-features-input: title: PremiumFeatureInput type: object properties: organization_id: type: string description: Identifier of the organization the premium feature belongs to preference_center: type: boolean description: Flag to enable or disable the Consents API for the "Preference Center" product. preference_management_platform: type: boolean description: Flag to enable or disable the PMP SPA in the console. propagate_consents_on_sync: type: boolean description: Flag to enable or disable the propagation to secondary users during synchronization process. consent_management_platform: type: boolean description: Flag to enable or disable the CMP SPA in the console. cross_device: type: boolean description: Flag to enable or disable the "Cross Device" product. batch_exports: type: boolean description: Flag to enable or disable the "Batch Exports" product. batch_exports_manual_run: type: boolean description: Flag to enable the /exports/execute endpoint to run exports from the API. batch_exports_analytics: type: boolean description: Flag to enable or disable the "Analytics Exports" product. data_residency_russia: type: boolean description: Flag to enable or disable the "Data residency" product for Russia. integrations: type: boolean description: Flag to enable the Didomi integrations product. integrations_v2: type: boolean description: Flag to enable the delivery of Consents API events to the new integrations platform. smart_vendor_list: type: boolean description: Flag to enable or disable the "Smart Vendor list" product. compliance_report_v2: type: boolean description: Flag to enable or disable the "Compliance Report Premium" product. versions_and_proofs: type: boolean description: Flag to enable the "Versions & Proofs" product. mass_update: type: boolean description: Flag to enable or disable the "Mass Update" product. store_cmp_consents: type: boolean description: If enabled, it will send cmp consents that have an organization_user_id in their payload, commonly used for the cross_device feature. store_guest_cmp_consents: type: boolean description: A subset of the store_cmp_consents flag, it will also enable sending cmp consents that do not have an organization_user_id. server_side: type: boolean description: Flag to enable or disable the Server-Side product. acm_static_ip: type: boolean description: Flag to enable or disable the ACM static IP. acm_vendor_templates: type: boolean description: Flag to enable or disable the ACM vendors comparison with templates. acm_data_exports: type: boolean description: Flag to enable or disable the ACM data exports feature. acm_high_frequency: type: boolean description: Flag to enable or disable the ACM high frequency scheduled reports (up to 1 hour). acm_full_website_scan: type: boolean description: Flag to enable or disable the ACM full website scan feature. web_sdk_versioning: type: boolean description: Flag to enable or disable the Web SDK versioning feature. web_sdk_fixed_versioning: type: boolean description: Flag to enable or disable the Web SDK fixed versioning feature. privacy_widgets_advanced: type: boolean description: Flag to enable the Privacy Widgets Advanced feature. Fully manage privacy widgets, add new components, layers. cmp_consent_or_pay: type: boolean description: Flag to enable the CMP Consent or Pay widget template. cmp_rules_underage: type: boolean description: Flag to enable the CMP Rules Underage feature. Grants access to Didomi underage template + access to the Age group condition group in the privacy experience. privacy_widgets_versions: type: boolean description: Flag to enable the Privacy Widgets Versions feature. dsar_experience: type: boolean description: Flag to enable the DSAR Experience feature. brand_manager: type: boolean description: Flag to enable the Brand Manager feature. cmp_advanced_widgets: type: boolean description: Flag to enable the CMP Advanced Widgets feature. pmp_data_exports: type: boolean description: Flag to enable or disable the PMP data exports feature. cmp_data_exports: type: boolean description: Flag to enable or disable the CMP data exports feature. cmp_ctv_widgets: type: boolean description: Flag to enable the CMP CTV Widgets feature. required: - organization_id sso-connections: title: SSOConnection type: object properties: id: type: string description: SSO connection ID. auth0_connection_id: type: string description: The id of the SSO connection in Auth0. auth0_connection_name: type: string description: A unique name that identifies the SSO connection. auth0_certificate: type: string description: The public SSO connection certificate. auth0_domain_aliases: type: array items: type: string description: A list of domains aliases that are used for home realm discovery for the SSO connection. auth0_sign_in_endpoint: type: string description: The sign in URL where users are redirected to complete the authentication step. auth0_sign_out_endpoint: type: string description: The sign out URL where users are redirected after logging out. auth0_sign_saml_request: type: boolean description: Whether or not SAML request signing is enabled for the SSO connection. organization_group_id: type: string description: The ID of the organization group. created_at: type: string description: Creation date of the SSO connection. format: date-time updated_at: type: string description: Last update date of the SSO connection. format: date-time sso-connection-input-create: title: SSOConnectionInputCreate type: object properties: auth0_certificate: type: string description: The public SSO connection certificate. auth0_domain_aliases: type: array items: type: string description: A list of domains aliases that will be used for home realm discovery for the SSO connection. auth0_sign_in_endpoint: type: string description: The sign in URL where users will be redirected to complete the authentication step. auth0_sign_out_endpoint: type: string description: The sign out URL where users will be redirected after logging out. auth0_sign_saml_request: type: boolean description: Whether or not SAML request signing is enabled for the SSO connection. organization_id: type: string description: The ID of the organization. required: - auth0_certificate - auth0_sign_in_endpoint - organization_id sso-connection-input-patch: title: SSOConnectionInputPatch type: object properties: auth0_certificate: type: string description: The public SSO connection certificate. auth0_domain_aliases: type: array items: type: string description: A list of domains aliases that will be used for home realm discovery for the SSO connection. auth0_sign_in_endpoint: type: string description: The sign in URL where users will be redirected to complete the authentication step. auth0_sign_out_endpoint: type: string description: The sign out URL where users will be redirected after logging out. auth0_sign_saml_request: type: boolean description: Whether or not SAML request signing is enabled for the SSO connection. organization_id: type: string description: The ID of the organization. required: - organization_id organizations-source-systems: title: OrganizationSourceSystem type: object properties: id: type: string description: Unique identifier for the organization source system mapping organization_id: type: string description: The ID of the DDM organization source_system: type: string description: The name of the source system enum: - sp source_system_id: type: string description: The ID of the organization in the source system created_at: type: string description: Creation date of the mapping format: date-time updated_at: type: string description: Last update date of the mapping format: date-time required: - id - organization_id - source_system - source_system_id organizations-source-systems_list: title: OrganizationSourceSystemList type: object properties: total: type: number description: Total number of items limit: type: number description: Number of items per page skip: type: number description: Number of items skipped data: type: array items: $ref: '#/components/schemas/organizations-source-systems' organizations-source-systems-input-create: title: OrganizationSourceSystemInputCreate type: object properties: organization_id: type: string description: The ID of the DDM organization source_system: type: string description: The name of the source system enum: - sp source_system_id: type: string description: The ID of the organization in the source system required: - organization_id - source_system - source_system_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-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-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-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 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 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 notice-configs: type: object title: NoticeConfig description: Consent notice configuration structured for Didomi API properties: config: type: object description: Notice configuration required: - config 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-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-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 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-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-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-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 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-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 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 partners: type: object title: Partner description: A third-party company that provides services to companies by collecting data, transforming it, etc. properties: id: type: string description: Partner ID name: type: string description: Name of the partner tags: type: array description: Extra classification items for the partner items: type: string contact: type: string description: Contact information for someone from the partner website: type: string format: uri description: Website URL of the partner website_optout: type: string format: uri description: URL for consumers to opt-out from data collection and processing from the partner hosts: type: array description: List of hosts (DNS names) that belong to the partner items: type: string url_patterns: type: array description: List of URL patterns (regular expressions) that uniquely identify the partner items: type: string urls: type: array description: If partners were queried from URLs (with the `url` query-string parameter), this property contains a list of all URLs that were matched to this partner items: type: string format: uri taxonomy_id: type: string description: The ID of the taxonomy item for classifying this partner organization_id: type: string description: The organization ID that owns the partner category_id: type: string description: The category ID of the partner country: type: string description: The ISO Alpha-2 code of the country where the partner is located created_at: type: string description: Creation date of the partner format: date-time updated_at: type: string description: Last update date of the partner format: date-time version: type: number description: Revision number of the partner object namespaces: type: object description: IDs of this partner in other namespaces / vendor lists and used in Didomi SDKs and consents properties: iab: type: string description: ID of the vendor in the IAB TCF version 1 iab2: type: string description: ID of the vendor in the IAB TCF version 2 didomi: type: string description: ID of the vendor in the Didomi SDK custom: type: string description: Custom ID for the vendor google: type: string description: ID of the vendor for Google DFP/GAM default_purposes_id: type: array description: Purposes of the partner with consent legal basis items: type: string legitimate_interest_purposes_id: type: array description: Purposes of the partner with legitimate interest legal basis items: type: string spi_purposes_id: type: array description: Purposes of the partner with sensitive personal information items: type: string cookie_max_duration: type: number description: The duration of time for which the cookies are stored cookie_max_duration_unit: type: string enum: - months - days - seconds description: The unit of the cookie max duration uses_non_cookie_access: type: boolean description: Whether the vendor uses other means of storage than cookies deprecated: type: boolean description: Whether a partner is deprecated or not. Deprecated partners cannot be added to privacy centers or consent notices but are not immediately removed to not break entities that already use them. Deprecated partners will eventually be removed. notes: type: string description: Free-form field to keep various notes on a vendor required: - id - name - category_id partners-input: title: PartnerInput type: object properties: name: type: string description: Name of the partner tags: type: array description: Extra classification items for the partner items: type: string contact: type: string description: Contact information for someone from the partner website: type: string format: uri description: Website URL of the partner website_optout: type: string format: uri description: URL for consumers to opt-out from data collection and processing from the partner hosts: type: array description: List of hosts (DNS names) that belong to the partner items: type: string url_patterns: type: array description: List of URL patterns (regular expressions) that uniquely identify the partner items: type: string taxonomy_id: type: string description: The ID of the taxonomy item for classifying this partner organization_id: type: string description: The organization ID that owns the partner category_id: type: string description: The category ID of the partner country: type: string description: The ISO Alpha-2 code of the country where the partner is located. namespaces: type: object description: IDs of this partner in other namespaces / vendor lists and used in Didomi SDKs and consents properties: iab: type: string description: ID of the vendor in the IAB TCF version 1 iab2: type: string description: ID of the vendor in the IAB TCF version 2 didomi: type: string description: ID of the vendor in the Didomi SDK custom: type: string description: Custom ID for the vendor google: type: string description: ID of the vendor for Google DFP/GAM default_purposes_id: type: array description: Purposes of the partner with consent legal basis items: type: string legitimate_interest_purposes_id: type: array description: Purposes of the partner with legitimate interest legal basis items: type: string spi_purposes_id: type: array description: Purposes of the partner with sensitive personal information items: type: string cookie_max_duration: type: number description: The duration of time for which the cookies are stored cookie_max_duration_unit: type: string enum: - months - days - seconds description: The unit of the cookie max duration uses_non_cookie_access: type: boolean description: Whether the vendor uses other means of storage than cookies deprecated: type: boolean description: Whether a partner is deprecated or not. Deprecated partners cannot be added to privacy centers or consent notices but are not immediately removed to not break entities that already use them. Deprecated partners will eventually be removed. notes: type: string description: Free-form field to keep various notes on a vendor required: - name - category_id purposes: description: The reason why a company is collecting and processing personal data type: object title: Purpose properties: id: type: string description: Purpose ID description: type: object additionalProperties: {} description: Name of the purpose details: type: object additionalProperties: {} description: Details of the purpose enabled_status_description: type: object description: Description of the purpose when the sdk status for the user for this purpose is enabled disabled_status_description: type: object description: Description of the purpose when the sdk status for the user for this purpose is disabled reference: type: object additionalProperties: {} description: The reference number uniquely identifies the purpose in an official classification like the one from the CNIL organization_id: type: string description: Id of organization which purpose belongs to. If id is null, purpose is global created_at: type: string description: Creation date of the purpose format: date-time updated_at: type: string description: Last update date of the purpose format: date-time namespaces: type: object description: IDs of this purpose in other namespaces / vendor lists and used in Didomi SDKs and consents properties: iab: type: string description: ID of the purpose in the IAB TCF version 1 iab2: type: string description: ID of the purpose in the IAB TCF version 2 (only allowed if "iab2_special_feature" is not present) iab2_special_feature: type: string description: ID of the special feature in the IAB TCF version 2 (only allowed if "iab2" is not present) didomi: type: string description: ID of the purpose in the Didomi SDK custom: type: string description: Custom ID for the purpose regulations_id: type: array description: An array of regulation IDs the purpose supports items: type: string type: type: string description: The purpose type discriminator. default: purpose metadata: type: object additionalProperties: {} description: Metadata for additional information required: - id purposes-input: title: PurposeInput type: object properties: description: description: Name of the purpose schema: type: object details: description: Details of the purpose schema: type: object enabled_status_description: description: Description of the purpose when the sdk status for the user for this purpose is enabled schema: type: object disabled_status_description: description: Description of the purpose when the sdk status for the user for this purpose is disabled schema: type: object reference: description: The reference number uniquely identifies the purpose in an official classification like the one from the CNIL schema: type: object organization_id: type: string description: Id of organization which purpose belongs to. If id is 'null', purpose is global namespaces: type: object description: IDs of this purpose in other namespaces / vendor lists and used in Didomi SDKs and consents properties: iab: type: string description: ID of the purpose in the IAB TCF version 1 iab2: type: string description: ID of the purpose in the IAB TCF version 2 didomi: type: string description: ID of the purpose in the Didomi SDK custom: type: string description: Custom ID for the purpose regulations_id: type: array description: An array of regulation IDs the purpose supports items: type: string metadata: type: object additionalProperties: {} description: Metadata for additional information type: type: string description: The purpose type discriminator. default: purpose purposes-patch-input: title: PurposeInput type: object properties: description: description: Name of the purpose schema: type: object details: description: Details of the purpose schema: type: object enabled_status_description: description: Description of the purpose when the sdk status for the user for this purpose is enabled schema: type: object disabled_status_description: description: Description of the purpose when the sdk status for the user for this purpose is disabled schema: type: object reference: description: The reference number uniquely identifies the purpose in an official classification like the one from the CNIL schema: type: object organization_id: type: string description: Id of organization which purpose belongs to. If id is 'null', purpose is global namespaces: type: object description: IDs of this purpose in other namespaces / vendor lists and used in Didomi SDKs and consents properties: iab: type: string description: ID of the purpose in the IAB TCF version 1 iab2: type: string description: ID of the purpose in the IAB TCF version 2 didomi: type: string description: ID of the purpose in the Didomi SDK custom: type: string description: Custom ID for the purpose metadata: type: object additionalProperties: {} description: Metadata for additional information regulations_id: type: array description: An array of regulation IDs the purpose supports items: type: string 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-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 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 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-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 taxonomies-vendors: type: object title: TaxonomyVendor description: A classification item for vendors properties: id: type: string description: Item ID name: type: string description: Name of the item parent_id: type: string description: ID of the parent of this item created_at: type: string description: Creation date of the item format: date-time updated_at: type: string description: Last update date of the item format: date-time version: type: number description: Revision number of the item required: - id - name taxonomies-vendors-input: title: TaxonomyVendorInput type: object properties: id: type: string description: Item ID name: type: string description: Name of the item parent_id: type: string description: ID of the parent of this item required: - id - name metadata-vendors: type: object title: Vendor description: A vendor is a third-party company that provides services to properties by collecting data, transforming it, ... This object describes a vendor. properties: id: type: string description: Vendor ID name: type: string description: Name of the vendor tags: type: array description: Extra classification items for the vendor items: type: string website: type: string format: uri description: Website URL of the vendor website_optout: type: string format: uri description: URL for consumers to opt-out from data collection and processing from the vendor hosts: type: array description: List of hosts (DNS names) that belong to the vendor items: type: string url_patterns: type: array description: List of URL patterns (regular expressions) that uniquely identify the vendor items: type: string urls: type: array description: If vendors were queried from URLs (with the `url` query-string parameter), this property contains a list of all URLs that were matched to this vendor items: type: string format: uri taxonomy_id: type: string description: The ID of the taxonomy item for classifying this vendor created_at: type: string description: Creation date of the vendor format: date-time updated_at: type: string description: Last update date of the vendor format: date-time version: type: number description: Revision number of the vendor object required: - id - name metadata-vendors-input: title: VendorInput type: object properties: name: type: string description: Name of the vendor tags: type: array description: Extra classification items for the vendor items: type: string website: type: string format: uri description: Website URL of the vendor website_optout: type: string format: uri description: URL for consumers to opt-out from data collection and processing from the vendor hosts: type: array description: List of hosts (DNS names) that belong to the vendor items: type: string url_patterns: type: array description: List of URL patterns (regular expressions) that uniquely identify the vendor items: type: string taxonomy_id: type: string description: The ID of the taxonomy item for classifying this vendor required: - name purposes-groups: description: A group of purposes type: object title: PurposesGroup properties: id: type: string description: Group ID name: type: string description: Name of the group description: type: string description: Description of the group namespaces: type: object description: IDs of this group in other namespaces / vendor lists and used in Didomi SDKs and consents properties: iab2: type: string description: ID of the group in the IAB TCF version 2 as a stack ID purposes_id: description: Purposes that belong to the group type: array items: type: string description: ID of a purpose organization_id: type: string description: ID of the organization that owns the group. If ID is null, the group is global. created_at: type: string description: Creation date of the purpose format: date-time updated_at: type: string description: Last update date of the purpose format: date-time required: - name purposes-group-input: title: PurposesGroupInput type: object properties: name: type: string description: Name of the group description: type: string description: Description of the group namespaces: type: object description: IDs of this group in other namespaces / vendor lists and used in Didomi SDKs and consents properties: iab2: type: string description: ID of the group in the IAB TCF version 2 as a stack ID purposes_id: description: Purposes that belong to the group type: array items: type: string description: ID of a purpose organization_id: type: string description: ID of the organization that owns the group. If ID is null, the group is global. required: - name MetadataPurposeRegulationOverride: description: A table to define MetadataPurposeRegulationOverrides. Overrides allow clients to define which regulations a global (organization_id=null) metadata purpose supports. It is not supported to define overrides for a custom purpose (purposes created by an organization). A null value of `regulations_id` means all regulations are supported, and an empty array means no regulations are supported. type: object title: MetadataPurposeRegulationOverride properties: id: type: string description: The unique identifier of the override organization_id: type: string description: ID of the organization that owns the override created_at: type: string description: Creation date of the override format: date-time updated_at: type: string description: Last update date of the override format: date-time deleted_at: type: string description: Deletion date of the override format: date-time regulations_id: type: array description: An array of regulation IDs the override configures the metadata purpose to support items: type: string metadata_purpose_id: type: string description: The ID of the associated global (organization_id=null) metadata purpose required: - id - metadata_purpose_id - organization_id MetadataPurposeRegulationOverrideInput: title: MetadataPurposeRegulationOverrideInput type: object properties: organization_id: type: string description: ID of the organization which the MetadataPurposeRegulationOverride belongs to regulations_id: type: array description: An array of regulation IDs the override configures the metadata purpose to support items: type: string metadata_purpose_id: type: string description: The ID of the associated global (organization_id=null) metadata purpose required: - organization_id - metadata_purpose_id MetadataPurposeRegulationOverridePatchInput: title: MetadataPurposeRegulationOverridePatchInput type: object properties: regulations_id: type: array description: An array of regulation IDs the override configures the metadata purpose to support items: type: string metadata_purpose_id: type: string description: The ID of the associated global (organization_id=null) metadata purpose partners-categories: type: object title: PartnersCategory properties: id: type: string description: Partners category ID name: type: string description: Name of the partners category created_at: type: string description: Creation date of the partners category format: date-time updated_at: type: string description: Last update date of the partners category format: date-time required: - id partners-categories-input: title: PartnersCategoryInput type: object properties: id: type: string description: Partners category ID name: type: string description: Name of the partners category partners-purposes: type: object properties: id: type: string description: Unique identifier for the partner-purpose association metadata_partner_id: type: string description: Foreign key reference to metadata-partners(id) metadata_purpose_id: type: string description: Foreign key reference to metadata-purposes(id) organization_id: type: string description: Optional organization ID for org-specific overrides. Null indicates a global association nullable: true processing_rules: type: array items: type: string enum: - opt-in - opt-out description: Processing rules for this partner-purpose combination minItems: 1 is_org_override: type: boolean description: Read-only flag indicating if this is an organization override of a global association default_purposes_id: type: string description: Legacy foreign key reference to metadata-partners-default-purposes(id) nullable: true legitimate_interest_purposes_id: type: string description: Legacy foreign key reference to metadata-partners-legitimate-interest-purposes(id) nullable: true created_at: type: string format: date-time description: Timestamp of record creation updated_at: type: string format: date-time description: Timestamp of last update version: type: integer description: Version number for concurrency control required: - id - metadata_partner_id - metadata_purpose_id - processing_rules partners-purposes-input: title: partners-purposes-input type: object properties: metadata_partner_id: type: string description: Foreign key reference to metadata-partners(id) metadata_purpose_id: type: string description: Foreign key reference to metadata-purposes(id) organization_id: type: string description: Optional organization ID for org-specific overrides. Null indicates a global association nullable: true processing_rules: type: array items: type: string enum: - opt-in - opt-out description: Processing rules for this partner-purpose combination minItems: 1 required: - metadata_partner_id - metadata_purpose_id - processing_rules partners-default-purposes: type: object title: PartnersDefaultPurposes properties: is_org_override: type: boolean description: Override flag, if true, means that the association references a global partner but belongs to an organization metadata_partner_id: type: string description: Partner ID metadata_purpose_id: type: string description: Purpose ID organization_id: type: string description: Organization ID created_at: type: string description: Creation date of the partners-default-purposes object format: date-time updated_at: type: string description: Last update date of the partners-default-purposes object format: date-time required: - metadata_partner_id - metadata_purpose_id - organization_id partners-default-purposes-input: title: PartnersDefaultPurposesInput type: object properties: metadata_partner_id: type: string description: Partner ID metadata_purpose_id: type: string description: Purpose ID organization_id: type: string description: Organization ID partners-legitimate-interest-purposes: type: object title: PartnersLegitimateInterestPurposes properties: metadata_partner_id: type: string description: Partner ID metadata_purpose_id: type: string description: Purpose ID is_org_override: type: boolean description: Override flag, if true, means that the association references a global partner but belongs to an organization organization_id: type: string description: Organization ID created_at: type: string description: Creation date of the partners-legitimate-interest-purposes object format: date-time updated_at: type: string description: Last update date of the partners-legitimate-interest-purposes object format: date-time required: - metadata_partner_id - metadata_purpose_id - organization_id partners-legitimate-interest-purposes-input: title: PartnersLegitimateInterestPurposesInput type: object properties: metadata_partner_id: type: string description: Partner ID metadata_purpose_id: type: string description: Purpose ID organization_id: type: string description: Organization ID partners-spi-purposes: type: object title: PartnersSPIPurposes properties: metadata_partner_id: type: string description: Partner ID metadata_purpose_id: type: string description: Purpose ID is_org_override: type: boolean description: Override flag, if true, means that the association references a global partner but belongs to an organization organization_id: type: string description: Organization ID created_at: type: string description: Creation date of the partners-spi-purposes object format: date-time updated_at: type: string description: Last update date of the partners-spi-purposes object format: date-time required: - metadata_partner_id - metadata_purpose_id - organization_id partners-spi-purposes-input: title: PartnersSPIPurposesInput type: object properties: metadata_partner_id: type: string description: Partner ID metadata_purpose_id: type: string description: Purpose ID organization_id: type: string description: Organization ID partners-storages: description: List of additional storages used by the vendor type: object title: Storage properties: type: type: string enum: - cookie - web_storage - app_storage description: What type of storage or access mechanism is used identifier: type: string description: Name of the storage item purposes_id: type: array description: The purpose IDs for which the storage is used items: type: string domain: type: string description: The domain for which the storage is used (only required for type "cookie" and "web_storage") max_age: type: number description: The duration for storage on a device (only required for type "cookie") max_age_unit: type: string enum: - months - days - seconds description: The unit of the storage duration organization_id: type: string description: The organization ID that owns the storage partner_id: type: string description: The partner ID that owns the storage required: - id partners-storages-input: title: StorageInput type: object properties: type: type: string enum: - cookie - web_storage - app_storage description: What type of storage or access mechanism is used identifier: type: string description: Name of the storage item purposes_id: type: array description: The purpose IDs for which the storage is used items: type: string domain: type: string description: The domain for which the storage is used (only required for type "cookie" and "web_storage") max_age: type: number description: The duration for storage on a device (only required for type "cookie") max_age_unit: type: string enum: - months - days - seconds description: The unit of the storage duration organization_id: type: string description: The organization ID that owns the storage partner_id: type: string description: The partner ID that owns the storage partners-purposes-templates-overrides: type: object properties: id: type: string description: Unique identifier for the template override metadata_partner_id: type: string description: Foreign key reference to metadata-partners(id) metadata_purpose_id: type: string description: Foreign key reference to metadata-purposes(id) template_id: type: string description: Foreign key reference to widgets-notices-templates(id) organization_id: type: string description: Foreign key reference to organizations(id) processing_rule: type: string enum: - opt-in - opt-out description: Processing rule override for this template created_at: type: string format: date-time description: Timestamp of record creation updated_at: type: string format: date-time description: Timestamp of last update version: type: integer description: Version number for concurrency control required: - id - metadata_partner_id - metadata_purpose_id - template_id - organization_id - processing_rule partners-purposes-templates-overrides-input: type: object properties: metadata_partner_id: type: string description: Foreign key reference to metadata-partners(id) metadata_purpose_id: type: string description: Foreign key reference to metadata-purposes(id) template_id: type: string description: Foreign key reference to widgets-notices-templates(id) organization_id: type: string description: Foreign key reference to organizations(id) processing_rule: type: string enum: - opt-in - opt-out description: Processing rule override for this template required: - metadata_partner_id - metadata_purpose_id - template_id - organization_id - processing_rule partners-purposes-notices-regulations-overrides: type: object properties: id: type: string description: Unique identifier for the notice-regulation override metadata_partner_id: type: string description: Foreign key reference to metadata-partners(id) metadata_purpose_id: type: string description: Foreign key reference to metadata-purposes(id) notice_id: type: string description: Foreign key reference to widgets-notices(id) organization_id: type: string description: Foreign key reference to organizations(id) regulation_id: type: string description: Reference to the regulation ID in the Regulations Service processing_rule: type: string enum: - opt-in - opt-out description: Processing rule override for this notice-regulation combination created_at: type: string format: date-time description: Timestamp of record creation updated_at: type: string format: date-time description: Timestamp of last update version: type: integer description: Version number for concurrency control required: - id - metadata_partner_id - metadata_purpose_id - notice_id - organization_id - regulation_id - processing_rule partners-purposes-notices-regulations-overrides-input: type: object properties: metadata_partner_id: type: string description: Foreign key reference to metadata-partners(id) metadata_purpose_id: type: string description: Foreign key reference to metadata-purposes(id) notice_id: type: string description: Foreign key reference to widgets-notices(id) organization_id: type: string description: Foreign key reference to organizations(id) regulation_id: type: string description: Reference to the regulation ID in the Regulations Service processing_rule: type: string enum: - opt-in - opt-out description: Processing rule override for this notice-regulation combination required: - metadata_partner_id - metadata_purpose_id - notice_id - organization_id - regulation_id - processing_rule security: - bearer: [] definitions: consent-events: type: object title: ConsentEvent description: A partial update to a user consent status properties: id: type: string description: Unique event ID organization_id: type: string description: ID of the organization that owns the event created_at: type: string description: Creation date of the event (ISO8601) status: type: string description: 'Status of the event (possible values: confirmed, pending_approval)' regulation: type: string description: Regulation of the event. Possible value is any existing regulation in the Regulations API (/compliance/v1/regulations) user: type: object description: Information on the user that initiated the event properties: id: type: string description: Didomi user ID (A random UUID for users encountered on websites and an IDFA/ADID for users from mobile apps) ; if the user does not exist, it will be automatically created organization_user_id: type: string description: A unique user ID, internal to your organization. This can be an email, a phone number, an internal client ID, etc. It is used to link Didomi users to your internal systems. This ID will be assigned to user if the user does not already have an organization user ID. metadata: type: object title: Metadata description: Free-form metadata object on the user. Use it to store custom information on the user. The metadata will be merged with the existing metadata of the user. country: type: string title: Country description: Two-letter ISO code of the user's country last_seen_country: type: string title: Last seen country description: Two-letter ISO country code of the event required: - id consents: type: object title: Consents description: Consent status of the user properties: channels: type: array description: Channels items: type: object title: Channel description: Channel properties: id: type: string description: Channel ID enabled: type: boolean description: Whether the user has given consent to this channel or not. A null value indicates that the user has not made a specific choice for the channel metadata: type: object title: Metadata description: Free-form metadata object on the channel required: - id purposes: type: array description: Purposes that the user has made choices for items: type: object title: ConsentChoice description: Consent choice of the user properties: id: type: string description: Purpose ID enabled: type: boolean description: Whether the user has given consent to this purpose or not. A null value indicates that the user has not made a specific choice for the purpose but might have made choices for preferences or channels. enabled_li: type: boolean description: Whether the user has objected to this purpose based on legitimate interest. A null value indicates that the user has not made a specific choice for the purpose. A "false" value indicates that the user has objected to the purpose. metadata: type: object title: Metadata description: Free-form metadata object on the purpose channels: type: array description: Channels. This property is deprecated. deprecated: true items: type: object title: Channel description: Channel properties: id: type: string description: Channel ID enabled: type: boolean description: Whether the user has given consent to this channel or not. A null value indicates that the user has not made a specific choice for the channel metadata: type: object title: Metadata description: Free-form metadata object on the channel required: - id preferences: type: array description: Extra preferences expressed for the purpose. This property is deprecated. deprecated: true items: type: object title: ConsentPreference description: Extra preference expressed for the purpose properties: id: type: string description: Preference ID enabled: type: boolean description: Whether the user has given consent to this preference or not. A null value indicates that the user has not made a specific choice for the preference but might have made choices for channels. metadata: type: object title: Metadata description: Free-form metadata object on the preference channels: type: array description: Channels items: type: object title: Channel description: Channel properties: id: type: string description: Channel ID enabled: type: boolean description: Whether the user has given consent to this channel or not. A null value indicates that the user has not made a specific choice for the channel metadata: type: object title: Metadata description: Free-form metadata object on the channel required: - id required: - id values: type: object description: Flat structure for every selected value by the user. title: ConsentValues properties: preferenceId1: type: object description: A map of the selected value(s) by the user by preference ID. properties: value: type: string description: The list of selected value(s) by the user separated by a comma preferenceId2: type: object description: A map of the selected value(s) by the user by preference ID. properties: value: type: string description: The list of selected value(s) by the user separated by a comma required: - id vendors: type: object description: Vendors that the user has made choices for properties: enabled: type: array items: type: string description: IDs of the vendors that the user given consent to enabled_li: type: array items: type: string description: IDs of the vendors that the user has not objected to based on legitimate interest disabled: type: array items: type: string description: IDs of the vendors that the user denied consent to disabled_li: type: array items: type: string description: IDs of the vendors that the user has objected to based on legitimate interest tcfcs: type: string description: TCF consent string of the user required: - vendors proofs_id: type: array items: description: IDs of the proofs associated with this consent event type: string delegate: type: object description: Information on the delegate that created the event on behalf of the user. A delegate is a third-party that modifies the consents for an end user and that you want to keep track of. properties: id: type: string description: Unique ID of the delegate. This is usually an internal ID in your organization (team, user, etc.) and is a free-form string. name: type: string description: Name of the delegate metadata: type: object title: Metadata description: Free-form metadata object on the delegate. Use it to store custom information on the delegate. required: - id required: - id - organization_id - created_at - user - consents consent-events-input: type: object title: ConsentEventInput description: A partial update to a user consent status properties: id: type: string description: Unique event ID. Providing an event ID is optional and a unique ID will automatically be generated if no ID is provided. If an ID is provided, the API will ensure that the event does not already exist before creating it. organization_id: type: string description: ID of the organization that owns the event created_at: type: string description: Creation date of the event (ISO8601). Providing a creation data is optional and the date will automatically be set to the time of the request if it is not provided. Dates provided can be in the past to import events that were collected outside of the Didomi platform. status: type: string description: 'Status of the event (possible values: confirmed, pending_approval)' user: type: object description: Information on the user that initiated the event properties: id: type: string description: Didomi user ID (A random UUID for users encountered on websites and an IDFA/ADID for users from mobile apps) ; if the user does not exist, it will be automatically created organization_user_id: type: string description: A unique user ID, internal to your organization. This can be an email, a phone number, an internal client ID, etc. It is used to link Didomi users to your internal systems. This ID will be assigned to user if the user does not already have an organization user ID. metadata: type: object title: Metadata description: Free-form metadata object on the user. Use it to store custom information on the user. The metadata will be merged with the existing metadata of the user. country: type: string title: Country description: Two-letter ISO code of the user's country last_seen_country: type: string title: Last seen country description: Two-letter ISO country code of the event required: - id consents: type: object title: Consents description: Consent status of the user properties: channels: type: array description: Channels items: type: object title: Channel description: Channel properties: id: type: string description: Channel ID enabled: type: boolean description: Whether the user has given consent to this channel or not. A null value indicates that the user has not made a specific choice for the channel metadata: type: object title: Metadata description: Free-form metadata object on the channel required: - id purposes: type: array description: Purposes that the user has made choices for items: type: object title: ConsentChoice description: Consent choice of the user properties: id: type: string description: Purpose ID enabled: type: boolean description: Whether the user has given consent to this purpose or not. A null value indicates that the user has not made a specific choice for the purpose but might have made choices for preferences or channels. enabled_li: type: boolean description: Whether the user has objected to this purpose based on legitimate interest. A null value indicates that the user has not made a specific choice for the purpose. A "false" value indicates that the user has objected to the purpose. metadata: type: object title: Metadata description: Free-form metadata object on the purpose channels: type: array description: Channels. This property is deprecated. deprecated: true items: type: object title: Channel description: Channel properties: id: type: string description: Channel ID enabled: type: boolean description: Whether the user has given consent to this channel or not. A null value indicates that the user has not made a specific choice for the channel metadata: type: object title: Metadata description: Free-form metadata object on the channel required: - id preferences: type: array description: Extra preferences expressed for the purpose. This property is deprecated. deprecated: true items: type: object title: ConsentPreference description: Extra preference expressed for the purpose properties: id: type: string description: Preference ID enabled: type: boolean description: Whether the user has given consent to this preference or not. A null value indicates that the user has not made a specific choice for the preference but might have made choices for channels. metadata: type: object title: Metadata description: Free-form metadata object on the preference channels: type: array description: Channels items: type: object title: Channel description: Channel properties: id: type: string description: Channel ID enabled: type: boolean description: Whether the user has given consent to this channel or not. A null value indicates that the user has not made a specific choice for the channel metadata: type: object title: Metadata description: Free-form metadata object on the channel required: - id required: - id values: type: object description: Flat structure for every selected value by the user. title: ConsentValues properties: preferenceId1: type: object description: A map of the selected value(s) by the user by preference ID. properties: value: type: string description: The list of selected value(s) by the user separated by a comma preferenceId2: type: object description: A map of the selected value(s) by the user by preference ID. properties: value: type: string description: The list of selected value(s) by the user separated by a comma required: - id vendors: type: object description: Vendors that the user has made choices for properties: enabled: type: array items: type: string description: IDs of the vendors that the user given consent to enabled_li: type: array items: type: string description: IDs of the vendors that the user has not objected to based on legitimate interest disabled: type: array items: type: string description: IDs of the vendors that the user denied consent to disabled_li: type: array items: type: string description: IDs of the vendors that the user has objected to based on legitimate interest tcfcs: type: string description: TCF consent string of the user required: - vendors proofs_id: type: array items: description: IDs of the proofs associated with this event type: string proofs: type: array items: description: List of proofs to associate with this event. Proofs must be base64-encoded data URIs. type: string delegate: type: object description: Information on the delegate that created the event on behalf of the user. A delegate is a third-party that modifies the consents for an end user and that you want to keep track of. The delegate will be ignored if the API call is done with a consent token. properties: id: type: string description: Unique ID of the delegate. This is usually an internal ID in your organization (team, user, etc.) and is a free-form string. name: type: string description: Name of the delegate metadata: type: object title: Metadata description: Free-form metadata object on the delegate. Use it to store custom information on the delegate. required: - id required: - organization_id - created_at - user - consents consent-events-input-update: type: object title: ConsentEventInputUpdate description: A partial update to an event consent status properties: status: type: string description: 'Status of the event (possible values: confirmed, pending_approval)' consents: type: object title: Consents description: Consent status of the user properties: channels: type: array description: Channels items: type: object title: Channel description: Channel properties: id: type: string description: Channel ID enabled: type: boolean description: Whether the user has given consent to this channel or not. A null value indicates that the user has not made a specific choice for the channel metadata: type: object title: Metadata description: Free-form metadata object on the channel required: - id purposes: type: array description: Purposes that the user has made choices for items: type: object title: ConsentChoice description: Consent choice of the user properties: id: type: string description: Purpose ID enabled: type: boolean description: Whether the user has given consent to this purpose or not. A null value indicates that the user has not made a specific choice for the purpose but might have made choices for preferences or channels. enabled_li: type: boolean description: Whether the user has objected to this purpose based on legitimate interest. A null value indicates that the user has not made a specific choice for the purpose. A "false" value indicates that the user has objected to the purpose. metadata: type: object title: Metadata description: Free-form metadata object on the purpose channels: type: array description: Channels. This property is deprecated. deprecated: true items: type: object title: Channel description: Channel properties: id: type: string description: Channel ID enabled: type: boolean description: Whether the user has given consent to this channel or not. A null value indicates that the user has not made a specific choice for the channel metadata: type: object title: Metadata description: Free-form metadata object on the channel required: - id preferences: type: array description: Extra preferences expressed for the purpose. This property is deprecated. deprecated: true items: type: object title: ConsentPreference description: Extra preference expressed for the purpose properties: id: type: string description: Preference ID enabled: type: boolean description: Whether the user has given consent to this preference or not. A null value indicates that the user has not made a specific choice for the preference but might have made choices for channels. metadata: type: object title: Metadata description: Free-form metadata object on the preference channels: type: array description: Channels items: type: object title: Channel description: Channel properties: id: type: string description: Channel ID enabled: type: boolean description: Whether the user has given consent to this channel or not. A null value indicates that the user has not made a specific choice for the channel metadata: type: object title: Metadata description: Free-form metadata object on the channel required: - id required: - id values: type: object description: Flat structure for every selected value by the user. title: ConsentValues properties: preferenceId1: type: object description: A map of the selected value(s) by the user by preference ID. properties: value: type: string description: The list of selected value(s) by the user separated by a comma preferenceId2: type: object description: A map of the selected value(s) by the user by preference ID. properties: value: type: string description: The list of selected value(s) by the user separated by a comma required: - id vendors: type: object description: Vendors that the user has made choices for properties: enabled: type: array items: type: string description: IDs of the vendors that the user given consent to enabled_li: type: array items: type: string description: IDs of the vendors that the user has not objected to based on legitimate interest disabled: type: array items: type: string description: IDs of the vendors that the user denied consent to disabled_li: type: array items: type: string description: IDs of the vendors that the user has objected to based on legitimate interest tcfcs: type: string description: TCF consent string of the user required: - vendors proofs_id: type: array items: description: IDs of the proofs associated with this event type: string proofs: type: array items: description: List of proofs to associate with this event. Proofs must be base64-encoded data URIs. type: string delegate: type: object description: Information on the delegate that created the event on behalf of the user. A delegate is a third-party that modifies the consents for an end user and that you want to keep track of. The delegate will be ignored if the API call is done with a consent token. properties: id: type: string description: Unique ID of the delegate. This is usually an internal ID in your organization (team, user, etc.) and is a free-form string. name: type: string description: Name of the delegate metadata: type: object title: Metadata description: Free-form metadata object on the delegate. Use it to store custom information on the delegate. required: - id - consents consent-proofs: type: object title: ConsentProof description: A file proving the consent of the user properties: id: type: string description: Unique ID of the proof size: type: integer description: Size of the proof in bytes file: type: string description: Base64-encoded data URI required: - id - size - file consent-proofs-input: type: object title: ConsentProof description: A file proving the consent of the user properties: file: type: string description: 'Base64-encoded data URI. Accepted file formats: PDF, PNG, JPG, GIF, DOCX, DOC' required: - file consent-tokens: type: object title: ConsentToken description: A JWT token authorizing users to access and modify their consent data properties: id_token: type: string description: JWT token organization_id: type: string description: ID of the organization that the consent gives access to organization_user_id: type: string description: User ID lifetime: type: integer description: Lifetime of the token (in seconds) metadata: type: object description: Free-form metadata object on the token. Use it to store custom information tied to the token user. That information will not be stored in events or user data and will only be available for the lifetime of the token. required: - id_token - organization_id - organization_user_id - lifetime consent-tokens-input: type: object title: ConsentToken description: A JWT token authorizing users to access and modify their consent data properties: organization_id: type: string description: ID of the organization that the consent gives access to organization_user_id: type: string description: User ID lifetime: type: integer description: Lifetime of the token (in seconds) metadata: type: object description: Free-form metadata object on the token. Use it to store custom information tied to the token user. That information will not be stored in events or user data and will only be available for the lifetime of the token. required: - organization_id - organization_user_id - lifetime consent-users: type: object title: ConsentUser description: An end user and its consent status properties: id: type: string description: Didomi user ID (A random UUID for users encountered on websites and an IDFA/ADID for users from mobile apps) organization_id: type: string description: ID of the organization that owns the user organization_user_id: type: string description: A unique user ID, internal to your organization. This can be an email, a phone number, an internal client ID, etc. It is used to link Didomi users to your internal systems. version: type: number description: Version number of the user record for optimistic locking created_at: type: string description: Creation date of the user (ISO8601) updated_at: type: string description: Last update date of the user (ISO8601) metadata: type: object title: Metadata description: Free-form metadata object on the user. Use it to store custom information on the user. country: type: string title: Country description: Two-letter ISO code of the user country last_seen_country: type: string title: Last seen country description: Two-letter ISO country code of the last consent event for the user. consents: type: object title: Consents description: Consent status of the user properties: channels: type: array description: Channels items: type: object title: Channel description: Channel properties: id: type: string description: Channel ID enabled: type: boolean description: Whether the user has given consent to this channel or not. A null value indicates that the user has not made a specific choice for the channel metadata: type: object title: Metadata description: Free-form metadata object on the channel required: - id purposes: type: array description: Purposes that the user has made choices for items: type: object title: ConsentChoice description: Consent choice of the user properties: id: type: string description: Purpose ID enabled: type: boolean description: Whether the user has given consent to this purpose or not. A null value indicates that the user has not made a specific choice for the purpose but might have made choices for preferences or channels. enabled_li: type: boolean description: Whether the user has objected to this purpose based on legitimate interest. A null value indicates that the user has not made a specific choice for the purpose. A "false" value indicates that the user has objected to the purpose. metadata: type: object title: Metadata description: Free-form metadata object on the purpose channels: type: array description: Channels. This property is deprecated. deprecated: true items: type: object title: Channel description: Channel properties: id: type: string description: Channel ID enabled: type: boolean description: Whether the user has given consent to this channel or not. A null value indicates that the user has not made a specific choice for the channel metadata: type: object title: Metadata description: Free-form metadata object on the channel required: - id preferences: type: array description: Extra preferences expressed for the purpose. This property is deprecated. deprecated: true items: type: object title: ConsentPreference description: Extra preference expressed for the purpose properties: id: type: string description: Preference ID enabled: type: boolean description: Whether the user has given consent to this preference or not. A null value indicates that the user has not made a specific choice for the preference but might have made choices for channels. metadata: type: object title: Metadata description: Free-form metadata object on the preference channels: type: array description: Channels items: type: object title: Channel description: Channel properties: id: type: string description: Channel ID enabled: type: boolean description: Whether the user has given consent to this channel or not. A null value indicates that the user has not made a specific choice for the channel metadata: type: object title: Metadata description: Free-form metadata object on the channel required: - id required: - id values: type: object description: Flat structure for every selected value by the user. title: ConsentValues properties: preferenceId1: type: object description: A map of the selected value(s) by the user by preference ID. properties: value: type: string description: The list of selected value(s) by the user separated by a comma preferenceId2: type: object description: A map of the selected value(s) by the user by preference ID. properties: value: type: string description: The list of selected value(s) by the user separated by a comma required: - id vendors: type: object description: Vendors that the user has made choices for properties: enabled: type: array items: type: string description: IDs of the vendors that the user given consent to enabled_li: type: array items: type: string description: IDs of the vendors that the user has not objected to based on legitimate interest disabled: type: array items: type: string description: IDs of the vendors that the user denied consent to disabled_li: type: array items: type: string description: IDs of the vendors that the user has objected to based on legitimate interest tcfcs: type: string description: TCF consent string of the user required: - vendors required: - id - organization_id - version - created_at - updated_at consent-users-input-create: type: object title: ConsentUserCreate description: An end user and its consent status properties: id: type: string description: Didomi user ID (A random UUID for users encountered on websites and an IDFA/ADID for users from mobile apps) organization_id: type: string description: ID of the organization that owns the user organization_user_id: type: string description: A unique user ID, internal to your organization. This can be an email, a phone number, an internal client ID, etc. It is used to link Didomi users to your internal systems. version: type: number description: Version number of the user record for optimistic locking metadata: type: object title: Metadata description: Free-form metadata object on the user. Use it to store custom information on the user. country: type: string title: Country description: Two-letter ISO code of the user country last_seen_country: type: string title: Last seen country description: Two-letter ISO country code of the last consent event for the user. consents: type: object title: Consents description: Consent status of the user properties: channels: type: array description: Channels items: type: object title: Channel description: Channel properties: id: type: string description: Channel ID enabled: type: boolean description: Whether the user has given consent to this channel or not. A null value indicates that the user has not made a specific choice for the channel metadata: type: object title: Metadata description: Free-form metadata object on the channel required: - id purposes: type: array description: Purposes that the user has made choices for items: type: object title: ConsentChoice description: Consent choice of the user properties: id: type: string description: Purpose ID enabled: type: boolean description: Whether the user has given consent to this purpose or not. A null value indicates that the user has not made a specific choice for the purpose but might have made choices for preferences or channels. enabled_li: type: boolean description: Whether the user has objected to this purpose based on legitimate interest. A null value indicates that the user has not made a specific choice for the purpose. A "false" value indicates that the user has objected to the purpose. metadata: type: object title: Metadata description: Free-form metadata object on the purpose channels: type: array description: Channels. This property is deprecated. deprecated: true items: type: object title: Channel description: Channel properties: id: type: string description: Channel ID enabled: type: boolean description: Whether the user has given consent to this channel or not. A null value indicates that the user has not made a specific choice for the channel metadata: type: object title: Metadata description: Free-form metadata object on the channel required: - id preferences: type: array description: Extra preferences expressed for the purpose. This property is deprecated. deprecated: true items: type: object title: ConsentPreference description: Extra preference expressed for the purpose properties: id: type: string description: Preference ID enabled: type: boolean description: Whether the user has given consent to this preference or not. A null value indicates that the user has not made a specific choice for the preference but might have made choices for channels. metadata: type: object title: Metadata description: Free-form metadata object on the preference channels: type: array description: Channels items: type: object title: Channel description: Channel properties: id: type: string description: Channel ID enabled: type: boolean description: Whether the user has given consent to this channel or not. A null value indicates that the user has not made a specific choice for the channel metadata: type: object title: Metadata description: Free-form metadata object on the channel required: - id required: - id values: type: object description: Flat structure for every selected value by the user. title: ConsentValues properties: preferenceId1: type: object description: A map of the selected value(s) by the user by preference ID. properties: value: type: string description: The list of selected value(s) by the user separated by a comma preferenceId2: type: object description: A map of the selected value(s) by the user by preference ID. properties: value: type: string description: The list of selected value(s) by the user separated by a comma required: - id vendors: type: object description: Vendors that the user has made choices for properties: enabled: type: array items: type: string description: IDs of the vendors that the user given consent to enabled_li: type: array items: type: string description: IDs of the vendors that the user has not objected to based on legitimate interest disabled: type: array items: type: string description: IDs of the vendors that the user denied consent to disabled_li: type: array items: type: string description: IDs of the vendors that the user has objected to based on legitimate interest tcfcs: type: string description: TCF consent string of the user required: - vendors deprecated: true required: - id - organization_id consent-users-input-update: type: object title: ConsentUserUpdate description: An end user and its consent status properties: organization_user_id: type: string description: A unique user ID, internal to your organization. This can be an email, a phone number, an internal client ID, etc. It is used to link Didomi users to your internal systems. version: type: number description: Version number of the user record for optimistic locking metadata: type: object title: Metadata description: Free-form metadata object on the user. Use it to store custom information on the user. country: type: string title: Country description: Two-letter ISO code of the user's country last_seen_country: type: string title: Last seen country description: Two-letter ISO country code of the last consent event for the user. consents: type: object title: Consents description: Consent status of the user properties: channels: type: array description: Channels items: type: object title: Channel description: Channel properties: id: type: string description: Channel ID enabled: type: boolean description: Whether the user has given consent to this channel or not. A null value indicates that the user has not made a specific choice for the channel metadata: type: object title: Metadata description: Free-form metadata object on the channel required: - id purposes: type: array description: Purposes that the user has made choices for items: type: object title: ConsentChoice description: Consent choice of the user properties: id: type: string description: Purpose ID enabled: type: boolean description: Whether the user has given consent to this purpose or not. A null value indicates that the user has not made a specific choice for the purpose but might have made choices for preferences or channels. enabled_li: type: boolean description: Whether the user has objected to this purpose based on legitimate interest. A null value indicates that the user has not made a specific choice for the purpose. A "false" value indicates that the user has objected to the purpose. metadata: type: object title: Metadata description: Free-form metadata object on the purpose channels: type: array description: Channels. This property is deprecated. deprecated: true items: type: object title: Channel description: Channel properties: id: type: string description: Channel ID enabled: type: boolean description: Whether the user has given consent to this channel or not. A null value indicates that the user has not made a specific choice for the channel metadata: type: object title: Metadata description: Free-form metadata object on the channel required: - id preferences: type: array description: Extra preferences expressed for the purpose. This property is deprecated. deprecated: true items: type: object title: ConsentPreference description: Extra preference expressed for the purpose properties: id: type: string description: Preference ID enabled: type: boolean description: Whether the user has given consent to this preference or not. A null value indicates that the user has not made a specific choice for the preference but might have made choices for channels. metadata: type: object title: Metadata description: Free-form metadata object on the preference channels: type: array description: Channels items: type: object title: Channel description: Channel properties: id: type: string description: Channel ID enabled: type: boolean description: Whether the user has given consent to this channel or not. A null value indicates that the user has not made a specific choice for the channel metadata: type: object title: Metadata description: Free-form metadata object on the channel required: - id required: - id values: type: object description: Flat structure for every selected value by the user. title: ConsentValues properties: preferenceId1: type: object description: A map of the selected value(s) by the user by preference ID. properties: value: type: string description: The list of selected value(s) by the user separated by a comma preferenceId2: type: object description: A map of the selected value(s) by the user by preference ID. properties: value: type: string description: The list of selected value(s) by the user separated by a comma required: - id vendors: type: object description: Vendors that the user has made choices for properties: enabled: type: array items: type: string description: IDs of the vendors that the user given consent to enabled_li: type: array items: type: string description: IDs of the vendors that the user has not objected to based on legitimate interest disabled: type: array items: type: string description: IDs of the vendors that the user denied consent to disabled_li: type: array items: type: string description: IDs of the vendors that the user has objected to based on legitimate interest tcfcs: type: string description: TCF consent string of the user required: - vendors deprecated: true sdk-configs: type: object title: SDKConfig description: Configuration loaded by SDKs deployed on properties properties: organization_public_api_key: type: string description: Public API key of the organization organization_id: type: string description: ID of the organization notice_id: type: string description: ID of the notice default: type: string description: Whether this is the default notice configuration for the platform or not targets: type: array items: description: Targets (list of domains or mobile app IDs) that the notice should be loaded on type: string platform: type: string description: Platform that the notice applies to (e.g. "web", "amp", "app", "ctv") notice_deployment_id: type: string description: ID of the notice deployment deployment_time: type: string description: ISO 8601 timestamp of the notice deployment environment: type: string description: Environment of the notice deployment (must be "production") config: type: string description: JSON-encoded SDK configuration for GDPR. This cannot be used in conjunction with the "reg_geo" and "reg_configs" properties. reg_geo: type: object description: Regulation geo map that defines what regulation to load by country. Keys are countries (ISO 3166 alpha-2 country codes), regions (ISO 3166 alpha-2 country codes and regions, separated by a _), or * to indicate all geos. Values are regulation IDs (e.g. "gdpr", "ccpa", etc.). This cannot be used in conjunction with the "config" property. reg_configs: type: object description: Regulation configs map that defines the SDK config per regulation. Keys are regulation IDs (e.g. "gdpr", "ccpa", etc.) and values are JSON-encoded SDK configs for each regulation. This cannot be used in conjunction with the "config" property. Mutually exclusive with reg_configs_compressed - only present when compression is not applied. reg_configs_compressed: type: string description: Base64-encoded gzip-compressed version of reg_configs. Mutually exclusive with reg_configs - only present when compression is successfully applied to avoid the 6MB lambda event body size limit for large configurations. required: - organization_public_api_key - organization_id - notice_id - default - targets - platform - notice_deployment_id - deployment_time - environment paths: /consents/events: get: summary: Retrieve events description: Returns a list of events for a given organization ID and user ID or organization user ID security: - bearer: [] parameters: - name: organization_id in: query description: The ID of the organization for which to retrieve events required: true schema: type: string - name: user_id in: query description: The Didomi user ID for which to retrieve events. You must provide either **user_id** or **organization_user_id** when querying events required: false schema: type: string - name: organization_user_id in: query description: The organization user ID for which to retrieve events. You must provide either **user_id** or **organization_user_id** when querying events required: false schema: type: string - name: status in: query description: 'Filter events according to their status (possible values: confirmed, pending_approval). If this field is missing, only confirmed events are returned. To filter on multiple statuses in a single request, use the notation status[$in]: ?status[$in]=confirmed&status[$in]=pending_approval.' required: false schema: type: string - name: regulation in: query description: 'Filter events according to their regulation. Possible value is any existing regulation in the Regulations API (/compliance/v1/regulations). If this field is missing, only GDPR events are returned. To filter on multiple regulations in a single request, use the notation regulation[$in]: ?regulation[$in]=gdpr®ulation[$in]=cpra.' required: false schema: type: string responses: '200': description: A list of ConsentEvent objects content: application/json: schema: type: array items: $ref: '#/definitions/consent-events' tags: - consents/events consumes: - application/json produces: - application/json post: summary: Create a new event description: Create a new event and update the consent status of the user parameters: - name: organization_id in: query description: The ID of the organization for which to create an event required: true schema: type: string - name: $disable_integrations in: query description: Disable sending the event to integrations configured for the organization. Set this parameter to true if you do not want the event processed by integrations (if you are importing events that already exist in the integrated systems, for instance). required: false schema: type: boolean - name: $generate_tcfcs in: query description: Set to "true" to generate a TCF consent string for the user based on the latest status of the user required: false schema: type: boolean - name: event in: body description: Event information required: true schema: $ref: '#/definitions/consent-events-input' responses: '200': description: The created ConsentEvent object content: application/json: schema: $ref: '#/definitions/consent-events' tags: - consents/events consumes: - application/json produces: - application/json security: - bearer: [] delete: summary: Delete events description: Delete events and update the user consent status as if the events had never happened ; the user consent status is re-computed from all events for that user except deleted events security: - bearer: [] parameters: - name: organization_id in: query description: The ID of the organization that the event belongs to required: true schema: type: string - name: user_id in: query description: The Didomi user ID for which to delete events. You must provide either **user_id** or **organization_user_id** when querying events required: false schema: type: string - name: organization_user_id in: query description: The organization user ID for which to delete events. You must provide either **user_id** or **organization_user_id** when querying events required: false schema: type: string - name: '{filters}' in: query description: Keys and values to filter the events to delete. You can filter using any property of the events, including nested properties like metadata by using . as a separator for each level required: true schema: type: string responses: '204': description: The events were successfully deleted and the user consent status has been updated tags: - consents/events consumes: - application/json produces: - application/json /consents/events/{id}: get: summary: Retrieve an event description: Returns an event security: - bearer: [] parameters: - name: id in: path description: The ID of the event to retrieve required: true schema: type: string - name: organization_id in: query description: The ID of the organization that the event belongs to required: true schema: type: string - name: user_id in: query description: The Didomi user ID for which to retrieve events. You must provide either **user_id** or **organization_user_id** when querying events required: false schema: type: string - name: organization_user_id in: query description: The organization user ID for which to retrieve events. You must provide either **user_id** or **organization_user_id** when querying events required: false schema: type: string responses: '200': description: A ConsentEvent object content: application/json: schema: $ref: '#/definitions/consent-events' tags: - consents/events consumes: - application/json produces: - application/json patch: summary: Patch an event description: Patch an existing event security: - bearer: [] parameters: - name: id in: path description: The ID of the event to update required: true schema: type: string - name: organization_id in: query description: The ID of the organization that the event belongs to required: true schema: type: string - name: user_id in: query description: The Didomi user ID for which to update events. You must provide either **user_id** or **organization_user_id** when updating events required: false schema: type: string - name: organization_user_id in: query description: The organization user ID for which to update events. You must provide either **user_id** or **organization_user_id** when updating events required: false schema: type: string - name: event in: body description: The new event data required: true schema: $ref: '#/definitions/consent-events-input-update' responses: '200': description: The patched ConsentEvent object content: application/json: schema: $ref: '#/definitions/consent-events' tags: - consents/events consumes: - application/json produces: - application/json delete: summary: Delete an event description: Delete an event and update the user consent status as if the event had never happened ; the user consent status is re-computed from all events for that user except deleted events security: - bearer: [] parameters: - name: id in: path description: The ID of the event to delete required: true schema: type: string - name: organization_id in: query description: The ID of the organization that the event belongs to required: true schema: type: string - name: user_id in: query description: The Didomi user ID for which to delete events. You must provide either **user_id** or **organization_user_id** when querying events required: false schema: type: string - name: organization_user_id in: query description: The organization user ID for which to delete events. You must provide either **user_id** or **organization_user_id** when querying events required: false schema: type: string responses: '204': description: The event was successfully deleted and the user consent status has been updated tags: - consents/events consumes: - application/json produces: - application/json /consents/proofs: post: summary: Upload a consent proof description: Upload a file to serve as proof of consent parameters: - name: organization_id in: query description: The ID of the organization that the proof belongs to required: true schema: type: string - name: file in: body description: Proof information required: true schema: $ref: '#/definitions/consent-proofs-input' responses: '200': description: The created ConsentProof object content: application/json: schema: $ref: '#/definitions/consent-proofs' tags: - consents/proofs consumes: - application/json produces: - application/json security: - bearer: [] /consents/proofs/{id}: get: summary: Retrieve a proof description: Returns a consent proof security: - bearer: [] parameters: - name: id in: path description: Unique ID of the proof to retrieve required: true schema: type: string - name: organization_id in: query description: The ID of the organization that the proof belongs to required: true schema: type: string responses: '200': description: A ConsentProof object content: application/json: schema: $ref: '#/definitions/consent-proofs' tags: - consents/proofs consumes: - application/json produces: - application/json /consents/tokens: post: summary: Create a new consent token description: Create a new consent token for the user parameters: - name: token in: body description: Token information required: true schema: $ref: '#/definitions/consent-tokens-input' responses: '200': description: The created ConsentToken object content: application/json: schema: $ref: '#/definitions/consent-tokens' tags: - consents/tokens consumes: - application/json produces: - application/json security: - bearer: [] /consents/users: get: summary: Retrieve users description: Returns a list of end users and their consent status security: - bearer: [] parameters: - name: organization_id in: query description: The ID of the organization for which to retrieve users required: true schema: type: string - name: organization_user_id in: query description: The organization user ID to retrieve (optional) required: false schema: type: string - name: regulation in: query description: 'Filter user consents according to their regulation. Possible value is any existing regulation in the Regulations API (/compliance/v1/regulations). If this field is missing, only GDPR events are returned. To filter on multiple regulations in a single request, use the notation regulation[$in]: ?regulation[$in]=gdpr®ulation[$in]=cpra.' required: false schema: type: string responses: '200': description: A list of ConsentUser objects content: application/json: schema: type: array items: $ref: '#/definitions/consent-users' tags: - consents/users consumes: - application/json produces: - application/json post: summary: Create a new user description: Create a new user and store its consent status parameters: - name: organization_id in: query description: The ID of the organization that the user belongs to required: true schema: type: string - name: $generate_tcfcs in: query description: Set to "true" to generate a TCF consent string for the user based on the latest status of the user required: false schema: type: boolean - name: user in: body description: User information required: true schema: $ref: '#/definitions/consent-users-input-create' responses: '200': description: The created ConsentUser object content: application/json: schema: $ref: '#/definitions/consent-users' tags: - consents/users consumes: - application/json produces: - application/json security: - bearer: [] /consents/users/{id}: get: summary: Retrieve a user description: Returns a user and its consent status security: - bearer: [] parameters: - name: organization_id in: query description: The ID of the organization that the user belongs to required: true schema: type: string - name: id in: path description: The ID of the user to retrieve. You can query by organization user ID here by providing your organization user ID in the path and adding a **$by_organization_user_id** query-string parameter required: true schema: type: string - name: $by_organization_user_id in: query description: Add this query-string parameter if you provide an organization user ID as the **id** in the path required: false schema: type: string responses: '200': description: A ConsentUser object content: application/json: schema: $ref: '#/definitions/consent-users' tags: - consents/users consumes: - application/json produces: - application/json patch: summary: Patch a user description: Patch an existing user security: - bearer: [] parameters: - name: organization_id in: query description: The ID of the organization that the user belongs to required: true schema: type: string - name: id in: path description: The ID of the user to update. You can update a user by organization user ID here by providing your organization user ID in the path and adding a **$by_organization_user_id** query-string parameter required: true schema: type: string - name: $by_organization_user_id in: query description: Add this query-string parameter if you provide an organization user ID as the **id** in the path required: false schema: type: string - name: $generate_tcfcs in: query description: Set to "true" to generate a TCF consent string for the user based on the latest status of the user required: false schema: type: boolean - name: user in: body description: The new user data required: true schema: $ref: '#/definitions/consent-users-input-update' responses: '200': description: The patched ConsentUser object content: application/json: schema: $ref: '#/definitions/consent-users' tags: - consents/users consumes: - application/json produces: - application/json delete: summary: Delete a user description: Delete an existing user security: - bearer: [] parameters: - name: organization_id in: query description: The ID of the organization that the user belongs to required: true schema: type: string - name: id in: path description: The ID of the user to delete. You can delete a user by organization user ID here by providing your organization user ID in the path and adding a **$by_organization_user_id** query-string parameter required: true schema: type: string - name: $by_organization_user_id in: query description: Add this query-string parameter if you provide an organization user ID as the **id** in the path required: false schema: type: string responses: '200': description: The deleted ConsentUser object content: application/json: schema: $ref: '#/definitions/consent-users' tags: - consents/users consumes: - application/json produces: - application/json /widgets/notices/remote-configs: post: summary: Deploy a SDK config description: Directly deploy a SDK config to the production environment for the property security: - bearer: [] parameters: [] responses: '200': description: created content: application/json: schema: $ref: '#/components/schemas/sdk-configs' '401': description: not authenticated '403': description: forbidden '500': description: general error tags: - widgets/notices/remote-configs consumes: - application/json produces: - application/json /sessions/{id}: get: parameters: - in: path name: id description: ID of sessions to return schema: type: integer required: true responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/sessions' '401': description: not authenticated '404': description: not found '500': description: general error description: Retrieves a single resource with the given id from the service. summary: '' tags: - sessions security: [] /sessions: post: parameters: - name: session in: body description: The authentication information required: true schema: $ref: '#/components/schemas/sessions-input' responses: '200': description: The created Session object content: application/json: schema: $ref: '#/components/schemas/sessions' description: Authenticate against the Didomi API and get an access token to use for calls requiring authorization summary: Create a new session tags: - sessions security: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/sessions' /keys: get: parameters: - description: Number of results to return in: query name: $limit schema: type: integer - description: Number of results to skip in: query name: $skip schema: type: integer - description: Property to sort results in: query name: $sort style: deepObject schema: type: object - description: Query parameters to filter in: query name: filter style: form explode: true schema: $ref: '#/components/schemas/keys' responses: '200': description: A list of APIKey objects content: application/json: schema: type: array items: $ref: '#/components/schemas/keys' description: Returns a list of all API keys the user has access to summary: Retrieve a list of API keys tags: - keys security: - bearer: [] post: parameters: - name: key in: body description: API key required: true schema: $ref: '#/components/schemas/keys-input-create' responses: '200': description: The created APIKey object content: application/json: schema: type: object properties: id: type: string description: Unique ID of the API key organization_id: type: string description: ID of the organization that owns the API key created_at: type: string description: Creation date of the API key (ISO8601) enabled: type: boolean description: Status of the API key. A disabled API key cannot be used for obtaining a token. Already issued tokens remain valid until their expiration. secret: type: string description: Secret of the API key description: Create a new API key that can be used for authenticating HTTP requests to the Didomi API summary: Create a new API key tags: - keys security: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/keys' /keys/{id}: get: parameters: - name: id in: path description: The ID of the API key to retrieve required: true schema: type: string responses: '200': description: An APIKey object content: application/json: schema: $ref: '#/components/schemas/keys' description: Returns a single API key with the given ID summary: Retrieve an API key tags: - keys security: - bearer: [] put: parameters: - name: id in: path description: The ID of the API key to update required: true schema: type: string - name: key in: body description: The new API key data required: true schema: $ref: '#/components/schemas/keys-input-update' responses: '200': description: The updated APIKey object content: application/json: schema: $ref: '#/components/schemas/keys' description: Update an existing API key summary: Update an API key tags: - keys security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/keys' patch: parameters: - name: id in: path description: The ID of the API key to patch required: true schema: type: string - name: key in: body description: The new API key data required: true schema: $ref: '#/components/schemas/keys-input-update' responses: '200': description: The patched APIKey object content: application/json: schema: $ref: '#/components/schemas/keys' description: Patch an existing API key summary: Patch an API key tags: - keys security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/keys' delete: parameters: - name: id in: path description: The ID of the API key to delete required: true schema: type: string responses: '200': description: The deleted APIKey object content: application/json: schema: $ref: '#/components/schemas/keys' description: Delete an existing API key summary: Delete an API key tags: - keys security: - bearer: [] /quotas: get: parameters: - description: Number of results to return in: query name: $limit schema: type: integer - description: Number of results to skip in: query name: $skip schema: type: integer - description: Property to sort results in: query name: $sort style: deepObject schema: type: object - description: Query parameters to filter in: query name: filter style: form explode: true schema: $ref: '#/components/schemas/quotas' responses: '200': description: A list of Quota objects content: application/json: schema: type: array items: $ref: '#/components/schemas/quotas' description: Returns a list of all quotas for the organizations the user belongs to summary: Retrieve a list of quotas tags: - quotas security: - bearer: [] /quotas/{id}: get: parameters: - name: id in: path description: The ID of the quota to retrieve required: true schema: type: string responses: '200': description: A Quota object content: application/json: schema: $ref: '#/components/schemas/quotas' description: Returns a single quota with the given ID summary: Retrieve a quota tags: - quotas security: - bearer: [] /domains: get: parameters: - description: Number of results to return in: query name: $limit schema: type: integer - description: Number of results to skip in: query name: $skip schema: type: integer - description: Property to sort results in: query name: $sort style: deepObject schema: type: object - description: Query parameters to filter in: query name: filter style: form explode: true schema: $ref: '#/components/schemas/domains' responses: '200': description: A list of Domain objects content: application/json: schema: type: array items: $ref: '#/components/schemas/domains' description: Returns a list of domains summary: Retrieve a list of domains tags: - domains security: - bearer: [] post: parameters: - name: domain in: body description: The Domain object to create required: true schema: $ref: '#/components/schemas/domains-input-create' responses: '200': description: The created Domain object content: application/json: schema: $ref: '#/components/schemas/domains' description: Create a new domain summary: Create a domain tags: - domains security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/domains' /domains/{id}: get: parameters: - name: id in: path description: The ID of the domain to retrieve required: true schema: type: string responses: '200': description: A Domain object content: application/json: schema: $ref: '#/components/schemas/domains' description: Returns a domain by its ID summary: Retrieve a domain tags: - domains security: - bearer: [] put: parameters: - name: id in: path description: The ID of the domain to update required: true schema: type: string - name: domain in: body description: The new data to update the domain with required: true schema: $ref: '#/components/schemas/domains-input-update' responses: '200': description: The updated Domain object content: application/json: schema: $ref: '#/components/schemas/domains' description: Update an existing domain summary: Update a domain tags: - domains security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/domains' patch: parameters: - name: id in: path description: The ID of the domain to patch required: true schema: type: string - name: domain in: body description: The properties to replace on the Domain object required: true schema: $ref: '#/components/schemas/domains-input-update' responses: '200': description: The patched Domain object content: application/json: schema: $ref: '#/components/schemas/domains' description: Partially update a domain summary: Patch a domain tags: - domains security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/domains' delete: parameters: - name: id in: path description: The ID of the domain to delete required: true schema: type: string responses: '200': description: A Domain object content: application/json: schema: $ref: '#/components/schemas/domains' description: Delete a domain with type "managed" by its ID summary: Delete a domain tags: - domains security: - bearer: [] /secrets: get: parameters: - description: Number of results to return in: query name: $limit schema: type: integer - description: Number of results to skip in: query name: $skip schema: type: integer - description: Property to sort results in: query name: $sort style: deepObject schema: type: object - description: Query parameters to filter in: query name: filter style: form explode: true schema: $ref: '#/components/schemas/secrets' responses: '200': description: A list of Secret objects content: application/json: schema: type: array items: $ref: '#/components/schemas/secrets' description: Returns a list of all the secrets the user has access to summary: Retrieve a list of secrets tags: - secrets security: - bearer: [] post: parameters: - name: secret in: body description: The Secret object to create required: true schema: $ref: '#/components/schemas/secrets-input' responses: '200': description: The created Secret object content: application/json: schema: $ref: '#/components/schemas/secrets' description: Create a new secret summary: Create a secret tags: - secrets security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/secrets' /secrets/{id}: get: parameters: - name: id in: path description: The ID of the secret to retrieve required: true schema: type: string responses: '200': description: A Secret object content: application/json: schema: $ref: '#/components/schemas/secrets' description: Returns a single secret with the given ID summary: Retrieve a secret tags: - secrets security: - bearer: [] put: parameters: - name: id in: path description: The ID of the secret to update required: true schema: type: string - name: secret in: body description: The new data to update the secret with required: true schema: $ref: '#/components/schemas/secrets-input' responses: '200': description: The updated Secret object content: application/json: schema: $ref: '#/components/schemas/secrets' description: Update an existing secret summary: Update a secret tags: - secrets security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/secrets' patch: parameters: - name: id in: path description: The ID of the secret to patch required: true schema: type: string - name: secret in: body description: The secrets to replace in the Secret object required: true schema: $ref: '#/components/schemas/secrets-input' responses: '200': description: The patched Secret object content: application/json: schema: $ref: '#/components/schemas/secrets' description: Partially update a secret summary: Patch a secret tags: - secrets security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/secrets' delete: parameters: - name: id in: path description: The ID of the secret to delete required: true schema: type: string responses: '200': description: The deleted Secret object content: application/json: schema: $ref: '#/components/schemas/secrets' description: Delete an existing secret. Secrets are unrecoverable after being deleted so make sure that they are not in-use before deleting them. summary: Delete a secret tags: - secrets security: - bearer: [] /platform-integrations/sessions: post: parameters: - name: X-Shopify-Authorization in: header description: Shopify session token (JWT) from App Bridge required: true schema: type: string example: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9... responses: '201': description: JWT token successfully minted content: application/json: schema: $ref: '#/components/schemas/platform-integrations-sessions' '400': description: Invalid request or integration configuration error '401': description: Platform authentication failed or missing '404': description: Platform integration not found description: Authenticates using platform-specific session token (e.g., Shopify Session Token) and returns a session response with a short-lived JWT token for accessing Didomi Admin API resources. The token is scoped to the integration's role (external-integrations-notices-manager) and organization. Only custodial integrations are supported. summary: Mint JWT token for custodial platform integration tags: - Integrations security: - ShopifySessionToken: [] requestBody: description: Empty body (authentication via header) required: false content: application/json: schema: $ref: '#/components/schemas/platform-integrations-sessions-input' /cookies: get: parameters: - name: property_id in: query description: The ID of the property required: false schema: type: string responses: '200': description: A list of Cookie objects content: application/json: schema: type: array items: $ref: '#/components/schemas/cookies' description: Returns a list of cookies set by a property summary: Retrieve a list of cookies tags: - cookies security: - bearer: [] post: parameters: - name: cookie in: body description: The Cookie object to create required: true schema: $ref: '#/components/schemas/cookies-input' responses: '200': description: The created Cookie object content: application/json: schema: $ref: '#/components/schemas/cookies' description: Create a new cookie for a property summary: Create a cookie tags: - cookies security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/cookies' /cookies/{id}: get: parameters: - name: id in: path description: The ID of the cookie to retrieve required: true schema: type: string responses: '200': description: A Cookie object content: application/json: schema: $ref: '#/components/schemas/cookies' description: Returns a single cookie set by a property summary: Retrieve a cookie tags: - cookies security: - bearer: [] put: parameters: - name: id in: path description: The ID of the cookie to update required: true schema: type: string - name: cookie in: body description: The new data to update the cookie with required: true schema: $ref: '#/components/schemas/cookies-input' responses: '200': description: The updated Cookie object content: application/json: schema: $ref: '#/components/schemas/cookies' description: Update an existing cookie set by a property and replace all its properties summary: Update a cookie tags: - cookies security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/cookies' patch: parameters: - name: id in: path description: The ID of the cookie to patch required: true schema: type: string - name: cookie in: body description: The properties to replace on the Cookie object required: true schema: $ref: '#/components/schemas/cookies-input' responses: '200': description: The patched Cookie object content: application/json: schema: $ref: '#/components/schemas/cookies' description: Partially update a cookie set by a property summary: Patch a cookie tags: - cookies security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/cookies' delete: parameters: - name: id in: path description: The ID of the cookie to delete required: true schema: type: string responses: '200': description: The deleted Cookie object content: application/json: schema: $ref: '#/components/schemas/cookies' description: Delete an existing cookie summary: Delete a cookie tags: - cookies security: - bearer: [] /languages: get: parameters: [] responses: '200': description: List of Languages object content: application/json: schema: $ref: '#/components/schemas/languages' description: Returns list of available languages/locales summary: Retrieve list of available languages/locales tags: - languages security: - bearer: [] /analytics/dashboards-urls: get: parameters: - name: category required: false in: query schema: $ref: '#/components/schemas/DashboardUrlCategory' description: The category of the dashboard. Used for grouping dashboard (per page for example). - name: organization_id in: query description: The ID of the organization that the user belongs to required: false schema: type: string - name: $limit required: false in: query description: Number of max results to return schema: type: number - name: $skip required: false in: query description: Number of results to skip schema: type: number - name: $sort required: false in: query description: Object representing sorting options. Accepts properties to sort as keys and -1 or 1 for sort direction example: updated_at: 1 created_at: 1 schema: type: object properties: updated_at: type: number created_at: type: number responses: '200': content: application/json: schema: type: object description: A paginated list of DashboardUrl objects properties: total: type: number description: The total amount of dashboard urls limit: type: number description: The limit of dashboard urls on this query skip: type: number description: Number of dashboard urls skipped data: type: array items: $ref: '#/components/schemas/dashboards-urls' description: Returns a list of all dashboards with signed URLs summary: Retrieve a list of dashboards with signed URLs tags: - dashboards-urls security: - bearer: [] /organizations: get: parameters: - description: Number of results to return in: query name: $limit schema: type: integer - description: Number of results to skip in: query name: $skip schema: type: integer - description: Property to sort results in: query name: $sort style: deepObject schema: type: object - description: Query parameters to filter in: query name: filter style: form explode: true schema: $ref: '#/components/schemas/organizations' responses: '200': description: A list of Organization objects content: application/json: schema: type: array items: $ref: '#/components/schemas/organizations' description: Returns a list of all organizations the user belongs to summary: Retrieve a list of organizations tags: - organizations security: - bearer: [] post: parameters: - name: organization in: body description: The Organization object to create required: true schema: $ref: '#/components/schemas/organizations-input' responses: '200': description: The created Organization object content: application/json: schema: $ref: '#/components/schemas/organizations' description: Create a new organization summary: Create an organization tags: - organizations security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/organizations' /organizations/{id}: get: parameters: - name: id in: path description: The ID of the organization to retrieve required: true schema: type: string responses: '200': description: An Organization object content: application/json: schema: $ref: '#/components/schemas/organizations' description: Returns a single organization with the given ID summary: Retrieve an organization tags: - organizations security: - bearer: [] put: parameters: - name: id in: path description: The ID of the organization to update required: true schema: type: string - name: organization in: body description: The new data to update the organization with required: true schema: $ref: '#/components/schemas/organizations-input' responses: '200': description: The updated Organization object content: application/json: schema: $ref: '#/components/schemas/organizations' description: Update an existing organization and replace all its properties summary: Update an organization tags: - organizations security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/organizations' patch: parameters: - name: id in: path description: The ID of the organization to patch required: true schema: type: string - name: organization in: body description: The properties to replace in the Organization object required: true schema: $ref: '#/components/schemas/organizations-input' responses: '200': description: The patched Organization object content: application/json: schema: $ref: '#/components/schemas/organizations' description: Partially update an organization summary: Patch an organization tags: - organizations security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/organizations' delete: parameters: - name: id in: path description: The ID of the organization to delete required: true schema: type: string responses: '200': description: The deleted Organization object content: application/json: schema: $ref: '#/components/schemas/organizations' description: Delete an existing organization summary: Delete an organization tags: - organizations security: - bearer: [] /members: get: parameters: - name: organization_id in: query description: The ID of the organization required: true schema: type: string responses: '200': description: A list of Member objects schema: type: array items: $ref: '#/components/schemas/members' description: Returns a list of members of an organization summary: Retrieve a list of members of an organization tags: - members security: - bearer: [] post: parameters: - name: member in: body description: The Member object to create required: true schema: $ref: '#/components/schemas/members-invite-to-org-input' responses: '200': description: The created Member object content: application/json: schema: $ref: '#/components/schemas/members' description: Add a new member to an organization. If the user is new it will send an email with a password reset link. Finally it will send an added to organization notification summary: Add a user to an organization tags: - members security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/members' /members/{id}: get: parameters: - name: id in: path description: The ID of the member to retrieve required: true schema: type: string responses: '200': description: A Member object content: application/json: schema: $ref: '#/components/schemas/members' description: Returns a single member of an organization summary: Retrieve a member tags: - members security: - bearer: [] patch: parameters: - in: path name: id description: ID of members to update schema: type: integer required: true responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/members' '401': description: not authenticated '404': description: not found '500': description: general error description: Updates the resource identified by id using data. summary: '' tags: - members security: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/members' delete: parameters: - name: id in: path description: The ID of the member to delete required: true schema: type: string responses: '200': description: The deleted Member object content: application/json: schema: $ref: '#/components/schemas/members' description: Delete an existing member of an organization summary: Remove a user from an organization tags: - members security: - bearer: [] /privacy-centers: get: parameters: - name: privacy_center_id in: query description: The ID of the privacy center required: false schema: type: string responses: '200': description: A list of PrivacyCenter objects content: application/json: schema: type: array items: $ref: '#/components/schemas/privacy-centers' description: Returns a list of all the privacy centers the user has access to summary: Retrieve a list of privacy centers tags: - privacy-centers security: - bearer: [] post: parameters: - name: privacycenter in: body description: The PrivacyCenter object to create required: true schema: $ref: '#/components/schemas/privacy-centers-input' responses: '200': description: The created PrivacyCenter object content: application/json: schema: $ref: '#/components/schemas/privacy-centers' description: Create a new privacy center summary: Create a privacy center tags: - privacy-centers security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/privacy-centers' /privacy-centers/{id}: get: parameters: - name: id in: path description: The ID of the privacy center to retrieve required: true schema: type: string responses: '200': description: A PrivacyCenter object content: application/json: schema: $ref: '#/components/schemas/privacy-centers' description: Returns a single privacy center with the given ID summary: Retrieve a privacy center tags: - privacy-centers security: - bearer: [] put: parameters: - name: id in: path description: The ID of the session to update required: true schema: type: string - name: privacycenter in: body description: The new data to update the privacy center with required: true schema: $ref: '#/components/schemas/privacy-centers-input' responses: '200': description: The updated PrivacyCenter object content: application/json: schema: $ref: '#/components/schemas/privacy-centers' description: Update an existing privacy center and replace all its properties summary: Update a privacy center tags: - privacy-centers security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/privacy-centers' patch: parameters: - name: id in: path description: The ID of the session to patch required: true schema: type: string - name: privacycenter in: body description: The properties to replace in the PrivacyCenter object required: true schema: $ref: '#/components/schemas/privacy-centers-input' responses: '200': description: The patched PrivacyCenter object content: application/json: schema: $ref: '#/components/schemas/privacy-centers' description: Partially update a privacy center summary: Patch a privacy center tags: - privacy-centers security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/privacy-centers' delete: parameters: - name: id in: path description: The ID of the privacy center to delete required: true schema: type: string responses: '200': description: The deleted PrivacyCenter object content: application/json: schema: $ref: '#/components/schemas/privacy-centers' description: Delete an existing privacy center summary: Delete a privacy center tags: - privacy-centers security: - bearer: [] /vendors: get: parameters: - name: property_id in: query description: The ID of the property required: false schema: type: string responses: '200': description: A list of Vendor objects content: application/json: schema: type: array items: $ref: '#/components/schemas/vendors' description: Returns a list of vendors used by a property summary: Retrieve a list of vendors tags: - vendors security: - bearer: [] post: parameters: - name: vendor in: body description: The Vendor object to create required: true schema: $ref: '#/components/schemas/vendors-input' responses: '200': description: The created Vendor object content: application/json: schema: $ref: '#/components/schemas/vendors' description: Create a new vendor for a property summary: Create a vendor tags: - vendors security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/vendors' /vendors/{id}: get: parameters: - name: id in: path description: The ID of the vendor to retrieve required: true schema: type: string responses: '200': description: A Vendor object content: application/json: schema: $ref: '#/components/schemas/vendors' description: Returns a single vendor used by a property summary: Retrieve a vendor tags: - vendors security: - bearer: [] put: parameters: - name: id in: path description: The ID of the vendor to update required: true schema: type: string - name: vendor in: body description: The new data to update the vendor with required: true schema: $ref: '#/components/schemas/vendors-input' responses: '200': description: The updated Vendor object content: application/json: schema: $ref: '#/components/schemas/vendors' description: Update an existing vendor used by a property and replace all its properties summary: Update a vendor tags: - vendors security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/vendors' patch: parameters: - name: id in: path description: The ID of the vendor to patch required: true schema: type: string - name: vendor in: body description: The properties to replace on the Vendor object required: true schema: $ref: '#/components/schemas/vendors-input' responses: '200': description: The patched Vendor object content: application/json: schema: $ref: '#/components/schemas/vendors' description: Partially update a vendor used by a property summary: Patch a vendor tags: - vendors security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/vendors' delete: parameters: - name: id in: path description: The ID of the vendor to delete required: true schema: type: string responses: '200': description: The deleted Vendor object content: application/json: schema: $ref: '#/components/schemas/vendors' description: Delete an existing vendor summary: Delete a vendor tags: - vendors security: - bearer: [] /premium-features: get: parameters: - description: Number of results to return in: query name: $limit schema: type: integer - description: Number of results to skip in: query name: $skip schema: type: integer - description: Property to sort results in: query name: $sort style: deepObject schema: type: object - description: Query parameters to filter in: query name: filter style: form explode: true schema: $ref: '#/components/schemas/premium-features' responses: '200': description: A list of PremiumFeature objects content: application/json: schema: type: array items: $ref: '#/components/schemas/premium-features' description: Returns a list of all premium features for the organizations the user belongs to summary: Retrieve a list of premium features tags: - premium-features security: - bearer: [] /premium-features/{id}: get: parameters: - name: id in: path description: The ID of the premium feature to retrieve required: true schema: type: string responses: '200': description: A PremiumFeature object content: application/json: schema: $ref: '#/components/schemas/premium-features' description: Returns a single premium feature with the given ID summary: Retrieve a premium-feature tags: - premium-features security: - bearer: [] put: parameters: - name: id in: path description: The ID of the premium feature to update required: true schema: type: string - name: premium-feature in: body description: The new data to update the premium feature with required: true schema: $ref: '#/components/schemas/premium-features-input' responses: '200': description: The updated PremiumFeature object content: application/json: schema: $ref: '#/components/schemas/premium-features' description: Update an existing premium feature summary: Update a premium feature tags: - premium-features security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/premium-features' patch: parameters: - name: id in: path description: The ID of the premium feature to patch required: true schema: type: string - name: premium-feature in: body description: The premium features to replace in the Premium Feature object required: true schema: $ref: '#/components/schemas/premium-features-input' responses: '200': description: The patched PremiumFeature object content: application/json: schema: $ref: '#/components/schemas/premium-features' description: Partially update a premium feature summary: Patch a premium feature tags: - premium-features security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/premium-features' /sso-connections: get: parameters: - name: organization_id in: query description: The ID of the organization that the user belongs to required: true schema: type: string responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/sso-connections' description: Returns a list of all SSO connections. summary: Retrieve a list of SSO connections tags: - sso-connections security: - bearer: [] post: parameters: - name: sso-connection in: body description: The SSO connection object to create. required: true schema: $ref: '#/components/schemas/sso-connection-input-create' responses: '201': content: application/json: schema: $ref: '#/components/schemas/sso-connections' description: Create a new SSO connection. summary: Create a SSO connection tags: - sso-connections security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/sso-connections' /sso-connections/{id}: patch: parameters: - name: sso-connection in: body description: The SSO connection object to patch. required: true schema: $ref: '#/components/schemas/sso-connection-input-patch' responses: '200': content: application/json: schema: $ref: '#/components/schemas/sso-connections' description: Patch an existing SSO connection. summary: Patch a SSO connection tags: - sso-connections security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/sso-connections' /organizations-source-systems: get: parameters: - description: Number of results to return in: query name: $limit schema: type: integer - description: Number of results to skip in: query name: $skip schema: type: integer - description: Property to sort results in: query name: $sort style: deepObject schema: type: object - description: Query parameters to filter in: query name: filter style: form explode: true schema: $ref: '#/components/schemas/organizations-source-systems' responses: '200': description: A list of OrganizationSourceSystem objects content: application/json: schema: $ref: '#/components/schemas/organizations-source-systems_list' '401': description: Unauthorized '500': description: Internal server error description: Returns a list of organization source system mappings summary: Retrieve a list of organization source systems tags: - organizations-source-systems security: - bearer: [] post: parameters: [] responses: '201': description: The created OrganizationSourceSystem object content: application/json: schema: $ref: '#/components/schemas/organizations-source-systems' '401': description: Unauthorized '500': description: Internal server error description: Create a new organization source system mapping summary: Create an organization source system mapping tags: - organizations-source-systems security: - bearer: [] requestBody: description: The OrganizationSourceSystem object to create required: true content: application/json: schema: $ref: '#/components/schemas/organizations-source-systems-input-create' /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: [] /metadata/partners/deprecate: post: parameters: [] responses: '201': description: created content: application/json: schema: $ref: '#/components/schemas/partners' '401': description: not authenticated '500': description: general error description: Creates a new resource with data. summary: '' tags: - metadata security: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/partners' /metadata/partners: get: parameters: - name: url in: query required: false schema: type: string description: An URL to match to a partner. This parameter can be repeated multiple times to identify multiple partners at once. responses: '200': description: A list of Partner objects content: application/json: schema: type: array items: $ref: '#/components/schemas/partners' description: Returns a list of partners summary: Retrieve a list of partners tags: - partners security: - bearer: [] post: parameters: - name: partner in: body description: The Partner object to create required: true schema: $ref: '#/components/schemas/partners-input' responses: '200': description: The created Partner object content: application/json: schema: $ref: '#/components/schemas/partners' description: Create a new partner summary: Create a partner tags: - partners security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/partners' /metadata/partners/{id}: get: parameters: - name: id in: path description: The ID of the partner to retrieve required: true schema: type: string responses: '200': description: A Partner object content: application/json: schema: $ref: '#/components/schemas/partners' description: Returns a single partner with the given ID summary: Retrieve a partner tags: - partners security: - bearer: [] put: parameters: - name: id in: path description: The ID of the partner to update required: true schema: type: string - name: partner in: body description: The new data to update the partner with required: true schema: $ref: '#/components/schemas/partners-input' responses: '200': description: The updated Partner object content: application/json: schema: $ref: '#/components/schemas/partners' description: Update an existing a partner summary: Update a partner tags: - partners security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/partners' patch: parameters: - name: id in: path description: The ID of the partner to patch required: true schema: type: string - name: partner in: body description: The data to replace in the Partner object required: true schema: $ref: '#/components/schemas/partners-input' responses: '200': description: The patched Partner object content: application/json: schema: $ref: '#/components/schemas/partners' description: Partially update the partner summary: Patch a partner tags: - partners security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/partners' delete: parameters: - name: id in: path description: The ID of the partner to delete required: true schema: type: string responses: '200': description: The deleted Partner object content: application/json: schema: $ref: '#/components/schemas/partners' description: Delete the partner summary: Delete a partner tags: - partners security: - bearer: [] /metadata/purposes/restrictions: get: parameters: - name: organization_id in: query description: The ID of the organization that the user belongs to required: true schema: type: string responses: '200': description: A list of Purpose objects content: application/json: schema: type: object description: A paginated list of Purpose objects properties: total: type: number description: The total amount of purposes limit: type: number description: The limit of purposes on this query skip: type: number description: Number of purposes skipped data: type: array items: $ref: '#/components/schemas/purposes' description: Returns a list of all purposes summary: Retrieve a list of available purposes for restrictions. For publisher restriction list. tags: - purposes security: - bearer: [] /metadata/purposes: get: parameters: - name: $translations required: false in: query description: If true, will return translatable fields as objects with translations schema: type: boolean - name: organization_id in: query description: The ID of the organization that the user belongs to required: true schema: type: string - name: $limit required: false in: query description: Number of max results to return schema: type: number - name: $skip required: false in: query description: Number of results to skip schema: type: number - name: $sort required: false in: query description: Object representing sorting options. Accepts properties to sort as keys and -1 or 1 for sort direction example: updated_at: 1 created_at: 1 schema: type: object properties: updated_at: type: number created_at: type: number responses: '200': description: A list of Purpose objects content: application/json: schema: type: object description: A paginated list of Purpose objects properties: total: type: number description: The total amount of purposes limit: type: number description: The limit of purposes on this query skip: type: number description: Number of purposes skipped data: type: array items: $ref: '#/components/schemas/purposes' description: Returns a list of all purposes summary: Retrieve a list of purposes tags: - purposes security: - bearer: [] post: parameters: [] responses: '200': description: The created Purpose object content: application/json: schema: $ref: '#/components/schemas/purposes' description: Create a new purpose summary: Create a purpose tags: - purposes security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/purposes-input' /metadata/purposes/{id}: get: parameters: - name: id in: path description: The ID of the purpose to retrieve required: true schema: type: string responses: '200': description: A Purpose object content: application/json: schema: $ref: '#/components/schemas/purposes' description: Returns a single purpose with the given ID summary: Retrieve a purpose tags: - purposes security: - bearer: [] put: parameters: - name: id in: path description: The ID of the purpose to update required: true schema: type: string responses: '200': description: The updated Purpose object content: application/json: schema: $ref: '#/components/schemas/purposes' description: Update an existing purpose and replace all its properties summary: Update a purpose tags: - purposes security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/purposes-patch-input' patch: parameters: - name: id in: path description: The ID of the purpose to patch required: true schema: type: string responses: '200': description: The patched Purpose object content: application/json: schema: $ref: '#/components/schemas/purposes' description: Partially update a purpose summary: Patch a purpose tags: - purposes security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/purposes-patch-input' delete: parameters: - name: id in: path description: The ID of the purpose to delete required: true schema: type: string responses: '200': description: The deleted Purpose object content: application/json: schema: $ref: '#/components/schemas/purposes' description: Delete an existing purpose summary: Delete a purpose tags: - purposes 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: [] /taxonomies/vendors: get: parameters: [] responses: '200': description: A list of TaxonomyVendor objects content: application/json: schema: type: array items: $ref: '#/components/schemas/taxonomies-vendors' description: Returns a list of taxonomy items for vendors summary: Retrieve a list of taxonomy items for vendors tags: - taxonomies security: - bearer: [] post: parameters: - name: item in: body description: The TaxonomyVendor object to create required: true schema: $ref: '#/components/schemas/taxonomies-vendors-input' responses: '200': description: The created TaxonomyVendor object content: application/json: schema: $ref: '#/components/schemas/taxonomies-vendors' description: Create a new taxonomy item summary: Create a taxonomy item for vendors tags: - taxonomies security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/vendors' /taxonomies/vendors/{id}: get: parameters: - name: id in: path description: The ID of the item to retrieve required: true schema: type: string responses: '200': description: A TaxonomyVendor object content: application/json: schema: $ref: '#/components/schemas/taxonomies-vendors' description: Returns a single taxonomy item summary: Retrieve a taxonomy item for vendors tags: - taxonomies security: - bearer: [] put: parameters: - name: id in: path description: The ID of the item to update required: true schema: type: string - name: item in: body description: The new data to update the item with required: true schema: $ref: '#/components/schemas/taxonomies-vendors-input' responses: '200': description: The updated TaxonomyVendor object content: application/json: schema: $ref: '#/components/schemas/taxonomies-vendors' description: Update an existing taxonomy item summary: Update a taxonomy item for vendors tags: - taxonomies security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/vendors' patch: parameters: - name: id in: path description: The ID of the item to patch required: true schema: type: string - name: item in: body description: The properties to replace on the item required: true schema: $ref: '#/components/schemas/taxonomies-vendors-input' responses: '200': description: The patched TaxonomyVendor object content: application/json: schema: $ref: '#/components/schemas/taxonomies-vendors' description: Partially update a taxonomy item summary: Patch a taxonomy item for vendors tags: - taxonomies security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/vendors' delete: parameters: - name: id in: path description: The ID of the item to delete required: true schema: type: string responses: '200': description: The deleted TaxonomyVendor object content: application/json: schema: $ref: '#/components/schemas/taxonomies-vendors' description: Delete an item summary: Delete a taxonomy item for vendors tags: - taxonomies security: - bearer: [] /metadata/vendors: get: parameters: - name: url in: query required: false schema: type: string description: An URL to match to a vendor. This parameter can be repeated multiple times to identify multiple vendors at once. responses: '200': description: A list of Vendor objects content: application/json: schema: type: array items: $ref: '#/components/schemas/metadata-vendors' description: Returns a list of vendors summary: Retrieve a list of vendors tags: - metadata security: - bearer: [] post: parameters: - name: vendor in: body description: The Vendor object to create required: true schema: $ref: '#/components/schemas/metadata-vendors-input' responses: '200': description: The created Vendor object content: application/json: schema: $ref: '#/components/schemas/metadata-vendors' description: Create a new vendor summary: Create a vendor tags: - metadata security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/vendors' /metadata/vendors/{id}: get: parameters: - name: id in: path description: The ID of the vendor to retrieve required: true schema: type: string responses: '200': description: A Vendor object content: application/json: schema: $ref: '#/components/schemas/metadata-vendors' description: Returns a single vendor with the given ID summary: Retrieve a vendor tags: - metadata security: - bearer: [] put: parameters: - name: id in: path description: The ID of the vendor to update required: true schema: type: string - name: vendor in: body description: The new data to update the vendor with required: true schema: $ref: '#/components/schemas/metadata-vendors-input' responses: '200': description: The updated Vendor object content: application/json: schema: $ref: '#/components/schemas/metadata-vendors' description: Update an existing vendor summary: Update a vendor tags: - metadata security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/vendors' patch: parameters: - name: id in: path description: The ID of the vendor to patch required: true schema: type: string - name: vendor in: body description: The data to replace in the Vendor object required: true schema: $ref: '#/components/schemas/metadata-vendors-input' responses: '200': description: The patched Vendor object content: application/json: schema: $ref: '#/components/schemas/metadata-vendors' description: Partially update a vendor summary: Patch a vendor tags: - metadata security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/vendors' delete: parameters: - name: id in: path description: The ID of the vendor to delete required: true schema: type: string responses: '200': description: The deleted Vendor object content: application/json: schema: $ref: '#/components/schemas/vendors' description: Delete the vendor summary: Delete a vendor tags: - metadata security: - bearer: [] /metadata/purposes-groups: get: parameters: - description: Number of results to return in: query name: $limit schema: type: integer - description: Number of results to skip in: query name: $skip schema: type: integer - description: Property to sort results in: query name: $sort style: deepObject schema: type: object - description: Query parameters to filter in: query name: filter style: form explode: true schema: $ref: '#/components/schemas/purposes-groups' responses: '200': description: A list of PurposesGroup objects content: application/json: schema: type: array items: $ref: '#/components/schemas/purposes-groups' description: Returns a list of all purposes groups summary: Retrieve a list of purposes groups tags: - purposes-groups security: - bearer: [] post: parameters: - name: group in: body description: The PurposesGroup object to create required: true schema: $ref: '#/components/schemas/purposes-group-input' responses: '200': description: The created PurposesGroup object content: application/json: schema: $ref: '#/components/schemas/purposes-groups' description: Create a new group of purposes summary: Create a group of purposes tags: - purposes-groups security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/purposes-groups' /metadata/purposes-groups/{id}: get: parameters: - name: id in: path description: The ID of the group to retrieve required: true schema: type: string responses: '200': description: A PurposesGroup object content: application/json: schema: $ref: '#/components/schemas/purposes-groups' description: Returns a single group with the given ID summary: Retrieve a group of purposes tags: - purposes-groups security: - bearer: [] put: parameters: - name: id in: path description: The ID of the group to update required: true schema: type: string - name: purposes-group in: body description: The new data to update the group with required: true schema: $ref: '#/components/schemas/purposes-group-input' responses: '200': description: The updated PurposesGroup object content: application/json: schema: $ref: '#/components/schemas/purposes-groups' description: Update an existing group of purposes and replace all its properties summary: Update a group of purposes tags: - purposes-groups security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/purposes-groups' patch: parameters: - name: id in: path description: The ID of the group of purposes to patch required: true schema: type: string - name: purposes-group in: body description: The properties to replace in the group of purposes required: true schema: $ref: '#/components/schemas/purposes-group-input' responses: '200': description: The patched PurposesGroup object content: application/json: schema: $ref: '#/components/schemas/purposes-groups' description: Partially update a group of purposes summary: Patch a group of purposes tags: - purposes-groups security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/purposes-groups' delete: parameters: - name: id in: path description: The ID of the group to delete required: true schema: type: string responses: '200': description: The deleted PurposesGroup object content: application/json: schema: $ref: '#/components/schemas/purposes-groups' description: Delete an existing group of purposes summary: Delete a group of purposes tags: - purposes-groups security: - bearer: [] /metadata/purposes-regulations-overrides: get: parameters: - name: organization_id in: query description: The ID of the organization for which to filter overrides required: false schema: type: string - name: $limit required: false in: query description: Number of max results to return schema: type: number - name: $skip required: false in: query description: Number of results to skip schema: type: number - name: $sort required: false in: query description: Object representing sorting options. Accepts properties to sort as keys and -1 or 1 for sort direction responses: '200': description: A list of MetadataPurposeRegulationOverride objects content: application/json: schema: type: object description: A paginated list of MetadataPurposeRegulationOverride objects properties: total: type: number description: The total amount of MetadataPurposeRegulationOverrides limit: type: number description: The limit of MetadataPurposeRegulationOverrides on this query skip: type: number description: Number of MetadataPurposeRegulationOverrides skipped data: type: array items: $ref: '#/components/schemas/MetadataPurposeRegulationOverride' description: Returns a list of all MetadataPurposeRegulationOverrides. A null value of `regulations_id` means all regulations are supported, and an empty array means no regulations are supported. summary: Retrieve a list of MetadataPurposeRegulationOverrides. tags: - metadata-purpose-regulation-override security: - bearer: [] post: parameters: [] responses: '200': description: The created MetadataPurposeRegulationOverride object content: application/json: schema: $ref: '#/components/schemas/MetadataPurposeRegulationOverride' description: Create a new MetadataPurposeRegulationOverride summary: Create a MetadataPurposeRegulationOverride tags: - metadata-purpose-regulation-override security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/MetadataPurposeRegulationOverrideInput' /metadata/purposes-regulations-overrides/{id}: get: parameters: - name: id in: path description: The ID of the MetadataPurposeRegulationOverride to retrieve required: true schema: type: string responses: '200': description: A MetadataPurposeRegulationOverride content: application/json: schema: $ref: '#/components/schemas/MetadataPurposeRegulationOverride' description: Returns a single MetadataPurposeRegulationOverride with the given ID summary: Retrieve a MetadataPurposeRegulationOverride tags: - metadata-purpose-regulation-override security: - bearer: [] put: parameters: - name: id in: path description: The ID of the MetadataPurposeRegulationOverride to update required: true schema: type: string responses: '200': description: The updated MetadataPurposeRegulationOverride object content: application/json: schema: $ref: '#/components/schemas/MetadataPurposeRegulationOverride' description: Update an existing MetadataPurposeRegulationOverride and replace all its properties summary: Update a MetadataPurposeRegulationOverride tags: - metadata-purpose-regulation-override security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/MetadataPurposeRegulationOverridePatchInput' patch: parameters: - name: id in: path description: The ID of the MetadataPurposeRegulationOverride to patch required: true schema: type: string responses: '200': description: The patched MetadataPurposeRegulationOverride object content: application/json: schema: $ref: '#/components/schemas/MetadataPurposeRegulationOverride' description: Partially update a MetadataPurposeRegulationOverride summary: Patch a MetadataPurposeRegulationOverride tags: - metadata-purpose-regulation-override security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/MetadataPurposeRegulationOverridePatchInput' delete: parameters: - name: id in: path description: The ID of the MetadataPurposeRegulationOverride to delete required: true schema: type: string responses: '200': description: The deleted MetadataPurposeRegulationOverride object content: application/json: schema: $ref: '#/components/schemas/MetadataPurposeRegulationOverride' description: Delete an existing MetadataPurposeRegulationOverride summary: Delete a MetadataPurposeRegulationOverride tags: - metadata-purpose-regulation-override security: - bearer: [] /metadata/partners-categories: get: parameters: - description: Number of results to return in: query name: $limit schema: type: integer - description: Number of results to skip in: query name: $skip schema: type: integer - description: Property to sort results in: query name: $sort style: deepObject schema: type: object - description: Query parameters to filter in: query name: filter style: form explode: true schema: $ref: '#/components/schemas/partners-categories' responses: '200': description: A list of PartnersCategory objects content: application/json: schema: type: array items: $ref: '#/components/schemas/partners-categories' description: Returns a list of all partners categories summary: Retrieve a list of partners categories tags: - metadata security: - bearer: [] post: parameters: - name: partners category in: body description: The Partners category object to create required: true schema: $ref: '#/components/schemas/partners-categories-input' responses: '200': description: The created PartnersCategory object content: application/json: schema: $ref: '#/components/schemas/partners-categories' description: Create a new partners category summary: Create a partners category tags: - metadata security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/partners-categories' /metadata/partners-categories/{id}: get: parameters: - name: id in: path description: The ID of the partners category to retrieve required: true schema: type: string responses: '200': description: A PartnersCategory object content: application/json: schema: $ref: '#/components/schemas/partners-categories' description: Returns a single partners category with the given ID summary: Retrieve a partners category tags: - metadata security: - bearer: [] put: parameters: - name: id in: path description: The ID of the partners category to update required: true schema: type: string - name: partners category in: body description: The new data to update the partners category with required: true schema: $ref: '#/components/schemas/partners-categories-input' responses: '200': description: The updated PartnersCategory object content: application/json: schema: $ref: '#/components/schemas/partners-categories' description: Update an existing partners category and replace all its properties summary: Update a partners category tags: - metadata security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/partners-categories' patch: parameters: - name: id in: path description: The ID of the partners category to patch required: true schema: type: string - name: partners category in: body description: The properties to replace in the Partners category object required: true schema: $ref: '#/components/schemas/partners-categories-input' responses: '200': description: The patched PartnersCategory object content: application/json: schema: $ref: '#/components/schemas/partners-categories' description: Partially update a partners category summary: Patch a partners category tags: - metadata security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/partners-categories' delete: parameters: - name: id in: path description: The ID of the partners category to delete required: true schema: type: string responses: '200': description: The deleted PartnersCategory object content: application/json: schema: $ref: '#/components/schemas/partners-categories' description: Delete an existing partners category summary: Delete a partners category tags: - metadata security: - bearer: [] /metadata/partners-purposes: get: parameters: - description: Number of results to return in: query name: $limit schema: type: integer - description: Number of results to skip in: query name: $skip schema: type: integer - description: Property to sort results in: query name: $sort style: deepObject schema: type: object - description: Query parameters to filter in: query name: filter style: form explode: true schema: $ref: '#/components/schemas/partners-purposes' responses: '200': content: application/json: schema: type: object properties: total: type: integer description: Total number of records limit: type: integer description: Number of records per page skip: type: integer description: Number of records to skip data: type: array items: $ref: '#/components/schemas/partners-purposes' description: Returns a paginated list of partner-purpose associations the user has access to summary: List partner-purpose associations tags: - metadata security: - bearer: [] post: parameters: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/partners-purposes' description: Creates a new association between a partner and purpose, optionally scoped to an organization summary: Create a partner-purpose association tags: - metadata security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/partners-purposes-input' /metadata/partners-purposes/{id}: get: parameters: - name: id in: path required: true schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/partners-purposes' description: Retrieves a single partner-purpose association by ID summary: Get a partner-purpose association tags: - metadata security: - bearer: [] put: parameters: - in: path name: id description: ID of partners-purposes to update schema: type: integer required: true responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/partners-purposes' '401': description: not authenticated '404': description: not found '500': description: general error description: Updates the resource identified by id using data. summary: '' tags: - metadata security: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/partners-purposes' patch: parameters: - name: id in: path required: true schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/partners-purposes' description: Updates only the processing rules for an existing partner-purpose association summary: Update processing rules tags: - metadata security: - bearer: [] requestBody: required: true content: application/json: schema: type: object properties: processing_rules: type: array items: type: string enum: - opt-in - opt-out minItems: 1 required: - processing_rules delete: parameters: - name: id in: path required: true schema: type: string responses: '200': description: Association successfully deleted content: application/json: schema: type: object properties: id: type: string description: ID of the deleted association description: Permanently removes a partner-purpose association summary: Delete a partner-purpose association tags: - metadata security: - bearer: [] /metadata/partners-default-purposes: get: parameters: - description: Number of results to return in: query name: $limit schema: type: integer - description: Number of results to skip in: query name: $skip schema: type: integer - description: Property to sort results in: query name: $sort style: deepObject schema: type: object - description: Query parameters to filter in: query name: filter style: form explode: true schema: $ref: '#/components/schemas/partners-default-purposes' responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/partners-default-purposes' description: Returns a list of all partners-default-purposes objects summary: Retrieve a list of partners-default-purposes objects tags: - partners-default-purposes security: - bearer: [] post: parameters: - name: partners-default-purposes in: body description: The partners-default-purposes object to create required: true schema: type: array items: $ref: '#/components/schemas/partners-default-purposes-input' responses: '201': content: application/json: schema: type: array items: $ref: '#/components/schemas/partners-default-purposes' description: Create a new partner purpose association summary: Create a new association between a partner and purpose tags: - partners-default-purposes security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/partners-default-purposes' /metadata/partners-legitimate-interest-purposes: get: parameters: - description: Number of results to return in: query name: $limit schema: type: integer - description: Number of results to skip in: query name: $skip schema: type: integer - description: Property to sort results in: query name: $sort style: deepObject schema: type: object - description: Query parameters to filter in: query name: filter style: form explode: true schema: $ref: '#/components/schemas/partners-legitimate-interest-purposes' responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/partners-legitimate-interest-purposes' description: Returns a list of all partners-legitimate-interest-purposes objects summary: Retrieve a list of partners-legitimate-interest-purposes objects tags: - partners-legitimate-interest-purposes security: - bearer: [] post: parameters: - name: partners-legitimate-interest-purposes in: body description: The partners-legitimate-interest-purposes object to create required: true schema: type: array items: $ref: '#/components/schemas/partners-legitimate-interest-purposes-input' responses: '201': content: application/json: schema: type: array items: $ref: '#/components/schemas/partners-legitimate-interest-purposes' description: Create a new partner purpose association summary: Create a new association between a partner and purpose tags: - partners-legitimate-interest-purposes security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/partners-legitimate-interest-purposes' /metadata/partners-spi-purposes: get: parameters: - description: Number of results to return in: query name: $limit schema: type: integer - description: Number of results to skip in: query name: $skip schema: type: integer - description: Property to sort results in: query name: $sort style: deepObject schema: type: object - description: Query parameters to filter in: query name: filter style: form explode: true schema: $ref: '#/components/schemas/partners-spi-purposes' responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/partners-spi-purposes' description: Returns a list of all partners-spi-purposes objects summary: Retrieve a list of partners-spi-purposes objects tags: - partners-spi-purposes security: - bearer: [] post: parameters: - name: partners-spi-purposes in: body description: The partners-spi-purposes object to create required: true schema: type: array items: $ref: '#/components/schemas/partners-spi-purposes-input' responses: '201': content: application/json: schema: type: array items: $ref: '#/components/schemas/partners-spi-purposes' description: Create a new partner purpose association summary: Create a new association between a partner and purpose tags: - partners-spi-purposes security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/partners-spi-purposes' /metadata/partners-storages: get: parameters: - description: Number of results to return in: query name: $limit schema: type: integer - description: Number of results to skip in: query name: $skip schema: type: integer - description: Property to sort results in: query name: $sort style: deepObject schema: type: object - description: Query parameters to filter in: query name: filter style: form explode: true schema: $ref: '#/components/schemas/partners-storages' responses: '200': description: A list of Storage objects content: application/json: schema: type: array items: $ref: '#/components/schemas/partners-storages' description: Returns a list of all storages summary: Retrieve a list of storages tags: - partners-storages security: - bearer: [] post: parameters: - name: storage in: body description: The Storage object to create required: true schema: $ref: '#/components/schemas/partners-storages-input' responses: '200': description: The created Storage object content: application/json: schema: $ref: '#/components/schemas/partners-storages' description: Create a new storage summary: Create a storage tags: - partners-storages security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/partners-storages' /metadata/partners-storages/{id}: get: parameters: - name: id in: path description: The ID of the storage to retrieve required: true schema: type: string responses: '200': description: A Storage object content: application/json: schema: $ref: '#/components/schemas/partners-storages' description: Returns a single storage with the given ID summary: Retrieve a storage tags: - partners-storages security: - bearer: [] put: parameters: - name: id in: path description: The ID of the storage to update required: true schema: type: string - name: storage in: body description: The new data to update the storage with required: true schema: $ref: '#/components/schemas/partners-storages-input' responses: '200': description: The updated Storage object content: application/json: schema: $ref: '#/components/schemas/partners-storages' description: Update an existing storage and replace all its properties summary: Update a storage tags: - partners-storages security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/partners-storages' patch: parameters: - name: id in: path description: The ID of the storage to patch required: true schema: type: string - name: storage in: body description: The properties to replace in the Storage object required: true schema: $ref: '#/components/schemas/partners-storages-input' responses: '200': description: The patched Storage object content: application/json: schema: $ref: '#/components/schemas/partners-storages' description: Partially update a storage summary: Patch a storage tags: - partners-storages security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/partners-storages' delete: parameters: - name: id in: path description: The ID of the storage to delete required: true schema: type: string responses: '200': description: The deleted Storage object content: application/json: schema: $ref: '#/components/schemas/partners-storages' description: Delete an existing storage summary: Delete a storage tags: - partners-storages security: - bearer: [] /metadata/partners-purposes-templates-overrides: get: parameters: - description: Number of results to return in: query name: $limit schema: type: integer - description: Number of results to skip in: query name: $skip schema: type: integer - description: Property to sort results in: query name: $sort style: deepObject schema: type: object - description: Query parameters to filter in: query name: filter style: form explode: true schema: $ref: '#/components/schemas/partners-purposes-templates-overrides' responses: '200': content: application/json: schema: type: object properties: total: type: integer description: Total number of records limit: type: integer description: Number of records per page skip: type: integer description: Number of records to skip data: type: array items: $ref: '#/components/schemas/partners-purposes-templates-overrides' description: Returns a paginated list of template overrides summary: List template overrides tags: - metadata security: - bearer: [] post: parameters: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/partners-purposes-templates-overrides' description: Creates a new template override for a partner-purpose association summary: Create a template override tags: - metadata security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/partners-purposes-templates-overrides-input' /metadata/partners-purposes-templates-overrides/{id}: get: parameters: - name: id in: path required: true schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/partners-purposes-templates-overrides' description: Retrieves a single template override by ID summary: Get a template override tags: - metadata security: - bearer: [] put: parameters: - in: path name: id description: ID of partners-purposes-templates-overrides to update schema: type: integer required: true responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/partners-purposes-templates-overrides' '401': description: not authenticated '404': description: not found '500': description: general error description: Updates the resource identified by id using data. summary: '' tags: - metadata security: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/partners-purposes-templates-overrides' patch: parameters: - name: id in: path required: true schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/partners-purposes-templates-overrides' description: Updates the processing rule for an existing template override summary: Update a template override tags: - metadata security: - bearer: [] requestBody: required: true content: application/json: schema: type: object properties: processing_rule: type: string enum: - opt-in - opt-out required: - processing_rule delete: parameters: - name: id in: path required: true schema: type: string responses: '200': description: Template override successfully deleted content: application/json: schema: type: object properties: id: type: string description: ID of the deleted template override description: Permanently removes a template override summary: Delete a template override tags: - metadata security: - bearer: [] /metadata/partners-purposes-notices-regulations-overrides: get: parameters: - description: Number of results to return in: query name: $limit schema: type: integer - description: Number of results to skip in: query name: $skip schema: type: integer - description: Property to sort results in: query name: $sort style: deepObject schema: type: object - description: Query parameters to filter in: query name: filter style: form explode: true schema: $ref: '#/components/schemas/partners-purposes-notices-regulations-overrides' responses: '200': content: application/json: schema: type: object properties: total: type: integer description: Total number of records limit: type: integer description: Number of records per page skip: type: integer description: Number of records to skip data: type: array items: $ref: '#/components/schemas/partners-purposes-notices-regulations-overrides' description: Returns a paginated list of notice-regulation overrides summary: List notice-regulation overrides tags: - metadata security: - bearer: [] post: parameters: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/partners-purposes-notices-regulations-overrides' description: Creates a new notice-regulation override for a partner-purpose association summary: Create a notice-regulation override tags: - metadata security: - bearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/partners-purposes-notices-regulations-overrides-input' /metadata/partners-purposes-notices-regulations-overrides/{id}: get: parameters: - name: id in: path required: true schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/partners-purposes-notices-regulations-overrides' description: Retrieves a single notice-regulation override by ID summary: Get a notice-regulation override tags: - metadata security: - bearer: [] put: parameters: - in: path name: id description: ID of partners-purposes-notices-regulations-overrides to update schema: type: integer required: true responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/partners-purposes-notices-regulations-overrides' '401': description: not authenticated '404': description: not found '500': description: general error description: Updates the resource identified by id using data. summary: '' tags: - metadata security: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/partners-purposes-notices-regulations-overrides' patch: parameters: - name: id in: path required: true schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/partners-purposes-notices-regulations-overrides' description: Updates the processing rule for an existing notice-regulation override summary: Update a notice-regulation override tags: - metadata security: - bearer: [] requestBody: required: true content: application/json: schema: type: object properties: processing_rule: type: string enum: - opt-in - opt-out required: - processing_rule delete: parameters: - name: id in: path required: true schema: type: string responses: '200': description: Notice-regulation override successfully deleted content: application/json: schema: type: object properties: id: type: string description: ID of the deleted notice-regulation override description: Permanently removes a notice-regulation override summary: Delete a notice-regulation override tags: - metadata security: - bearer: [] tags: - name: consents/events - name: consents/proofs - name: consents/tokens - name: consents/users - name: widgets/notices/remote-configs - name: partner-portal - name: sessions description: Manage sessions - name: keys description: Manage API keys - name: quotas description: Manage quotas - name: domains description: Provisioned domains for consent notices and privacy centers - name: secrets description: Manage secrets - name: cookies description: Manage cookies set by a property - name: languages description: List of available languages for the SDKs - name: organizations description: Manage organizations - name: members description: Manage members of an organization - name: privacy-centers description: Manage privacy centers - name: vendors description: Manage vendors used by a property - name: premium-features description: Manage premium features - name: sso-connections description: Manage SSO connections - name: organizations-source-systems description: Manage organization source systems - name: widgets description: A widgets service - name: metadata description: A metadata service - name: taxonomies description: Manage the taxonomy for vendors openapi: 3.0.2 servers: - url: https://api.didomi.io/v1 description: Didomi Platform API