Search Profiles
Changed onFull-text search for profiles with filters for pricing, free trials, location, media count and more.
Request
- Base URLhttps://app.onlyfansapi.com
- URLhttps://app.onlyfansapi.com/api/search
- AuthHTTP bearer
Query parameters
Query for full text search in username, display name, bio. Must be at least 3 characters.
Filter by minimum subscribe price. Must be at least 0.00.
Filter by maximum subscribe price. Must be at least 0.00.
Filter by location.
Filter by website.
Filter by Instagram username.
Filter by TikTok username.
The number of profiles to return. For each returned profile we charge your account 1 credit. Default: 10. Must be at least 1. Must not be greater than 100.
Cursor for pagination. Use the next_cursor from the previous response to get the next page of results.
Field to sort by. ⭐️ Only available on the Pro and Enterprise plan.
Direction for sorting. desc - highest value first. asc - lowest value first.
Filter by gender (available: female, male, trans, trans_ftm (Female-to-Male), trans_mft (Male-to-Female), couple). ⭐️ Only available on the Pro and Enterprise plan.
Response
Example response
{
"data": [
{
"ofapi_gender": "female",
"ofapi_gender_confidence": 0.98,
"onlyfans_id": 5140520,
"stats_updated_at": "2025-12-15T21:00:42.000000Z",
"username": "madison420ivy",
"name": "Madison Ivy",
"avatar_url": "https://public.onlyfans.com/files/v/v3/v30/v302xscgzgb1qijezrvsotwo4dxn00pe1760573833/5140520/avatar.jpg",
"header_url": "https://public.onlyfans.com/files/i/iz/izt/iztyiyvqu9mg54vccnxjjivnkz2cyivm1617484103/header.jpg",
"subscribe_price": 0,
"min_subscribe_price": 0,
"posts_count": 157,
"photos_count": 530,
"videos_count": 207,
"audios_count": 0,
"favorites_count": 16,
"favorited_count": 570621,
"subscribers_count": null,
"is_verified": true,
"website": "Www.fleshlight.com/Madisonivy",
"location": "CannaBliss",
"wishlist": null,
"about": "<p>My wish in life is to be your personal lil fuck toy. WELCOME to my naughty corner of the world. <br /> I hope you’ll love my extremely up-close and personal POVs. I want to give you a true feeling of being with me. <br /> Let me tease you and please you.<br /> Command me, Master. For I am your little pet. <br /> And I am waiting… 😈💦<br /><br /> I absolutely love suggestions, so please feel free to send me a DM with ideas! I always try to include as much as possibles 💋<br /> 🚨Also about my page 👇👇👇👇👇👇👇👇<br /><br /> ...............................................................................................<br /> 💖 Custom Video Contest is returning soon!!!<br /> (Watch page for details)<br /> 💙Tipping is NEVER required. <br /> (But because my page is free, I’m starting to only respond to messages with tips. I’m very sorry about this, but for the past 5 years I’ve answered every single message. And they’re just isn’t enough time in the day.) <br /> Xoxo<br /> Ur little fuck toy,<br /> </p>",
"last_seen_at": null,
"is_performer": true,
"is_real_performer": true,
"is_adult_content": false,
"bundles": null,
"instagram": null,
"twitter": null,
"tiktok": null,
"facebook": null,
"promotions": null,
"join_date": "2018-11-11T00:00:00.000000Z",
"fansly": null,
"pornhub": null,
"manyvids": null
},
{
"ofapi_gender": "male",
"ofapi_gender_confidence": 0.95,
"onlyfans_id": 117183,
"stats_updated_at": "2025-12-15T21:59:51.000000Z",
"username": "johnnysins",
"name": "Johnny Sins",
"avatar_url": "https://public.onlyfans.com/files/e/ex/exf/exflcllrevoeqnhfeccma55z5desn4ct1686490893/117183/avatar.jpg",
"header_url": null,
"subscribe_price": 0,
"min_subscribe_price": 0,
"posts_count": 9431,
"photos_count": 57499,
"videos_count": 14116,
"audios_count": 1,
"favorites_count": 72,
"favorited_count": 250727,
"subscribers_count": 202344,
"is_verified": true,
"website": "https://Onlyfans.com/solojohnny",
"location": null,
"wishlist": null,
"about": "<p>THE ONLY OFFICIAL JOHNNY SINS ONLYFANS<br /><br /> 🔥 NEW SUBSCRIBERS GET A FREE VIDEO FOR JOINING!!!<br /> 🔥 NEW scenes 2x per week!! </p>",
"last_seen_at": "2025-12-15T21:01:35.000000Z",
"is_performer": true,
"is_real_performer": true,
"is_adult_content": true,
"bundles": null,
"instagram": "Mosttalentedbaldman",
"twitter": "johnnysins",
"tiktok": "Johnnysins",
"facebook": null,
"promotions": null,
"join_date": "2017-01-25T00:00:00.000000Z",
"fansly": null,
"pornhub": null,
"manyvids": null
}
],
"_pagination": {
"total_results": 10000,
"next_cursor": "WzEsIjEwIl0=",
"next_page_url": "https://app.onlyfansapi.com/api/search?limit=50&cursor=WzEsIjEwIl0%3D"
},
"_meta": {
"_credits": {
"used": 1,
"balance": 115530,
"note": "Always"
},
"_cache": {
"is_cached": false,
"note": "Cache disabled for this endpoint"
},
"_rate_limits": {
"limit_minute": 1000,
"limit_day": 50000,
"remaining_minute": 998,
"remaining_day": 49998
}
}
}Changes
- breaking
removed the request body
- breaking
for the
queryrequest parameterlimit, the type changed fromstringtointeger - breaking
for the
queryrequest parametermax_subscribe_price, the type changed fromstringtonumber - breaking
for the
queryrequest parametermin_subscribe_price, the type changed fromstringtonumber - breaking
the response property
//became nullable for the status - breaking
the response property
//became nullable for the status - breaking
the response property
//became nullable for the status - breaking
the response property
//became nullable for the status - breaking
the response property
//became nullable for the status - breaking
the response property
//became nullable for the status - breaking
the response property
//became nullable for the status - breaking
the response property
//became nullable for the status - breaking
the response property
//became nullable for the status - breaking
the response property
//became nullable for the status - breaking
the response property
//became nullable for the status - breaking
the response property
//became nullable for the status - breaking
the
//response's property type changed fromstringtointegerfor status - warning
removed the optional property
//from the response with the status - warning
removed the optional property
//from the response with the status - warning
removed the optional property
//from the response with the status - warning
removed the optional property
//from the response with the status - warning
removed the optional property
//from the response with the status - info
added the new optional
queryrequest parametercursor - info
added the new optional
queryrequest parameterfilter - info
added the new optional
queryrequest parameterfilter.gender - info
added the new optional
queryrequest parameterinstagram - info
added the new optional
queryrequest parametersort - info
added the new optional
queryrequest parametersortDirection - info
added the new optional
queryrequest parametertiktok - info
added the new optional
queryrequest parameterwebsite - info
the
queryrequest parameterquerybecame optional - info
added the optional property
/to the response with the status - info
added the optional property
//to the response with the status - info
added the optional property
//to the response with the status
- breaking