การยืนยันตัวตนด้วย OAuth 2.0
Client Credentials ของ OAuth2
SEEK Pass จัดเตรียมข้อมูลรับรอง OAuth 2.0 (client_id และ client_secret) สำหรับการยืนยันตัวตน โดยจะส่งผ่านช่องทางที่ปลอดภัย (เช่น 1Password) สำหรับทั้งสภาพแวดล้อม staging และ production
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับ OAuth 2.0 โปรดดูที่
เอกสารประกอบสภาพแวดล้อม
ปลายทาง (endpoint) ของสภาพแวดล้อม staging และ production อยู่ด้านล่าง:
SEEK Pass ใช้ OAuth 2.0 และประเภทการให้สิทธิ์ Client Credentials สำหรับการยืนยันตัวตนแบบเซิร์ฟเวอร์ถึงเซิร์ฟเวอร์
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับ Client Credentials โปรดดูที่
เอกสารประกอบexport SEEK_PASS_URL=https://app.seekpass-staging.com
export CLIENT_ID=<YOUR CLIENT ID>
export CLIENT_SECRET=<YOUR CLIENT SECRET>
ขอ OAuth access token โดยเรียก endpoint ต่อไปนี้พร้อม scope ที่เหมาะสมสำหรับประเภทเอกสารรับรองของคุณ (เช่น write.education, write.english_proficiency):
curl --location $SEEK_PASS_URL/api/partner/v1/oauth/token.json \
--header 'Accept: application/json' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode grant_type=client_credentials \
--data-urlencode client_id=$CLIENT_ID \
--data-urlencode client_secret=$CLIENT_SECRET \
--data-urlencode 'scope=write.education'
คำขอแบบ Batch
เพื่อใช้ฟีเจอร์การส่งแบบชุด คุณต้องใส่ประเภทที่ร้องขอทั้งหมดในฟิลด์ scope ในคำขอ OAuth token ของคุณ
สิ่งนี้ช่วยให้คุณส่งเอกสารรับรองหลายรายการได้ในคำขอ API ครั้งเดียว
ตัวอย่าง:
curl -L $SEEK_PASS_URL/api/partner/v1/oauth/token.json \
-H 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode grant_type=client_credentials \
--data-urlencode client_id=$CLIENT_ID \
--data-urlencode client_secret=$CLIENT_SECRET \
--data-urlencode 'scope=write.microcredential write.education write.digital_identity'
รหัสการตอบกลับ
ด้านล่างคือรหัสสถานะ HTTP ที่ API ของ SEEK Pass ส่งกลับ การทำความเข้าใจรหัสตอบกลับเหล่านี้จะช่วยให้คุณจัดการสถานการณ์ต่าง ๆ ในการผสานรวมได้
200 OK: การยืนยันตัวตนสำเร็จ{
"access_token": "eyJhbGciOiJIUzUxMiJ9.eyJpYXQiOjE3NDAzNTkyNTEsImV4cCI6MTc.ZnOZlWaSeJx_ySk3Pl88Xy8KnPKc4EX",
"token_type": "Bearer",
"expires_in": 7199,
"scope": "write.education",
"created_at": 1736144436
}
บันทึก access_token ไว้สำหรับขั้นตอนถัดไป:export ACCESS_TOKEN=eyJhbGciOiJIUzUxMiJ9.eyJpYXQiOjE3NDAzNTkyNTEsImV4cCI6MTc.ZnOZlWaSeJx_ySk3Pl88Xy8KnPKc4EX