Webhooks are now available in the Fansly API Console! 🚀
Fansly API Logo
Earnings

List Earnings Transactions

Get a detailed list of all earnings transactions for a Fansly account.


Fetch the list of earnings transactions for a specific account.

https://v1.apifansly.com
GET
/api/fansly/{account_id}/earnings/transactions

Get Started

All requests to the Fansly API require an API Key. See the Authentication page for details.

Path Parameters

curl -X GET "https://v1.apifansly.com/api/fansly/{account_id}/earnings/transactions?before=1768901153112&after=1735686000000&limit=20&offset=0" \
  -H "x-api-key: YOUR_API_KEY"
fetch("https://v1.apifansly.com/api/fansly/{account_id}/earnings/transactions?before=1768901153112&after=1735686000000&limit=20&offset=0", {
  method: "GET",
  headers: {
    "x-api-key": "YOUR_API_KEY"
  }
})
.then(response => response.json())
.then(data => console.log(data));
import requests

url = "https://v1.apifansly.com/api/fansly/{account_id}/earnings/transactions?before=1768901153112&after=1735686000000&limit=20&offset=0"
headers = {
    "x-api-key": "YOUR_API_KEY"
}

response = requests.get(url, headers=headers)
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();

HttpRequest request = HttpRequest.newBuilder()
        .uri(URI.create("https://v1.apifansly.com/api/fansly/{account_id}/earnings/transactions?before=1768901153112&after=1735686000000&limit=20&offset=0"))
        .header("x-api-key", "YOUR_API_KEY")
        .GET()
        .build();

client.sendAsync(request, HttpResponse.BodyHandlers.ofString())
        .thenApply(HttpResponse::body)
        .thenAccept(System.out::println)
        .join();
using System.Net.Http;
using System.Threading.Tasks;

var client = new HttpClient();
client.DefaultRequestHeaders.Add("x-api-key", "YOUR_API_KEY");

var response = await client.GetAsync("https://v1.apifansly.com/api/fansly/{account_id}/earnings/transactions?before=1768901153112&after=1735686000000&limit=20&offset=0");
var responseString = await response.Content.ReadAsStringAsync();

Console.WriteLine(responseString);
package main

import (
    "fmt"
    "io/ioutil"
    "net/http"
)

func main() {
    url := "https://v1.apifansly.com/api/fansly/{account_id}/earnings/transactions?before=1768901153112&after=1735686000000&limit=20&offset=0"
    req, _ := http.NewRequest("GET", url, nil)
    req.Header.Set("x-api-key", "YOUR_API_KEY")

    client := &http.Client{}
    resp, _ := client.Do(req)
    defer resp.Body.Close()

    body, _ := ioutil.ReadAll(resp.Body)
    fmt.Println(string(body))
}

Parameters

account_id*
string
The unique identifier for the connected account, retrieved from your Dashboard.
before ?
number
Filters results to include transactions before this Unix timestamp (ms).
after ?
number
Filters results to include transactions after this Unix timestamp (ms).
limit*
number
Maximum number of transactions to return per page.
offset*
number
Number of transactions to skip for pagination.

To get transactions for a specific account, you must provide the account_id in the URL path. This is the unique identifier found on your Fansly API dashboard for each connected account.

You can optionally filter and paginate results using the following query parameters:

  • before: A Unix timestamp (in milliseconds) to return only transactions before this date.
  • after: A Unix timestamp (in milliseconds) to return only transactions after this date.
  • limit: Maximum number of transactions to return per request.
  • offset: Number of transactions to skip, used for pagination.

Response

{
    "statusCode": 200,
    "message": "Success",
    "data": {
        "status_code": 200,
        "data": {
            "success": true,
            "response": {
                "total": 1,
                "data": [
                    {
                        "walletId": "xxxxxxxxxxxxxxxxxx",
                        "transactionId": "xxxxxxxxxxxxxxxxxx",
                        "accountId": "xxxxxxxxxxxxxxxxxx",
                        "correlationId": "xxxxxxxxxxxxxxxxxx",
                        "correlationAccountId": "xxxxxxxxxxxxxxxxxx",
                        "type": 7101,
                        "destination": 2,
                        "amount": 80,
                        "destinationTax": 2000,
                        "destinationAmount": 80,
                        "newBalance": 80,
                        "newBalance64": 80,
                        "createdAt": 1769013904000,
                        "updatedAt": null,
                        "status": 1,
                        "senderId": null,
                        "receiverId": "xxxxxxxxxxxxxxxxxx"
                    }
                ]
            }
        }
    },
    "timestamp": "2026-01-21T17:32:19.065Z"
}

On this page