curl -X POST "https://qcg-api.scanova.io/console/token/" \
-H "Authorization: Bearer <your_oauth_access_token>" \
-H "Content-Type: application/json" \
-d '{
"name": "Zapier — production",
"environment": "zapier",
"expiry": 365
}'
{
"name": "Zapier — production",
"key": "401f7ac837da42b97f613d789819ff93537bee6a",
"environment": "zapier",
"expiry": 365,
"created_by": {
"id": 1042,
"full_name": "Jordan Lee",
"email": "jordan@example.com"
},
"created": "2026-08-16T09:12:33.512000Z",
"expiry_date": "2027-08-16T09:12:33.512000Z",
"expired": false,
"usage_count": 0
}
واجهة الإدارة — الرموز والاستخدام
إنشاء رمز API
POST /console/token/
POST
/
console
/
token
/
curl -X POST "https://qcg-api.scanova.io/console/token/" \
-H "Authorization: Bearer <your_oauth_access_token>" \
-H "Content-Type: application/json" \
-d '{
"name": "Zapier — production",
"environment": "zapier",
"expiry": 365
}'
{
"name": "Zapier — production",
"key": "401f7ac837da42b97f613d789819ff93537bee6a",
"environment": "zapier",
"expiry": 365,
"created_by": {
"id": 1042,
"full_name": "Jordan Lee",
"email": "jordan@example.com"
},
"created": "2026-08-16T09:12:33.512000Z",
"expiry_date": "2027-08-16T09:12:33.512000Z",
"expired": false,
"usage_count": 0
}
ينشئ مفتاح Management API جديدًا. تقع نقطة النهاية هذه على مضيف Scanova API العادي (
qcg-api.scanova.io) وتُصادَق بنفس الطريقة التي تُصادَق بها أي طلب آخر من لوحة التحكم بعد تسجيل الدخول — رمز وصول OAuth، لا مفتاح Management API.
هذا هو استدعاء Management API الوحيد الذي تقوم به من سياق موثوق باستخدام تسجيل دخولك الخاص، وليس من التكامل الذي سيستخدم المفتاح الناتج. راجع النظرة العامة للاطلاع على البنية الكاملة ذات المضيفين.
الطلب
POST https://qcg-api.scanova.io/console/token/
Authorization: Bearer <your_oauth_access_token>
Content-Type: application/json
معلمات الجسم
string
مطلوب
تسمية مقروءة للبشر للمفتاح، مثل
"Zapier — production". تظهر في قائمة المفاتيح بلوحة التحكم لتتمكن من تمييز المفاتيح عن بعضها.string
افتراضي:"sandbox"
واحد من
sandbox، live، zapier، mcp. دائم طوال عمر المفتاح — يحدد حصة الخطة التي تُفحص مع كل طلب يقوم به المفتاح إلى مضيف البيانات، وبالنسبة لمفاتيح zapier/mcp، ترويسة User-Agent التي يجب على العميل المستدعي إرسالها. راجع حصة الخطة للاطلاع على التخطيط الكامل.integer
افتراضي:"-1"
واحد من
-1 (لا ينتهي أبدًا)، 30، 90، أو 365 — عدد الأيام بعد الإنشاء التي يتوقف بعدها المفتاح عن العمل. لا توجد طريقة لتمديد تاريخ انتهاء مفتاح موجود؛ أنشئ مفتاحًا جديدًا بدلًا من ذلك.curl -X POST "https://qcg-api.scanova.io/console/token/" \
-H "Authorization: Bearer <your_oauth_access_token>" \
-H "Content-Type: application/json" \
-d '{
"name": "Zapier — production",
"environment": "zapier",
"expiry": 365
}'
{
"name": "Zapier — production",
"key": "401f7ac837da42b97f613d789819ff93537bee6a",
"environment": "zapier",
"expiry": 365,
"created_by": {
"id": 1042,
"full_name": "Jordan Lee",
"email": "jordan@example.com"
},
"created": "2026-08-16T09:12:33.512000Z",
"expiry_date": "2027-08-16T09:12:33.512000Z",
"expired": false,
"usage_count": 0
}
حقول الاستجابة
string
مفتاح Management API الخام. هذه هي الاستجابة الوحيدة التي تعيد قيمة المفتاح الكاملة على الإطلاق — لا توجد نقطة نهاية لإظهاره/استرجاعه لاحقًا، لذا خزّنه فورًا.
string | null
طابع الانتهاء المطلق، محسوبًا من
created + عدد أيام expiry، أو null عندما تكون expiry هي -1 (لا ينتهي أبدًا).boolean
ما إذا كان المفتاح قد تجاوز بالفعل
expiry_date الخاص به. المفاتيح المنتهية تفشل في المصادقة على مضيف البيانات لكن لا تُحذف تلقائيًا — أزلها صراحة عبر DELETE /console/token/{key}/ إذا أردت إزالتها من القائمة.integer
عدد الطلبات مدى الحياة التي تم إجراؤها بهذا المفتاح تحديدًا، عبر تاريخه بالكامل. هذا يختلف عن الأرقام الإجمالية على مستوى البيئة (environment) التي تعيدها نقاط نهاية الاستخدام أدناه، والتي تجمع عبر كل مفتاح يشارك تلك البيئة.
سرد الرموز الموجودة
نفس مسارconsole/token/ يقبل أيضًا GET (بلا نص طلب) لسرد كل مفتاح في الحساب، مُعيدًا نفس شكل استجابة الإنشاء لكل واحد. يمكنك التصفية حسب البيئة: GET /console/token/?environment=live.
كل من إنشاء الرموز وسردها يعيد فحص حصة الخطة باستخدام
environment الخاصة بالطلب — حقل الجسم عند الإنشاء، ومعلمة الاستعلام عند السرد، بالقيمة الافتراضية sandbox إذا حُذفت. إذا كانت حصص sandbox وlive مختلفتين في خطتك، مرّر ?environment=live صراحة عند سرد مفاتيح بيئة live، لأن الافتراضي يفحص حصة sandbox بخلاف ذلك.ذات صلة
- نظرة عامة على Management API — البنية ذات المضيفين وتخطيط الحصص لكل
environmentالذي يغذّيه حقلenvironmentالخاص بنقطة النهاية هذه. - إزالة رمز API — ألغِ مفتاحًا أُنشئ هنا.
- إحصاءات الاستخدام — أعداد الطلبات الإجمالية للمفاتيح التي تشارك بيئة واحدة.
- سرد / إنشاء رموز QR — أول نقطة نهاية بيانات تستدعيها معظم عمليات التكامل بمفتاح أُنشئ هنا.
التفويضات
Send your Management API key as the raw value of the Authorization header — no "Bearer " or "Token " prefix, and no other characters. Example: Authorization: 401f7ac837da42b97f613d789819ff93537bee6a. A header containing more than one space-separated part is rejected outright. Requests also require the request's Host header to be the management API host (e.g. management.scanova.io) — the same key sent to the regular API host will not authenticate.
الاستجابة
201
Token created
هل كانت هذه الصفحة مفيدة؟
⌘I