ข้ามไปยังเนื้อหา

REST และ gRPC

Wink มีการเชื่อมต่อสองแบบ ขึ้นอยู่กับว่าคุณกำลังรวมกับ API ใด

การเชื่อมต่อสคีมาเอกสาร
API ส่วนใหญ่ของ WinkREST ผ่าน HTTPSOpenAPI 3กลุ่มใดก็ได้ภายใต้ API ในแถบด้านข้าง
Partner Integrator APIgRPC ผ่าน HTTP/2Protocol BuffersPartner

แต่ละกลุ่ม API จะเผยแพร่เอกสาร OpenAPI 3 ชี้ OpenAPI generator ใดก็ได้ไปที่เอกสารนั้น แล้วคุณจะได้ไคลเอนต์ที่มีการพิมพ์ชนิดในภาษาของคุณ

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 generators ตามภาษา

Partner Integrator API ใช้ gRPC คุณสร้างไคลเอนต์จากสคีมา .proto ซึ่ง Wink เผยแพร่สองวิธี:

  • Server reflection — เซิร์ฟเวอร์อธิบายตัวเอง ดังนั้นเครื่องมืออย่าง grpcurl, Postman และ Insomnia สามารถค้นหาสคีมาในขณะรันไทม์โดยไม่ต้องดาวน์โหลดไฟล์ Reflection ต้องใช้โทเค็น bearer เดียวกับการเรียกอื่นๆ
  • ไฟล์ .proto หากคุณต้องการเก็บสคีมาไว้เองและสร้างล่วงหน้า
Terminal window
# ค้นหาสคีมาจากเซิร์ฟเวอร์ที่กำลังทำงาน (ต้องยืนยันตัวตน)
grpcurl -H "authorization: Bearer $WINK_TOKEN" \
partner.wink.travel:443 list
# จากนั้นสร้างไคลเอนต์ — ตัวอย่างนี้เป็น Go; ทุกภาษาที่รองรับทำงานเหมือนกัน
protoc --go_out=. --go-grpc_out=. partner_lookup.proto

การเรียกจะส่งโทเค็น bearer ของคุณในส่วนหัว metadata authorization เหมือนกับที่ REST ส่งในส่วนหัว Authorization ข้อผิดพลาดจะมาพร้อมรหัสสถานะ gRPC ใน response trailers แทนที่จะเป็นรหัสสถานะ HTTP — เอกสารอ้างอิง Partner ระบุรหัสสถานะที่คุณควรคาดหวัง

เริ่มต้นใช้งาน gRPC ตามภาษา

gRPC คืออะไร?

ถ้าคุณใช้ผู้ช่วยเขียนโค้ด AI เซิร์ฟเวอร์ MCP ของเราเป็นเส้นทางที่เร็วที่สุด มันเปิดเผย API ของ Wink เป็นเครื่องมือที่ผู้ช่วยของคุณสามารถเรียกและวิเคราะห์ได้ ดังนั้นแทนที่จะสร้างไคลเอนต์ทั้งหมดและค้นหา endpoint เอง คุณแค่บอกว่ากำลังสร้างอะไร แล้วจะได้โค้ดการรวมที่เหมาะกับสิ่งนั้น

ตั้งค่าเซิร์ฟเวอร์ Wink MCP