curl \
-H "Authorization: Bearer API_KEY" \
-X GET https://api.ayrshare.com/api/messages/facebook
const apiKey = 'API_KEY';
const url = 'https://api.ayrshare.com/api/messages/facebook';
const headers = {
'Authorization': `Bearer ${apiKey}`,
};
fetch(url, {
method: 'GET',
headers: headers,
})
.then(response => {
if (response.ok) {
return response.json();
} else {
throw new Error(`Request failed. Status code: ${response.status}`);
}
})
.then(data => {
console.log('Response:', data);
})
.catch(error => {
console.error('Error:', error.message);
});
import requests
api_key = 'API_KEY'
url = 'https://api.ayrshare.com/api/messages/facebook'
headers = {
'Authorization': f'Bearer {api_key}',
}
response = requests.get(url, headers=headers)
if response.status_code == 200:
data = response.json()
print('Response:', data)
else:
print(f'Request failed. Status code: {response.status_code}')
<?php
$apiKey = 'API_KEY';
$url = 'https://api.ayrshare.com/api/messages/facebook';
$headers = [
'Authorization: Bearer ' . $apiKey,
];
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
if ($response === false) {
$error = curl_error($ch);
echo 'Error: ' . $error;
} else {
$statusCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
if ($statusCode === 200) {
$responseData = json_decode($response, true);
print_r($responseData);
} else {
echo 'Request failed. Status code: ' . $statusCode;
}
}
curl_close($ch);
?>
using System;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Threading.Tasks;
using System.Text.Json;
class Program
{
static async Task Main()
{
string apiKey = "API_KEY";
string url = "https://api.ayrshare.com/api/messages/facebook";
using var client = new HttpClient();
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", apiKey);
try
{
var response = await client.GetAsync(url);
if (response.IsSuccessStatusCode)
{
var responseBody = await response.Content.ReadAsStringAsync();
var responseData = JsonSerializer.Deserialize<dynamic>(responseBody);
Console.WriteLine("Response:");
Console.WriteLine(responseData);
}
else
{
Console.WriteLine($"Request failed. Status code: {response.StatusCode}");
}
}
catch (HttpRequestException ex)
{
Console.WriteLine($"Error: {ex.Message}");
}
}
}
import java.io.IOException;
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class Main {
public static void main(String[] args) {
String apiKey = "API_KEY";
String url = "https://api.ayrshare.com/api/messages/facebook";
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create(url))
.header("Authorization", "Bearer " + apiKey)
.GET()
.build();
try {
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
if (response.statusCode() == 200) {
String responseBody = response.body();
System.out.println("Response:");
System.out.println(responseBody);
} else {
System.out.println("Request failed. Status code: " + response.statusCode());
}
} catch (IOException | InterruptedException e) {
System.out.println("Error: " + e.getMessage());
}
}
}
{
"status": "success",
"messages": [
{
"senderId": "106638148652444",
"senderDetails": {
"name": "Ayrshare"
},
"conversationId": "t_10161117434308444",
"created": "2024-06-06T00:54:32.455Z",
"action": "sent",
"recipientId": "7101149746568444",
"id": "m_JH6o-yS83JoxWmQaLrmgSaHwGtfTgQ",
"message": "Howdy!",
"platform": "facebook",
"reactions": {
"7101149746568522": "😆". // Reaction by the customer on the Howdy! message
}
},
{
"recipientDetails": {
"name": "Sara Smith",
"id": "736532028017333",
"picture": "https://img.ayrshare.com/333/messages/facebook-eTZzhE2b.jpeg"
},
"senderId": "106638148652329",
"attachments": [
{
"type": "image",
"url": "https://scontent.xx.fbcdn.net/v/t1.15752-9/490986808_1193328359195158"
}
],
"conversationId": "t_3567590438533",
"created": "2024-06-06T00:54:32.455Z",
"action": "sent",
"recipientId": "736532028017333",
"id": "m_WJlfgzopxfdRM1wFTKYHKv7zh75P",
"updated": "2024-06-06T00:54:32.455Z",
"platform": "facebook",
"senderDetails": {
"name": "Ayrshare"
}
},
{
"senderId": "7101149746568444",
"senderDetails": {
"name": "John Smith",
"profileImage": "https://platform-lookaside.fbsbx.com/platform/profilepic/"
},
"conversationId": "t_10161117434308444",
"created": "2024-06-06T00:54:28.102Z",
"action": "received",
"recipientId": "106638148652329",
"id": "m_HGbotYJUmf4AzyPlJ-2uZqHwGtfTgQihX",
"message": "Look up!",
"platform": "facebook"
},
{
"senderId": "7101149746568444",
"senderDetails": {
"name": "John Smith",
"profileImage": "https://platform-lookaside.fbsbx.com/platform/profilepic/"
},
"conversationId": "t_10161117434308444",
"created": "2024-06-06T00:49:11.679Z",
"action": "received",
"recipientId": "106638148652444",
"id": "m_jXoYQIwTXaq2u06PG6Z8vaHwGtfTgQ",
"message": "How is the weather?",
"platform": "facebook"
}
],
"lastUpdated": "2024-06-09T21:46:04.233Z",
"nextUpdate": "2024-06-09T21:47:04.233Z"
}
{
"status": "success",
"messages": [
{
"id": "1893410668991234567",
"conversationId": "1234567890-9876543210",
"senderId": "9876543210",
"created": "2024-06-09T21:30:00.000Z",
"message": "Hey, how are you?",
"action": "received",
"senderDetails": {
"name": "Jane Doe",
"username": "janedoe"
}
},
{
"id": "1893410668991234566",
"conversationId": "1234567890-9876543210",
"senderId": "1234567890",
"created": "2024-06-09T21:28:00.000Z",
"message": "Hello!",
"action": "sent",
"senderDetails": {
"name": "My Account",
"username": "myaccount"
}
}
],
"messagesCount": 2,
"lastUpdated": "2024-06-09T21:46:04.233Z",
"nextUpdate": "2024-06-09T21:46:19.233Z",
"meta": {
"pagination": {
"hasMore": true,
"limit": 5,
"next": "eyJwYWdpbmF0aW9uVG9rZW4iOiIxODkzNDEwNjY4OTkxMjM0NTY1In0="
}
}
}
{
"status": "success",
"messages": [
{
"id": "wamid.HBgLMTQxNTU1NTEyMzQVAgARGBI3MEM3Q0NDQjlGRTUzMjJBNEUA",
"conversationId": "14155551234",
"senderId": "14155551234",
"recipientId": "123456789012345",
"created": "2026-05-18T17:10:02.000Z",
"message": "When is my order shipping?",
"action": "received",
"platform": "whatsapp"
},
{
"id": "wamid.HBgLMTQxNTU1NTEyMzQVAgARGBI4OUYxRkExNzE0M0EwQTYwM0EA",
"conversationId": "14155551234",
"senderId": "14155551234",
"recipientId": "123456789012345",
"created": "2026-05-18T17:08:41.000Z",
"attachments": [
{
"type": "image",
"url": "https://img.ayrshare.com/abc123/whatsapp/whatsapp_image_x9aB2pK7.jpg"
}
],
"action": "received",
"platform": "whatsapp"
}
],
"lastUpdated": "2026-05-18T17:13:00.000Z",
"nextUpdate": "2026-05-18T17:14:00.000Z"
}
{
"status": "success",
"conversationIds": ["14155551234", "447700900123"],
"converstationsDetails": [
{
"id": "14155551234",
"participant": {
"id": "14155551234",
"name": "Jane Customer"
},
"status": "active",
"unread": 2
},
{
"id": "447700900123",
"participant": {
"id": "447700900123"
},
"status": "active",
"unread": 0
}
],
"lastUpdated": "2026-05-18T17:13:00.000Z",
"nextUpdate": "2026-05-18T17:14:00.000Z"
}
{
"status": "success",
"conversationIds": ["t_10161117434308444", "t_356759043857444"],
"converstationsDetails": [
{
"id": "t_10161117434308444",
"participant": {
"name": "John Smith",
"id": "7101149746568444",
"picture": "https://platform-lookaside.fbsbx.com/platform/profilepic/"
},
"status": "active",
"watermark": 1717889607444
},
{
"id": "t_356759043857444",
"participant": {
"name": "Sara Johnson",
"id": "7365320280173444",
"picture": "https://platform-lookaside.fbsbx.com/platform/profilepic/"
},
"status": "active"
}
],
"lastUpdated": "2024-06-09T21:46:04.233Z",
"nextUpdate": "2024-06-09T21:47:04.233Z"
}
{
"action": "messages",
"status": "error",
"code": 361,
"message": "Messaging is not enabled for this User Profile. Please subscribe to Messaging and activate Messaging for this User Profile."
}
{
"action": "messages",
"status": "error",
"code": 362,
"message": "Messagingにアクセスするには、ソーシャルネットワークを再リンクする必要があります。リンクを解除してから再リンクし、もう一度お試しください。",
"resolution": {
"relink": true,
"platform": "facebook"
}
}
Messages
メッセージを取得
メッセージングプラットフォームのメッセージまたは会話を取得します
GET
/
messages
/
:platform
curl \
-H "Authorization: Bearer API_KEY" \
-X GET https://api.ayrshare.com/api/messages/facebook
const apiKey = 'API_KEY';
const url = 'https://api.ayrshare.com/api/messages/facebook';
const headers = {
'Authorization': `Bearer ${apiKey}`,
};
fetch(url, {
method: 'GET',
headers: headers,
})
.then(response => {
if (response.ok) {
return response.json();
} else {
throw new Error(`Request failed. Status code: ${response.status}`);
}
})
.then(data => {
console.log('Response:', data);
})
.catch(error => {
console.error('Error:', error.message);
});
import requests
api_key = 'API_KEY'
url = 'https://api.ayrshare.com/api/messages/facebook'
headers = {
'Authorization': f'Bearer {api_key}',
}
response = requests.get(url, headers=headers)
if response.status_code == 200:
data = response.json()
print('Response:', data)
else:
print(f'Request failed. Status code: {response.status_code}')
<?php
$apiKey = 'API_KEY';
$url = 'https://api.ayrshare.com/api/messages/facebook';
$headers = [
'Authorization: Bearer ' . $apiKey,
];
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
if ($response === false) {
$error = curl_error($ch);
echo 'Error: ' . $error;
} else {
$statusCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
if ($statusCode === 200) {
$responseData = json_decode($response, true);
print_r($responseData);
} else {
echo 'Request failed. Status code: ' . $statusCode;
}
}
curl_close($ch);
?>
using System;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Threading.Tasks;
using System.Text.Json;
class Program
{
static async Task Main()
{
string apiKey = "API_KEY";
string url = "https://api.ayrshare.com/api/messages/facebook";
using var client = new HttpClient();
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", apiKey);
try
{
var response = await client.GetAsync(url);
if (response.IsSuccessStatusCode)
{
var responseBody = await response.Content.ReadAsStringAsync();
var responseData = JsonSerializer.Deserialize<dynamic>(responseBody);
Console.WriteLine("Response:");
Console.WriteLine(responseData);
}
else
{
Console.WriteLine($"Request failed. Status code: {response.StatusCode}");
}
}
catch (HttpRequestException ex)
{
Console.WriteLine($"Error: {ex.Message}");
}
}
}
import java.io.IOException;
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class Main {
public static void main(String[] args) {
String apiKey = "API_KEY";
String url = "https://api.ayrshare.com/api/messages/facebook";
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create(url))
.header("Authorization", "Bearer " + apiKey)
.GET()
.build();
try {
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
if (response.statusCode() == 200) {
String responseBody = response.body();
System.out.println("Response:");
System.out.println(responseBody);
} else {
System.out.println("Request failed. Status code: " + response.statusCode());
}
} catch (IOException | InterruptedException e) {
System.out.println("Error: " + e.getMessage());
}
}
}
{
"status": "success",
"messages": [
{
"senderId": "106638148652444",
"senderDetails": {
"name": "Ayrshare"
},
"conversationId": "t_10161117434308444",
"created": "2024-06-06T00:54:32.455Z",
"action": "sent",
"recipientId": "7101149746568444",
"id": "m_JH6o-yS83JoxWmQaLrmgSaHwGtfTgQ",
"message": "Howdy!",
"platform": "facebook",
"reactions": {
"7101149746568522": "😆". // Reaction by the customer on the Howdy! message
}
},
{
"recipientDetails": {
"name": "Sara Smith",
"id": "736532028017333",
"picture": "https://img.ayrshare.com/333/messages/facebook-eTZzhE2b.jpeg"
},
"senderId": "106638148652329",
"attachments": [
{
"type": "image",
"url": "https://scontent.xx.fbcdn.net/v/t1.15752-9/490986808_1193328359195158"
}
],
"conversationId": "t_3567590438533",
"created": "2024-06-06T00:54:32.455Z",
"action": "sent",
"recipientId": "736532028017333",
"id": "m_WJlfgzopxfdRM1wFTKYHKv7zh75P",
"updated": "2024-06-06T00:54:32.455Z",
"platform": "facebook",
"senderDetails": {
"name": "Ayrshare"
}
},
{
"senderId": "7101149746568444",
"senderDetails": {
"name": "John Smith",
"profileImage": "https://platform-lookaside.fbsbx.com/platform/profilepic/"
},
"conversationId": "t_10161117434308444",
"created": "2024-06-06T00:54:28.102Z",
"action": "received",
"recipientId": "106638148652329",
"id": "m_HGbotYJUmf4AzyPlJ-2uZqHwGtfTgQihX",
"message": "Look up!",
"platform": "facebook"
},
{
"senderId": "7101149746568444",
"senderDetails": {
"name": "John Smith",
"profileImage": "https://platform-lookaside.fbsbx.com/platform/profilepic/"
},
"conversationId": "t_10161117434308444",
"created": "2024-06-06T00:49:11.679Z",
"action": "received",
"recipientId": "106638148652444",
"id": "m_jXoYQIwTXaq2u06PG6Z8vaHwGtfTgQ",
"message": "How is the weather?",
"platform": "facebook"
}
],
"lastUpdated": "2024-06-09T21:46:04.233Z",
"nextUpdate": "2024-06-09T21:47:04.233Z"
}
{
"status": "success",
"messages": [
{
"id": "1893410668991234567",
"conversationId": "1234567890-9876543210",
"senderId": "9876543210",
"created": "2024-06-09T21:30:00.000Z",
"message": "Hey, how are you?",
"action": "received",
"senderDetails": {
"name": "Jane Doe",
"username": "janedoe"
}
},
{
"id": "1893410668991234566",
"conversationId": "1234567890-9876543210",
"senderId": "1234567890",
"created": "2024-06-09T21:28:00.000Z",
"message": "Hello!",
"action": "sent",
"senderDetails": {
"name": "My Account",
"username": "myaccount"
}
}
],
"messagesCount": 2,
"lastUpdated": "2024-06-09T21:46:04.233Z",
"nextUpdate": "2024-06-09T21:46:19.233Z",
"meta": {
"pagination": {
"hasMore": true,
"limit": 5,
"next": "eyJwYWdpbmF0aW9uVG9rZW4iOiIxODkzNDEwNjY4OTkxMjM0NTY1In0="
}
}
}
{
"status": "success",
"messages": [
{
"id": "wamid.HBgLMTQxNTU1NTEyMzQVAgARGBI3MEM3Q0NDQjlGRTUzMjJBNEUA",
"conversationId": "14155551234",
"senderId": "14155551234",
"recipientId": "123456789012345",
"created": "2026-05-18T17:10:02.000Z",
"message": "When is my order shipping?",
"action": "received",
"platform": "whatsapp"
},
{
"id": "wamid.HBgLMTQxNTU1NTEyMzQVAgARGBI4OUYxRkExNzE0M0EwQTYwM0EA",
"conversationId": "14155551234",
"senderId": "14155551234",
"recipientId": "123456789012345",
"created": "2026-05-18T17:08:41.000Z",
"attachments": [
{
"type": "image",
"url": "https://img.ayrshare.com/abc123/whatsapp/whatsapp_image_x9aB2pK7.jpg"
}
],
"action": "received",
"platform": "whatsapp"
}
],
"lastUpdated": "2026-05-18T17:13:00.000Z",
"nextUpdate": "2026-05-18T17:14:00.000Z"
}
{
"status": "success",
"conversationIds": ["14155551234", "447700900123"],
"converstationsDetails": [
{
"id": "14155551234",
"participant": {
"id": "14155551234",
"name": "Jane Customer"
},
"status": "active",
"unread": 2
},
{
"id": "447700900123",
"participant": {
"id": "447700900123"
},
"status": "active",
"unread": 0
}
],
"lastUpdated": "2026-05-18T17:13:00.000Z",
"nextUpdate": "2026-05-18T17:14:00.000Z"
}
{
"status": "success",
"conversationIds": ["t_10161117434308444", "t_356759043857444"],
"converstationsDetails": [
{
"id": "t_10161117434308444",
"participant": {
"name": "John Smith",
"id": "7101149746568444",
"picture": "https://platform-lookaside.fbsbx.com/platform/profilepic/"
},
"status": "active",
"watermark": 1717889607444
},
{
"id": "t_356759043857444",
"participant": {
"name": "Sara Johnson",
"id": "7365320280173444",
"picture": "https://platform-lookaside.fbsbx.com/platform/profilepic/"
},
"status": "active"
}
],
"lastUpdated": "2024-06-09T21:46:04.233Z",
"nextUpdate": "2024-06-09T21:47:04.233Z"
}
{
"action": "messages",
"status": "error",
"code": 361,
"message": "Messaging is not enabled for this User Profile. Please subscribe to Messaging and activate Messaging for this User Profile."
}
{
"action": "messages",
"status": "error",
"code": 362,
"message": "Messagingにアクセスするには、ソーシャルネットワークを再リンクする必要があります。リンクを解除してから再リンクし、もう一度お試しください。",
"resolution": {
"relink": true,
"platform": "facebook"
}
}
メッセージングプラットフォームのメッセージまたは会話を取得します。
各ソーシャルネットワークによって取得時間が異なります。Facebook、Instagram、および WhatsApp では、メッセージは Ayrshare を介してリアルタイムで利用可能です。X/Twitter では、新しいメッセージの更新を確認するのに最大 3 分の遅延があります。X/Twitter メッセージへのリアルタイムアクセスが必要な場合、Enterprise Plan の詳細についてはサポートまでお問い合わせください。
レスポンスキャッシュ: FacebookとInstagramでは、レスポンスは60秒間キャッシュされます。X/Twitterでは、ポーリングをより適切にサポートするためレスポンスは15秒間キャッシュされます。WhatsApp は Meta の webhook 経由ですでに受信済みのメッセージを読み取るため、新しく受信したメッセージは Ayrshare がその webhook を処理し次第すぐに表示されます。レスポンスには引き続き
lastUpdated および nextUpdate メタデータが含まれます。FacebookおよびInstagramの初回メッセージ履歴取得は、最新20件のメッセージに制限されます。詳細については、FacebookおよびInstagramのメッセージ履歴取得セクションをご覧ください。
WhatsApp の会話は、相手の電話番号(数字のみ、先頭の
+ を含まない E.164 形式)で識別されます。保存されたアウトバウンドメッセージには、sent、delivered、read、または failed のいずれかの status 値が含まれる場合があります。メッセージ送信を通じて送信された WhatsApp メッセージは、現在 Get Messages の履歴には追加されません。webhook 経由で受信した WhatsApp メッセージはここに保存され、返されます。
ヘッダーパラメータ
パスパラメータ
string
必須
メッセージを取得するプラットフォーム:
facebook、instagram、twitter、whatsappクエリパラメータ
string
デフォルト:"active"
必須
アクティブな会話またはアーカイブされた会話を返します。値:
activeまたはarchived。string
特定の会話のみを返します。
string
一方向のメッセージのみを返します。値:
sent または received。省略すると両方を返します。boolean
デフォルト:false
メッセージではなく会話を返します。会話を1ページ返します。残りは
meta.pagination.next をたどってください。true の場合、conversationId は無視されます。conversationsOnly=true の場合、会話の詳細は converstationsDetails で返されます。このスペルは現在の API レスポンスの一部です。integer
メッセージおよび会話一覧のページサイズ。1〜100の整数で、既定値と最大値はいずれも 100 です。X/Twitter では、
limit はどのメッセージ群を読むかも決めます。省略すると保存済みメッセージをページングし、これは他のすべてのプラットフォームと同じ動作で、status、action、conversationsOnly が適用されるのはこの場合だけです。指定すると代わりに X 独自のカーソルで X のライブタイムラインをページングし、これら3つのフィルターはいずれも適用されません。この選択は最初のリクエストでのみ行われます。カーソルをたどり始めたあとはカーソルが決めます。保存済みメッセージのカーソルは limit を送っても保存済みメッセージを返し続け、X のカーソルは limit を省いてもライブタイムラインを返し続けます。ページングの途中で切り替えることはできません。string
meta.pagination.next の不透明なカーソル。同じプロフィール、プラットフォーム、フィルターで next として送信します。meta.pagination.hasMore が true の間は、絞り込んだページが短くても空でも続けてください。以降のリクエストでは limit を省略できます(既定値100)。X/Twitter ではカーソル自体がどちらのメッセージ群から得られたかを保持しているため、limit を送っても省いても、もう一方に切り替わることはありません。次のページの取得
GET /api/messages/instagram?limit=100 から開始します。続きを取得するには、返された meta.pagination.next の値を URL エンコードし、GET /api/messages/instagram?limit=100&next=<opaque cursor> を送信します。パラメータは cursor ではなく next です。全体を通して同じ Profile-Key とクエリフィルターを維持してください。
停止するタイミングは、結果の件数ではなく meta.pagination.hasMore で判断してください。各リクエストは履歴の限られた範囲をスキャンするため、フィルター付きのリクエストは limit より少ない結果を返したり、継続カーソル付きの空のページを返したりすることがあります。保存履歴内のメッセージは新しい順に並び、同順位はドキュメント ID で解決されます。会話一覧はドキュメント ID 順に並びます。ページングは固定されたスナップショットではありません: 最初のページからやり直すと新しいメッセージが現れ、会話のステータスが変わるとフィルター後の結果も変わることがあります。
既存のメッセージフィールドと converstationsDetails のスペルは変更されていません。これまで 1 回のリクエストで完全な一覧(メッセージでも会話でも、どのプラットフォームでも)を取得できることを想定していた連携は、継続カーソルに従う必要があります。limit を 100 より大きくすることはサポートされていません。
curl \
-H "Authorization: Bearer API_KEY" \
-X GET https://api.ayrshare.com/api/messages/facebook
const apiKey = 'API_KEY';
const url = 'https://api.ayrshare.com/api/messages/facebook';
const headers = {
'Authorization': `Bearer ${apiKey}`,
};
fetch(url, {
method: 'GET',
headers: headers,
})
.then(response => {
if (response.ok) {
return response.json();
} else {
throw new Error(`Request failed. Status code: ${response.status}`);
}
})
.then(data => {
console.log('Response:', data);
})
.catch(error => {
console.error('Error:', error.message);
});
import requests
api_key = 'API_KEY'
url = 'https://api.ayrshare.com/api/messages/facebook'
headers = {
'Authorization': f'Bearer {api_key}',
}
response = requests.get(url, headers=headers)
if response.status_code == 200:
data = response.json()
print('Response:', data)
else:
print(f'Request failed. Status code: {response.status_code}')
<?php
$apiKey = 'API_KEY';
$url = 'https://api.ayrshare.com/api/messages/facebook';
$headers = [
'Authorization: Bearer ' . $apiKey,
];
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
if ($response === false) {
$error = curl_error($ch);
echo 'Error: ' . $error;
} else {
$statusCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
if ($statusCode === 200) {
$responseData = json_decode($response, true);
print_r($responseData);
} else {
echo 'Request failed. Status code: ' . $statusCode;
}
}
curl_close($ch);
?>
using System;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Threading.Tasks;
using System.Text.Json;
class Program
{
static async Task Main()
{
string apiKey = "API_KEY";
string url = "https://api.ayrshare.com/api/messages/facebook";
using var client = new HttpClient();
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", apiKey);
try
{
var response = await client.GetAsync(url);
if (response.IsSuccessStatusCode)
{
var responseBody = await response.Content.ReadAsStringAsync();
var responseData = JsonSerializer.Deserialize<dynamic>(responseBody);
Console.WriteLine("Response:");
Console.WriteLine(responseData);
}
else
{
Console.WriteLine($"Request failed. Status code: {response.StatusCode}");
}
}
catch (HttpRequestException ex)
{
Console.WriteLine($"Error: {ex.Message}");
}
}
}
import java.io.IOException;
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class Main {
public static void main(String[] args) {
String apiKey = "API_KEY";
String url = "https://api.ayrshare.com/api/messages/facebook";
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create(url))
.header("Authorization", "Bearer " + apiKey)
.GET()
.build();
try {
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
if (response.statusCode() == 200) {
String responseBody = response.body();
System.out.println("Response:");
System.out.println(responseBody);
} else {
System.out.println("Request failed. Status code: " + response.statusCode());
}
} catch (IOException | InterruptedException e) {
System.out.println("Error: " + e.getMessage());
}
}
}
{
"status": "success",
"messages": [
{
"senderId": "106638148652444",
"senderDetails": {
"name": "Ayrshare"
},
"conversationId": "t_10161117434308444",
"created": "2024-06-06T00:54:32.455Z",
"action": "sent",
"recipientId": "7101149746568444",
"id": "m_JH6o-yS83JoxWmQaLrmgSaHwGtfTgQ",
"message": "Howdy!",
"platform": "facebook",
"reactions": {
"7101149746568522": "😆". // Reaction by the customer on the Howdy! message
}
},
{
"recipientDetails": {
"name": "Sara Smith",
"id": "736532028017333",
"picture": "https://img.ayrshare.com/333/messages/facebook-eTZzhE2b.jpeg"
},
"senderId": "106638148652329",
"attachments": [
{
"type": "image",
"url": "https://scontent.xx.fbcdn.net/v/t1.15752-9/490986808_1193328359195158"
}
],
"conversationId": "t_3567590438533",
"created": "2024-06-06T00:54:32.455Z",
"action": "sent",
"recipientId": "736532028017333",
"id": "m_WJlfgzopxfdRM1wFTKYHKv7zh75P",
"updated": "2024-06-06T00:54:32.455Z",
"platform": "facebook",
"senderDetails": {
"name": "Ayrshare"
}
},
{
"senderId": "7101149746568444",
"senderDetails": {
"name": "John Smith",
"profileImage": "https://platform-lookaside.fbsbx.com/platform/profilepic/"
},
"conversationId": "t_10161117434308444",
"created": "2024-06-06T00:54:28.102Z",
"action": "received",
"recipientId": "106638148652329",
"id": "m_HGbotYJUmf4AzyPlJ-2uZqHwGtfTgQihX",
"message": "Look up!",
"platform": "facebook"
},
{
"senderId": "7101149746568444",
"senderDetails": {
"name": "John Smith",
"profileImage": "https://platform-lookaside.fbsbx.com/platform/profilepic/"
},
"conversationId": "t_10161117434308444",
"created": "2024-06-06T00:49:11.679Z",
"action": "received",
"recipientId": "106638148652444",
"id": "m_jXoYQIwTXaq2u06PG6Z8vaHwGtfTgQ",
"message": "How is the weather?",
"platform": "facebook"
}
],
"lastUpdated": "2024-06-09T21:46:04.233Z",
"nextUpdate": "2024-06-09T21:47:04.233Z"
}
{
"status": "success",
"messages": [
{
"id": "1893410668991234567",
"conversationId": "1234567890-9876543210",
"senderId": "9876543210",
"created": "2024-06-09T21:30:00.000Z",
"message": "Hey, how are you?",
"action": "received",
"senderDetails": {
"name": "Jane Doe",
"username": "janedoe"
}
},
{
"id": "1893410668991234566",
"conversationId": "1234567890-9876543210",
"senderId": "1234567890",
"created": "2024-06-09T21:28:00.000Z",
"message": "Hello!",
"action": "sent",
"senderDetails": {
"name": "My Account",
"username": "myaccount"
}
}
],
"messagesCount": 2,
"lastUpdated": "2024-06-09T21:46:04.233Z",
"nextUpdate": "2024-06-09T21:46:19.233Z",
"meta": {
"pagination": {
"hasMore": true,
"limit": 5,
"next": "eyJwYWdpbmF0aW9uVG9rZW4iOiIxODkzNDEwNjY4OTkxMjM0NTY1In0="
}
}
}
{
"status": "success",
"messages": [
{
"id": "wamid.HBgLMTQxNTU1NTEyMzQVAgARGBI3MEM3Q0NDQjlGRTUzMjJBNEUA",
"conversationId": "14155551234",
"senderId": "14155551234",
"recipientId": "123456789012345",
"created": "2026-05-18T17:10:02.000Z",
"message": "When is my order shipping?",
"action": "received",
"platform": "whatsapp"
},
{
"id": "wamid.HBgLMTQxNTU1NTEyMzQVAgARGBI4OUYxRkExNzE0M0EwQTYwM0EA",
"conversationId": "14155551234",
"senderId": "14155551234",
"recipientId": "123456789012345",
"created": "2026-05-18T17:08:41.000Z",
"attachments": [
{
"type": "image",
"url": "https://img.ayrshare.com/abc123/whatsapp/whatsapp_image_x9aB2pK7.jpg"
}
],
"action": "received",
"platform": "whatsapp"
}
],
"lastUpdated": "2026-05-18T17:13:00.000Z",
"nextUpdate": "2026-05-18T17:14:00.000Z"
}
{
"status": "success",
"conversationIds": ["14155551234", "447700900123"],
"converstationsDetails": [
{
"id": "14155551234",
"participant": {
"id": "14155551234",
"name": "Jane Customer"
},
"status": "active",
"unread": 2
},
{
"id": "447700900123",
"participant": {
"id": "447700900123"
},
"status": "active",
"unread": 0
}
],
"lastUpdated": "2026-05-18T17:13:00.000Z",
"nextUpdate": "2026-05-18T17:14:00.000Z"
}
{
"status": "success",
"conversationIds": ["t_10161117434308444", "t_356759043857444"],
"converstationsDetails": [
{
"id": "t_10161117434308444",
"participant": {
"name": "John Smith",
"id": "7101149746568444",
"picture": "https://platform-lookaside.fbsbx.com/platform/profilepic/"
},
"status": "active",
"watermark": 1717889607444
},
{
"id": "t_356759043857444",
"participant": {
"name": "Sara Johnson",
"id": "7365320280173444",
"picture": "https://platform-lookaside.fbsbx.com/platform/profilepic/"
},
"status": "active"
}
],
"lastUpdated": "2024-06-09T21:46:04.233Z",
"nextUpdate": "2024-06-09T21:47:04.233Z"
}
{
"action": "messages",
"status": "error",
"code": 361,
"message": "Messaging is not enabled for this User Profile. Please subscribe to Messaging and activate Messaging for this User Profile."
}
{
"action": "messages",
"status": "error",
"code": 362,
"message": "Messagingにアクセスするには、ソーシャルネットワークを再リンクする必要があります。リンクを解除してから再リンクし、もう一度お試しください。",
"resolution": {
"relink": true,
"platform": "facebook"
}
}