Collect sound
Save or unsave a sound on an authorized Enterprise session.
Upstream
/aweme/v1/music/collect/EnterpriseParameters
| Name | Type | Description |
|---|---|---|
account_idrequired | string | A connected account, from /dash/sessions or POST /v1/account/import. e.g. acc_7Hq2 |
music_idrequired | string | The numeric sound ID. e.g. 7569924403851462401 |
action | integer | 1 to collect, 0 to uncollect. e.g. 1 |
Pricing
| Plan | Per call | Per 1,000 calls |
|---|---|---|
| Starter | 15 credits | $1.74 |
| Growth | 15 credits | $1.19 |
| Scale | 15 credits | $0.87 |
Connected sessions run on FullPool and are for accounts you own or are authorized to operate. Enterprise. Request Enterprise access →
Response fields
| Field | Type | Description |
|---|---|---|
status_code | integer | Upstream TikTok mobile status code (0 indicates success). |
account_id | string | Connected session identifier bound to a dedicated FullPool mobile context. |
music_id | string | Unique music identifier. |
action | integer | Decoded action value. |
collected | boolean | Whether collected is enabled or true. |
log_pb | object | Upstream request trace envelope from the mobile gateway. |
log_pb.impr_id | string | Upstream TikTok impression / trace identifier. |
Responses
A 200 returns JSON with stable field names. Every response carries x-credits-cost, x-credits-tier and x-credits-remaining. Errors return a JSON body with a stable code and cost 0 credits. Error codes
import os
from tikultra import TikUltra
with TikUltra(api_key=os.environ["TIKULTRA_KEY"]) as client:
res = client.request(
"POST",
"/v1/account/music/collect",
json_body={
"account_id": "acc_7Hq2",
"music_id": "7569924403851462401",
"action": 1,
},
)
print(res.credits_cost, res.data){
"status_code": 0,
"account_id": "acc_7Hq2",
"music_id": "7569924403851462401",
"action": 1,
"collected": true,
"log_pb": {
"impr_id": "202611120200419F8E7D6C5B4A3210"
}
}More in Connected sessions
POST/v1/account/importGrowth+Import session25 crPOST/v1/account/login/otp/sendGrowth+Email sign-in: send code25 crPOST/v1/account/login/otp/verifyGrowth+Email sign-in: verify code25 crPOST/v1/account/sessionGrowth+Refresh session25 crGET/v1/account/healthGrowth+Session health15 crPOST/v1/account/session/cold-reopenGrowth+Cold reopen lifecycle15 crPOST/v1/account/session/warm-reopenGrowth+Warm reopen lifecycle15 crPOST/v1/account/session/backgroundGrowth+Session background flush10 crPOST/v1/account/session/tickGrowth+Session heartbeat tick10 crPOST/v1/account/applogGrowth+Flush AppLog batch15 crPOST/v1/account/realtime-feedbackGrowth+Realtime feed feedback15 crPOST/v1/account/warm/nicheGrowth+Warm session for niche25 crPOST/v1/account/warm/seed-accountsGrowth+Warm from seed creators25 crPOST/v1/account/warm/watch-itemGrowth+Watch item telemetry15 crGET/v1/account/upload/precheckGrowth+Upload precheck15 crPOST/v1/account/upload/videoGrowth+Publish video100 crPOST/v1/account/upload/slideshowGrowth+Publish slideshow100 crPOST/v1/account/upload/deleteGrowth+Delete post15 crPOST/v1/account/post/visibilityGrowth+Post visibility15 crGET/v1/account/upload/placesGrowth+Places for a post15 crPOST/v1/account/profile/updateGrowth+Update profile25 crPOST/v1/account/profile/usernameGrowth+Change username25 crPOST/v1/account/profile/avatarGrowth+Change avatar25 crPOST/v1/account/profile/privacyGrowth+Privacy settings25 crPOST/v1/account/settingsGrowth+App settings15 crPOST/v1/account/wellbeingGrowth+Digital wellbeing15 crGET/v1/account/studio/overviewGrowth+Studio analytics overview20 crGET/v1/account/studio/notificationsGrowth+Studio notifications20 crPOST/v1/account/commentGrowth+Post comment25 crPOST/v1/account/comment/likeGrowth+Like comment15 crPOST/v1/account/comment/unlikeGrowth+Unlike comment15 crPOST/v1/account/comment/deleteGrowth+Delete comment15 crPOST/v1/account/likeEnterpriseLike post15 crPOST/v1/account/followEnterpriseFollow creator20 crPOST/v1/account/repostEnterpriseRepost video15 crPOST/v1/account/shareEnterpriseRecord share15 crPOST/v1/account/favoriteEnterpriseBookmark post15 crGET/v1/account/dm/inboxGrowth+Inbox20 crGET/v1/account/dm/conversation/listGrowth+Conversations20 crGET/v1/account/dm/conversation/messagesGrowth+Conversation messages20 crPOST/v1/account/dm/conversation/createGrowth+Start conversation20 crPOST/v1/account/dm/conversation/readGrowth+Mark read20 crPOST/v1/account/dm/typingGrowth+Typing indicator15 crPOST/v1/account/dm/sendGrowth+Send message35 crPOST/v1/account/dm/send-imageGrowth+Send image35 crPOST/v1/account/dm/send-voiceGrowth+Send voice note35 crPOST/v1/account/dm/replyGrowth+Reply to message35 crPOST/v1/account/dm/stickerGrowth+Send sticker35 crPOST/v1/account/dm/share-videoGrowth+Share video35 crPOST/v1/account/dm/reactGrowth+React to message15 crPOST/v1/account/dm/recallGrowth+Unsend message15 crGET/v1/account/dm/group/infoGrowth+Group info20 crGET/v1/account/dm/group/membersGrowth+Group members20 crGET/v1/account/dm/streaksGrowth+Streaks20 crPOST/v1/account/live/startGrowth+Start LIVE100 crPOST/v1/account/live/pingGrowth+LIVE heartbeat15 crPOST/v1/account/live/finishGrowth+End LIVE15 crPOST/v1/account/live/moderateGrowth+Moderate LIVE20 crPOST/v1/account/live/cohostGrowth+Co-host20 crPOST/v1/account/live/battleGrowth+LIVE match20 crPOST/v1/account/live/viewerGrowth+LIVE viewer session20 crPOST/v1/account/live/giftGrowth+LIVE gift & wallet35 crGET/v1/account/shop/cartGrowth+Cart25 crGET/v1/account/shop/order-centerGrowth+Orders25 crGET/v1/account/shop/csGrowth+Shop support chat25 cr
Ready to build?
Start with 2,500 free credits and test every public endpoint, then pick a plan.