Sign in

Projects

The privacy services APIs are centered around the concept of Projects. A project needs to define some basic privacy related metadata, such as your service name and other configuration. All our privacy API endpoints require a project. A project ID is provided to you when you create it in our Developer Self Service.

Create a project configuration

Creates a project for your company to be able to:

  • managing data processing activities (resources, processing purposes, consent dialogues)
  • managing consent and state of a user’s data processing approvals
  • managing GDPR related privacy requests (access, portability, erasure and objections)
POST /privacy/v2/projects

Update a project configuration

Update a specific project

PUT /privacy/v2/projects/{project_id}

Delete a project configuration

Delete a project

DELETE /privacy/v2/projects/{project_id}

This flags the project for deletion, and all requests scoped to the project will be rejected. The project and all related resources will be removed after 30 days. Within this quarentine period, the project can be restored again with PUT request described in the API reference documentation. This PUT request is the only request that is not rejected due to the deleted status

Get a project configuration

Return the project object

GET /privacy/v2/projects/{project_id}

Schema

This section specifies the project schema

Parameters
Field Type Description Comments
projectId string The ID of the project
serviceName string The name of the service the data subject is establishing a relationship with Displayed to the data subject in end-user portal interactions and dialogues
subscriptions Array of JSON objects Array of topics and corresponding destinations notifications of privacy requests will be sent to See own schema for subscriptions below
created timestamp The time this project was created
updated timestamp The time this project was last updated  

This section specifies the subscriptions schema under project configuration

Field Type Description Comments
endpoint string The endpoint to post notifications to
topics Array Array of topics this endpoint will subscribe to See list of available topics below
credentials string The credentials used to authenticate this request towards the endpoint
authType string The type of authentication used by the endpoint Defined types: basic, oauth, certificate. First iteration will only support basic (Basic Auth)
email string Escalation email used to notify system administrators when notification has failed X amount of times  

The subscriptions configuration are used by the notification service (described further down). The configuration stores:

  • Notification destinations (where notifications are sent and authentication mechanisms allowing us to post these to subscribing systems):
  • webhook URL
  • authentication credentials
  • Notification topics this endpoint will be subscribing to for privacy requests
  • Escalation email
  • Used to notify system administrators when a notification has failed to be acknowledged more than X amount of times
Response
{
  "projectId": "7fba66c8-9a67-4a06-8d70-7e5dffe9109d",
  "serviceName": "Telia Company",
  "subscriptions": [
    {
      "endpoint": "https://your.service.com/privacy/objections",
      "topics": [
        "privacy-request-objection-created-prod",
        "privacy-consent-state-change-prod"
      ],
      "credentials": "user name and password as unencrypted base64 encoded text",
      "authType": "basic_auth",
      "email": "admin@telia.no"
    }
  ],
  "created": "2017-11-21T12:52:24.320+01:00",
  "updated": "2017-11-21T12:52:24.320+01:00"
}