---
title: "Record optional data-processing consent"
method: POST
path: "/legal/data-processing-consents"
tags: ["Legal"]
---

# Record optional data-processing consent

`POST /legal/data-processing-consents`

## Request

- Base URL: `http://localhost:8486`
- URL: `http://localhost:8486/legal/data-processing-consents`
- Auth: API key in header `x-auth-token`

Records marketing/analytics/other consents separately from Terms and Conditions. Append-only.

## Request body

- RecordDataProcessingConsentRequestDTO
  - `consentType` 'MARKETING' | 'ANALYTICS' | 'OTHER', required
  - `granted` boolean, required
  - `consentVersion` string
  - `locale` string
  - `acceptanceMethod` 'CHECKBOX_DURING_SIGNUP' | 'CHECKBOX_IN_APP' | 'REACCEPT_NEW_VERSION' | 'API'

## Response `201`

Consent recorded

- DataProcessingConsentDTO
  - `id` integer
  - `userId` integer
  - `consentType` 'MARKETING' | 'ANALYTICS' | 'OTHER'
  - `granted` boolean
  - `consentVersion` string
  - `decidedAt` string, date-time
  - `acceptanceMethod` 'CHECKBOX_DURING_SIGNUP' | 'CHECKBOX_IN_APP' | 'REACCEPT_NEW_VERSION' | 'API'
  - `locale` string
  - `requestId` string

## Other responses

- `400`: Validation error

---

[API](https://skmtc.dev/airdodge/apis/api-core.md) - [All operations](https://skmtc.dev/airdodge/apis/api-core/llms.txt) - [OpenAPI document](https://skmtc.dev/airdodge/apis/api-core/revisions/fb3c5a1055cc?raw)
