Get recent posts by username
curl --request GET \
--url https://full-tiktok-api.p.rapidapi.com/api/v1/users/{username}/posts \
--header 'x-rapidapi-key: <api-key>'import requests
url = "https://full-tiktok-api.p.rapidapi.com/api/v1/users/{username}/posts"
headers = {"x-rapidapi-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-rapidapi-key': '<api-key>'}};
fetch('https://full-tiktok-api.p.rapidapi.com/api/v1/users/{username}/posts', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://full-tiktok-api.p.rapidapi.com/api/v1/users/{username}/posts",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-rapidapi-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://full-tiktok-api.p.rapidapi.com/api/v1/users/{username}/posts"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-rapidapi-key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://full-tiktok-api.p.rapidapi.com/api/v1/users/{username}/posts")
.header("x-rapidapi-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://full-tiktok-api.p.rapidapi.com/api/v1/users/{username}/posts")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-rapidapi-key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"meta": {
"request_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"timestamp": "2025-03-12T14:32:01.498Z",
"cached": false,
"version": "2025-01"
},
"data": [
{
"post_id": "7351234567890123456",
"caption": "do this for a week and see what happens #fitness",
"created_at": 1711929600,
"is_ad": false,
"plays": 42000000,
"likes": 3100000,
"comments": 18000,
"shares": 92000,
"saves": 410000,
"reposts": 5200,
"cover_url": "https://p16-sign.tiktokcdn-us.com/...",
"share_url": "https://www.tiktok.com/@charlidamelio/video/7351234567890123456",
"sound_id": "7016547803243022337",
"sound_title": "original sound",
"sound_author": "charlidamelio",
"sound_is_original": true,
"hashtags": [
{
"id": "229207",
"name": "fitness"
}
],
"author_username": "charlidamelio",
"author_display_name": "charli d'amelio",
"author_verified": true,
"author_avatar_url": "https://p16-sign.tiktokcdn-us.com/...",
"duration_seconds": 27,
"video_height": 1024,
"video_width": 576
}
],
"pagination": {
"cursor": "1778971238000",
"has_more": true
},
"error": {
"code": "NOT_FOUND",
"message": "The requested resource was not found.",
"details": null
}
}{
"meta": {
"request_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"timestamp": "2025-03-12T14:32:01.498Z",
"cached": false,
"version": "2025-01"
},
"data": null,
"pagination": null,
"error": {
"code": "NOT_FOUND",
"message": "The requested resource was not found.",
"details": null
}
}{
"meta": {
"request_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"timestamp": "2025-03-12T14:32:01.498Z",
"cached": false,
"version": "2025-01"
},
"data": null,
"pagination": null,
"error": {
"code": "NOT_FOUND",
"message": "The requested resource was not found.",
"details": null
}
}Users
Get recent posts by username
Returns a paginated list of the user’s most recent posts. Use the returned cursor to fetch the next page.
GET
/
api
/
v1
/
users
/
{username}
/
posts
Get recent posts by username
curl --request GET \
--url https://full-tiktok-api.p.rapidapi.com/api/v1/users/{username}/posts \
--header 'x-rapidapi-key: <api-key>'import requests
url = "https://full-tiktok-api.p.rapidapi.com/api/v1/users/{username}/posts"
headers = {"x-rapidapi-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-rapidapi-key': '<api-key>'}};
fetch('https://full-tiktok-api.p.rapidapi.com/api/v1/users/{username}/posts', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://full-tiktok-api.p.rapidapi.com/api/v1/users/{username}/posts",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-rapidapi-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://full-tiktok-api.p.rapidapi.com/api/v1/users/{username}/posts"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-rapidapi-key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://full-tiktok-api.p.rapidapi.com/api/v1/users/{username}/posts")
.header("x-rapidapi-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://full-tiktok-api.p.rapidapi.com/api/v1/users/{username}/posts")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-rapidapi-key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"meta": {
"request_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"timestamp": "2025-03-12T14:32:01.498Z",
"cached": false,
"version": "2025-01"
},
"data": [
{
"post_id": "7351234567890123456",
"caption": "do this for a week and see what happens #fitness",
"created_at": 1711929600,
"is_ad": false,
"plays": 42000000,
"likes": 3100000,
"comments": 18000,
"shares": 92000,
"saves": 410000,
"reposts": 5200,
"cover_url": "https://p16-sign.tiktokcdn-us.com/...",
"share_url": "https://www.tiktok.com/@charlidamelio/video/7351234567890123456",
"sound_id": "7016547803243022337",
"sound_title": "original sound",
"sound_author": "charlidamelio",
"sound_is_original": true,
"hashtags": [
{
"id": "229207",
"name": "fitness"
}
],
"author_username": "charlidamelio",
"author_display_name": "charli d'amelio",
"author_verified": true,
"author_avatar_url": "https://p16-sign.tiktokcdn-us.com/...",
"duration_seconds": 27,
"video_height": 1024,
"video_width": 576
}
],
"pagination": {
"cursor": "1778971238000",
"has_more": true
},
"error": {
"code": "NOT_FOUND",
"message": "The requested resource was not found.",
"details": null
}
}{
"meta": {
"request_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"timestamp": "2025-03-12T14:32:01.498Z",
"cached": false,
"version": "2025-01"
},
"data": null,
"pagination": null,
"error": {
"code": "NOT_FOUND",
"message": "The requested resource was not found.",
"details": null
}
}{
"meta": {
"request_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"timestamp": "2025-03-12T14:32:01.498Z",
"cached": false,
"version": "2025-01"
},
"data": null,
"pagination": null,
"error": {
"code": "NOT_FOUND",
"message": "The requested resource was not found.",
"details": null
}
}Returns a paginated list of the user’s most recent posts. Use the returned cursor to fetch the next page.
Authorizations
Your RapidAPI subscription key. Injected automatically by the RapidAPI gateway in production.
Path Parameters
TikTok username
Query Parameters
Number of posts to return (1–100)
Required range:
1 <= x <= 100Pagination cursor from a previous response
Response
Success
⌘I