GET https://psend.ir/api/getprice.aspx
| پارامتر | ضروری | نوع | توضیح |
|---|---|---|---|
| key | بله | string | کلید API اختصاصی هر فروشگاه |
| city | بله | number | CityCode پستی |
| weight | بله | number | وزن مرسوله به گرم |
| size | بله | number | شناسه سایز (1 تا 11) |
| service | بله | number | شناسه سرویس پستی |
GET https://psend.ir/api/getprice.aspx?key=123abc456xyz&city=19338&weight=500&size=3&service=2
{
"status": "success",
"price": 528500,
"groupID": 4,
"weightID": 2,
"sizeID": 3,
"serviceID": 2
}
{
"status": "error",
"code": "INVALID_KEY",
"message": "کلید API نامعتبر است"
}
{
"status": "error",
"code": "UNAUTHORIZED_DOMAIN",
"message": "درخواست از دامین مجاز ارسال نشده است"
}
{
"status": "error",
"code": "RATE_LIMIT_SECOND",
"message": "تعداد درخواستهای این ثانیه بیش از حد مجاز است"
}
{
"status": "error",
"code": "RATE_LIMIT_DAILY",
"message": "تعداد درخواستهای امروز به حد مجاز رسیده است"
}
برای جلوگیری از سوءاستفاده و محافظت از کلید API، این سرویس شامل دو مکانیزم امنیتی اصلی است:
هر فروشگاه میتواند در بخش تنظیمات، آدرس وبسایت خود را ثبت کند. تنها درخواستهایی که از همان دامنه ارسال شوند اجازه استفاده از API را خواهند داشت.
درخواستهایی که از دامنههای دیگر ارسال شوند توسط سیستم رد میشوند.
در صورت عبور از سقف مجاز، API با خطای محدودیت نرخ پاسخ خواهد داد.
| کد خطا | شدت | توضیح |
|---|---|---|
| INVALID_INPUT | Medium | یکی از پارامترهای ورودی کامل، صحیح یا قابل پردازش نیست.
موارد بررسی:
– کلید API وارد شده باشد – وزن و سایز مقدار معتبر داشته باشند – CityCode صحیح وارد شده باشد |
| INVALID_KEY | High | کلید API معتبر نیست یا دسترسی فعال ندارد.
موارد بررسی:
– مقدار key درست ارسال شده باشد – اکانت فروشگاه فعال باشد – کلید بهدرستی Copy شده باشد و کاراکتر اضافه نداشته باشد |
| CITY_NOT_FOUND | Medium | شناسه شهر قابل شناسایی نیست یا در سامانه ثبت نشده است.
موارد بررسی:
– CityCode معتبر باشد – مقدار فقط عدد باشد (بدون فاصله یا متن اضافه) |
| WEIGHT_RANGE_NOT_FOUND | Medium | هیچ بازه قابل پردازشی برای وزن ارسال شده پیدا نشد.
موارد بررسی:
– وزن صفر یا منفی نباشد – وزن از محدوده مجاز بیشتر نباشد |
| PRICE_NOT_FOUND | High | قیمت نهایی برای این ترکیب قابل محاسبه نیست.
موارد بررسی:
– سایز صحیح ارسال شده باشد – شناسه سرویس درست باشد – وزن در بازههای قابل محاسبه قرار گیرد |
| SERVER_ERROR | Critical | درخواست به دلیل خطای پردازش پاسخ داده نشده است.
موارد بررسی:
– درخواست را با مقادیر سادهتر تست کنید – پارامترها را استاندارد ارسال کنید – در صورت تکرار خطا از طریق پشتیبانی پیگیری کنید |
| UNAUTHORIZED_DOMAIN | High | درخواست از دامنهای ارسال شده که در تنظیمات فروشگاه ثبت نشده است.
موارد بررسی:
– آدرس سایت در تنظیمات درست ثبت شده باشد – درخواست از همان دامنه (HTTPS) ارسال شود – قالب فروشگاه از Cross Domain یا Proxy استفاده نکند |
| RATE_LIMIT_SECOND | High | تعداد درخواستها در یک ثانیه بیش از حد مجاز است.
موارد بررسی:
– ارسال درخواستها با فاصله مناسب – عدم استفاده از حلقههای سریع یا ربات |
| RATE_LIMIT_DAILY | High | تعداد کل درخواستهای امروز به سقف مجاز رسیده است.
موارد بررسی:
– کاهش تعداد فراخوانی API – مدیریت درخواستهای فروشگاه |