Account Configuration

Advanced Niche Warming – Recorded, Verified Account Warming

Advanced Niche Warming via the TokPortal API: buy niche targets at bundle creation, configure them on the bundle, and get screen-recorded, AI-verified warming with a data report.

Advanced Niche Warming

Advanced Niche Warming is TokPortal's recorded, verified warming product for TikTok and Instagram accounts. For each niche target (a search term that matches your niche), the account manager:

  1. Starts a screen recording on the account profile (the account's @handle visible — identity proof),
  2. searches the target on the platform,
  3. watches videos from the results,
  4. likes and saves several of them,
  5. leaves a comment.

One recording per target, dispatched over the 3 warming days. Every recording is verified before it counts, and each verified target produces a client report (videos watched, likes, saves, comments, keywords seen, sample videos, proof recording link). When all targets are verified you receive an aggregated session report.

Price: 3 credits per target. Targets are bought in counts of 3 to 30, in multiples of 3.


The flow: buy a count, configure the targets, warming starts

1. Buy the target count at bundle creation

Pass wants_advanced_warming: true and advanced_warming_terms_count on POST /bundles (or POST /bundles/bulk — the count is per account):

curl -X POST https://app.tokportal.com/api/ext/bundles \
  -H "X-API-Key: sk_xxx" \
  -H "Content-Type: application/json" \
  -d '{
    "bundle_type": "account_only",
    "platform": "tiktok",
    "country": "US",
    "wants_advanced_warming": true,
    "advanced_warming_terms_count": 9
  }'

The 27 credits (9 × 3) are charged at creation. You don't need the actual targets yet.

Prefer to send the targets immediately? Pass advanced_warming_terms instead of the count — that is a one-shot configuration and skips step 2.

2. Configure the targets on the bundle

Write the niche targets with PUT /bundles/{id}/account using advanced_warming_terms — like niche warming instructions, but exact:

Configure at any time: PUT /bundles/{id}/warming-terms with {"advanced_warming_terms": [...]} sets the targets at ANY account status — use it when the manager has already accepted the mission or submitted the account (the warming session then starts immediately). The configure-account route only works while the account profile is still editable.

curl -X PUT https://app.tokportal.com/api/ext/bundles/bnd_abc123/account \
  -H "X-API-Key: sk_xxx" \
  -H "Content-Type: application/json" \
  -d '{
    "username": "fitfuel.daily",
    "visible_name": "FitFuel Daily",
    "biography": "Daily fitness meals.",
    "profile_picture_url": "https://cdn.example.com/logo.jpg",
    "advanced_warming_terms": [
      "healthy meal prep", "high protein recipes", "quick healthy dinner",
      "gym meal ideas", "macro friendly meals", "protein snacks",
      "meal prep sunday", "fitness breakfast", "low calorie desserts"
    ]
  }'

Rules:

  • The array must sanitize to exactly the purchased count (targets are trimmed, deduplicated case-insensitively, entries of 2-50 characters). Otherwise: 400 ADVANCED_WARMING_TERMS.
  • Configuration is one-shot per purchase — afterwards you get 409 WARMING_TERMS_ALREADY_SET.
  • No targets in mind? Generate them from a niche description with POST /warming/generate-terms (free).

3. Warming starts

  • If the account/order is already active (existing-account bundle with an assigned manager, or a new account already submitted), warming starts the moment the targets are configured — the warming.session_started webhook fires.
  • Otherwise it starts automatically when the manager submits the new account (or accepts the order for existing-account bundles).

Track progress via GET /warming-sessions/{id}, GET /accounts/{id}/warming-sessions, the advanced_warming summary on the bundle account payload (status, terms_total, terms_verified, terms_configured, started_at, completed_at), and the warming.term_verified / warming.session_completed webhooks.


14-day auto-refund

If you buy a target count but never configure the targets, the purchase does not linger: 14 days after creation the warming session is automatically cancelled and the full warming cost is refunded to your credit balance. The rest of the bundle is unaffected.

(Separately, once a session has started, targets not completed within 5 days expire with a per-target refund.)


Rewarm a delivered account

Advanced Niche Warming can also be ordered later on an account you already own via POST /accounts/{id}/rewarm — there the search_terms are required in the request (no deferred configuration), and the session starts immediately. It requires an active order with an assigned manager.


Error codes

StatusCodeMeaning
400ADVANCED_WARMING_TERMSInvalid targets/count: provide advanced_warming_terms (3-30, multiple of 3, entries 2-50 chars) or advanced_warming_terms_count (3-30, multiple of 3); at configuration time the targets must match the purchased count exactly.
400ADVANCED_WARMING_PLATFORMTikTok and Instagram only.
400WARMING_CONFLICTMutually exclusive with wants_niche_warming.
400DEEP_WARMING_DEPRECATEDDeep warming is discontinued — use Advanced Niche Warming.
404WARMING_SESSION_NOT_FOUNDNo warming session to configure on this bundle.
409WARMING_TERMS_ALREADY_SETTargets already configured (or session already started) — one-shot per purchase.
409REWARM_ALREADY_ACTIVEA warming session is already active for this account.
409REWARM_NO_ACTIVE_ORDERRewarm requires an active order with an assigned manager.