این API برای دریافت وضعیت سفارش و کدهای خریداری شده (در وضعیت سفارش تکمیل شده) استفاده میشود.
اطلاعات پایه
GET
/giftcard/retrieve
- نام API: دریافت سفارش
- آدرس پایه:
/giftcard/retrieve - متد: GET
پارامترهای URL
| پارامتر | نوع | اجباری | توضیحات |
|---|---|---|---|
| order_id | string | بله | شناسه سفارش |
هدرها
| کلید | مقدار | توضیحات |
|---|---|---|
| Authorization | Bearer {token} | توکن احراز هویت |
پاسخهای ممکن
موفقیت (200 OK)
{
"order_id": "ORDER-123",
"status": "completed",
"variant": "نام محصول",
"quantity": 1,
"price": 100.00,
"product_sku": "PROD-001",
"variant_sku": "VAR-001",
"total": 100.00,
"currency": "USD",
"created_at": "2024-03-20 10:00:00",
"paid_at": "2024-03-20 10:02:00",
"completed_at": "2024-03-20 10:05:00",
"redeem_data": [
{
"variant": "نام محصول",
"variant_sku": "VAR-001",
"license_key": "LICENSE-KEY-1",
"redeem_link": "https://example.com/redeem/KEY1",
"redeem_serial_number": "SERIAL-001",
"redeem_card_code": "CARD-001",
"expiration_date": "3000-01-01T00:00:00"
}
]
}
وضعیت های سفارش
سفارش میتوانید یکی از وضعیت های زیر باشد:| وضعیت | توضیحات |
|---|---|
| Pending | در انتظار پرداخت |
| Processing | در حال انجام |
| Completed | تکمیل شده |
| Cancelled | لغو شده |
| Failed | ناموفق |
| Refunded | مسترد شده |
نکات مهم
اطلاعات ردیم
اطلاعات گیفت کارت (های) خریداری شده فقط برای سفارشهای تکمیل شده موجود است.
ارز سفارش
تمامی قیمتها به ارز مشخص شده در فیلد currency هستند که برای ایران IRT (تومان) است.
سفارش ناموفق
در سندباکس برای دریافت سفارش ناموفق میتوانید از شناسه محصول GC-1034150 (گیفت کارت اپل ترکیه - 500 لیر) استفاده کنید.
خطاها
400 Bad Request
{
"code": "missing_order_id",
"message": "شناسه سفارش الزامی است"
}
404 Not Found
{
"code": "order_not_found",
"message": "سفارش یافت نشد"
}
مثالهای کد
cURL
curl -X GET \
'https://api.gifticard.ir/api/v1/giftcard/retrieve?order_id=ORDER-123' \
-H 'Authorization: Bearer {token}'
PHP
$ch = curl_init('https://api.gifticard.ir/api/v1/giftcard/retrieve?order_id=ORDER-123');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Authorization: Bearer {token}'
]);
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
if ($httpCode === 200) {
$data = json_decode($response, true);
// پردازش دادهها
} else {
$error = json_decode($response, true);
// مدیریت خطا
}
Python
import requests
headers = {
'Authorization': 'Bearer {token}'
}
params = {
'order_id': 'ORDER-123'
}
try:
response = requests.get(
'https://api.gifticard.ir/api/v1/giftcard/retrieve',
headers=headers,
params=params
)
response.raise_for_status()
data = response.json()
# پردازش دادهها
except requests.exceptions.RequestException as e:
# مدیریت خطا
print(f"خطا در درخواست: {e}")
Node.js
const axios = require('axios');
async function getOrderDetails() {
try {
const response = await axios.get('https://api.gifticard.ir/api/v1/giftcard/retrieve', {
headers: {
Authorization: 'Bearer {token}'
},
params: {
order_id: 'ORDER-123'
}
});
const data = response.data;
// پردازش دادهها
} catch (error) {
// مدیریت خطا
console.error('خطا در درخواست:', error.message);
}
}