OnlyFans API
Settings

Update Profile

Updates the account profile. **Only include the fields you want to update.** To make a field empty, set it to `null`.

POST
/api/{account}/settings/profile
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

username?string

The new username to use. Make sure to first check if it exists using our /settings/username-exists endpoint.

name?string

The new display name to use. Set to null to use the default display name.

avatar?string

The new avatar to use. Must be a ofapi_media_ ID. Refer to our /media/upload endpoint on how to get this.

header?string

The new header (banner) to use. Must be a ofapi_media_ ID. Refer to our /media/upload endpoint on how to get this.

about?string

The new bio to use. Set to null to empty it.

location?string

The new location to use. Set to null to empty it.

website?string

The new website URL to use. Must be a valid URL. Set to null to empty it.

wishlist?string

The new Amazon Wishlist URL to use. Must be a valid URL. Set to null to empty it.

Response Body

curl -X POST "https://app.onlyfansapi.com/api/acct_XXXXXXXXXXXXXXX/settings/profile" \
  -H "Content-Type: application/json" \
  -d '{}'
const body = JSON.stringify({})

fetch("https://app.onlyfansapi.com/api/acct_XXXXXXXXXXXXXXX/settings/profile", {
  body
})
package main

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

func main() {
  url := "https://app.onlyfansapi.com/api/acct_XXXXXXXXXXXXXXX/settings/profile"
  body := strings.NewReader(`{}`)
  req, _ := http.NewRequest("POST", url, body)
  req.Header.Add("Content-Type", "application/json")
  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/settings/profile"
body = {}
response = requests.request("POST", url, json = body, headers = {
  "Content-Type": "application/json"
})

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;
import java.net.http.HttpRequest.BodyPublishers;

var body = BodyPublishers.ofString("""{}""");
HttpClient client = HttpClient.newBuilder()
  .connectTimeout(Duration.ofSeconds(10))
  .build();

HttpRequest.Builder requestBuilder = HttpRequest.newBuilder()
  .uri(URI.create("https://app.onlyfansapi.com/api/acct_XXXXXXXXXXXXXXX/settings/profile"))
  .header("Content-Type", "application/json")
  .POST(body)
  .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 body = new StringContent("""
{}
""", Encoding.UTF8, "application/json");

var client = new HttpClient();
var response = await client.PostAsync("https://app.onlyfansapi.com/api/acct_XXXXXXXXXXXXXXX/settings/profile", body);
var responseBody = await response.Content.ReadAsStringAsync();
{
  "data": {
    "success": true
  },
  "_meta": {
    "_credits": {
      "used": 1,
      "balance": 999999969,
      "note": "Always"
    },
    "_cache": {
      "is_cached": false,
      "note": "Cache disabled for this endpoint"
    },
    "_rate_limits": {
      "limit_minute": 10000000,
      "limit_day": 50000,
      "remaining_minute": 9999998,
      "remaining_day": 49970
    }
  }
}