التحقق والرسائل
فحص الرمز
تحقق من الرمز الذي كتبه المستخدم. كل فحص يُحسب محاولة.
POST
https://watsy.me/v1/verify/{id}/checkcurl -X POST https://watsy.me/v1/verify/5d3c1f0e-7a1b-4c55-9a7e-2f1d6b0c9e11/check \
-H "Authorization: Bearer $WATSY_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: check-8841-1" \
-d '{
"code": "482913"
}'{
"id": "5d3c1f0e-7a1b-4c55-9a7e-2f1d6b0c9e11",
"object": "verification_check",
"valid": true,
"status": "verified",
"attempts": 1,
"attempts_remaining": 4,
"verified_at": "2026-10-28T10:01:12.000Z"
}المصادقة
Authorizationstring (header)إلزاميBearerثم مفتاح المشروع:wsy_live_…أوwsy_test_….
الترويسات
Idempotency-Keystring1 إلى 255 حرفاً. يمنع التكرار عند إعادة المحاولة خلال 24 ساعة. انظر Idempotency.
X-Request-Idstringاختياري، 8 إلى 64 حرفاً. نعيده في الرد، وإلا نولّد واحداً.
معطيات المسار
idstring (uuid)إلزاميمعرّف عملية التحقق كما رجع من
POST /v1/verify.
جسم الطلب
application/jsoncodestringإلزاميالرمز كما كتبه المستخدم: من 4 إلى 8 أرقام. المسافات في الطرفين تُحذف.
الرد (200)
application/jsonidstringإلزاميمعرّف عملية التحقق.
objectstringإلزاميدائماً
verification_check.validbooleanإلزاميالنتيجة الوحيدة التي تعتمد عليها.
statusstringإلزاميحالة العملية بعد الفحص.
القيم:
pendingsentverifiedfailedexpiredcanceledattemptsintegerإلزاميالفحوصات حتى الآن.
attempts_remainingintegerإلزاميالفحوصات المتبقية.
verified_atstring | nullإلزاميوقت التحقق الناجح.
قواعد الفحص
- اعتمد على
validفقط. الرمز الخاطئ يرجع200معvalid: false، وليس خطأ HTTP. - عند بلوغ
max_attemptsتُقفل العملية بحالةfailed، ويُرفض بعدها حتى الرمز الصحيح. - بعد انتهاء الصلاحية:
valid: falseمعstatus: "expired". العمليات الملغاة أو الفاشلة ترجعvalid: falseدون أن تُحسب محاولة. - الرمز يُستهلك مرة واحدة: فحص عملية ناجحة مرة ثانية يرجع
valid: falseمعstatus: "verified".
أرسل Idempotency-Key مع كل فحص. إذا ضاع الرد، أعد بنفس المفتاح لتحصل على الرد الأصلي.