IAB Tech Lab · Schema

ConsentContext

Privacy consent signals that travel with a deal (flagged decision FD-10). Full build-out (EP-10.4) of the EP-1.2 placeholder: the three interoperable consent-string carriers — GPP (Global Privacy Platform) with its applicable section ids, TCF (Transparency & Consent Framework) with the ``gdpr_applies`` gate, and the US Privacy (``us_privacy``) string — plus the SGP (SafeGuard Privacy / IAB Diligence Platform) ``diligence_status``. Field names from the EP-1.2 placeholder are kept unchanged for backward compatibility; the build-out is purely additive. It travels with the Deal, Quote, and Order. Strings are carried opaque: no decoding/vendor-list validation is claimed (see the conformance standards registry).

CompanyAdvertisingAdTechStandardsProgrammaticReal-Time BiddingConsentPrivacyVideo AdsAgentic AdvertisingNon-Profit

Properties

Name Type Description
applicable_regimes array Privacy regime identifiers in scope (e.g. 'GDPR', 'CCPA').
diligence_status object Counterparty diligence status (SGP = SafeGuard Privacy / IAB Diligence Platform).
gdpr_applies object Whether GDPR (EU General Data Protection Regulation) applies to this context; None when undetermined. Gates interpretation of the TCF string.
gpp_section_ids array GPP section ids present in the string.
gpp_string object GPP (Global Privacy Platform) consent string.
tcf_string object TCF (Transparency & Consent Framework) TC string, when GDPR applies.
us_privacy object US Privacy (CCPA) string, e.g. '1YNN'; superseded by GPP where present.
verified_at object Timezone-aware timestamp of the last diligence verification, if any.
View JSON Schema on GitHub

JSON Schema

iab-tech-lab-agentic-primitive-consentcontext.json Raw ↑
{
  "$defs": {
    "DiligenceStatus": {
      "description": "Status of counterparty privacy diligence (IAB Diligence Platform).",
      "enum": [
        "unknown",
        "pending",
        "passed",
        "failed"
      ],
      "title": "DiligenceStatus",
      "type": "string"
    }
  },
  "description": "Privacy consent signals that travel with a deal (flagged decision FD-10).\n\nFull build-out (EP-10.4) of the EP-1.2 placeholder: the three\ninteroperable consent-string carriers \u2014 GPP (Global Privacy Platform)\nwith its applicable section ids, TCF (Transparency & Consent Framework)\nwith the ``gdpr_applies`` gate, and the US Privacy (``us_privacy``)\nstring \u2014 plus the SGP (SafeGuard Privacy / IAB Diligence Platform)\n``diligence_status``. Field names from the EP-1.2 placeholder are kept\nunchanged for backward compatibility; the build-out is purely additive.\nIt travels with the Deal, Quote, and Order. Strings are carried opaque:\nno decoding/vendor-list validation is claimed (see the conformance\nstandards registry).",
  "properties": {
    "applicable_regimes": {
      "description": "Privacy regime identifiers in scope (e.g. 'GDPR', 'CCPA').",
      "items": {
        "type": "string"
      },
      "title": "Applicable Regimes",
      "type": "array"
    },
    "diligence_status": {
      "$ref": "#/$defs/DiligenceStatus",
      "default": "unknown",
      "description": "Counterparty diligence status (SGP = SafeGuard Privacy / IAB Diligence Platform)."
    },
    "gdpr_applies": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Whether GDPR (EU General Data Protection Regulation) applies to this context; None when undetermined. Gates interpretation of the TCF string.",
      "title": "Gdpr Applies"
    },
    "gpp_section_ids": {
      "description": "GPP section ids present in the string.",
      "items": {
        "type": "integer"
      },
      "title": "Gpp Section Ids",
      "type": "array"
    },
    "gpp_string": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "GPP (Global Privacy Platform) consent string.",
      "title": "Gpp String"
    },
    "tcf_string": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "TCF (Transparency & Consent Framework) TC string, when GDPR applies.",
      "title": "Tcf String"
    },
    "us_privacy": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "US Privacy (CCPA) string, e.g. '1YNN'; superseded by GPP where present.",
      "title": "Us Privacy"
    },
    "verified_at": {
      "anyOf": [
        {
          "format": "date-time",
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Timezone-aware timestamp of the last diligence verification, if any.",
      "title": "Verified At"
    }
  },
  "title": "ConsentContext",
  "type": "object"
}

Work with this as data

Every JSON Schema 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 schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • 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 JSON Schema
curl "https://apis.io/api/v1/json-schemas/iab-tech-lab-agentic-primitive-consentcontext"
All schemas
curl "https://apis.io/api/v1/json-schemas?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.