The Trade Desk DeletionOptOut API

The DeletionOptOut API from The Trade Desk — 3 operation(s) for deletionoptout.

OpenAPI Specification

the-trade-desk-deletionoptout-api-openapi.yml Raw ↑
openapi: 3.0.4
info:
  title: TTD Data Advertiser DeletionOptOut API
  version: v0.1
tags:
- name: DeletionOptOut
paths:
  /data/deletion-optout/advertiser:
    post:
      tags:
      - DeletionOptOut
      summary: Delete IDs shared with The Trade Desk for the specified advertiser ID.
      operationId: DataSubjectRequestAdvertiserData
      parameters:
      - name: TTD-Auth
        in: header
        description: Data API token for authentication.
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AdvertiserDsrRequest'
        required: true
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AdvertiserDsrResponse'
        '400':
          description: Bad Request - Invalid JSON, missing items, advertiser not configured, or policy restrictions
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AdvertiserDsrResponse'
        '403':
          description: Forbidden - Cannot process data subject request for this advertiser
          content:
            application/json:
              schema:
                type: string
        '413':
          description: Request Entity Too Large - Request size exceeds the allowed limit
          content:
            application/json:
              schema:
                type: string
        '429':
          description: Too Many Requests - Rate limit exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AdvertiserDsrResponse'
        '500':
          description: Internal Server Error - Unexpected server error
        '503':
          description: Service Unavailable - Handler disabled or request dropped
      servers:
      - url: https://usw-data.adsrvr.org
  /data/deletion-optout/merchant:
    post:
      tags:
      - DeletionOptOut
      summary: Delete IDs shared with The Trade Desk via a product catalog for the specified merchant ID.
      operationId: DataSubjectRequestMerchantData
      parameters:
      - name: TTD-Auth
        in: header
        description: Data API token for authentication.
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MerchantDsrRequest'
        required: true
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MerchantDsrResponse'
        '400':
          description: Bad Request - Invalid JSON, missing items, merchant not configured, or policy restrictions
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MerchantDsrResponse'
        '403':
          description: Forbidden - Cannot process data subject request for this merchant
          content:
            application/json:
              schema:
                type: string
        '413':
          description: Request Entity Too Large - Request size exceeds the allowed limit
          content:
            application/json:
              schema:
                type: string
        '429':
          description: Too Many Requests - Rate limit exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MerchantDsrResponse'
        '500':
          description: Internal Server Error - Unexpected server error
        '503':
          description: Service Unavailable - Handler disabled or request dropped
      servers:
      - url: https://usw-data.adsrvr.org
  /data/deletion-optout/thirdparty:
    post:
      tags:
      - DeletionOptOut
      summary: Delete IDs shared with The Trade Desk for the specified data provider ID.
      operationId: DataSubjectRequestThirdPartyData
      parameters:
      - name: TTD-Auth
        in: header
        description: Data API token for authentication.
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ThirdPartyDsrRequest'
        required: true
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ThirdPartyDsrResponse'
        '400':
          description: Bad Request - Invalid JSON, missing items, data provider not configured, or policy restrictions
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ThirdPartyDsrResponse'
        '403':
          description: Forbidden - Cannot process data subject request for this data provider
          content:
            application/json:
              schema:
                type: string
        '413':
          description: Request Entity Too Large - Request size exceeds the allowed limit
          content:
            application/json:
              schema:
                type: string
        '429':
          description: Too Many Requests - Rate limit exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ThirdPartyDsrResponse'
        '500':
          description: Internal Server Error - Unexpected server error
        '503':
          description: Service Unavailable - Handler disabled or request dropped
      servers:
      - url: https://usw-data.adsrvr.org
components:
  schemas:
    AdvertiserDsrFailedLine:
      type: object
      properties:
        AdvertiserId:
          type: string
          nullable: true
        DataProviderId:
          type: string
          nullable: true
        TDID:
          type: string
          format: uuid
          nullable: true
        ErrorCode:
          $ref: '#/components/schemas/DsrErrorCode'
        Message:
          type: string
          nullable: true
        ItemNumber:
          type: string
          nullable: true
      additionalProperties: false
    PartnerDsrDataItem:
      type: object
      properties:
        TDID:
          type: string
          nullable: true
        DAID:
          type: string
          nullable: true
        UID2:
          type: string
          nullable: true
        UID2Token:
          type: string
          nullable: true
        RampID:
          type: string
          nullable: true
        CoreID:
          type: string
          nullable: true
        EUID:
          type: string
          nullable: true
        EUIDToken:
          type: string
          nullable: true
        ID5:
          type: string
          nullable: true
        NetID:
          type: string
          nullable: true
        FirstID:
          type: string
          nullable: true
        UtiqID:
          type: string
          nullable: true
        MerkuryID:
          type: string
          nullable: true
        IqviaPPID:
          type: string
          nullable: true
      additionalProperties: false
    ThirdPartyDsrFailedLine:
      type: object
      properties:
        DataProviderId:
          type: string
          nullable: true
        TDID:
          type: string
          format: uuid
          nullable: true
        ErrorCode:
          $ref: '#/components/schemas/DsrErrorCode'
        Message:
          type: string
          nullable: true
        ItemNumber:
          type: string
          nullable: true
      additionalProperties: false
    ThirdPartyDsrRequest:
      type: object
      properties:
        DataProviderId:
          type: string
          nullable: true
        BrandId:
          type: string
          nullable: true
        Items:
          type: array
          items:
            $ref: '#/components/schemas/PartnerDsrDataItem'
          nullable: true
        DataLoadTraceId:
          type: string
          nullable: true
        RequestType:
          $ref: '#/components/schemas/PartnerDsrRequestType'
      additionalProperties: false
    PartnerDsrRequestType:
      enum:
      - OptOut
      - Deletion
      type: string
    MerchantDsrResponse:
      type: object
      properties:
        FailedLines:
          type: array
          items:
            $ref: '#/components/schemas/MerchantDsrFailedLine'
          nullable: true
      additionalProperties: false
    AdvertiserDsrResponse:
      type: object
      properties:
        FailedLines:
          type: array
          items:
            $ref: '#/components/schemas/AdvertiserDsrFailedLine'
          nullable: true
      additionalProperties: false
    MerchantDsrFailedLine:
      type: object
      properties:
        MerchantId:
          type: string
          nullable: true
        TDID:
          type: string
          format: uuid
          nullable: true
        ErrorCode:
          $ref: '#/components/schemas/DsrErrorCode'
        Message:
          type: string
          nullable: true
        ItemNumber:
          type: string
          nullable: true
      additionalProperties: false
    DsrErrorCode:
      enum:
      - Unknown
      - InvalidUserId
      type: string
    ThirdPartyDsrResponse:
      type: object
      properties:
        FailedLines:
          type: array
          items:
            $ref: '#/components/schemas/ThirdPartyDsrFailedLine'
          nullable: true
      additionalProperties: false
    MerchantDsrRequest:
      type: object
      properties:
        MerchantId:
          type: integer
          format: int64
          nullable: true
        Items:
          type: array
          items:
            $ref: '#/components/schemas/PartnerDsrDataItem'
          nullable: true
        DataLoadTraceId:
          type: string
          nullable: true
        RequestType:
          $ref: '#/components/schemas/PartnerDsrRequestType'
      additionalProperties: false
    AdvertiserDsrRequest:
      type: object
      properties:
        AdvertiserId:
          type: string
          nullable: true
        DataProviderId:
          type: string
          nullable: true
        Items:
          type: array
          items:
            $ref: '#/components/schemas/PartnerDsrDataItem'
          nullable: true
        DataLoadTraceId:
          type: string
          nullable: true
        RequestType:
          $ref: '#/components/schemas/PartnerDsrRequestType'
      additionalProperties: false