Tracking links
List Tracking Links
List all tracking links for the account and revenue data
AuthorizationBearer <token>
You can retrieve your token by visiting the OnlyFansAPI Console and clicking API Keys -> Create API Key.
In: header
Path Parameters
accountstring
The Account ID
Query Parameters
startDate?string
The start date for Tracking Links. Keep empty to get all.
endDate?string
The end date for Tracking Links. Keep empty to get all.
with_deleted?boolean
Whether or not to include deleted tracking links in the response. Default false
sortby?string
Sort by subscriber count (claims), or creation date
Value in
"claims" | "created_date"
sort?string
Sort the results. Default desc
Value in
"desc" | "asc"
limit?integer
The number of tracking links to return. Default 3
offset?integer
The offset used for pagination. Default 0
synchronous?boolean
Wait for the revenue data to finish processing, instead of processing in the background. Will result in longer response times, use with caution. Default false
Response Body
curl -X GET "https://app.onlyfansapi.com/api/acct_XXXXXXXXXXXXXXX/tracking-links?startDate=2025-01-01+00%3A00%3A00%2C+-30days&endDate=2025-01-01+00%3A00%3A00%2C+now&sortby=claims&sort=desc&limit=3"
fetch("https://app.onlyfansapi.com/api/acct_XXXXXXXXXXXXXXX/tracking-links?startDate=2025-01-01+00%3A00%3A00%2C+-30days&endDate=2025-01-01+00%3A00%3A00%2C+now&sortby=claims&sort=desc&limit=3")
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://app.onlyfansapi.com/api/acct_XXXXXXXXXXXXXXX/tracking-links?startDate=2025-01-01+00%3A00%3A00%2C+-30days&endDate=2025-01-01+00%3A00%3A00%2C+now&sortby=claims&sort=desc&limit=3"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
import requests
url = "https://app.onlyfansapi.com/api/acct_XXXXXXXXXXXXXXX/tracking-links?startDate=2025-01-01+00%3A00%3A00%2C+-30days&endDate=2025-01-01+00%3A00%3A00%2C+now&sortby=claims&sort=desc&limit=3"
response = requests.request("GET", url)
print(response.text)
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.http.HttpResponse.BodyHandlers;
import java.time.Duration;
HttpClient client = HttpClient.newBuilder()
.connectTimeout(Duration.ofSeconds(10))
.build();
HttpRequest.Builder requestBuilder = HttpRequest.newBuilder()
.uri(URI.create("https://app.onlyfansapi.com/api/acct_XXXXXXXXXXXXXXX/tracking-links?startDate=2025-01-01+00%3A00%3A00%2C+-30days&endDate=2025-01-01+00%3A00%3A00%2C+now&sortby=claims&sort=desc&limit=3"))
.GET()
.build();
try {
HttpResponse<String> response = client.send(requestBuilder.build(), BodyHandlers.ofString());
System.out.println("Status code: " + response.statusCode());
System.out.println("Response body: " + response.body());
} catch (Exception e) {
e.printStackTrace();
}
using System;
using System.Net.Http;
using System.Text;
var client = new HttpClient();
var response = await client.GetAsync("https://app.onlyfansapi.com/api/acct_XXXXXXXXXXXXXXX/tracking-links?startDate=2025-01-01+00%3A00%3A00%2C+-30days&endDate=2025-01-01+00%3A00%3A00%2C+now&sortby=claims&sort=desc&limit=3");
var responseBody = await response.Content.ReadAsStringAsync();
{
"data": {
"list": [
{
"id": 1521764,
"campaignCode": 68,
"campaignName": "Example Campaign - IG Bio SFS",
"campaignUrl": "https://onlyfans.com/USERNAME/c68",
"subscribersCount": 0,
"clicksCount": 0,
"createdAt": "2025-02-04T12:44:54+00:00",
"endDate": null,
"revenue": {
"total": 0,
"revenuePerSubscriber": 0,
"revenuePerClick": 0,
"calculatedAt": "2025-02-10T12:45:03+00:00",
"isLoading": false
},
"links": {
"related": {
"subscribers": "https://app.onlyfansapi.com/api/acct_XXXXXXX/tracking-links/1521764/subscribers"
}
}
},
{
"id": 1485830,
"campaignCode": 67,
"campaignName": "Example Campaign - Reddit",
"campaignUrl": "https://onlyfans.com/USERNAME/c67",
"subscribersCount": 8,
"clicksCount": 298,
"createdAt": "2025-01-19T20:53:39+00:00",
"endDate": null,
"revenue": {
"total": 103.92,
"revenuePerSubscriber": 12.99,
"revenuePerClick": 0.3487248322,
"calculatedAt": "2025-02-10T12:45:03+00:00",
"isLoading": false
},
"links": {
"related": {
"subscribers": "https://app.onlyfansapi.com/api/acct_XXXXXXX/tracking-links/1485830/subscribers"
}
}
},
{
"id": 1478101,
"campaignCode": 66,
"campaignName": "Example Campaign - Revenue isn't calculated yet",
"campaignUrl": "https://onlyfans.com/USERNAME/c66",
"subscribersCount": 1,
"clicksCount": 28,
"createdAt": "2025-01-15T20:19:43+00:00",
"endDate": null,
"revenue": {
"total": null,
"revenuePerSubscriber": null,
"revenuePerClick": null,
"calculatedAt": null,
"isLoading": true
},
"links": {
"related": {
"subscribers": "https://app.onlyfansapi.com/api/acct_XXXXXXX/tracking-links/1478101/subscribers"
}
}
}
],
"hasMore": true
},
"_pagination": {
"next_page": "https://app.onlyfansapi.com/api/acct_XXXXXXXXXXX/tracking-links?offset=3&limit=3"
},
"_meta": {
"_credits": {
"used": 1,
"balance": 9529,
"note": "Always"
},
"_cache": {
"is_cached": false,
"note": "Cache disabled for this endpoint"
},
"_rate_limits": {
"limit_minute": 1000,
"limit_day": 50000,
"remaining_minute": 999,
"remaining_day": 49999
}
}
}