openapi: 3.0.2
info:
title: Didomi consents/events keys API
description: 'A REST API to communicate with the Didomi platform (https://api.didomi.io/v1/)
This is the complete specification of the API. A complete guide to authenticating and using the API is available on our Developers Portal.
All HTTP calls to the API require a valid JWT token. The token must be provided in an **Authorization** header with the value "Bearer ".
Click on the Authorize button in the header of this page to provide a token before testing requests from this documentation.
'
version: '1.0'
servers:
- url: https://api.didomi.io/v1
description: Didomi Platform API
security:
- bearer: []
tags:
- name: keys
description: Manage API keys
paths:
/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: []
components:
schemas:
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.
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.
securitySchemes:
bearer:
scheme: bearer
bearerFormat: JWT
type: http