مستندات API واتساپ کانکتور
با استفاده از API واتساپ کانکتور میتوانید به راحتی از هر سیستم خارجی پیام واتساپ ارسال کنید. این API با امنیت بالا طراحی شده و شامل احراز هویت توکنی، محدودیت نرخ و لاگ کامل درخواستها است.
امنیت بالا
توکنهای هششده با SHA-256 و محدودیت IP
Rate Limiting
کنترل تعداد درخواست در دقیقه
لاگ کامل
ثبت تمام درخواستها با جزئیات
ساده و سریع
RESTful API با پاسخهای JSON
https://what.sazhesab.ir/api/v1
🔐 احراز هویت
تمام درخواستها به API باید شامل یک توکن معتبر در هدر Authorization باشند.
نحوه ارسال توکن
HTTP HeaderAuthorization: Bearer YOUR_API_TOKEN
📨 ارسال پیام متنی
/api/v1/send
ارسال پیام متنی به یک شماره واتساپ
پارامترها
| نام | نوع | توضیحات |
|---|---|---|
| phone * | string | شماره تلفن با کد کشور (مثال: 989123456789) |
| message * | string | متن پیام (حداکثر 4096 کاراکتر) |
نمونه درخواست
cURLcurl -X POST https://what.sazhesab.ir/api/v1/send \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"phone": "989123456789", "message": "سلام!"}'
پاسخ موفق
JSON{
"success": true,
"message_id": "3EB0XXXXX",
"message": "پیام با موفقیت ارسال شد"
}
🔍 بررسی شماره
/api/v1/check-number
بررسی اینکه آیا یک شماره در واتساپ ثبت شده است یا خیر
| نام | نوع | توضیحات |
|---|---|---|
| phone * | string | شماره تلفن با کد کشور |
📊 وضعیت حساب
/api/v1/status
دریافت وضعیت اتصال حساب واتساپ مرتبط با توکن
🔔 Webhook - دریافت خودکار پیامها
Webhook به شما امکان دریافت خودکار پیامهای دریافتی در حساب واتساپ را میدهد. هر زمان که پیامی به حساب واتساپ شما برسد، سیستم به صورت خودکار یک درخواست POST به URL تعیین شده شما ارسال میکند.
تنظیم Webhook
برای استفاده از Webhook، باید URL وبهوک خود را در تنظیمات حساب واتساپ در داشبورد تنظیم کنید. این URL باید یک endpoint معتبر باشد که درخواستهای POST را دریافت کند.
ساختار Payload
زمانی که پیامی دریافت میشود، سیستم یک درخواست POST با ساختار زیر به Webhook URL شما ارسال میکند:
JSON{
"update_id": 123,
"message": {
"message_id": "3EB0XXXXX",
"from": {
"phone": "989123456789",
"name": "نام فرستنده"
},
"chat": {
"phone": "989123456789",
"name": "نام فرستنده"
},
"text": "متن پیام دریافتی",
"date": "2024-12-15 14:30:00"
},
"account": {
"session_id": "account-session-id",
"name": "نام حساب واتساپ",
"phone_number": "989123456789"
}
}
توضیحات فیلدها
| فیلد | نوع | توضیحات |
|---|---|---|
| update_id | integer | شناسه یکتای پیام در سیستم |
| message.message_id | string | شناسه پیام از واتساپ |
| message.from.phone | string | شماره تلفن فرستنده با کد کشور |
| message.from.name | string | نام فرستنده (در صورت موجود بودن) |
| message.text | string | متن پیام دریافتی |
| message.date | string | تاریخ و زمان دریافت پیام (فرمت: Y-m-d H:i:s) |
| account.session_id | string | شناسه جلسه حساب واتساپ |
| account.name | string | نام حساب واتساپ |
| account.phone_number | string | شماره تلفن حساب واتساپ |
نمونه کد دریافت Webhook
در اینجا نمونههایی از نحوه دریافت و پردازش Webhook در زبانهای مختلف ارائه شده است:
PHP (Laravel)
PHPRoute::post('/webhook', function (Request $request) {
$data = $request->all();
$messageId = $data['message']['message_id'];
$from = $data['message']['from']['phone'];
$text = $data['message']['text'];
$accountName = $data['account']['name'];
// پردازش پیام دریافتی
// ...
return response()->json(['success' => true]);
});
Node.js (Express)
JavaScriptapp.post('/webhook', (req, res) => {
const { update_id, message, account } = req.body;
const messageId = message.message_id;
const from = message.from.phone;
const text = message.text;
const accountName = account.name;
// پردازش پیام دریافتی
// ...
res.json({ success: true });
});
Python (Flask)
Pythonfrom flask import Flask, request, jsonify
app = Flask(__name__)
@app.route('/webhook', methods=['POST'])
def webhook():
data = request.json
message_id = data['message']['message_id']
from_phone = data['message']['from']['phone']
text = data['message']['text']
account_name = data['account']['name']
# پردازش پیام دریافتی
# ...
return jsonify({'success': True})
مشخصات فنی
- Method: POST
- Content-Type: application/json
- Timeout: 10 ثانیه
- Retry: در صورت خطا، درخواست دوباره ارسال نمیشود
⚠️ کدهای خطا
| کد | توضیحات |
|---|---|
| 401 | توکن نامعتبر یا منقضی شده |
| 403 | IP غیرمجاز یا دسترسی محدود |
| 429 | محدودیت نرخ - تعداد درخواست بیش از حد مجاز |
| 422 | دادههای ورودی نامعتبر |
| 503 | حساب واتساپ متصل نیست |
⏱️ محدودیت نرخ
هر توکن API دارای محدودیت تعداد درخواست در دقیقه است. این مقدار هنگام ایجاد توکن قابل تنظیم است. در صورت رسیدن به محدودیت، خطای 429 دریافت خواهید کرد.