---
title: "Upload offline conversion data for the specified data provider."
method: POST
path: "/providerapi/offlineconversion"
tags: ["OfflineConversion"]
---

# Upload offline conversion data for the specified data provider.

`POST /providerapi/offlineconversion`

## Headers

- `TTD-Auth` string, required

## Request body

- OfflineConversionDataRequest
  - `DataProviderId` string, required
  - `UserIdArrayMetadataFormat` string[], nullable
  - `Items` OfflineConversionDataItem[], nullable
    - `TDID` string, nullable
    - `DAID` string, nullable
    - `UID2` string, nullable
    - `UID2Token` string, nullable
    - `RampID` string, nullable
    - `EUID` string, nullable
    - `EUIDToken` string, nullable
    - `DataProviderUserId` string, nullable
    - `UserIdArray` array[], nullable — Array of [type, id] pairs.
      - string[]
    - `CookieMappingPartnerId` string, nullable
    - `OrderId` string, nullable
    - `ImpressionId` string, nullable
    - `TrackingTagId` string, required
    - `TimestampUtc` string, date-time, required
    - `Value` string, nullable
    - `ValueCurrency` string, nullable
    - `Country` string, nullable
    - `Region` string, nullable
    - `Metro` string, nullable
    - `City` string, nullable
    - `MerchantId` string, nullable
    - `EventName` string, nullable
    - `LineItems` RealTimeConversionEventLineItem[], nullable
      - `item_code` string, nullable
      - `name` string, nullable
      - `qty` string, nullable
      - `price` string, nullable
      - `cat` string, nullable
    - `PrivacySettings` RealTimeConversionEventsPrivacySetting[], nullable
      - `privacy_type` string, nullable
      - `is_applicable` string, nullable
      - `consent_string` string, nullable
    - `TD1` string, nullable
    - `TD2` string, nullable
    - `TD3` string, nullable
    - `TD4` string, nullable
    - `TD5` string, nullable
    - `TD6` string, nullable
    - `TD7` string, nullable
    - `TD8` string, nullable
    - `TD9` string, nullable
    - `TD10` string, nullable
  - `DataLoadTraceId` string, nullable

## Response `200`

Success

- OfflineConversionDataServerResponse
  - `FailedLines` OfflineConversionDataServerResponseLine[], nullable
    - `OrderId` string, nullable
    - `ImpressionId` string, nullable
    - `TDID` string, nullable
    - `TrackingTagId` string, nullable
    - `TimestampUtc` string, date-time
    - `ErrorCode` 'Unknown' | 'MissingOrInvalidTDIDAndImpressionId' | 'MissingOrInvalidTrackingTagId' | 'InvalidMerchantId' | 'ChinaPII' | 'InvalidTimestamp' | 'InvalidUserIdTypeOrUserId' | 'Unauthorized' | 'ItemDeserializationError'
    - `Message` string, nullable
    - `ItemNumber` string, nullable
    - `OriginalRequest` OfflineConversionDataItem
      - `TDID` string, nullable
      - `DAID` string, nullable
      - `UID2` string, nullable
      - `UID2Token` string, nullable
      - `RampID` string, nullable
      - `EUID` string, nullable
      - `EUIDToken` string, nullable
      - `DataProviderUserId` string, nullable
      - `UserIdArray` array[], nullable — Array of [type, id] pairs.
        - string[]
      - `CookieMappingPartnerId` string, nullable
      - `OrderId` string, nullable
      - `ImpressionId` string, nullable
      - `TrackingTagId` string, required
      - `TimestampUtc` string, date-time, required
      - `Value` string, nullable
      - `ValueCurrency` string, nullable
      - `Country` string, nullable
      - `Region` string, nullable
      - `Metro` string, nullable
      - `City` string, nullable
      - `MerchantId` string, nullable
      - `EventName` string, nullable
      - `LineItems` RealTimeConversionEventLineItem[], nullable
        - `item_code` string, nullable
        - `name` string, nullable
        - `qty` string, nullable
        - `price` string, nullable
        - `cat` string, nullable
      - `PrivacySettings` RealTimeConversionEventsPrivacySetting[], nullable
        - `privacy_type` string, nullable
        - `is_applicable` string, nullable
        - `consent_string` string, nullable
      - `TD1` string, nullable
      - `TD2` string, nullable
      - `TD3` string, nullable
      - `TD4` string, nullable
      - `TD5` string, nullable
      - `TD6` string, nullable
      - `TD7` string, nullable
      - `TD8` string, nullable
      - `TD9` string, nullable
      - `TD10` string, nullable

## Other responses

- `400` — Bad Request - Invalid JSON, missing items, data provider not configured, or policy restrictions
- `401` — Unauthorized - Invalid or missing authentication token
- `403` — Forbidden - Cannot create offline conversion data for this data provider
- `413` — Request Entity Too Large - Request size exceeds the allowed limit
- `429` — Too Many Requests - Rate limit exceeded
- `500` — Internal Server Error - Unexpected server error
- `503` — Service Unavailable - Handler disabled or request dropped

---

[API](https://skmtc.dev/adsrvr/apis/ttd-data-api.md) · [All operations](https://skmtc.dev/adsrvr/apis/ttd-data-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/adsrvr/ttd-data-api/revisions/0c55e57f52e5/schema)
