Posts
Create Post
Create a new post for a specific account.
Publish a new post to the creator's wall.
https://v1.apifansly.com
POST
/api/fansly/{account_id}/posts
Get Started
All requests to the Fansly API require an API Key. See the Authentication page for details.
curl -X POST "https://v1.apifansly.com/api/fansly/{account_id}/posts" \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"content": "Sample post content...",
"wallIds": ["8681xxxxxxxxxxxxxx"]
}'fetch("https://v1.apifansly.com/api/fansly/{account_id}/posts", {
method: "POST",
headers: {
"x-api-key": "YOUR_API_KEY",
"Content-Type": "application/json"
},
body: JSON.stringify({
content: "Sample post content...",
wallIds: ["8681xxxxxxxxxxxxxx"]
})
})import requests
url = "https://v1.apifansly.com/api/fansly/{account_id}/posts"
headers = {
"x-api-key": "YOUR_API_KEY",
"Content-Type": "application/json"
}
payload = {
"content": "Sample post content...",
"wallIds": ["8681xxxxxxxxxxxxxx"]
}
response = requests.post(url, headers=headers, json=payload)
print(response.json())import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
HttpClient client = HttpClient.newHttpClient();
String json = "{\"content\": \"Sample post content...\", \"wallIds\": [\"8681xxxxxxxxxxxxxx\"]}";
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://v1.apifansly.com/api/fansly/{account_id}/posts"))
.header("x-api-key", "YOUR_API_KEY")
.header("Content-Type", "application/json")
.POST(HttpRequest.BodyPublishers.ofString(json))
.build();
client.sendAsync(request, HttpResponse.BodyHandlers.ofString())
.thenApply(HttpResponse::body)
.thenAccept(System.out::println)
.join();using System.Net.Http;
using System.Text;
using System.Threading.Tasks;
var client = new HttpClient();
client.DefaultRequestHeaders.Add("x-api-key", "YOUR_API_KEY");
var json = "{\"content\": \"Sample post content...\", \"wallIds\": [\"8681xxxxxxxxxxxxxx\"]}";
var content = new StringContent(json, Encoding.UTF8, "application/json");
var response = await client.PostAsync("https://v1.apifansly.com/api/fansly/{account_id}/posts", content);
var responseString = await response.Content.ReadAsStringAsync();
Console.WriteLine(responseString);package main
import (
"bytes"
"fmt"
"net/http"
)
func main() {
url := "https://v1.apifansly.com/api/fansly/{account_id}/posts"
json := []byte(`{"content": "Sample post content...", "wallIds": ["8681xxxxxxxxxxxxxx"]}`)
req, _ := http.NewRequest("POST", url, bytes.NewBuffer(json))
req.Header.Set("x-api-key", "YOUR_API_KEY")
req.Header.Set("Content-Type", "application/json")
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
fmt.Println(resp.Status)
}Path Parameters
account_id*
stringThe unique identifier for the connected account.
Request Body
content*
stringThe text content of the post.
wallIds*
string[]An array of Wall IDs where the post should be published.
fypFlags ?
numberFlags for the "For You Page" visibility. (Default: 0)
attachments ?
any[]An array of attachment objects (e.g., media files).
scheduledFor ?
numberUnix timestamp for scheduling the post (0 for immediate).
expiresAt ?
numberUnix timestamp for post expiration (0 for never).
pinned ?
numberPin status (0 = not pinned).
pinWallIds ?
string[]Specific Wall IDs where the post should be pinned.
inReplyTo ?
stringThe ID of the post to reply to.
quotedPostId ?
stringThe ID of the post being quoted.
postReplyPermissionFlags ?
any[]Array of flags for post reply permissions.
Response
{
"statusCode": 200,
"message": "Success",
"data": {
"data": {
"success": true,
"response": {
"id": "8741xxxxxxxxxxxxxx",
"content": "Sample post content...",
"createdAt": 1769903493
}
}
},
"timestamp": "2026-02-01T01:09:02.943Z"
}