Supported Keys for TikTok Events API
This article lists all available web and online event data you can send to the TikTok Events API. For the best performance, you should always send additional parameters on top of the required ones if they are available on your domain(s).
Required Event Keys
You are required to provide all the following properties when creating the request to send a conversion event.
| Property | Description | Example Value | Web | Mobile |
|---|---|---|---|---|
event_type | The type of the user event. See Standard Events for list of available event types. | AddToCart | ✅ | ✅ |
event_id | Event ID tied to the conversion event for deduplication purposes. | 1234 | ✅ | ✅ |
event_time | The time when the event occurred, indicated as a Unix timestamp measured in seconds, and in UTC+0 time zone. | 1687758765 | ✅ | ✅ |
event_source | The URL of the web page where the event took place. Must include protocol such as http or https. | https://www.example.com/purchase | ✅ | ✅ |
event_manager | The CAPI program name. For TikTok Events API, set the value to 'tiktok'. | tiktok | ✅ | ✅ |
user_data | Use this property to pass the partner_id field. See User Data. | partner_id | ✅ | ✅ |
app_data | Use this property when sending mobile app events to pass the app information. See App Data. | app_data | ❌ | ✅ |
Standard Events
The table below lists all the standard events supported on the web, along with the recommended fields for the properties' object. Note that the name of the events are case-sensitive.
| Event | Descriptions | Recommended fields | Web | Mobile |
|---|---|---|---|---|
| AchieveLevel | Achieve a level | ❌ | ✅ | |
| AddPaymentInfo | Used when payment information is added in the checkout flow. | ✅ | ✅ | |
| AddToCart | Used when an item is added to the shopping cart. | content_type, quantity, description, content_id, currency, value | ✅ | ✅ |
| AddToWishlist | Used when an item is added to a wishlist. | content_type, quantity, description, content_id, currency, value | ✅ | ✅ |
| CheckOut | Checkout | quantity, description, content_id, currency, value | ❌ | ✅ |
| CompleteTutorial | Complete the tutorial | ✅ | ❌ | |
| ClickButton | Used when a button is clicked. | ✅ | ❌ | |
| CreateGroup | Create a group | ❌ | ✅ | |
| CreateRole | Create a role | ❌ | ✅ | |
| CompletePayment | Used when a payment is completed. | content_type, quantity, description, content_id, currency, value | ✅ | ❌ |
| CompleteRegistration | Used when a registration is completed. | ✅ | ❌ | |
| Contact | Used when contact or consultation occurs. | ✅ | ❌ | |
| CustomizeProduct | Used when someone customizes a product. | ✅ | ❌ | |
| Download | Used when a button to open an external browser download page is clicked. | ✅ | ❌ | |
| FindLocation | Used when someone tries to find your location. | ✅ | ❌ | |
| GenerateLead | Generate a lead | ❌ | ✅ | |
| InAppADClick | In-app ad click | ❌ | ✅ | |
| InAppADImpr | In-app ad impression | ❌ | ✅ | |
| InitiateCheckout | Used when the checkout process is started. | ✅ | ❌ | |
| InstallApp | Install the app | ❌ | ✅ | |
| JoinGroup | Join a group | ❌ | ✅ | |
| LaunchAPP | Launch the app | ❌ | ✅ | |
| LoanApplication | Apply for a loan | ❌ | ✅ | |
| LoanApproval | Loan is approved | ❌ | ✅ | |
| LoanDisbursal | Loan is disbursed | ❌ | ✅ | |
| Login | Log in successfully | ❌ | ✅ | |
| PlaceAnOrder | Used when an order is placed. | content_type, quantity, description, content_id, currency, value | ✅ | ❌ |
| Purchase | Complete payment | content_type, description, content_id, currency, value | ❌ | ✅ |
| Rate | Rate | ❌ | ✅ | |
| Registration | Complete the registration | ❌ | ✅ | |
| Schedule | Used when someone makes an appointment to speak with your business or visit your location. | ✅ | ❌ | |
| Search | Used when a search is made. | ✅ | ✅ | |
| SpendCredits | Spend credits | ❌ | ✅ | |
| StartTrial | Start the trial | ❌ | ✅ | |
| SubmitForm | Used when a form is submitted. | ✅ | ❌ | |
| Subscribe | Used when a subscription is made. | ✅ | ✅ | |
| UnlockAchievement | Unlock an achievement | ❌ | ✅ | |
| ViewContent | Used when a page is viewed. | content_type, quantity, description, content_id, currency, value | ✅ | ✅ |
User Data
| Property | Description | Example Value | Web | Mobile |
|---|---|---|---|---|
| partner_id | LiveRamp's Identity Envelope. | Aqs3wtOuqIRic78_s4Nqilcr0MGn0cDvKzvpEhSGVjwV8Ci0Jy73B1bkfpv03GwK2uyKbME4kSAtVFn_5sCLWstyHTnEWYurbjLXLpgtf9MfLP1AeDTUQ_0ESnD3x1pr6gYfBOOUH8BPhbfscxdaGUA-\_sacPab3nzc05koLhbqrJIQC7JBraEbpOJPDAHp9f44DXIXm | ✅ | ✅ |
| idfa | The iOS IDFA. For iOS 14 and above, ensure that IDFA data collection follows Apple’s policies. Both raw and SHA-256 IDFAs are accepted: - For raw IDFAs, all characters must be UPPERCASE. - For SHA-256 IDFAs, all characters must be lowercase, and any leading/trailing spaces must be trimmed before hashing. | AEBE52E7-03EE-455A-B3C4-E57283966239 | ❌ | ✅ |
| idfv | The iOS IDFV. | F325G3GB-12FC-352F-C6C3-DZ52F0F690D8 | ❌ | ✅ |
| gaid | The GAID (Google Advertising ID). Both raw and SHA-256 GAIDs are accepted. For both raw and SHA-256 GAIDs: - All characters must be lowercase. - Leading/trailing spaces must be trimmed before hashing | bk9384xs-p449-96ds-r132 | ❌ | ✅ |
| att_status | Whether the user has authorized your mobile app to access app-related data for measuring the user or the device. This is an iOS only field. Enum values: - AUTHORIZED: The user has authorized access to app-related data that can be used for measuring the user or the device. - DENIED: The user has not agreed to authorize your mobile app to access app-related data for measuring the user or the device via Apple's AppTrackingTransparency framework. If this field is set to DENIED, TikTok will not use the PII data (for instance, user email address or phone number) in this App Event for user-level matching. - NOT_DETERMINED: The user has not yet received an authorization request to authorize access to app-related data that can be used for measuring the user or the device. - RESTRICTED: The authorization to access app-related data is restricted. - NOT_APPLICABLE: The iOS version is below 14 or the device is running Android. | AUTHORIZED | ❌ | ✅ |
Custom Data
| Property | Description | Example Value | Web | Mobile |
|---|---|---|---|---|
| description | Description of the item or page. | Brown blazer | ✅ | ✅ |
| currency | The ISO 4217 currency code. The following curriencies are supported: AED, ARS, AUD, BDT, BHD, BIF, BOB, BRL, CAD, CHF, CLP, CNY, COP, CRC, CZK, DKK, DZD, EGP, EUR, GBP, GTQ, HKD, HNL, HUF, IDR, ILS, INR, ISK, JPY, KES, KHR, KRW, KWD, KZT, MAD, MOP, MXN, MYR, NGN, NIO, NOK, NZD, OMR, PEN, PHP, PHP, PKR, PLN, PYG, QAR, RON, RUB, SAR, SEK, SGD, THB, TRY, TWD, UAH, USD, VES, VND, ZAR . | USD | ✅ | ✅ |
| ttclid | TikTok Click ID, a data connection parameter appended to a landing page URL whenever a user clicks on an ad on TikTok. | 154156346845646846846514654184 | ✅ | ❌ |
| ttp | Cookie ID, if you also use Pixel SDK and have enabled cookies, Pixel SDK automatically saves a unique identifier in the \_ttp cookie. The value of \_ttp is used to match website visitor events with TikTok ads. You can extract the value of \_ttp and attach the value here. | 05649645695464646416 | ✅ | ❌ |
| content_type | The type of content in the event. Enum values: product, product_group.- When the content_id in the contents parameter is specified as sku_id, set this field to product.- When the content_id in the contents parameter is specified as item_group_id, set this field to product_group. | product | ✅ | ✅ |
| value | Value of the order or items sold. The value should always be formatted as an integer or decimal (for instance, 10.00) regardless of the location, currency, or other factors. It should not contain any currency symbols, special characters, letters, or commas. The price parameter specifies the price for a single item, and value specifies the total price of the order. For example, if you have two items each sold for ten dollars, the price parameter would be 10.00 and the value parameter would be 20.00. | 20 | ✅ | ✅ |
| order_id | The order ID. | 1145 | ✅ | ❌ |
| shop_id | The shop ID. | 112 | ✅ | ❌ |
| referrer | The referrer URL. For example, document.referrer in the client side Javascript, or the server side Referer http header. We recommend using the full URL, including all URL parameters. | https://www.example.com/home | ✅ | ❌ |
| contents | Relevant products in an event with product information. | { ""price"": 100.0, ""quantity"": 2, ""content_id"": ""12345"", ""content_name"": ""Fancy-AirMax2.0 Black"", ""content_category"": ""Shoes - Running Shoes"", ""brand"": ""Fancy Sneakers"" } | ✅ | ✅ |
| limited_data_use | Limited Data Use is an optional data processing option that gives you more control over how your data is used in the CAPI provider's systems to better support your compliance efforts. When the CAPI provider receives data with Limited Data Use enabled, they will process that data in accordance with their role as a service provider or processor, as applicable, and limit the use of that data. | true | ✅ | ✅ |
App Data
| Property | Description | Example Value | Web | Mobile |
|---|---|---|---|---|
| appid _string Required for Mobile Events | Mobile App ID. 1. For iOS Apps, use the app ID found in the App Store URL 1a) Example: Apple Store URL: https://apps.apple.com/us/app/angry-birds/id343200656 1b) id = "343200656" 2. For Android Apps in the Google Play store, use the app ID found in the Google Play store URL. 2a) Example: Google Play store URL: https://play.google.com/store/apps/details?id=com.rovio.angrybird 2b) id = "com.rovio.angrybirds" 3. For Android Apps not in the Google Play store, use the package name. | com.rovio.angrybirds | ❌ | ✅ |
| appname _string | Application name. | Angry Birds | ❌ | ✅ |
| appversion _string | App version number. | 3.0.2 | ❌ | ✅ |
Updated 10 months ago