طلب إعادة تعبئة
يُنشئ طلب إعادة تعبئة على طلب مكتمل أو جزئي. تخضع عمليات إعادة التعبئة لحد أقصى لكل طلب (3 افتراضياً) وقيد وحيد قيد التنفيذ — إعادة تعبئة معلّقة واحدة فقط لكل طلب في المرة.
POST
https://notpanel.com/api/v2action=refillمفتاح API مطلوبخاضع لحدّ المعدل (لكل مفتاح + لكل طبقة + لكل عنوان IP)الجسم:
application/x-www-form-urlencodedالمعاملات
| الاسم | النوع | الوصف |
|---|---|---|
| keyمطلوب | string | مفتاح API الخاص بك. |
| actionمطلوب | string | يجب أن يكون السلسلة النصية الحرفية "refill". |
| order | string | معرّف طلب فردي. يُشترط توفير order أو orders، وليس كليهما. |
| orders | string (CSV) | حتى 100 معرّف طلب مفصولة بفواصل لإعادة التعبئة دفعةً واحدة. يُرجع مصفوفة — يحمل كل صف إما معرّف إعادة تعبئة أو خطأً خاصاً بالطلب. |
مثال على الطلب
استبدل YOUR_API_KEY بالمفتاح المُولَّد ضمن صفحة API في لوحة تحكمك.
curl -X POST https://notpanel.com/api/v2 \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "key=YOUR_API_KEY&action=refill&order=ord_01HG9X7KJP4N..."const res = await fetch("https://notpanel.com/api/v2", {
method: "POST",
headers: { "Content-Type": "application/x-www-form-urlencoded" },
body: new URLSearchParams({
key: "YOUR_API_KEY",
action: "refill",
order: "ord_01HG9X7KJP4N...",
}),
});
const data = await res.json();
console.log(data);import requests
res = requests.post(
"https://notpanel.com/api/v2",
data={
"key": "YOUR_API_KEY",
"action": "refill",
"order": "ord_01HG9X7KJP4N...",
},
)
print(res.json())<?php
$body = http_build_query([
'key' => 'YOUR_API_KEY',
'action' => 'refill',
'order' => 'ord_01HG9X7KJP4N...',
]);
$response = file_get_contents('https://notpanel.com/api/v2', false, stream_context_create([
'http' => [
'method' => 'POST',
'header' => "Content-Type: application/x-www-form-urlencoded\r\n",
'content' => $body,
'ignore_errors' => true,
],
]));
print_r(json_decode($response, true));
مثال على الاستجابة
{
"refill": "ref_01HG9XAZQM..."
}الأخطاء الشائعة
| الحالة | الجسم | السبب |
|---|---|---|
| 400 | {"error":"Order not found"} | معرّف الطلب غير موجود أو لا يخص حسابك. |
| 400 | {"error":"Refill only available for completed or partial orders"} | لا يزال الطلب في حالة pending أو processing أو in_progress أو cancelled أو refunded. |
| 400 | {"error":"Service does not support refills"} | الخدمة الأساسية لها refill=false. راجع كتالوج الخدمات قبل تقديم طلبات إعادة التعبئة. |
| 400 | {"error":"A refill request is already pending for this order"} | انتظر تسوية إعادة التعبئة السابقة قبل إنشاء أخرى. |
| 400 | {"error":"Refill limit reached (3 per order)"} | استُنفد الحد الأقصى لكل طلب. |