تخطَّ إلى المحتوى

REST و gRPC

تعرض Wink نوعين من وسائل النقل. يعتمد اختيارك على أي API تقوم بالتكامل معه.

وسيلة النقلالمخططالوثائق
معظم APIs الخاصة بـ WinkREST عبر HTTPSOpenAPI 3أي مجموعة تحت API في الشريط الجانبي
Partner Integrator APIgRPC عبر HTTP/2Protocol BuffersPartner

تنشر كل مجموعة API مستند OpenAPI 3. وجه أي مولد OpenAPI إليه لتحصل على عميل مكتوب بلغة البرمجة التي تستخدمها.

Terminal window
# يتم تقديم المواصفة الخاصة بالمجموعة بجانب صفحة المرجع الخاصة بها.
curl -o wink-extranet.json https://api.wink.travel/v3/api-docs/extranet
npx @openapitools/openapi-generator-cli generate \
-i wink-extranet.json -g typescript-fetch -o ./wink-client

مولدات OpenAPI حسب اللغة

Partner Integrator API هو gRPC. تقوم بإنشاء عميل من مخطط .proto، الذي تنشره Wink بطريقتين:

  • انعكاس الخادم — يصف الخادم نفسه، بحيث يمكن لأدوات مثل grpcurl وPostman وInsomnia اكتشاف المخطط أثناء التشغيل دون الحاجة لتنزيل ملفات. يتطلب الانعكاس نفس رمز الحامل (bearer token) مثل أي مكالمة أخرى.
  • ملفات .proto، إذا كنت تفضل تضمين المخطط وإنشاء العميل مسبقًا.
Terminal window
# اكتشاف المخطط من خادم يعمل (مصادق عليه).
grpcurl -H "authorization: Bearer $WINK_TOKEN" \
partner.wink.travel:443 list
# ثم إنشاء عميل — هنا Go؛ كل لغة مدعومة تعمل بنفس الطريقة.
protoc --go_out=. --go-grpc_out=. partner_lookup.proto

تحمل المكالمات رمز الحامل الخاص بك في رأس بيانات authorization، تمامًا كما يحمل REST الرمز في رأس Authorization. تصل الأخطاء كرمز حالة gRPC في تذييلات الاستجابة بدلاً من رمز حالة HTTP — يسرد مرجع Partner الرموز التي يجب أن تتوقعها.

بدايات سريعة لـ gRPC حسب اللغة

ما هو gRPC؟

إذا كنت تستخدم مساعد ترميز بالذكاء الاصطناعي، فإن خادم MCP الخاص بنا هو الطريق الأسرع. فهو يعرض APIs الخاصة بـ Wink كأدوات يمكن لمساعدك استدعاؤها والتعامل معها، لذا بدلاً من إنشاء عميل كامل والعثور على نقاط النهاية بنفسك، تصف ما تبنيه وتحصل على كود تكامل مصمم حول ذلك.

إعداد خادم MCP الخاص بـ Wink

  • الإعداد — الحسابات، البيئات، والاعتمادات
  • المصادقة — الحصول على الرموز وتحديثها
  • تكامل Webhook — استقبال الأحداث بدلاً من الاستطلاع المستمر