이 엔드포인트가 도움이 되는 일
응답은 사용 가능한 프로필 필드를 정규화된 V2 형식 또는 플랫폼 고유의 V1 형식으로 제공합니다.
적합한 사용 시점
객체를 이미 알고 있고 제품에 현재 공개 컨텍스트가 필요할 때 "사용자 UID별 동영상"을 사용하세요.
먼저 결과와 일반적인 워크플로를 확인한 다음 매개변수와 작동하는 요청 예제로 넘어가세요.
응답은 사용 가능한 프로필 필드를 정규화된 V2 형식 또는 플랫폼 고유의 V1 형식으로 제공합니다.
객체를 이미 알고 있고 제품에 현재 공개 컨텍스트가 필요할 때 "사용자 UID별 동영상"을 사용하세요.
제품의 알려진 객체를 TikTok 공개 필드로 보완하세요.
후속 처리 전에 식별자와 현재 공개 컨텍스트를 확인하세요.
객체 세부 정보를 보고서, 평가, 관련 요청의 입력으로 사용하세요.
두 버전 모두 같은 작업을 해결하며 같은 매개변수를 받습니다. 전환기로 응답 구조를 비교하고 클라이언트가 기대하는 버전을 선택하세요.
이 페이지에서 버전을 전환하면 같은 문서 URL에서 응답 구조를 비교할 수 있습니다.
인증, 필수 매개변수, 요청 형태는 V1과 V2에서 같습니다. 실제로는 엔드포인트 경로를 구성할 때와 응답을 읽을 때 버전을 선택합니다.
주요 차이는 응답 봉투입니다. 새 연동에는 V2를 사용하고, 기존 클라이언트 계약과의 호환성이 필요한 경우에만 V1을 유지하세요.
두 버전 모두 같은 API 키 헤더와 같은 쿼리 매개변수를 사용합니다. 이 문서는 먼저 공통 매개변수를 보여 준 다음 각 버전의 경로와 코드 스니펫을 보여 줍니다.
| 매개변수 | 필수 | 유형 | 예시 | 설명 |
|---|---|---|---|---|
user_uid |
예 | str |
MS4wLjABAAAAexampleSecUid |
TikTok secUid returned by the profile endpoint. The numeric user_id field is not accepted. Example: MS4wLjABAAAAexampleSecUid. |
cursor |
아니요 | str | None |
20 |
이전 응답에서 받은 다음 페이지 커서. 첫 페이지에서는 생략합니다. |
정확한 엔드포인트 경로, 예시 URL, 코드 스니펫을 복사할 때 버전을 선택하세요. 위의 매개변수 목록은 바뀌지 않습니다.
GET /api/v2/tiktok.com/profile/videos-by-user-uidcurl --request GET \
--url "https://www.scrapestorm.net/api/v2/tiktok.com/profile/videos-by-user-uid" \
--header "X-API-Key: 00000000-0000-4000-8000-000000000000" \
--get --data-urlencode 'user_uid=MS4wLjABAAAAexampleSecUid' \
# Optional parameters:
# --data-urlencode 'cursor=20'
from urllib.parse import urljoin
import requests
BASE_URL = "https://www.scrapestorm.net"
ENDPOINT = "/api/v2/tiktok.com/profile/videos-by-user-uid"
HEADERS = {"Accept": "application/json", "X-API-Key": "00000000-0000-4000-8000-000000000000"}
params = {
"user_uid": "MS4wLjABAAAAexampleSecUid",
}
# Optional parameters
# params["cursor"] = "20"
with requests.Session() as session:
response = session.request(
method="GET",
url=urljoin(BASE_URL, ENDPOINT),
headers=HEADERS,
params=params,
timeout=30,
)
response.raise_for_status()
payload = response.json()
print(payload)
const BASE_URL = "https://www.scrapestorm.net";
const endpoint = "/api/v2/tiktok.com/profile/videos-by-user-uid";
const params = new URLSearchParams({
user_uid: "MS4wLjABAAAAexampleSecUid",
});
// Optional parameters
// params.set("cursor", "20");
const response = await fetch(`${BASE_URL}${endpoint}?${params.toString()}`, {
method: "GET",
headers: {
Accept: "application/json",
"X-API-Key": "00000000-0000-4000-8000-000000000000",
},
});
if (!response.ok) {
throw new Error(`Request failed: ${response.status} ${response.statusText}`);
}
const payload = await response.json();
console.log(payload);
import axios from "axios";
const client = axios.create({
baseURL: "https://www.scrapestorm.net",
timeout: 30000,
headers: {
Accept: "application/json",
"X-API-Key": "00000000-0000-4000-8000-000000000000",
},
});
const params = {
user_uid: "MS4wLjABAAAAexampleSecUid",
};
// Optional parameters
// params.cursor = "20";
const { data: payload } = await client.request({
method: "GET",
url: endpoint,
params,
});
console.log(payload);
<?php
declare(strict_types=1);
use GuzzleHttp\Client;
use GuzzleHttp\Exception\GuzzleException;
$client = new Client([
'base_uri' => "https://www.scrapestorm.net",
'timeout' => 30.0,
'headers' => [
'Accept' => 'application/json',
'X-API-Key' => "00000000-0000-4000-8000-000000000000",
],
]);
$query = [
"user_uid" => "MS4wLjABAAAAexampleSecUid",
];
// Optional parameters
// $query["cursor"] = "20";
try {
$response = $client->request("GET", "/api/v2/tiktok.com/profile/videos-by-user-uid", [
'query' => $query,
]);
$payload = json_decode(
(string) $response->getBody(),
true,
512,
JSON_THROW_ON_ERROR
);
var_dump($payload);
} catch (GuzzleException $e) {
throw $e;
}
package main
import (
"encoding/json"
"fmt"
"net/http"
"net/url"
"time"
)
func main() {
baseURL := "https://www.scrapestorm.net"
endpoint := "/api/v2/tiktok.com/profile/videos-by-user-uid"
params := url.Values{}
params.Set("user_uid", "MS4wLjABAAAAexampleSecUid")
// Optional parameters
// params.Set("cursor", "20")
req, err := http.NewRequest(
"GET",
fmt.Sprintf("%s%s?%s", baseURL, endpoint, params.Encode()),
nil,
)
if err != nil {
panic(err)
}
req.Header.Set("Accept", "application/json")
req.Header.Set("X-API-Key", "00000000-0000-4000-8000-000000000000")
client := &http.Client{Timeout: 30 * time.Second}
resp, err := client.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
var payload any
if err := json.NewDecoder(resp.Body).Decode(&payload); err != nil {
panic(err)
}
fmt.Printf("%+v\n", payload)
}
정확한 엔드포인트 경로, 예시 URL, 코드 스니펫을 복사할 때 버전을 선택하세요. 위의 매개변수 목록은 바뀌지 않습니다.
GET /api/v1/tiktok.com/profile/videos-by-user-uidcurl --request GET \
--url "https://www.scrapestorm.net/api/v1/tiktok.com/profile/videos-by-user-uid" \
--header "X-API-Key: 00000000-0000-4000-8000-000000000000" \
--get --data-urlencode 'user_uid=MS4wLjABAAAAexampleSecUid' \
# Optional parameters:
# --data-urlencode 'cursor=20'
from urllib.parse import urljoin
import requests
BASE_URL = "https://www.scrapestorm.net"
ENDPOINT = "/api/v1/tiktok.com/profile/videos-by-user-uid"
HEADERS = {"Accept": "application/json", "X-API-Key": "00000000-0000-4000-8000-000000000000"}
params = {
"user_uid": "MS4wLjABAAAAexampleSecUid",
}
# Optional parameters
# params["cursor"] = "20"
with requests.Session() as session:
response = session.request(
method="GET",
url=urljoin(BASE_URL, ENDPOINT),
headers=HEADERS,
params=params,
timeout=30,
)
response.raise_for_status()
payload = response.json()
print(payload)
const BASE_URL = "https://www.scrapestorm.net";
const endpoint = "/api/v1/tiktok.com/profile/videos-by-user-uid";
const params = new URLSearchParams({
user_uid: "MS4wLjABAAAAexampleSecUid",
});
// Optional parameters
// params.set("cursor", "20");
const response = await fetch(`${BASE_URL}${endpoint}?${params.toString()}`, {
method: "GET",
headers: {
Accept: "application/json",
"X-API-Key": "00000000-0000-4000-8000-000000000000",
},
});
if (!response.ok) {
throw new Error(`Request failed: ${response.status} ${response.statusText}`);
}
const payload = await response.json();
console.log(payload);
import axios from "axios";
const client = axios.create({
baseURL: "https://www.scrapestorm.net",
timeout: 30000,
headers: {
Accept: "application/json",
"X-API-Key": "00000000-0000-4000-8000-000000000000",
},
});
const params = {
user_uid: "MS4wLjABAAAAexampleSecUid",
};
// Optional parameters
// params.cursor = "20";
const { data: payload } = await client.request({
method: "GET",
url: endpoint,
params,
});
console.log(payload);
<?php
declare(strict_types=1);
use GuzzleHttp\Client;
use GuzzleHttp\Exception\GuzzleException;
$client = new Client([
'base_uri' => "https://www.scrapestorm.net",
'timeout' => 30.0,
'headers' => [
'Accept' => 'application/json',
'X-API-Key' => "00000000-0000-4000-8000-000000000000",
],
]);
$query = [
"user_uid" => "MS4wLjABAAAAexampleSecUid",
];
// Optional parameters
// $query["cursor"] = "20";
try {
$response = $client->request("GET", "/api/v1/tiktok.com/profile/videos-by-user-uid", [
'query' => $query,
]);
$payload = json_decode(
(string) $response->getBody(),
true,
512,
JSON_THROW_ON_ERROR
);
var_dump($payload);
} catch (GuzzleException $e) {
throw $e;
}
package main
import (
"encoding/json"
"fmt"
"net/http"
"net/url"
"time"
)
func main() {
baseURL := "https://www.scrapestorm.net"
endpoint := "/api/v1/tiktok.com/profile/videos-by-user-uid"
params := url.Values{}
params.Set("user_uid", "MS4wLjABAAAAexampleSecUid")
// Optional parameters
// params.Set("cursor", "20")
req, err := http.NewRequest(
"GET",
fmt.Sprintf("%s%s?%s", baseURL, endpoint, params.Encode()),
nil,
)
if err != nil {
panic(err)
}
req.Header.Set("Accept", "application/json")
req.Header.Set("X-API-Key", "00000000-0000-4000-8000-000000000000")
client := &http.Client{Timeout: 30 * time.Second}
resp, err := client.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
var payload any
if err := json.NewDecoder(resp.Body).Decode(&payload); err != nil {
panic(err)
}
fmt.Printf("%+v\n", payload)
}
미리보기에는 주요 필드와 컬렉션의 첫 항목이 포함되어 있어 응답 형태를 빠르게 확인할 수 있습니다. 버전을 바꾸면 JSON 형식이 바뀝니다.
이 간결한 JSON 예시는 V2의 최근 성공한 검증 실행에서 가져왔습니다.
{
"success": true,
"status": "ok",
"pagination": {
"cursor": "1784469621902",
"has_more": true
},
"search_context": {
"user_uid": "MS4wLjABAAAAv7iSuuXDJGDvJkmH_vz1qkDZYo1apxgzaxdBSeIuPiM"
},
"data": {
"videos": {
"count": 16,
"items": [
{
"url": "https://www.tiktok.com/@tiktok/video/7673909736131038495",
"created_at": "2026-08-14T15:29:26Z",
"media_id": "7673909736131038495",
"description": "Ever wonder what happens the exact second you hit post? 🤯 Before a video even hits your FYF, AI and safety teams are working behind the scenes to keep your feed safe, clean, and…",
"hashtags": [
"learnontiktok",
"fyp",
{
"_more_items": 1
}
],
"emails": [],
"duration_seconds": 63,
"author": {
"url": "https://www.tiktok.com/@tiktok",
"user_id": "107955",
"sec_uid": "MS4wLjABAAAAv7iSuuXDJGDvJkmH_vz1qkDZYo1apxgzaxdBSeIuPiM",
"username": "tiktok",
"display_name": "TikTok",
"description": "One TikTok can make a big impact",
"follower_count": 95300000,
"following_count": 0,
"friend_count": 0,
"like_count": 462800000,
"video_count": 1489,
"digg_count": 4248,
"is_verified": true,
"is_private": false,
"avatar_url": "https://example.com/image.jpg",
"avatar_urls": "https://example.com/image.jpg"
},
"music": {
"music_id": "7673909733174020895",
"title": "original sound",
"author": "TikTok",
"duration_seconds": 63,
"cover_url": "https://p16-common-sign.tiktokcdn-eu.com/tos-maliva-avt-0068/ba67b11de451691939223e9d978e613a~tplv-tiktokx-cropcenter:1080:1080.jpeg?dr=10399&refresh_token=64fcfb9f&x-expires=17…",
"play_url": "https://v45.tiktokcdn-eu.com/0dae890d1929d546f299ee697cf1cfbc/6a8354b6/video/tos/alisg/tos-alisg-v-2370c799-sg/o4DIRFDiFACYfNf0ATQ0ECZoGxQIIqAfAUz2nE/?a=1233&bti=ODszNWYuMDE6&&b…",
"is_original": true
},
"play_count": 226000,
"like_count": 5427,
"comment_count": 1329,
"share_count": 520,
"collect_count": 1268,
"is_ad": false,
"is_private": false,
"cover_url": "https://p16-common-sign.tiktokcdn-eu.com/tos-useast8-p-0068-tx2/ocAAVsIgQQAprhfeKaLUefHS4KinxRApGJmGAb~tplv-tiktokx-origin.image?dr=10395&x-expires=1787076000&x-signature=e%2FaA…",
"dynamic_cover_url": "https://p16-common-sign.tiktokcdn-eu.com/tos-useast8-p-0068-tx2/ocAAVsIgQQAprhfeKaLUefHS4KinxRApGJmGAb~tplv-tiktokx-origin.image?dr=10395&x-expires=1787076000&x-signature=e%2FaA…",
"play_url": "https://v16-webapp-prime.tiktok.com/video/tos/alisg/tos-alisg-ve-37c799-sg/ogQMLpmFMFhIRyLGXrIg1VAUfNAeK7PfBzfQHG/?a=1988&bti=ODszNWYuMDE6&&bt=712&ft=-Csk_mvJPD12Nt~Gbn-UxNe2SY3…"
},
{
"url": "https://www.tiktok.com/@tiktok/video/7673169793343622430",
"created_at": "2026-08-12T15:37:54Z",
"media_id": "7673169793343622430",
"description": "TikTok Search is where ideas turn into actual trips 🛫🏝️🗺️⛰️",
"hashtags": [],
"emails": [],
"duration_seconds": 64,
"author": {
"url": "https://www.tiktok.com/@tiktok",
"user_id": "107955",
"sec_uid": "MS4wLjABAAAAv7iSuuXDJGDvJkmH_vz1qkDZYo1apxgzaxdBSeIuPiM",
"username": "tiktok",
"display_name": "TikTok",
"description": "One TikTok can make a big impact",
"follower_count": 95300000,
"following_count": 0,
"friend_count": 0,
"like_count": 462800000,
"video_count": 1489,
"digg_count": 4248,
"is_verified": true,
"is_private": false,
"avatar_url": "https://example.com/image.jpg",
"avatar_urls": "https://example.com/image.jpg"
},
"music": {
"music_id": "7673169768911801119",
"title": "original sound",
"author": "TikTok",
"duration_seconds": 64,
"cover_url": "https://p16-common-sign.tiktokcdn-eu.com/tos-maliva-avt-0068/ba67b11de451691939223e9d978e613a~tplv-tiktokx-cropcenter:1080:1080.jpeg?dr=10399&refresh_token=64fcfb9f&x-expires=17…",
"play_url": "https://v45.tiktokcdn-eu.com/3b773813bed1c8f120beef7cac246a24/6a8354b7/video/tos/alisg/tos-alisg-v-2370c799-sg/oUWBiAkGkK0AzBm8EAA1ifRqqkPt1EBARirEAm/?a=1233&bti=ODszNWYuMDE6&&b…",
"is_original": true
},
"play_count": 243400,
"like_count": 4963,
"comment_count": 1066,
"share_count": 413,
"collect_count": 503,
"is_ad": false,
"is_private": false,
"cover_url": "https://p16-common-sign.tiktokcdn-eu.com/tos-useast8-p-0068-tx2/oQS1AnRBA3yE8APikBAaiB9EUT1LAsIykBIbl~tplv-tiktokx-origin.image?dr=10395&x-expires=1787076000&x-signature=L9VAGgn…",
"dynamic_cover_url": "https://p16-common-sign.tiktokcdn-eu.com/tos-useast8-p-0068-tx2/oQS1AnRBA3yE8APikBAaiB9EUT1LAsIykBIbl~tplv-tiktokx-origin.image?dr=10395&x-expires=1787076000&x-signature=L9VAGgn…",
"play_url": "https://v16-webapp-prime.tiktok.com/video/tos/alisg/tos-alisg-ve-37c799-sg/oEOEAEfQjFyIUAkf8ILfFJ3itUUDICFmqWpILi/?a=1988&bti=ODszNWYuMDE6&&bt=1792&ft=-Csk_mvJPD12Nt~Gbn-UxNe2SY…"
},
{
"_more_items": 14
}
]
}
}
}
이 간결한 JSON 예시는 V1의 최근 성공한 검증 실행에서 가져왔습니다.
{
"success": true,
"status": "ok",
"pagination": {
"cursor": "1784469621902",
"has_more": true
},
"search_context": {
"user_uid": "MS4wLjABAAAAv7iSuuXDJGDvJkmH_vz1qkDZYo1apxgzaxdBSeIuPiM"
},
"data": {
"cursor": "1784469621902",
"extra": {
"fatal_item_ids": [],
"logid": "20260816183518C0C927C610E24586BA68",
"now": 1786905318000
},
"hasMore": true,
"itemList": [
{
"AIGCDescription": "",
"CategoryType": 118,
"IsHDBitrate": false,
"ShowAIGC": true,
"author": {
"UserStoryStatus": 0,
"avatarLarger": "https://example.com/image.jpg",
"avatarMedium": "https://example.com/image.jpg",
"avatarThumb": "https://example.com/image.jpg",
"commentSetting": 0,
"downloadSetting": 0,
"duetSetting": 0,
"ftc": false,
"id": "107955",
"isADVirtual": false,
"isEmbedBanned": false,
"nickname": "TikTok",
"openFavorite": false,
"privateAccount": false,
"relation": 0,
"secUid": "MS4wLjABAAAAv7iSuuXDJGDvJkmH_vz1qkDZYo1apxgzaxdBSeIuPiM",
"secret": false,
"shortDramaCreator": {},
"signature": "One TikTok can make a big impact",
"stitchSetting": 0,
"uniqueId": "tiktok",
"verified": true
},
"authorStats": {
"diggCount": 4248,
"followerCount": 95300000,
"followingCount": 0,
"friendCount": 0,
"heart": 462800000,
"heartCount": 462800000,
"videoCount": 1489
},
"authorStatsV2": {
"diggCount": "4248",
"followerCount": "95300000",
"followingCount": "0",
"friendCount": "0",
"heart": "462800000",
"heartCount": "462800000",
"videoCount": "1489"
},
"backendSourceEventTracking": "",
"challenges": [
{
"coverLarger": "",
"coverMedium": "",
"coverThumb": "",
"desc": "Thanks to all who participated in the latest #LearnOnTikTok Post Contest! Check out the winner showcase here: https://vt.tiktok.com/ZSuTNT7oF/ and don't forget to join the March…",
"id": "1636483010861062",
"profileLarger": "https://p16-common-sign.tiktokcdn-eu.com/musically-maliva-obj/00d667c69bf568ecbd23e82b0bf8db26.png~tplv-tiktokx-origin.image?dr=10386&x-expires=1786924800&x-signature=b%2Ba6Xz9U…",
"profileMedium": "https://p16-common-sign.tiktokcdn-eu.com/musically-maliva-obj/00d667c69bf568ecbd23e82b0bf8db26.png~tplv-tiktokx-origin.image?dr=10386&x-expires=1786924800&x-signature=b%2Ba6Xz9U…",
"profileThumb": "https://p16-common-sign.tiktokcdn-eu.com/musically-maliva-obj/00d667c69bf568ecbd23e82b0bf8db26.png~tplv-tiktokx-origin.image?dr=10386&x-expires=1786924800&x-signature=b%2Ba6Xz9U…",
"title": "LearnOnTikTok"
},
{
"coverLarger": "",
"coverMedium": "",
"coverThumb": "",
"desc": "",
"id": "229207",
"profileLarger": "",
"profileMedium": "",
"profileThumb": "",
"title": "fyp"
},
{
"_more_items": 1
}
],
"collected": false,
"contents": [
{
"desc": "Ever wonder what happens the exact second you hit post? 🤯 Before a video even hits your FYF, AI and safety teams are working behind the scenes to keep your feed safe, clean, and…",
"textExtra": [
"…",
"…",
{
"_more_items": 1
}
]
}
],
"createTime": 1786721366,
"creatorAIComment": {
"eligibleVideo": false,
"hasAITopic": false,
"notEligibleReason": 101
},
"desc": "Ever wonder what happens the exact second you hit post? 🤯 Before a video even hits your FYF, AI and safety teams are working behind the scenes to keep your feed safe, clean, and…",
"digged": false,
"diversificationId": 10095,
"duetDisplay": 0,
"duetEnabled": true,
"forFriend": false,
"id": "7673909736131038495",
"isAd": false,
"isReviewing": false,
"itemCommentStatus": 0,
"item_control": {
"can_repost": true
},
"_more_fields": "14 more fields"
},
{
"AIGCDescription": "",
"CategoryType": 120,
"IsHDBitrate": false,
"ShowAIGC": true,
"author": {
"UserStoryStatus": 0,
"avatarLarger": "https://example.com/image.jpg",
"avatarMedium": "https://example.com/image.jpg",
"avatarThumb": "https://example.com/image.jpg",
"commentSetting": 0,
"downloadSetting": 0,
"duetSetting": 0,
"ftc": false,
"id": "107955",
"isADVirtual": false,
"isEmbedBanned": false,
"nickname": "TikTok",
"openFavorite": false,
"privateAccount": false,
"relation": 0,
"secUid": "MS4wLjABAAAAv7iSuuXDJGDvJkmH_vz1qkDZYo1apxgzaxdBSeIuPiM",
"secret": false,
"shortDramaCreator": {},
"signature": "One TikTok can make a big impact",
"stitchSetting": 0,
"uniqueId": "tiktok",
"verified": true
},
"authorStats": {
"diggCount": 4248,
"followerCount": 95300000,
"followingCount": 0,
"friendCount": 0,
"heart": 462800000,
"heartCount": 462800000,
"videoCount": 1489
},
"authorStatsV2": {
"diggCount": "4248",
"followerCount": "95300000",
"followingCount": "0",
"friendCount": "0",
"heart": "462800000",
"heartCount": "462800000",
"videoCount": "1489"
},
"backendSourceEventTracking": "",
"collected": false,
"contents": [
{
"desc": "TikTok Search is where ideas turn into actual trips 🛫🏝️🗺️⛰️"
}
],
"createTime": 1786549074,
"creatorAIComment": {
"eligibleVideo": false,
"hasAITopic": false,
"notEligibleReason": 101
},
"desc": "TikTok Search is where ideas turn into actual trips 🛫🏝️🗺️⛰️",
"digged": false,
"diversificationId": 10043,
"duetDisplay": 0,
"duetEnabled": true,
"forFriend": false,
"id": "7673169793343622430",
"isAd": false,
"isReviewing": false,
"itemCommentStatus": 0,
"item_control": {
"can_repost": true
},
"music": {
"authorName": "TikTok",
"coverLarge": "https://p16-common-sign.tiktokcdn-eu.com/tos-maliva-avt-0068/ba67b11de451691939223e9d978e613a~tplv-tiktokx-cropcenter:1080:1080.jpeg?dr=10399&refresh_token=64fcfb9f&x-expires=17…",
"coverMedium": "https://p16-common-sign.tiktokcdn-eu.com/tos-maliva-avt-0068/ba67b11de451691939223e9d978e613a~tplv-tiktokx-cropcenter:720:720.jpeg?dr=10399&refresh_token=f1f13bf8&x-expires=1787…",
"coverThumb": "https://p16-common-sign.tiktokcdn-eu.com/tos-maliva-avt-0068/ba67b11de451691939223e9d978e613a~tplv-tiktokx-cropcenter:100:100.jpeg?dr=10399&refresh_token=a17082ed&x-expires=1787…",
"duration": 64,
"id": "7673169768911801119",
"isCopyrighted": false,
"is_commerce_music": true,
"is_unlimited_music": false,
"original": true,
"playUrl": "https://v45.tiktokcdn-eu.com/f22ceed33c5ed9e534a2b73ed435f473/6a8354a6/video/tos/alisg/tos-alisg-v-2370c799-sg/oUWBiAkGkK0AzBm8EAA1ifRqqkPt1EBARirEAm/?a=1233&bti=ODszNWYuMDE6&&b…",
"private": false,
"shoot_duration": 64,
"title": "original sound",
"tt2dsp": {}
},
"_more_fields": "12 more fields"
},
{
"_more_items": 14
}
],
"log_pb": {
"impr_id": "20260816183518C0C927C610E24586BA68"
},
"statusCode": 0,
"status_code": 0,
"status_msg": ""
}
}
이 문서를 첫 판단 기준으로 삼고, 반복 사용을 위해 엔드포인트를 연결하기 전에 요금, 플랫폼 지원 범위, 연동 규칙을 확인하세요.
이 답변을 참고하여 이 API 메서드가 워크플로, 버전 선택, 도입 계획에 맞는지 판단하세요.
이 메서드는 프로필에 대해 "사용자 UID별 동영상"을 실행합니다. 아래의 간결한 응답 예시에서 필드의 정확한 구조를 확인할 수 있습니다.
새 연동에는 정규화된 구조를 제공하는 V2를 선택하세요. V1은 이미 플랫폼 고유 형식을 처리하는 클라이언트와의 호환성을 위해서만 사용하세요.
API 키를 만들어 요청 헤더에 넣고 표의 필수 매개변수를 입력하세요. 코드 예제에는 이미 올바른 경로와 요청 구조가 포함되어 있습니다.