Search sounds
search · $0.0040The Sounds tab.
Body
A type written with ? is optional. Unknown fields are rejected rather than ignored, and the whole body is capped at 64 KiB.
Example
curl -X POST https://api.sorina.sh/v1/tiktok/search/music \
-H "authorization: Bearer $SORINA_KEY" \
-H 'content-type: application/json' \
-d '{"keyword":"nasa","cursor":0,"count":10}'What comes back
JSON, around 313 KB. Two parallel containers hold the same tracks: music is the flat list — id_str, title, author, album, covers, play_url, duration, user_count — and music_info_list is the card view, the same tracks plus example videos using them under aweme_list.
Take music unless you want the example videos. total is here and nowhere else — this is the only vertical that reports a match count.
play_url entries carry an x-expires stamp and stop working once it passes. Fetch what you need; do not store the URL.
Send the value the previous response returned, not one you counted. Page two and later must also carry the first page's x-tt-logid back as search_id, or the call is refused with 400 search_id_required. Pagination has the rest.