---
title: "Get consents"
method: GET
path: "/consents"
tags: ["Consents"]
---

# Get consents

`GET /consents`

Retrieve the latest consent per purpose for a given candidate. Returns all active consents associated with the candidate ID.

## Query parameters

- `candidateId` string, required

## Response `200`

Successfully retrieved consents for the candidate.

- GetConsentsResponseDto
  - `consents` ConsentDto[], required
    - `id` string, required
    - `framework` 'GDPR' | 'PDPO', nullable, required — The regulatory framework
    - `legalBasis` ConsentLegalBasisDto, required
      - `name` 'CONSENT' | 'CONTRACT' | 'LEGAL_OBLIGATION' | 'VITAL_INTEREST' | 'PUBLIC_TASK' | 'LEGITIMATE_INTEREST', required — The legal basis for the consent
    - `purpose` ConsentPurposeResponseDto, required
      - `purpose` union, required
        - object
          - `type` 'custom', required
          - `id` string, required
          - `name` string, required
        - object
          - `type` 'system', required
          - `name` 'RECRUITING' | 'MARKETING_EMAIL' | 'MARKETING_SMS' | 'WHATSAPP_BUSINESS_UTILITY' | 'WHATSAPP_BUSINESS_MARKETING', required — The purpose of the consent
    - `comments` string, nullable, required — Free text field for additional comments
    - `status` 'GRANTED' | 'REVOKED', required — The status of the consent
    - `source` 'candidate-portal' | 'manual' | 'vacancy-portal', nullable, required — The way the consent was obtained
    - `receivedAt` string, date-time, required
    - `validUntil` string, date-time, required
    - `createdAt` string, date-time, required

## Other responses

- `400` — Bad Request
- `401` — Unauthorized - invalid or missing authentication
- `500` — Error response

---

[API](https://skmtc.net/spott/apis/spott-webhooks.md) · [All operations](https://skmtc.net/spott/apis/spott-webhooks/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/spott/spott-webhooks/revisions/ad1f8c51cf0a/schema)
