Chats
Send Message
Send a new message to a chat.
AuthorizationBearer <token>
Get your API Key from OnlyFansAPI Console - https://app.onlyfansapi.com/api-keys
In: header
Path Parameters
accountstring
The Account ID
chat_idstring
The ID of the chat (usually a fan's OnlyFans User ID)
textstring
The message text content
lockedText?boolean
Whether the text should be shown or hidden
price?integer
Price for paid content (0 or between 3-200). In case this is not zero, mediaFiles is required
mediaFiles?array<string>
Array of media file upload prefixed_ids, or OF media IDs (required if price is not 0). Will be hidden if price
is provided.
previews?array<string>
Array of media file upload prefixed_ids, or OF media IDs (required if price is not 0). Will be shown if price
is provided. All previews
values must also exist in the mediaFiles
array.
Response Body
curl -X POST "https://app.onlyfansapi.com/api/string/chats/string/messages" \
-H "Content-Type: application/json" \
-d '{
"text": "Hello!"
}'
{
"data": {
"responseType": "message",
"text": "<p>Message text</p>",
"giphyId": null,
"lockedText": true,
"isFree": true,
"price": 0,
"isMediaReady": true,
"mediaCount": 0,
"media": [],
"previews": [],
"isTip": false,
"isReportedByMe": false,
"isCouplePeopleMedia": false,
"queueId": 123,
"isMarkdownDisabled": true,
"releaseForms": [],
"fromUser": {
"id": 339543013,
"_view": "s"
},
"isFromQueue": false,
"id": 123,
"isOpened": false,
"isNew": true,
"createdAt": "2025-02-03T23:29:53+00:00",
"changedAt": "2025-02-03T23:29:53+00:00",
"cancelSeconds": 119,
"isLiked": false,
"canPurchase": false,
"canPurchaseReason": "free",
"canReport": false,
"canBePinned": true,
"isPinned": false
},
"_pagination": {
"next_page": "https://app.onlyfansapi.com/api/acct_XXXXXXXXXXX/chats/XXXXXXXXX/messages?limit=10&id=XXXXXXXXX"
},
"_meta": {
"_credits": {
"used": 1,
"balance": 1,
"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
}
}
}
{
"error": "VALIDATION_ERROR",
"message": "The text field is required.",
"description": "The request parameters failed validation.",
"errors": {
"text": [
"The text field is required."
]
},
"_meta": {
"_credits": {
"used": 0,
"balance": 9554,
"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
}
}
}