پرش به مطلب اصلی

ارسال پیامک با کد پستی

این API به شما امکان ارسال پیام با استفاده از کدهای پستی را می‌دهد.

📍 لینک دسترسی

POST {base_url}/api/send

🧾 هدرهای درخواست

کلیدمقدار
Authorizationتوکن یا کلید دسترسی
Content-Typeapplication/json

📤 بدنه درخواست

{
"sending_type": "postal_code",
"from_number": "+98BANK",
"message": "متن پیام",
"params": [
{
"bank": "all",
"postal_code": 131,
"gender": 0,
"age_from": 1330,
"age_to": 1402,
"mci": {
"start": 0,
"size": 1
},
"irancell": {
"start": 0,
"size": 0
},
"other": {
"start": 0,
"size": 0
}
},
{
"bank": "all",
"postal_code": 141,
"gender": 0,
"age_from": 1330,
"age_to": 1402,
"mci": {
"start": 0,
"size": 1
},
"irancell": {
"start": 0,
"size": 0
},
"other": {
"start": 0,
"size": 0
}
}
],
"other_recipients": [
"+989120000000",
"+989350000000"
],
"send_time": "2025-02-28 10:52:02"
}

📝 پارامترها

پارامترنوعضروریتوضیحات
sending_typestringبلهنوع ارسال، باید "postal_code" باشد
from_numberstringبلهشماره فرستنده در فرمت E.164 (مثال: +983000505)
messagestringبلهمتن پیامی که میخواهید ارسال نمایید. این متن نباید بیش از 1400 کارکتر یا 20 پارت باشد
paramsarrayبلهآرایه‌ای از اشیاء شامل تنظیمات کد پستی
bankstringبلهنوع بانک اطلاعاتی: "all" برای همه
postal_codeintegerبلهکد پستی مورد نظر
genderintegerخیرجنسیت: 0 برای همه، 1 برای مرد، 2 برای زن
age_fromintegerخیرسال تولد شروع (شمسی)
age_tointegerخیرسال تولد پایان (شمسی)
mciobjectخیرتنظیمات اپراتور همراه اول شامل از چه ردیف و به چه تعداد
irancellobjectخیرتنظیمات اپراتور ایرانسل شامل از چه ردیف و به چه تعداد
otherobjectخیرتنظیمات سایر اپراتورها شامل از چه ردیف و به چه تعداد
startintegerخیرشماره ردیف شروع
sizeintegerخیرتعداد شماره‌های مورد نظر
send_timestringخیرزمان مورد نظر برای ارسال پیام در فرمت YYYY-MM-DD HH:MM:SS. منطقه زمانی UTC است.

📝 تنظیمات اپراتور

هر اپراتور شامل دو پارامتر است:

  • start: شماره ردیف شروع (پیش‌فرض: 0)
  • size: تعداد شماره‌های مورد نظر (پیش‌فرض: 0)

📝 نکات

  • from_number باید سرشماره معتبری باشد که به حساب شما اختصاص یافته است.
  • کد پستی باید معتبر و در سیستم موجود باشد.
  • می‌توانید با تنظیم پارامترهای جنسیت و سن، مخاطبین را فیلتر کنید.
  • اگر پارامترهای اپراتور تنظیم نشوند، به همه شماره‌ها ارسال می‌شود.

✅ پاسخ موفق

{
"data": {
"message_outbox_ids": [
1123544244
]
},
"meta": {
"status": true,
"message": "انجام شد",
"message_parameters": [],
"message_code": "200-1"
}
}

❌ پاسخ خطا — کد پستی نامعتبر (422)

{
"data": null,
"meta": {
"status": false,
"message": "کد پستی نامعتبر است",
"message_parameters": [],
"message_code": "400-2",
"errors": {
"postal_code": [
"کد پستی نامعتبر است"
]
}
}
}

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

curl --location '{base_url}/api/send' \
--header 'Content-Type: application/json' \
--header 'Authorization: API TOKEN' \
--data '{
"sending_type": "postal_code",
"from_number": "+98BANK",
"message": "متن پیام",
"params": [
{
"bank": "all",
"postal_code": 131,
"gender": 0,
"age_from": 1330,
"age_to": 1402,
"mci": {
"start": 0,
"size": 1
},
"irancell": {
"start": 0,
"size": 0
},
"other": {
"start": 0,
"size": 0
}
},
{
"bank": "all",
"postal_code": 141,
"gender": 0,
"age_from": 1330,
"age_to": 1402,
"mci": {
"start": 0,
"size": 1
},
"irancell": {
"start": 0,
"size": 0
},
"other": {
"start": 0,
"size": 0
}
}
],
"other_recipients": [
"+989120000000",
"+989350000000"
],
"send_time": "2025-02-28 10:52:02"
}'