ویژگی‌ها پلن‌ها توسعه‌دهندگان تماس با ما درباره ما

مستندات API واتساپ کانکتور

با استفاده از API واتساپ کانکتور می‌توانید به راحتی از هر سیستم خارجی پیام واتساپ ارسال کنید. این API با امنیت بالا طراحی شده و شامل احراز هویت توکنی، محدودیت نرخ و لاگ کامل درخواست‌ها است.

امنیت بالا

توکن‌های هش‌شده با SHA-256 و محدودیت IP

Rate Limiting

کنترل تعداد درخواست در دقیقه

لاگ کامل

ثبت تمام درخواست‌ها با جزئیات

ساده و سریع

RESTful API با پاسخ‌های JSON

Base URL: https://what.sazhesab.ir/api/v1

🔐 احراز هویت

تمام درخواست‌ها به API باید شامل یک توکن معتبر در هدر Authorization باشند.

نحوه ارسال توکن

HTTP Header
Authorization: Bearer YOUR_API_TOKEN
برای ایجاد توکن API، ابتدا وارد حساب کاربری خود شوید.

📨 ارسال پیام متنی

POST /api/v1/send

ارسال پیام متنی به یک شماره واتساپ

پارامترها

نام نوع توضیحات
phone * string شماره تلفن با کد کشور (مثال: 989123456789)
message * string متن پیام (حداکثر 4096 کاراکتر)

نمونه درخواست

cURL
curl -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": "پیام با موفقیت ارسال شد" }

🔍 بررسی شماره

POST /api/v1/check-number

بررسی اینکه آیا یک شماره در واتساپ ثبت شده است یا خیر

نام نوع توضیحات
phone * string شماره تلفن با کد کشور

📊 وضعیت حساب

GET /api/v1/status

دریافت وضعیت اتصال حساب واتساپ مرتبط با توکن

🔔 Webhook - دریافت خودکار پیام‌ها

Webhook به شما امکان دریافت خودکار پیام‌های دریافتی در حساب واتساپ را می‌دهد. هر زمان که پیامی به حساب واتساپ شما برسد، سیستم به صورت خودکار یک درخواست POST به URL تعیین شده شما ارسال می‌کند.

تنظیم Webhook

برای استفاده از Webhook، باید URL وب‌هوک خود را در تنظیمات حساب واتساپ در داشبورد تنظیم کنید. این URL باید یک endpoint معتبر باشد که درخواست‌های POST را دریافت کند.

نکته: برای تنظیم Webhook URL، وارد داشبورد شوید و در بخش تنظیمات حساب واتساپ، URL وب‌هوک خود را وارد کنید.

ساختار 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)

PHP
Route::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)

JavaScript
app.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)

Python
from 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: در صورت خطا، درخواست دوباره ارسال نمی‌شود
مهم: Webhook URL شما باید به صورت عمومی قابل دسترسی باشد و درخواست‌های POST را بپذیرد. برای امنیت بیشتر، می‌توانید از احراز هویت در endpoint خود استفاده کنید.
نکته: می‌توانید از ابزار تست Webhook در داشبورد استفاده کنید تا اطمینان حاصل کنید که Webhook شما به درستی کار می‌کند.

⚠️ کدهای خطا

کد توضیحات
401 توکن نامعتبر یا منقضی شده
403 IP غیرمجاز یا دسترسی محدود
429 محدودیت نرخ - تعداد درخواست بیش از حد مجاز
422 داده‌های ورودی نامعتبر
503 حساب واتساپ متصل نیست

⏱️ محدودیت نرخ

هر توکن API دارای محدودیت تعداد درخواست در دقیقه است. این مقدار هنگام ایجاد توکن قابل تنظیم است. در صورت رسیدن به محدودیت، خطای 429 دریافت خواهید کرد.

پیشنهاد: برای ارسال حجم بالای پیام، از سیستم صف استفاده کنید.