TikTok identity and publish prerequisites

Every TikTok ad needs an identity. Wevion checks TT_USER, lets you create a CUSTOMIZED_USER, and preflights pixel, catalog, app, lead form per objective.

Written By Salvatore Sinigaglia

Last updated About 2 hours ago

Every TikTok ad needs an identity. Wevion checks TT_USER, lets you create a CUSTOMIZED_USER, and preflights pixel, catalog, app, lead form per objective.

TikTok identity and publish prerequisites

Every TikTok ad must run under an identity β€” the profile the ad appears from. Wevion checks whether your advertiser has a TT_USER identity (a linked TikTok account), lets you create a CUSTOMIZED_USER identity when none exists, and runs a publish preflight that also verifies pixel, catalog, app, and lead form depending on your campaign objective.

Who is this for

Mediabuyers publishing TikTok ads through Wevion who hit a "missing identity" or "missing prerequisite" prompt before launch. TikTok requires an authorized identity on every ad; this article explains the two identity types and what each objective needs.

Two identity types

TypeWhat it isCreated how
TT_USERA real TikTok account linked to the advertiser (Spark Ads / authorized post use)Authorized manually from the TikTok app β€” cannot be created via API
CUSTOMIZED_USERA custom display profile (name + optional image) used for the adCreated in Wevion via the TikTok API

Wevion prefers a TT_USER identity and falls back to CUSTOMIZED_USER when checking publish readiness.

Checking identity

Wevion calls GET /api/v1/tiktok/identities/check?advertiser_id=<id>, which asks TikTok for the advertiser's TT_USER identities and returns:

  • hasIdentity: true with the identity id and display name when one exists
  • hasIdentity: false with a reason: no_token (no active TikTok connection), no_tt_user (connected but no TT_USER), or api_error

To list all identities of both types, Wevion uses GET /api/v1/tiktok/identities?advertiser_id=<id>, returning each identity's identity_id, identity_type (TT_USER or CUSTOMIZED_USER), display_name, and image.

Creating a CUSTOMIZED_USER identity

When there's no usable identity, you can create a custom one via POST /api/v1/tiktok/identities:

  • advertiser_id (required)
  • display_name (required, max 40 characters β€” Wevion truncates longer names)
  • image_uri (optional β€” a TikTok image reference obtained via TikTok's image upload API)

Creating an identity requires an active subscription. TT_USER identities cannot be created this way β€” they must be authorized from the TikTok app.

The publish preflight

Before you launch, Wevion runs a combined preflight via GET /api/v1/tiktok/publish-check?advertiser_id=<id>&objective=<objective>. It returns ready plus a missing list so the wizard can prompt you to fix each gap. The checks are:

PrerequisiteWhen it's required (objective)
identityAlways (TT_USER preferred, CUSTOMIZED_USER accepted)
pixelWEB_CONVERSIONS, CONVERSIONS
catalogPRODUCT_SALES, SHOP_PURCHASES
appAPP_PROMOTION, APP_INSTALL
leadFormLEAD_GENERATION

If no advertiser_id is supplied, Wevion uses the first advertiser from your active token. When nothing is connected, the preflight returns ready: false with identity missing.

Team fallback for preflight

Owners and managers can run the identity check and preflight even without their own connected TikTok account: Wevion prefers the caller's own active token, then falls back to any teammate's active token. Mediabuyers are limited to their own token, because own-data-only roles resolve to just their own session.

Typical flow before launch

  1. Open Campaign Creator for a TikTok objective
  2. Wevion runs the publish-check for that objective
  3. If identity is missing: authorize a TT_USER in the TikTok app, or create a CUSTOMIZED_USER in Wevion
  4. If pixel / catalog / app / leadForm is missing: set up the matching asset in TikTok (see ttk-102 for the pixel)
  5. Re-run the check until ready: true, then publish

Common issues

  • "identity" always missing: no active TikTok token, or the advertiser has neither a TT_USER nor a CUSTOMIZED_USER. Authorize a TT_USER in the TikTok app or create a CUSTOMIZED_USER.
  • Can't create a TT_USER in Wevion: correct β€” TT_USER identities are authorized only from the TikTok app; Wevion can create CUSTOMIZED_USER identities only.
  • Display name rejected / cut off: names over 40 characters are truncated to 40.
  • "pixel"/"catalog"/"app"/"leadForm" missing: the objective needs that asset. Create it in TikTok, then re-run the preflight.
  • Preflight returns no_token: connect TikTok first (see ttk-101).

FAQ

What is a TikTok identity in Wevion?

A TikTok identity is the profile a TikTok ad runs under. Wevion recognizes two types: TT_USER (a real TikTok account linked to the advertiser) and CUSTOMIZED_USER (a custom display profile with a name and optional image). Every TikTok ad needs one, so Wevion checks for a TT_USER first and accepts a CUSTOMIZED_USER as a fallback during the publish preflight.

Can I create a TikTok TT_USER identity from Wevion?

No. TT_USER identities must be authorized manually from the TikTok app and cannot be created through the API. In Wevion you can create a CUSTOMIZED_USER identity via POST /api/v1/tiktok/identities by supplying the advertiser id and a display name (max 40 characters, optional image). This gives you a valid publishing identity when no TT_USER is available.

What does the TikTok publish check verify?

Wevion's TikTok publish-check preflights everything an objective needs before launch: identity is always required, a pixel is needed for WEB_CONVERSIONS/CONVERSIONS, a catalog for PRODUCT_SALES/SHOP_PURCHASES, a registered app for APP_PROMOTION/APP_INSTALL, and a lead form for LEAD_GENERATION. It returns the list of missing prerequisites so you can fix each one before publishing.

Why does the preflight say I have no identity when TikTok is connected?

If TikTok is connected but the check reports no_tt_user, the advertiser has an active token but no linked TT_USER identity yet. Authorize a TikTok account as a TT_USER from the TikTok app, or create a CUSTOMIZED_USER identity in Wevion. Owners and managers can also run the check using a teammate's active token, while mediabuyers are limited to their own.