انتقل إلى المحتوى الرئيسي

إرسال رسائل WhatsApp

تتيح لك Textly أيضًا إرسال رسائل نصية عبر واتساب إلى رقم هاتف واحد أو عدة أرقام، وذلك من خلال إرسال طلب

POST /api/v1/client/whatsapp/send_plain

const myApiToken = await getApiToken(); // See authentication guide to learn how to get a token

const response = await fetch(
"https://api.textly.ly/api/v1/client/whatsapp/send_plain",
{
method: "POST",
headers: new Headers({
"Content-Type": "application/json",
Authorization: `Bearer ${myApiToken}`,
}),
body: JSON.stringify({
target_numbers: ["09100000"],
content: "Hello world",
wait_for_send: true,
}),
}
);

كما نلاحظ من المثال، فإن جسم الطلب الذي يتم إرساله يتكوّن من

{
"target_numbers": ["09100000"],
"content": "4501",
"wait_for_send": true
}
  • target_numbers: مصفوفة من أرقام الهواتف التي سيتم إرسال الرسالة إليها (يجب أن تحتوي على رقم واحد على الأقل)
  • content: محتوى الرسالة النصية
  • wait_for_send: تحديد ما إذا كان سيتم إرسال الرسالة فورًا أو جدولتها للإرسال خلال 3 إلى 5 ثوانٍ (اختياري)

إرسال المستندات

يوفر Textly أيضًا endpoint بسيطة لإرسال المستندات، وذلك عن طريق إرسال طلب POST إلى

api/v1/client/whatsapp/send_document/

const myApiToken = await getApiToken(); // See authentication guide to learn how to get a token

const file = await getFileAsBase64();

const response = await fetch(
"https://api.textly.ly/api/v1/client/whatsapp/send_document",
{
method: "POST",
headers: new Headers({
"Content-Type": "application/json",
Authorization: `Bearer ${myApiToken}`,
}),
body: JSON.stringify({
target_numbers: ["09100000"],
caption: "test document",
wait_for_send: true,
file_name: "test.pdf",
mimeType: 'application/pdf',
base65_content: file,
}),
}
);
  • base64_content: محتوى الملف مشفر كسلسلة base64.
  • mimeType: نوع MIME للملف.
  • file_name: اسم الملف.
  • caption: نص التسمية التوضيحية للملف.
  • target_numbers: الأرقام المستهدفة التي ستستقبل الرسالة.
  • wait_for_send: تحديد ما إذا كان يجب الانتظار لإرسال الرسالة مباشرة أو جدولتها للإرسال لاحقًا.

إرسال ملفات فيديو

يوفر Textly أيضًا endpoint بسيطة لإرسال مقاطع الفيديو، وذلك عن طريق إرسال طلب POST إلى

/v1/client/whatsapp/send_video

const myApiToken = await getApiToken(); // See authentication guide to learn how to get a token

const file = await getFileAsBase64();

const response = await fetch(
"https://api.textly.ly/api/v1/client/whatsapp/send_video",
{
method: "POST",
headers: new Headers({
"Content-Type": "application/json",
Authorization: `Bearer ${myApiToken}`,
}),
body: JSON.stringify({
target_numbers: ["09100000"],
caption: "test document",
wait_for_send: true,
file_name: "test.pdf",
mimeType: 'application/pdf',
base65_content: file,
}),
}
);
  • base64_content: محتوى الملف مشفر كسلسلة base64.
  • mimeType: نوع MIME للملف.
  • file_name: اسم الملف.
  • caption: نص التسمية التوضيحية للملف.
  • target_numbers: الأرقام المستهدفة التي ستستقبل الرسالة.
  • wait_for_send: تحديد ما إذا كان يجب الانتظار لإرسال الرسالة مباشرة أو جدولتها للإرسال لاحقًا.

إرسال الصور

يوفر Textly أيضًا endpoint بسيطة لإرسال الصور، وذلك عن طريق إرسال طلب POST إلى

const myApiToken = await getApiToken(); // See authentication guide to learn how to get a token

const file = await getFileAsBase64();

const response = await fetch(
"https://api.textly.ly/api/v1/client/whatsapp/send_image",
{
method: "POST",
headers: new Headers({
"Content-Type": "application/json",
Authorization: `Bearer ${myApiToken}`,
}),
body: JSON.stringify({
target_numbers: ["09100000"],
caption: "test document",
wait_for_send: true,
file_name: "test.pdf",
mimeType: 'application/pdf',
base65_content: file,
}),
}
);
  • base64_content: محتوى الملف مشفر كسلسلة base64.
  • mimeType: نوع MIME للملف.
  • file_name: اسم الملف.
  • caption: نص التسمية التوضيحية للملف.
  • target_numbers: الأرقام المستهدفة التي ستستقبل الرسالة.
  • wait_for_send: تحديد ما إذا كان يجب الانتظار لإرسال الرسالة مباشرة أو جدولتها للإرسال لاحقًا.