TikTok Marketing API Measurement API

The Measurement API from TikTok Marketing API — 11 operation(s) for measurement.

Operations 11

POST /offline/create/ Create a new Offline Event set. [Offline Create](https://business-api.tiktok.com/portal/docs?id=1758427576470529) #
POST /offline/delete/ Delete an Offline Event set. [Offline Delete](https://business-api.tiktok.com/portal/docs?id=1765596790860802) #
GET /offline/get/ Get Offline Event sets. [Offline Get](https://business-api.tiktok.com/portal/docs?id=1765596808589313) #
POST /offline/update/ Update an Offline Event set. [Offline Update](https://business-api.tiktok.com/portal/docs?id=1765596741157889) #
POST /pixel/create/ Create a Pixel. [Pixel Create](https://business-api.tiktok.com/portal/docs?id=1740858779758593) #
POST /pixel/event/create/ Choose either an industry or custom template to define your events. [Pixel Event Create](https://business-api.tiktok.com/portal/docs?id=1740858807646209) #
POST /pixel/event/delete/ Delete Pixel events. [Pixel Event Delete](https://business-api.tiktok.com/portal/docs?id=1740858862104578) #
GET /pixel/event/stats/ View statistics of an event data over a period of time. [Pixel Event Stats](https://business-api.tiktok.com/portal/docs?id=1740858904557570) #
POST /pixel/event/update/ Update the name of a Pixel event and the conversion value. [Pixel Event Update](https://business-api.tiktok.com/portal/docs?id=1740858823774210) #
GET /pixel/list/ Obtain a list of Pixel information. [Pixel List](https://business-api.tiktok.com/portal/docs?id=1740858697598978) #
POST /pixel/update/ Update a Pixel. [Pixel Update](https://business-api.tiktok.com/portal/docs?id=1740858799524865) #

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/tiktok-ads-measurement-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

tiktok-ads-measurement-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: TikTok API for Business — Marketing Measurement API
  description: TikTok API for Business (Marketing API) v1.3. This document is a mechanical union of the 202 per-operation OpenAPI 3.0.1 documents TikTok publishes in yml_files/ of its own SDK repository (https://github.com/tiktok/tiktok-business-api-sdk), which are the swagger-codegen inputs for TikTok's first-party Java/Python/JavaScript SDKs. Operation content (paths, parameters, responses, tags and the x-open-* extensions) is preserved verbatim; only info, servers and components.securitySchemes were written by API Evangelist, because the per-operation fragments carry placeholder info blocks and no servers block. The servers values are the production and sandbox base URLs TikTok documents at https://business-api.tiktok.com/portal/docs?id=1738855331457026 .
  version: v1.3
  contact:
    name: TikTok API for Business support
    url: https://business-api.tiktok.com/portal/docs?id=1795190020378625
  termsOfService: https://business-api.tiktok.com/portal/docs?id=1737191804348417
  x-source: https://github.com/tiktok/tiktok-business-api-sdk/tree/main/yml_files
  x-harvested-by: API Evangelist enrichment pipeline
  x-harvested: '2026-08-13'
servers:
- url: https://business-api.tiktok.com/open_api/v1.3
  description: Production
- url: https://sandbox-ads.tiktok.com/open_api/v1.3
  description: Sandbox
security:
- AccessToken: []
tags:
- name: Measurement
paths:
  /offline/create/:
    post:
      operationId: Offline Create
      parameters:
      - description: Authorized access token. For details, see [Authentication](https://ads.tiktok.com/marketing_api/docs?id=1738373164380162).
        in: query
        name: Access-Token
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                advertiser_id:
                  description: ''
                  type: string
                  x-open-allow-strlist: false
                  x-open-allow-strnum: false
                  x-open-convert:
                  - int64(%s)
                  x-open-field-id: 1
                  x-open-source: $.http.body.AdvertiserID
                auto_tracking:
                  default: false
                  description: ''
                  type: boolean
                  x-open-allow-strlist: false
                  x-open-allow-strnum: false
                  x-open-field-id: 4
                  x-open-source: $.http.body.AutoTracking
                description:
                  description: ''
                  type: string
                  x-open-allow-strlist: false
                  x-open-allow-strnum: false
                  x-open-field-id: 3
                  x-open-source: $.http.body.Description
                name:
                  description: ''
                  type: string
                  x-open-allow-strlist: false
                  x-open-allow-strnum: false
                  x-open-field-id: 2
                  x-open-source: $.http.body.Name
              required:
              - advertiser_id
              - name
              - description
              type: object
              x-open-allow-strlist: false
              x-open-allow-strnum: false
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  code:
                    description: Response code. For the complete list of response codes and descriptions, see [Appendix - Return Codes](https://ads.tiktok.com/marketing_api/docs?id=1737172488964097). Will be shown only if it is an error request.
                    format: int64
                    type:
                    - integer
                    - 'null'
                    x-open-allow-strlist: false
                    x-open-field-id: 4
                  data:
                    description: Returned data. The response for the SDK can be checked in the document for the API given in the description.
                    properties: {}
                    type:
                    - object
                    - 'null'
                    x-open-allow-strlist: false
                    x-open-field-id: 1
                    x-open-source: $.rpc.output.data
                  message:
                    description: Response message. For details, see [Appendix - Return Codes](https://ads.tiktok.com/marketing_api/docs?id=1737172488964097).
                    type:
                    - string
                    - 'null'
                    x-open-allow-strlist: false
                    x-open-field-id: 3
                  request_id:
                    description: The log ID of a request, which uniquely identifies the request.
                    type:
                    - string
                    - 'null'
                    x-open-allow-strlist: false
                    x-open-field-id: 2
                type: object
                x-open-allow-strlist: false
          description: OK
      summary: Create a new Offline Event set. [Offline Create](https://business-api.tiktok.com/portal/docs?id=1758427576470529)
      tags:
      - Measurement
      x-open-allowlist: {}
      x-open-denylist: {}
      x-open-rules:
        base_rule: null
        extra_rule:
          base_source: []
          http_query_source: []
          http_source:
          - name: AdvertiserID
            required: true
            source: $.http.body.advertiser_id
            type: number
          - name: CoreUserID
            required: true
            source: $.context.core_user_id
            type: number
          - name: Name
            required: true
            source: $.http.body.name
            type: string
          - name: Description
            required: true
            source: $.http.body.description
            type: string
          - name: AutoTracking
            required: true
            source: $.http.body.auto_tracking
            type: boolean
        plugins:
          after_response: []
          before_request: []
        request_query_rule: null
        request_rule:
          AdvertiserID: $.http.body.advertiser_id
          AutoTracking: $.http.body.auto_tracking
          CoreUserID: $.context.core_user_id
          Description: $.http.body.description
          Name: $.http.body.name
        response_cookie: []
        response_header: []
        response_rule:
          event_set_id: $.rpc.output.OfflineEventSet.ID
      x-open-scene-labels: []
      x-open-settings:
        pop_resp_nullvalue: false
  /offline/delete/:
    post:
      operationId: Offline Delete
      parameters:
      - description: Authorized access token. For details, see [Authentication](https://ads.tiktok.com/marketing_api/docs?id=1738373164380162).
        in: query
        name: Access-Token
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                advertiser_id:
                  description: ''
                  type: string
                  x-open-allow-strlist: false
                  x-open-allow-strnum: false
                  x-open-convert:
                  - int64(%s)
                  x-open-field-id: 1
                  x-open-source: $.http.body.AdvertiserID
                event_set_id:
                  description: ''
                  type: string
                  x-open-allow-strlist: false
                  x-open-allow-strnum: false
                  x-open-convert:
                  - int64(%s)
                  x-open-field-id: 2
                  x-open-source: $.http.body.EventSetID
              required:
              - advertiser_id
              - event_set_id
              type: object
              x-open-allow-strlist: false
              x-open-allow-strnum: false
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  code:
                    description: Response code. For the complete list of response codes and descriptions, see [Appendix - Return Codes](https://ads.tiktok.com/marketing_api/docs?id=1737172488964097). Will be shown only if it is an error request.
                    format: int64
                    type:
                    - integer
                    - 'null'
                    x-open-allow-strlist: false
                    x-open-field-id: 4
                  data:
                    description: Returned data. The response for the SDK can be checked in the document for the API given in the description.
                    properties: {}
                    type:
                    - object
                    - 'null'
                    x-open-allow-strlist: false
                    x-open-field-id: 1
                    x-open-source: $.rpc.output.data
                  message:
                    description: Response message. For details, see [Appendix - Return Codes](https://ads.tiktok.com/marketing_api/docs?id=1737172488964097).
                    type:
                    - string
                    - 'null'
                    x-open-allow-strlist: false
                    x-open-field-id: 3
                  request_id:
                    description: The log ID of a request, which uniquely identifies the request.
                    type:
                    - string
                    - 'null'
                    x-open-allow-strlist: false
                    x-open-field-id: 2
                type: object
                x-open-allow-strlist: false
          description: OK
      summary: Delete an Offline Event set. [Offline Delete](https://business-api.tiktok.com/portal/docs?id=1765596790860802)
      tags:
      - Measurement
      x-open-allowlist: {}
      x-open-denylist: {}
      x-open-rules:
        base_rule: null
        extra_rule:
          base_source: []
          http_query_source: []
          http_source:
          - name: AdvertiserID
            required: true
            source: $.http.body.advertiser_id
            type: number
          - name: CoreUserID
            required: true
            source: $.context.core_user_id
            type: number
          - name: EventSetID
            required: true
            source: $.http.body.event_set_id
            type: number
        plugins:
          after_response: []
          before_request: []
        request_query_rule: null
        request_rule:
          AdvertiserID: $.http.body.advertiser_id
          CoreUserID: $.context.core_user_id
          EventSetID: $.http.body.event_set_id
        response_cookie: []
        response_header: []
        response_rule:
          test: $.resp
      x-open-scene-labels: []
      x-open-settings:
        pop_resp_nullvalue: false
  /offline/get/:
    get:
      operationId: Offline Get
      parameters:
      - description: ''
        in: query
        name: advertiser_id
        required: false
        schema:
          type: string
          x-open-allow-strlist: false
          x-open-allow-strnum: false
          x-open-convert:
          - int64(%s)
          x-open-source: $.http.query.AdvertiserID
        x-open-field-id: 1
      - content:
          application/json:
            schema:
              items:
                type: string
                x-open-allow-strlist: false
                x-open-allow-strnum: false
                x-open-convert:
                - int64(%s)
              type: array
              x-open-allow-strlist: false
              x-open-allow-strnum: false
              x-open-source: $.http.query.EventSetIDs
        description: ''
        in: query
        name: event_set_ids
        required: false
        x-open-field-id: 2
      - description: ''
        in: query
        name: name
        required: false
        schema:
          type: string
          x-open-allow-strlist: false
          x-open-allow-strnum: false
          x-open-source: $.http.query.Name
        x-open-field-id: 3
      - description: Authorized access token. For details, see [Authentication](https://ads.tiktok.com/marketing_api/docs?id=1738373164380162).
        in: query
        name: Access-Token
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  code:
                    description: Response code. For the complete list of response codes and descriptions, see [Appendix - Return Codes](https://ads.tiktok.com/marketing_api/docs?id=1737172488964097). Will be shown only if it is an error request.
                    format: int64
                    type:
                    - integer
                    - 'null'
                    x-open-allow-strlist: false
                    x-open-field-id: 4
                  data:
                    description: Returned data. The response for the SDK can be checked in the document for the API given in the description.
                    properties: {}
                    type:
                    - object
                    - 'null'
                    x-open-allow-strlist: false
                    x-open-field-id: 1
                    x-open-source: $.rpc.output.data
                  message:
                    description: Response message. For details, see [Appendix - Return Codes](https://ads.tiktok.com/marketing_api/docs?id=1737172488964097).
                    type:
                    - string
                    - 'null'
                    x-open-allow-strlist: false
                    x-open-field-id: 3
                  request_id:
                    description: The log ID of a request, which uniquely identifies the request.
                    type:
                    - string
                    - 'null'
                    x-open-allow-strlist: false
                    x-open-field-id: 2
                type: object
                x-open-allow-strlist: false
          description: OK
      summary: Get Offline Event sets. [Offline Get](https://business-api.tiktok.com/portal/docs?id=1765596808589313)
      tags:
      - Measurement
      x-open-allowlist: {}
      x-open-denylist: {}
      x-open-rules:
        base_rule: null
        extra_rule:
          base_source: []
          http_query_source: []
          http_source:
          - name: AdvertiserID
            required: false
            source: $.http.query.advertiser_id
            type: number
          - children:
            - type: number
            is_expand: true
            name: EventSetIDs
            required: false
            source: $.http.query.event_set_ids[]
            sub_type: number
            type: array
          - name: Name
            required: false
            source: $.http.query.name
            type: string
        plugins:
          after_response: []
          before_request: []
        request_query_rule: null
        request_rule:
          AdvertiserID: $.http.query.advertiser_id
          EventSetIDs: $.http.query.event_set_ids[]
          Name: $.http.query.name
        response_cookie: []
        response_header: []
        response_rule:
          event_set_list[][]:
          - advertiser_id: $.rpc.output.OfflineEventSets[].AdvertiserID
            auto_tracking: $.rpc.output.OfflineEventSets[].AutoTracking
            create_time: $.rpc.output.OfflineEventSets[].CreatedAt
            description: $.rpc.output.OfflineEventSets[].Description
            event_set_id: $.rpc.output.OfflineEventSets[].ID
            name: $.rpc.output.OfflineEventSets[].Name
            update_time: $.rpc.output.OfflineEventSets[].UpdatedAt
      x-open-scene-labels: []
      x-open-settings:
        pop_resp_nullvalue: false
  /offline/update/:
    post:
      operationId: Offline Update
      parameters:
      - description: Authorized access token. For details, see [Authentication](https://ads.tiktok.com/marketing_api/docs?id=1738373164380162).
        in: query
        name: Access-Token
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                advertiser_id:
                  description: ''
                  type: string
                  x-open-allow-strlist: false
                  x-open-allow-strnum: false
                  x-open-convert:
                  - int64(%s)
                  x-open-field-id: 1
                  x-open-source: $.http.body.AdvertiserID
                auto_tracking:
                  description: ''
                  type: boolean
                  x-open-allow-strlist: false
                  x-open-allow-strnum: false
                  x-open-field-id: 4
                  x-open-source: $.http.body.AutoTracking
                event_set_id:
                  description: ''
                  type: string
                  x-open-allow-strlist: false
                  x-open-allow-strnum: false
                  x-open-convert:
                  - int64(%s)
                  x-open-field-id: 2
                  x-open-source: $.http.body.EventSetID
                name:
                  description: ''
                  type: string
                  x-open-allow-strlist: false
                  x-open-allow-strnum: false
                  x-open-field-id: 3
                  x-open-source: $.http.body.EventSetName
              required:
              - advertiser_id
              - event_set_id
              type: object
              x-open-allow-strlist: false
              x-open-allow-strnum: false
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  code:
                    description: Response code. For the complete list of response codes and descriptions, see [Appendix - Return Codes](https://ads.tiktok.com/marketing_api/docs?id=1737172488964097). Will be shown only if it is an error request.
                    format: int64
                    type:
                    - integer
                    - 'null'
                    x-open-allow-strlist: false
                    x-open-field-id: 4
                  data:
                    description: Returned data. The response for the SDK can be checked in the document for the API given in the description.
                    properties: {}
                    type:
                    - object
                    - 'null'
                    x-open-allow-strlist: false
                    x-open-field-id: 1
                    x-open-source: $.rpc.output.data
                  message:
                    description: Response message. For details, see [Appendix - Return Codes](https://ads.tiktok.com/marketing_api/docs?id=1737172488964097).
                    type:
                    - string
                    - 'null'
                    x-open-allow-strlist: false
                    x-open-field-id: 3
                  request_id:
                    description: The log ID of a request, which uniquely identifies the request.
                    type:
                    - string
                    - 'null'
                    x-open-allow-strlist: false
                    x-open-field-id: 2
                type: object
                x-open-allow-strlist: false
          description: OK
      summary: Update an Offline Event set. [Offline Update](https://business-api.tiktok.com/portal/docs?id=1765596741157889)
      tags:
      - Measurement
      x-open-allowlist: {}
      x-open-denylist: {}
      x-open-rules:
        base_rule: null
        extra_rule:
          base_source: []
          http_query_source: []
          http_source:
          - name: AdvertiserID
            required: true
            source: $.http.body.advertiser_id
            type: number
          - name: CoreUserID
            required: true
            source: $.context.core_user_id
            type: number
          - name: EventSetID
            required: true
            source: $.http.body.event_set_id
            type: number
          - name: EventSetName
            required: false
            source: $.http.body.name
            type: string
          - name: AutoTracking
            required: false
            source: $.http.body.auto_tracking
            type: boolean
        plugins:
          after_response: []
          before_request: []
        request_query_rule: null
        request_rule:
          AdvertiserID: $.http.body.advertiser_id
          AutoTracking: $.http.body.auto_tracking
          CoreUserID: $.context.core_user_id
          EventSetID: $.http.body.event_set_id
          EventSetName: $.http.body.name
        response_cookie: []
        response_header: []
        response_rule:
          advertiser_id: $.rpc.output.OfflineEventSet.AdvertiserID
          auto_tracking: $.rpc.output.OfflineEventSet.AutoTracking
          create_time: $.rpc.output.OfflineEventSet.CreatedAt
          description: $.rpc.output.OfflineEventSet.Description
          event_set_id: $.rpc.output.OfflineEventSet.ID
          name: $.rpc.output.OfflineEventSet.Name
          update_time: $.rpc.output.OfflineEventSet.UpdatedAt
      x-open-scene-labels: []
      x-open-settings:
        pop_resp_nullvalue: false
  /pixel/create/:
    post:
      operationId: Pixel Create
      parameters:
      - description: Authorized access token. For details, see [Authentication](https://ads.tiktok.com/marketing_api/docs?id=1738373164380162).
        in: query
        name: Access-Token
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                advertiser_id:
                  description: ''
                  type: string
                  x-open-allow-strlist: false
                  x-open-allow-strnum: false
                  x-open-convert:
                  - int64(%s)
                  x-open-field-id: 1
                  x-open-source: $.http.body.advertiser_id
                partner_name:
                  description: ''
                  type: string
                  x-open-allow-strlist: false
                  x-open-allow-strnum: false
                  x-open-field-id: 4
                  x-open-source: $.http.body.partner_name
                pixel_category:
                  description: ''
                  type: string
                  x-open-allow-strlist: false
                  x-open-allow-strnum: false
                  x-open-enum:
                    enum_package_expired: false
                    enum_package_id: 1802417609811970
                    enum_package_name: PixelCategory
                    enums:
                    - description: ''
                      is_valid: true
                      key: CONTACTS
                      value: '3'
                    - description: ''
                      is_valid: true
                      key: CUSTOMIZE_EVENTS
                      value: '5'
                    - description: ''
                      is_valid: true
                      key: FILLING_FORM
                      value: '2'
                    - description: ''
                      is_valid: true
                      key: LANDING_PAGE
                      value: '4'
                    - description: ''
                      is_valid: true
                      key: ONLINE_STORE
                      value: '1'
                    key_format: string
                    strict: true
                    use_part: false
                    validate_only: false
                    value_format: int32
                  x-open-field-id: 3
                  x-open-source: $.http.body.pixel_category
                pixel_name:
                  description: ''
                  type: string
                  x-open-allow-strlist: false
                  x-open-allow-strnum: false
                  x-open-field-id: 2
                  x-open-source: $.http.body.pixel_name
                  x-open-validate:
                  - error_msg: pixel_name cannot be empty.
                    expr: len(%s) > 0
              required:
              - advertiser_id
              - pixel_name
              type: object
              x-open-allow-strlist: false
              x-open-allow-strnum: false
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  code:
                    description: Response code. For the complete list of response codes and descriptions, see [Appendix - Return Codes](https://ads.tiktok.com/marketing_api/docs?id=1737172488964097). Will be shown only if it is an error request.
                    format: int64
                    type:
                    - integer
                    - 'null'
                    x-open-allow-strlist: false
                    x-open-field-id: 4
                  data:
                    description: Returned data. The response for the SDK can be checked in the document for the API given in the description.
                    properties: {}
                    type:
                    - object
                    - 'null'
                    x-open-allow-strlist: false
                    x-open-field-id: 1
                    x-open-source: $.rpc.output.data
                  message:
                    description: Response message. For details, see [Appendix - Return Codes](https://ads.tiktok.com/marketing_api/docs?id=1737172488964097).
                    type:
                    - string
                    - 'null'
                    x-open-allow-strlist: false
                    x-open-field-id: 3
                  request_id:
                    description: The log ID of a request, which uniquely identifies the request.
                    type:
                    - string
                    - 'null'
                    x-open-allow-strlist: false
                    x-open-field-id: 2
                type: object
                x-open-allow-strlist: false
          description: OK
      summary: Create a Pixel. [Pixel Create](https://business-api.tiktok.com/portal/docs?id=1740858779758593)
      tags:
      - Measurement
      x-open-allowlist: {}
      x-open-denylist: {}
      x-open-rules:
        base_rule: null
        extra_rule:
          base_source: []
          http_query_source: []
          http_source:
          - name: advertiser_id
            required: true
            source: $.http.body.advertiser_id
            type: number
          - name: pixel_name
            required: true
            source: $.http.body.pixel_name
            type: string
          - name: pixel_category
            required: false
            source: $.http.body.pixel_category
            type: number
          - name: partner_name
            required: false
            source: $.http.body.partner_name
            type: string
        plugins:
          after_response: []
          before_request: []
        request_query_rule: null
        request_rule:
          advertiser_id: $.http.body.advertiser_id
          partner_name: $.http.body.partner_name
          pixel_category: $.http.body.pixel_category
          pixel_name: $.http.body.pixel_name
        response_cookie: []
        response_header: []
        response_rule:
          advanced_matching_fields: $.rpc.output.advanced_matching_fields
          partner_name: $.rpc.output.partner_name
          pixel_category: $.rpc.output.pixel_category
          pixel_code: $.rpc.output.pixel_code
          pixel_id: $.rpc.output.pixel_id
          pixel_name: $.rpc.output.pixel_name
      x-open-scene-labels: []
      x-open-settings:
        pop_resp_nullvalue: false
  /pixel/event/create/:
    post:
      operationId: Pixel Event Create
      parameters:
      - description: Authorized access token. For details, see [Authentication](https://ads.tiktok.com/marketing_api/docs?id=1738373164380162).
        in: query
        name: Access-Token
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                advertiser_id:
                  description: ''
                  type: string
                  x-open-allow-strlist: false
                  x-open-allow-strnum: false
                  x-open-convert:
                  - int64(%s)
                  x-open-field-id: 1
                  x-open-source: $.http.body.AdvID
                pixel_events:
                  description: ''
                  items:
                    properties:
                      currency:
                        description: ''
                        type: string
                        x-open-allow-strlist: false
                        x-open-allow-strnum: false
                        x-open-enum:
                          enum_package_expired: false
                          enum_package_id: null
                          enum_package_name: null
                          enums:
                          - description: ''
                            is_valid: true
                            key: USD
                            value: '0'
                          - description: ''
                            is_valid: true
                            key: JPY
                            value: '1'
                          - description: ''
                            is_valid: true
                            key: INR
                            value: '2'
                          key_format: string
                          strict: true
                          use_part: false
                          validate_only: false
                          value_format: int32
                        x-open-field-id: 6
                        x-open-source: $.http.body.Events[].Currency
                      currency_value:
                        description: ''
                        type: string
                        x-open-allow-strlist: false
                        x-open-allow-strnum: false
                        x-open-field-id: 7
                        x-open-source: $.http.body.Events[].CurrencyValue
                      event_code:
                        description: ''
                        type: string
                        x-open-allow-strlist: false
                        x-open-allow-strnum: false
                        x-open-field-id: 2
                        x-open-source: $.http.body.Events[].PixelEventCode
                      event_id:
                        description: ''
                        type: string
                        x-open-allow-strlist: false
                        x-open-allow-strnum: false
                        x-open-convert:
                        - int64(%s)
                        x-open-field-id: 1
                        x-open-source: $.http.body.Events[].PixelEventID
                      event_name:
                        description: ''
                        type: string
                        x-open-allow-strlist: false
                        x-open-allow-strnum: false
                        x-open-field-id: 8
                        x-open-source: $.http.body.Events[].EventName
                      event_type:
                        description: ''
                        type: string
                        x-open-allow-strlist: false
                        x-open-allow-strnum: false
                        x-open-enum:
                          enum_package_expired: false
                          enum_package_id: 1803595545929730
                          enum_package_name: PixelEventType
                          enums:
                          - description: ''
                            is_valid: true
                            key: ADD_BILLING
                            value: '266'
                          - description: ''
                            is_valid: true
                            key: BUTTON
                            value: '5'
                          - description: ''
                            is_valid: true
                            key: CONSULT
                            value: '97'
                          - description: '[DEPRECATED] use button instead'
                       

# --- truncated at 32 KB (78 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/tiktok-ads/refs/heads/main/openapi/tiktok-ads-measurement-api-openapi.yml