Guides / Run modes / Connected sessions

Connected sessions

Bind sessions you own to dedicated 1:1 mobile contexts (FullPool) to publish, manage comments and DMs, and host LIVE. Growth and Scale.

How it works

Each connected account runs on its own FullPool context: one device, pinned to one city, with the client it was bound with. High-level /v1/account/* calls run on that context, and the gateway keeps the session state consistent around each action (token refreshes, the right device and region), so one API call is one action.

Only accounts you own or are authorized to operate. See the acceptable use policy.

Bind a session

Import a session you exported from your own device with POST /v1/account/import, or sign in with a one-time email code (/v1/account/login/otp/send, then /verify). Pass device_id to bind to a device you already provisioned, or os, app_flavour, app_version, region and city to provision one.

ActionEndpointCost
Import sessionPOST /v1/account/import25 cr
Email sign-in: send codePOST /v1/account/login/otp/send25 cr
Email sign-in: verify codePOST /v1/account/login/otp/verify25 cr
Refresh sessionPOST /v1/account/session25 cr
Session healthGET /v1/account/health15 cr

Publish in one call

POST /v1/account/upload/video takes the media and every post setting in one request. The gateway gets the upload authorization, transfers the file in chunks, runs the media precheck and creates the post. Send multipart/form-data with a file, or JSON with video_url or video_base64.

cURLPythonNode.jsJSON bodypublish
curl -X POST https://api.tikultra.com/v1/account/upload/video \
  -H "x-api-key: $TIKULTRA_KEY" \
  -F "[email protected]" \
  -F "account_id=acc_7Hq2" \
  -F "caption=Launch film" \
  -F "hashtags=keyboards" \
  -F "visibility=public" \
  -F "allow_comment=true" \
  -F "allow_duet=true" \
  -F "allow_stitch=true" \
  -F "cover_timestamp_ms=1200"

Settings: caption, hashtags, mentions, visibility, allow_comment, allow_duet, allow_stitch, allow_download, cover_timestamp_ms, poi_id, music_id, schedule_time, aigc_generated, shop_product_ids. Slideshows work the same way with files[] or images.

Everything else

ActionEndpointCost
Update profilePOST /v1/account/profile/update25 cr
Change usernamePOST /v1/account/profile/username25 cr
Privacy settingsPOST /v1/account/profile/privacy25 cr
Post commentPOST /v1/account/comment25 cr
Delete commentPOST /v1/account/comment/delete15 cr
InboxGET /v1/account/dm/inbox20 cr
Send messagePOST /v1/account/dm/send35 cr
ConversationsGET /v1/account/dm/conversation/list20 cr
Start LIVEPOST /v1/account/live/start100 cr
Moderate LIVEPOST /v1/account/live/moderate20 cr
End LIVEPOST /v1/account/live/finish15 cr
CartGET /v1/account/shop/cart25 cr

Manage sessions

See every connected account, its bound device, health and last 24 hours of activity in Connected accounts, and the devices themselves in Devices. Removing a session stops it immediately.