Osano Consents API

The Consents API from Osano — 4 operation(s) for consents.

Operations 4

GET /v2/consents/unified/{subjectRef} Get consents unified by subject ref #
GET /v2/consents/check/{subjectId} Get consents check by subject id #
POST /v2/consents Create consents #
POST /v2/consents/gpc Create consents gpc #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/osano-consents-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

osano-consents-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Unified Consent Core Consents API
  description: '> **📍 Regional Distribution**

    > The UC Core API is regionally distributed.'
  version: 2.0.0
servers:
- url: https://uc.api.osano.com
security:
- ucApiKey: []
tags:
- name: Consents
paths:
  /v2/consents/unified/{subjectRef}:
    get:
      description: Retrieves the unified consent for a subject.
      parameters:
      - schema:
          type: string
          enum:
          - subject
          - session
        in: query
        name: ref
        required: false
        description: Indicates what type of reference is provided for the subject. Supports a subject id or a session id.
      - schema:
          type: string
        in: path
        name: subjectRef
        required: true
        description: Anonymous id, verified id, or a valid session id.
      - schema:
          type: string
        in: header
        name: x-country-code-override
        required: false
        description: Valid ISO 3166-1 country code to override the country resolution based on the IP address.
      - schema:
          type: string
        in: header
        name: x-region-code-override
        required: false
        description: Valid ISO 3166-2 region code to override the region resolution based on the IP address
      responses:
        '200':
          description: Valid unified consent.
          content:
            application/json:
              schema:
                type: object
                description: Valid unified consent.
                properties:
                  unifiedConsent:
                    $ref: '#/components/schemas/def-4'
                  conflicts:
                    type: array
                    items:
                      $ref: '#/components/schemas/def-3'
        '400':
          description: No consents found for the subject
      tags:
      - Consents
      summary: Get consents unified by subject ref
      x-summary-source: derived
      operationId: getV2ConsentsUnifiedBySubjectRef
      x-operation-id-source: derived
  /v2/consents/check/{subjectId}:
    get:
      description: Checks whether a subject has given consent in a configuration.
      parameters:
      - schema:
          type: string
        in: path
        name: subjectId
        required: true
      - schema:
          type: string
        in: header
        name: x-country-code-override
        required: false
        description: Valid ISO 3166-1 country code to override the country resolution based on the IP address.
      - schema:
          type: string
        in: header
        name: x-region-code-override
        required: false
        description: Valid ISO 3166-2 region code to override the region resolution based on the IP address
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  exists:
                    type: boolean
      tags:
      - Consents
      summary: Get consents check by subject id
      x-summary-source: derived
      operationId: getV2ConsentsCheckBySubjectId
      x-operation-id-source: derived
  /v2/consents:
    post:
      description: Create and insert a consent
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/def-1'
      parameters:
      - schema:
          type: string
        in: header
        name: x-country-code-override
        required: false
        description: Valid ISO 3166-1 country code to override the country resolution based on the IP address.
      - schema:
          type: string
        in: header
        name: x-region-code-override
        required: false
        description: Valid ISO 3166-2 region code to override the region resolution based on the IP address
      responses:
        '201':
          description: Consent inserted
      tags:
      - Consents
      summary: Create consents
      x-summary-source: derived
      operationId: postV2Consents
      x-operation-id-source: derived
  /v2/consents/gpc:
    post:
      description: Create and insert a gpc consent
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/def-22'
      parameters:
      - schema:
          type: string
        in: header
        name: x-country-code-override
        required: false
        description: Valid ISO 3166-1 country code to override the country resolution based on the IP address.
      - schema:
          type: string
        in: header
        name: x-region-code-override
        required: false
        description: Valid ISO 3166-2 region code to override the region resolution based on the IP address
      responses:
        '201':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  gpcActions:
                    type: array
                    items:
                      type: object
                      required:
                      - target
                      - vendor
                      - action
                      properties:
                        target:
                          type: string
                        vendor:
                          type: string
                        action:
                          type: string
                        jurisdiction:
                          type: string
      tags:
      - Consents
      summary: Create consents gpc
      x-summary-source: derived
      operationId: postV2ConsentsGpc
      x-operation-id-source: derived
components:
  schemas:
    def-4:
      type: object
      required:
      - subjectId
      - brandId
      - actions
      - attributes
      properties:
        subjectId:
          type: string
        brandId:
          type: string
        channelIds:
          type: array
          items:
            type: string
        compliance:
          $ref: '#/components/schemas/def-0'
        actions:
          type: array
          items:
            type: object
            required:
            - target
            - vendor
            - action
            properties:
              target:
                type: string
              vendor:
                type: string
              action:
                type: string
        attributes: {}
        lastUpdateDate:
          type: string
        lastConflictDate:
          type: string
      title: unified-consent
    def-0:
      type: object
      properties:
        privacyPolicy:
          type: object
          required:
          - url
          properties:
            version:
              type: string
            url:
              type: string
        gpc:
          type: integer
          minimum: 0
          maximum: 1
      title: compliance
    def-21:
      type: object
      properties:
        gpc:
          type: integer
          minimum: 0
          maximum: 1
      title: gpc-compliance
    def-1:
      type: object
      required:
      - subject
      - actions
      - attributes
      properties:
        sessionToken:
          type: string
          description: Optional session token returned by the create profile endpoint.
        subject:
          type: object
          properties:
            verifiedId:
              type: string
              pattern: ^[^#% ]+$
            anonymousId:
              type: string
              pattern: ^[^#% ]+$
        compliance:
          $ref: '#/components/schemas/def-0'
        actions:
          type: array
          items:
            type: object
            required:
            - target
            - vendor
            - action
            properties:
              target:
                type: string
              vendor:
                type: string
              action:
                type: string
              jurisdiction:
                type: string
        attributes:
          type: object
        origin:
          type: string
        jurisdiction:
          type: string
      title: create-consent
    def-22:
      type: object
      required:
      - subject
      - attributes
      properties:
        subject:
          type: object
          properties:
            verifiedId:
              type: string
              pattern: ^[^#% ]+$
            anonymousId:
              type: string
              pattern: ^[^#% ]+$
        compliance:
          $ref: '#/components/schemas/def-21'
        attributes:
          type: object
        jurisdiction:
          type: string
      title: create-gpc-consent
    def-3:
      type: object
      properties:
        type:
          type: string
        resolution:
          type: string
        actionsInConflict:
          type: array
          items:
            type: object
            properties:
              target:
                type: string
              vendor:
                type: string
              action:
                type: string
              consentId:
                type:
                - string
                - 'null'
              channelId:
                type:
                - string
                - 'null'
              createdAt:
                type:
                - string
                - 'null'
      title: conflict
  securitySchemes:
    ucApiKey:
      description: Unified Consent API key
      type: apiKey
      name: x-uc-api-key
      in: header
    osanoApiKey:
      description: Osano API key
      type: apiKey
      name: x-osano-api-key
      in: header