Didomi - Developers documentation
  • Introduction
  • SDKs
    • Introduction
    • Web SDK
      • Getting started
      • Tags and vendors management
        • Tags management
          • Events & Variables
            • Deprecated
            • Custom events
          • Tag managers
            • Adobe Launch/DTM
            • Eulerian
            • Google Tag Manager
              • Configure the Didomi / GTM integration
              • Didomi's GTM template
            • Tealium
            • Other tag managers
        • Custom Didomi <script> tags
        • Third-party integrations
          • Google Ad Manager / AdSense
            • GDPR via Non-Personalized Ads
              • Share consent and load/refresh ads
              • Share consent without loading or refreshing ads
            • US states laws
          • Google Consent Mode V2
          • Kameleoon
          • Piano Analytics (AT Internet)
          • Prebid
            • GDPR via IAB TCF
            • US states laws
          • Salesforce DMP (Krux)
        • IAB frameworks
        • Programmatic API
      • Configuration
        • Bots (SEO & Performance tools)
        • Configuration by URL
        • Cookies and storage
        • Custom domains for events
        • Notice
          • Behavior
          • Interactions
          • Look and feel
        • Preferences
        • Theme
      • AB tests
      • Custom domain
        • Domain delegation
        • Reverse proxy
      • Share consents between domains
      • Share consents across devices
      • Pass user choices in query string
      • Serve Didomi assets from your domain
      • Reference
        • API
          • Deprecated
        • Events
      • Performance
      • Versions
    • Mobile and TV SDKs
      • Android and Android TV
        • Setup
        • Logging
        • Reference
          • API
            • Deprecated
          • Events
        • Versions
      • iOS and tvOS
        • Setup
        • Logging
        • App Tracking Transparency (iOS 14.5+)
        • Reference
          • API
            • Deprecated
          • Events
        • Versions
      • Unity
        • Setup
        • Reference
        • Versions
        • Troubleshooting
      • React Native
        • Setup
        • Reference
          • Deprecated
        • Versions
      • Flutter
        • Setup
        • Reference
        • Versions
      • Consent notice
        • Getting started
        • Customize the notice
        • Customize the preferences popup
        • Customize the theme & UI
        • Load notice by ID
      • Third-party SDKs
      • Share consents across devices
      • Share consent with WebViews
      • Google Consent Mode v2
      • FAQ
    • AMP SDK
      • Blocking Behaviors
        • Load immediately on page load
        • Load only after consent (positive or negative)
        • Load only after positive consent
      • Consent status for vendors
    • Help & Support
  • API
    • Introduction
      • Authentication
      • Errors
      • Pagination
      • Filters
      • Caching
      • Rate limiting
      • Quotas
      • Translations
    • Data Manager
      • Regulations
      • Configuration Tree
      • Purposes
        • Purposes & Vendors Numerical IDs
      • Preferences Library
      • User Rights
    • Widgets
      • Consent notices
        • Notices
        • Configurations
        • Multi-Regulation Configurations
          • Migration of Existing Notices and API Updates
        • Deployments
        • Tutorials
          • Create and publish a consent notice
          • Create and publish a multi-regulation consent notice
      • Privacy widgets
        • Create a widget
        • Retrieve widgets
        • Edit a widget
          • Content & Design
            • Themes & Shapes
            • Components
              • auth
              • dsar_form
              • footer
              • header
              • preference
              • preference_value
              • save
              • section
              • sections
            • Options
          • Purposes & preferences
          • Settings
        • Deploy a Widget
          • Use your own subdomain
          • Use your own domain
          • Implement an embeddable widget on your website
        • Authentication
          • Manage authentication providers
          • Authenticate your end-user
        • Archive a widget
        • Headless widgets
          • Public Methods
          • Custom elements
          • Custom events
          • Event listeners
        • Tutorial
          • Launch a Preference Center from a mobile app
    • Compliance Reports
      • Properties
      • Reports
      • CSV format reference
      • Websites
    • Consents and Preferences
      • Events
        • Generate IAB TCF consent string
      • Links
      • Proofs
      • Tokens
      • Secrets
      • Users
      • Tutorial
        • Collect and operate data
    • Privacy Requests
      • Requests
      • Notes
      • Links
      • Emails
  • Integrations
    • Introduction
      • Quotas
    • Generic integrations
      • Batch export
        • Destinations
          • AWS S3 Bucket (owned by Didomi)
          • GCP Storage Bucket
        • Exported data
          • Notices consents
        • Logs
      • Webhooks
      • Batch import
      • Analytics export
        • Destinations
          • AWS S3 Bucket (owned by Didomi)
          • GCP Storage Bucket
    • Third-party apps
      • CMP integrations
        • Didomi-mParticle integration for your CMP
        • Deploy Didomi’s SDK for your Adobe Commerce website
      • Preference Management Platform integrations
        • Actito
        • Adobe Campaign Classic
        • Adobe Experience Cloud
        • Adobe Marketo Engage
        • Adobe Source Connector
        • Braze
        • Dotdigital
        • Hubspot
        • Mailchimp
        • Microsoft Dynamics 365
        • Salesforce Marketing Cloud
        • Salesforce Sales & Service Cloud
        • Selligent
        • Brevo (ex Sendinblue)
    • Tutorials
      • Configure a HTTP webhook
      • Configure a batch export
      • Configure an analytics export
    • Emailing
      • Configurations
        • Actito Email
        • Actito SMS
        • Adobe Campaign Classic
        • Adobe Campaign Standard
      • Emails
        • Templates
        • Manage your templates
Powered by GitBook
On this page
  • Create a purpose
  • Create a purpose with translations
  • Fetch purposes
  • Fetch all purposes
  • Fetch a purpose
  • Update a purpose
  • Delete a purpose
  1. API
  2. Data Manager

Purposes

PreviousConfiguration TreeNextPurposes & Vendors Numerical IDs

Last updated 11 months ago

A Purpose is WHY a company/organization processes a personal data.

Personal data a company/organization may process depends on the legal reason for processing a personal data and the intended use.

When a company obtains its clients’ personal data, it should explain in clear and plain language

  • why it needs the data,

  • how it will be using it,

  • and how long it intends to keep it.

The processing should be tailored in a way that respects the key data protection principles.

Create a purpose

To create a new purpose, send a POST request on /metadata/purposes endpoint. You need to specify at least the purpose name (description) and a description (details).

POST https://api.didomi.io/metadata/purposes?organization_id=YOUR_ORG_ID

{
  "description": "String",
  "details": "String",
  "reference": "String",
  "organization_id": "string",
  "namespaces": {
    "iab": "string",
    "iab2": "string",
    "didomi": "string",
    "custom": "string"
  },
  "metadata": {},
}

Create a purpose with translations

POST https://api.didomi.io/metadata/purposes
  ?$translations=true
  &organization_id=YOUR_ORG_ID

{
  "description": {
    "en": "",
    "fr": "",
    "it": ""
  },
  "details": {
    "en": "",
    "fr": "",
    "it": ""  
  }
}

Fetch purposes

Fetch all purposes

To retrieve all purposes from your Data Manager, you can send a GET request on /metadata/purposes endpoint.

GET https://api.didomi.io/metadata/purposes?organization_id=YOUR_ORG_ID

{
  "total": 0,
  "limit": 0,
  "skip": 0,
  "data": [
    {
      "id": "string",
      "description": "String",
      "details": "String",
      "reference": "String",
      "organization_id": "string",
      "created_at": "2019-08-24T14:15:22Z",
      "updated_at": "2019-08-24T14:15:22Z",
      "metadata": {},
      "namespaces": {
        "iab": "string",
        "iab2": "string",
        "didomi": "string",
        "custom": "string"
      }
    }
  ]
}

Fetch a purpose

To retrieve one purpose from your Data Manager, you can send a GET request on /metadata/purposes/id endpoint.

GET https://api.didomi.io/metadata/purposes/{purposeId}?organization_id=YOUR_ORG_ID

{
  "id": "string",
  "description": "String",
  "details": "String",
  "reference": "String",
  "organization_id": "string",
  "created_at": "2019-08-24T14:15:22Z",
  "updated_at": "2019-08-24T14:15:22Z",
  "metadata": {},  
  "namespaces": {
    "iab": "string",
    "iab2": "string",
    "didomi": "string",
    "custom": "string"
  }
}

Update a purpose

To update a purpose, you need to send a PATCH request on /metadata/purpose/id endpoint.

PATCH https://api.didomi.io/metadata/purposes/{purposeId}?organization_id=YOUR_ORG_ID

{
  "description": "String",
  "details": "String",
  "reference": "String",
  "organization_id": "string",
  "metadata": {},  
  "namespaces": {
    "iab": "string",
    "iab2": "string",
    "didomi": "string",
    "custom": "string"
  }
}

Delete a purpose

To delete a purpose, you need to send a DELETE request on /metadata/purpose/id endpoint.

DELETE https://api.didomi.io/metadata/purposes/{purposeId}?organization_id=YOUR_ORG_ID

Didomi supports translations (Check to see languages supported and their related code). To create a purpose with translations, you need to send a POST request on /metadata/purposes endpoint and add the query $translations=true. You need to specify the purpose name (description) and description (details) which become object with translation query param set to true.

here
Create a purpose
Fetch purposes
Update a purpose
Delete a purpose