Kwai integration plan
Note that data generated by third-party data integration counts toward the cluster's data consumption
Summary
Interface overview
| Interface | Type | Granularity | Attribution | Cost | Revenue | Impressions | Clicks | Conversions |
|---|---|---|---|---|---|---|---|---|
| Marketing API | API | Aggregated metrics | ✅ | ✅ | ✅ | ✅ |
The AE system currently supports connecting the ad creative data of Kwai, Kuaishou's overseas business platform, and supports getting aggregated metric data at the ad creative level, such as cost, clicks, and impressions
Integration process
- Log in to the AE backend, go to the Third-party Integration module, add a Kwai integration plan, complete the related configuration, and copy the authorization callback URL
- Create a new account in the Kwai backend and use an admin account to add the developer role to it. Complete the developer application and create an app
- Go back to the AE backend, edit the Kwai integration plan you created earlier to use the app's Client ID and secret, and open the authorization link to complete authorization
- Check whether the AE system receives the data successfully, and build reports
1. Plan configuration
Before connecting Kwai platform data, you need to create the corresponding integration plan in the AE backend and get the authorization callback URL. Follow this document to create the integration plan
1.1 Enter temporary authorization information
First, click the Configure authorization information button in the authorization information section. In the authorization information pop-up, enter any values in the three authorization fields as temporary authorization information. You'll need to update them after you create the app on the Kwai platform.
1.2 Sync Schedule
In the Sync Schedule module, you can set the policy for the AE system to pull Kwai Marketing API data on a schedule. You can choose to pull data for a period of time at a specific time every day. Because pulled data also counts toward the data volume, avoid pulling data for overly long periods on a schedule
1.3 Pull time zone
You can also set the time zone of the pulled data. The default is UTC+8
1.4 Receive Settings
You can control whether the data is written as events. If you turn this off, the data is not written to the event table, so do not turn off this setting.
1.5 Configuration
Finally, in the Configuration module, you can control the detailed settings of data pulling, including the time aggregation granularity of the data, the metric fields and dimensions to pull, and the event name after ingestion.
The content of the configuration is a JSON, which you can customize as follows:
| Module | Name | Description |
|---|---|---|
| sink_event | event_name | Event name after ingestion; customizable |
| source | time_granularity | Time aggregation granularity of the data, that is, whether the pulled data is aggregated by day or by hour Valid values: day, hour |
| transfer | double_columns | Metric fields. Do not modify |
1.6 Get the authorization callback URL
After completing the above configuration, click Save and authorize in the upper-right corner to get the authorization information. Copy the authorization callback URL from the first step and keep it safe. Then click Reject authorization. to close the pop-up:
The plan is already saved when you click Save and authorize, so you don't need to save it separately. You have now temporarily completed the configuration in the AE backend. Next, complete the related configuration in the Kwai backend.
2. Create a developer account on the Kwai platform and create an app
2.1 Create a developer role account
The Kwai platform currently can't switch an account with a non-developer role (such as the optimizer role) to the developer role, and it can't switch a developer role account to a non-developer role either. Therefore, you need to create a new account and set it to the developer role. The steps are as follows:
- First, go to the Kwai backend page and click register to create a new account (we recommend registering with your company email address and keeping the account and password safe).
- Log in to Business Center with an admin account, go to the Permission Management page, and click Add Member
- On the Add Member page, enter the member's name. In Bind Email, enter the email address you used to register the new account in the first step. In Select Team, select the same option as the admin's team. In Select Role, select Developer. After completing the configuration, the new account you created earlier gets the developer role.
2.2 Apply for developer permissions
Log in to Business Center with the developer role account, apply to become a developer, and create an app
- APP Name: the app name, which can be customized
- Callback URL: the authorization callback URL, that is, the URL you got in section 1.6. Enter it here
2.3 Complete authorization
After the developer review is approved, you can see the app you created earlier in APP List
Click the app to view its basic information, and copy the CLIENT ID and Secret
3. Go back to the AE backend and complete authorization
After completing the configuration in the Kwai backend, go back to the AE backend, open the Kwai integration plan you created earlier, and click the Configure authorization information button under Authorization Information:
Next, enter the CLIENT ID and Secret you got from the Kwai backend in the corresponding fields, and in Account ID List, enter the IDs of the Kwai ad platform accounts you want to pull data from, separating multiple IDs with ",". After editing, click the save button:
Then click Save and authorize in the upper-right corner to open the authorization information pop-up again. Click Go to authorization to open the authorization page of the Kwai platform, and log in to your Kwai platform ad account to complete authorization. If the plan has been saved but authorization isn't complete, the top of the plan page shows the tip bar "The current plan hasn't completed authorization, and data can't be connected. Go to authorization". You can also click Go to authorization in the tip bar to open the authorization information pop-up
After completing authorization, in Authorization Information, click I have completed the above two steps in the lower-left corner, and then click Complete Authorization in the lower-right corner to finish the configuration. You have now completed the data integration for the Kwai platform.
4. Data ingestion
4.1 Ingestion rules
- Because the creative report is aggregated data, we use a fixed value as the user identifier. You can think of all the data as attached to one virtual user
- The time field in the data, that is, the data time, is used as the event's #event_time
- The default event name is: kwai_ads_creative_report
- All other fields are ingested
4.2 Included fields
The ad creative data supports pulling the following fields:
| Field name | Name and notes |
|---|---|
| time | Timestamp (converted to the time type) |
| #zone_offset | Time zone (extracted from timeZoneIana) |
| accountid | Ad account ID |
| accountname | Ad account name |
| campaignid | Campaign ID |
| campaignname | Campaign name |
| unitid | Ad group ID |
| unitname | Ad group name |
| creativeid | Ad creative ID |
| creativename | Ad creative name |
| id | Ad creative ID |
| cost | Spend, in the same currency as the account's delivery platform. The value has 6-digit precision. The actual amount is cost divided by 1000000 Example: if the delivery currency is USD, actual spend = cost / 1000000 (USD) Note: the AE system doesn't process the cost field, but the standardized field te_ads_object.cost is divided by 1000000 |
| exposure | Impressions |
| click | Clicks |
| action | Conversions |
| cpm | Cost per 1,000 impressions, in the same currency as the account's delivery platform. |
| cpc | Cost per click, in the same currency as the account's delivery platform. |
| ctr | Click-through rate |
| cvr | Conversion rate |
| cpa | Average cost per conversion, in the same currency as the account's delivery platform. |
| play3s | 3-second plays |
| play5s | 5-second plays |
| playfinished | Completed plays |
| registration | Registrations reported back by the advertiser, consistent with the account's delivery platform. |
| costperregistration | Registration conversion cost reported back by the advertiser, consistent with the account's delivery platform. |
| registrationrate | Registration conversion rate reported back by the advertiser, consistent with the account's delivery platform. |
| addtocart | Add-to-carts reported back by the advertiser, consistent with the account's delivery platform. |
| costperaddtocart | Add-to-cart conversion cost reported back by the advertiser, consistent with the account's delivery platform. |
| addtocartrate | Add-to-cart conversion rate reported back by the advertiser, consistent with the account's delivery platform. |
| applaunch | App launches reported back by the advertiser, consistent with the account's delivery platform. |
| costperapplaunch | App launch conversion cost reported back by the advertiser, consistent with the account's delivery platform. |
| applaunchrate | App launch conversion rate reported back by the advertiser, consistent with the account's delivery platform. |
| activation | Activations reported back by the advertiser, consistent with the account's delivery platform. |
| costperactivation | Activation conversion cost reported back by the advertiser, consistent with the account's delivery platform. |
| activationrate | Activation conversion rate reported back by the advertiser, consistent with the account's delivery platform. |
| pageview | Page views reported back by the advertiser, consistent with the account's delivery platform. |
| costperpageview | Page view conversion cost reported back by the advertiser, consistent with the account's delivery platform. |
| pageviewrate | Page view conversion rate reported back by the advertiser, consistent with the account's delivery platform. |
4.3 Standardized fields
The AE system standardizes the following fields:
| Original field | Standardized field | Description |
|---|---|---|
| accountid | te_ads_object.ad_account_id | Ad account ID |
| campaignid | te_ads_object.campaign_id | Campaign ID |
| campaignname | te_ads_object.campaign_name | Campaign name |
| unitid | te_ads_object.ad_group_id | Ad group ID |
| unitname | te_ads_object.ad_group_name | Ad group name |
| creativeid | te_ads_object.ad_id | Ad creative ID |
| creativename | te_ads_object.ad_name | Ad creative name |
| exposure | te_ads_object.impressions | Impressions |
| click | te_ads_object.clicks | Clicks |
| action | te_ads_object.installs | Conversions |
| cost | te_ads_object.cost | User acquisition cost |

