تغییر دادن اطلاعات مرسوله
برای تغییر اطلاعات مرسوله، بسته به نوع تغییری که نیاز دارید، میتوانید از یکی از چهار روش زیر استفاده کنید:
- وبسرویس
update-shipment: برای زمانی مناسب است که میخواهید اطلاعات مرسوله را به صورت کامل جایگزین کنید؛ مانند تغییر شناسهی بستهها، ابعاد بستهها یا شماره تلفن سفیر. - وبسرویس
update-parcel: برای زمانی مناسب است که فقط میخواهید اطلاعات یک بسته را در مرسولهی موجود تغییر دهید. - وبسرویس
add-parcels: برای زمانی مناسب است که فقط میخواهید بستههای جدیدی به مرسوله اضافه کنید. - وبسرویس
remove-parcel: برای زمانی مناسب است که فقط میخواهید یک یا چند بسته را از مرسوله حذف کنید.
در صورتی که سفارش در وضعیتهای in-queue ،reserved و not-packed باشد، میتوانید از این وبسرویسها استفاده کنید. در غیر این صورت با خطا مواجه خواهید شد.
تغییر کامل اطلاعات مرسوله
تا پی ش از جایگذاری مرسوله در گنجه، میتوانید جهت تغییر کامل اطلاعات مرسوله از وبسرویس زیر استفاده کنید.
مواردی که قابل تغییر هستند، عبارتاند از:
- شناسهی بستهها
- ابعاد بستهها
- شماره تلفن سفیر
دقت داشته باشید بستههایی که در این وب سرویس برای ما میفرستید، به طور کامل جایگزین بستههای از قبل اعلام شده میشود. بنابراین، برای مثال اگر از قبل بستۀ الف را ثبت کردهاید و میخواهید بستۀ ب را اضافه کنید، باید اطلاعات بستۀ الف و ب را دوباره با هم بفرستید.
اگر مرسوله برای گنجه (و نه گنجدار) ثبت شده باشد، ابعاد بستهها تنها در صورتی قابل تغییر هستند که ابعاد جدید، بزرگتر از ابعاد قبلی نباشد. موارد زیر قابل قبول نیستند:
- هر کدام از ابعاد بستههای جدید، بزرگتر از ابعاد قبلی باشد.
- حجم هر کدام از بستههای جدید، بزرگتر از حجم قبلی باشد.
- مجموع حجم بستههای جدید، بزرگتر از مجموع حجم بستههای قبلی باشد.
Request Body
{
"package": {
"parcels": [
{
"external_id": "Example1_1",
"dimension": {
"width": 0.1,
"height": 0.25,
"length": 0.15
}
},
{
"external_id": "Example1_2",
"dimension": {
"width": 0.2,
"height": 0.15,
"length": 0.35
}
}
]
},
"dropper": "+989120000000"
}
Response Body
{
"pk": 10000,
"uuid": "c82de21f-19b0-477e-a489-3705a6e04da9",
"verbose_id": null,
"status": "Reserved",
"process": "lastmile",
"station": {
"uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"address": "آدرس گنجه",
"location": null,
"nickname": "نام گنجه",
"postal_code": null,
"images": [],
"districts": []
},
"dates": {
"time_scope": {
"expected_check_in": "2024-10-31 08:00:00",
"expected_duration": "10:00:00"
},
"order_date": "2024-10-31 09:35:24",
"check_in": null,
"check_out": null,
"cancel_date": null,
"extend_date": null
}
}
Response Codes
| Status Code | detail |
|---|---|
400 | Update shipment info is not possible for this occupancy |
404 | Not found |
200 | - |
وضعیت سفارش که در فیلد status در پاسخ این وبسرویس دریافت میکنید، قطعی نیست و پس از ثبت نهایی سفارشهای هر گنجه، میتواند تغییر کند.
تغییر اطلاعات یک بسته از مرسوله
برای تغییر اطلاعات یک بسته در مرسولهی موجود، میتوانید از وبسرویس زیر استفاده کنید. در این وبسرویس شناسهی یکتای سفارش در URL ارسال میشود و بسته با استفاده از فیلد external_id در بدنهی درخواست شناسایی میشود.
در صورتی که فقط اطلاعات یک بسته را تغییر میدهید، از این وبسرویس استفاده کنید. اگر میخواهید لیست بستههای مرسوله را به صورت کامل جایگزین کنید، باید از وبسرویس update-shipment استفاده کنید.
اگر مرسوله برای گنجه (و نه گنجدار) ثبت شده باشد، ابعاد جدید بسته تنها در صورتی قابل قبول است که حجم بسته و بزرگترین بعد آن، بزرگتر از حجم و بزرگترین بعد فعلی همان بسته نباشد. برای سرویسهای گنجدار، این بررسی انجام نمیشود.
Path Parameters
| Parameter | detail |
|---|---|
uuid | شناسهی یکتای سفارش |
Request Body
{
"external_id": "Example1_1",
"dimension": {
"length": 0.2,
"width": 0.1,
"height": 0.05
}
}
در ادامه توضیح مربوط به هر کدام از فیلدها آمده است:
external_id(*): شناسهی بسته در سرویس تامینکنندهdimension(*): ابعاد بسته در این قسمت مشخص میشود که شامل (*)width(عرض)، (*)height(ارتفاع) و (*)length(طول) است. این ابعاد باید بر حسب متر مشخص شود.
Response Body
{
"detail": "OK"
}
Response Codes
| Status Code | detail |
|---|---|
400 | Updating parcel info is not acceptable for this occupancy |
400 | Parcel volume is greater than current parcel |
400 | Parcel dimension is greater than current parcel |
400 | Parcel was not found in this occupancy |
404 | Not found |
200 | OK |
حذف بستهها از مرسوله
برای حذف یک یا چند بسته از مرسوله میتوانید از وبسرویس زیر استفاده کنید.
این وبسرویس تنها برای سرویسهای گنجدار قابل استفاده است.
Path Parameters
| Parameter | detail |
|---|---|
uuid | شناسهی یکتای سفارش |
Request Body
{
"parcels": ["parcel-external-id-1", "parcel-external-id-2"]
}
Response Body
{
"pk": 10000,
"uuid": "c82de21f-19b0-477e-a489-3705a6e04da9",
"verbose_id": null,
"status": "Reserved",
"process": "lastmile",
"station": {
"uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"address": "آدرس گنجه",
"location": null,
"nickname": "نام گنجه",
"postal_code": null,
"images": [],
"districts": []
},
"dates": {
"time_scope": {
"expected_check_in": "2024-10-31 08:00:00",
"expected_duration": "10:00:00"
},
"order_date": "2024-10-31 09:35:24",
"check_in": null,
"check_out": null,
"cancel_date": null,
"extend_date": null
}
}
Response Codes
| Status Code | detail |
|---|---|
400 | Removing parcels is only supported for manual stations |
400 | Removing parcels is not acceptable for this occupancy |
404 | Not found |
200 | - |
اضافه کردن بستهها به مرسوله
برای اضافه کردن یک یا چند بسته به مرسوله میتوانید از وبسرویس زیر استفاده کنید.
این وبسرویس تنها برای سرویسهای گنجدار قابل استفاده است.
Path Parameters
| Parameter | detail |
|---|---|
uuid | شناسهی یکتای سفارش |
Request Body
{
"parcels": [
{
"external_id": "Example1_3",
"dimension": {
"width": 0.2,
"height": 0.15,
"length": 0.35
}
}
]
}
Response Body
{
"pk": 10000,
"uuid": "c82de21f-19b0-477e-a489-3705a6e04da9",
"verbose_id": null,
"status": "Reserved",
"process": "lastmile",
"station": {
"uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"address": "آدرس گنجه",
"location": null,
"nickname": "نام گنجه",
"postal_code": null,
"images": [],
"districts": []
},
"dates": {
"time_scope": {
"expected_check_in": "2024-10-31 08:00:00",
"expected_duration": "10:00:00"
},
"order_date": "2024-10-31 09:35:24",
"check_in": null,
"check_out": null,
"cancel_date": null,
"extend_date": null
}
}
Response Codes
| Status Code | detail |
|---|---|
400 | Adding parcels is only supported for manual stations |
400 | Adding parcels is not acceptable for this occupancy |
400 | لیست parcels نمیتواند خالی باشد |
404 | Not found |
200 | - |