สร้าง API Key
สร้าง API Key
รองรับให้เจ้าของขององค์กรสร้าง API Key สำหรับ Agent หรือ Workflow ภายในองค์กร
คุณสามารถใช้อินเทอร์เฟซนี้เพื่อออก API Key ใหม่ให้กับ Agent หรือ Workflow ที่ระบุ และกำหนดว่า Key นั้นมีสิทธิ์การจัดการเวอร์ชันหรือไม่ หลังจากสร้างสำเร็จ สามารถใช้ API Key ที่ได้รับเพื่อเรียกอินเทอร์เฟซระดับทรัพยากรของ Agent หรือ Workflow นั้นได้
วิธีการร้องขอ
POST
URL สำหรับร้องขอ
https://api.${endpoint}/v1/org/api-key/create
การยืนยันตัวตนในการร้องขอ
ใช้การยืนยันตัวตนแบบ Basic ด้วย DevKey / DevSecret ระดับบัญชี และบัญชีที่เรียกใช้ต้องเป็นเจ้าของขององค์กรนั้น
การร้องขอ
ตัวอย่างการร้องขอ
curl -X POST 'https://api.${endpoint}/v1/org/api-key/create' \
-H 'Authorization: Basic ${BASIC_TOKEN}' \
-H 'Content-Type: application/json' \
-d '{
"org_id": "p-xxxx",
"agent_id": "68d0f1a2b3c4d5e6f7a8b9c0",
"is_publish": true
}'
curl -X POST 'https://api.${endpoint}/v1/org/api-key/create' \
-H 'Authorization: Basic ${BASIC_TOKEN}' \
-H 'Content-Type: application/json' \
-d '{
"org_id": "p-xxxx",
"agent_id": "68d0f1a2b3c4d5e6f7a8b9c0",
"is_publish": true
}'
บล็อกโค้ดนี้ในหน้าต่างลอย
Header สำหรับร้องขอ
| ฟิลด์ | ประเภท | คำอธิบาย |
|---|---|---|
| Authorization | Basic ${BASIC_TOKEN} | Basic Token ที่ได้จากการเข้ารหัส Base64 ของ DevKey:DevSecret |
| Content-Type | application/json | รูปแบบของเนื้อหาคำขอ |
พารามิเตอร์การร้องขอ (Body Parameters)
| พารามิเตอร์ | ประเภท | คำอธิบาย | required |
|---|---|---|---|
| org_id | String | ID ขององค์กร สามารถรับได้จากอินเทอร์เฟซสอบถามรายการองค์กร | true |
| agent_id | String | ID ของ Agent ที่ต้องการสร้าง API Key เลือกอย่างใดอย่างหนึ่งกับ workflow_id และส่งได้เพียงค่าเดียว |
false |
| workflow_id | String | ID ของ Workflow ที่ต้องการสร้าง API Key เลือกอย่างใดอย่างหนึ่งกับ agent_id และส่งได้เพียงค่าเดียว |
false |
| is_publish | Boolean | กำหนดว่าจะเปิดสิทธิ์การจัดการเวอร์ชัน (นำเข้า รายการเวอร์ชัน เผยแพร่ ย้อนกลับ) ให้กับ API Key นี้หรือไม่ เป็นการตั้งค่าสิทธิ์เท่านั้น ไม่ได้ทำการเผยแพร่ ต้องส่งเป็นค่าบูลีน JSON true หรือ false ไม่รองรับรูปแบบอย่าง "true" หรือ 1 |
true |
หมายเหตุ:
- ต้องส่งค่าที่ไม่ว่างให้กับ
agent_idหรือworkflow_idเพียงอย่างเดียวเท่านั้น หากส่งทั้งสองค่า ไม่ส่งเลย หรือส่งสตริงว่าง จะได้รับข้อผิดพลาดพารามิเตอร์ - ID ที่ส่งต้องตรงกับประเภททรัพยากร: หากส่ง ID ของ Workflow ผ่าน
agent_idหรือส่ง ID ของ Agent ผ่านworkflow_idจะได้รับข้อผิดพลาดประเภทไม่ตรงกัน - Agent หรือ Workflow แต่ละรายการมี API Key ได้สูงสุด 10 รายการ เมื่อถึงขีดจำกัดแล้ว ต้องลบ Key ที่มีอยู่ก่อนจึงจะสร้างใหม่ได้
- ชื่อของ API Key ที่สร้างใหม่จะถูกสร้างโดยอัตโนมัติในรูปแบบ
api-ตามด้วยอักขระสุ่ม 12 ตัว สามารถดูหรือแก้ไขได้ที่หน้า API Key ในคอนโซล - อินเทอร์เฟซนี้จำกัดอัตราการเรียกตามบัญชี: แต่ละบัญชีเรียกได้สูงสุด 10 ครั้งต่อนาที
การตอบกลับ
ตัวอย่างการตอบกลับ
{
"code": 0,
"message": "OK",
"data": {
"api_key": "app-xxxxxxxxxxxxxxxxxxxxxxxx"
}
}
{
"code": 0,
"message": "OK",
"data": {
"api_key": "app-xxxxxxxxxxxxxxxxxxxxxxxx"
}
}
บล็อกโค้ดนี้ในหน้าต่างลอย
การตอบกลับเมื่อสำเร็จ
| ฟิลด์ | ประเภท | คำอธิบาย |
|---|---|---|
| api_key | String | API Key ที่สร้างใหม่ ใช้สำหรับเรียกอินเทอร์เฟซระดับทรัพยากรของ Agent หรือ Workflow ที่เกี่ยวข้อง |
โปรดเก็บรักษา API Key ที่ได้รับไว้อย่างปลอดภัย การตอบกลับของอินเทอร์เฟซนี้มี Header
Cache-Control: no-storeโปรดอย่าเก็บ Key แบบข้อความธรรมดาไว้ในบันทึกหรือแคช
การตอบกลับเมื่อผิดพลาด
| ฟิลด์ | ประเภท | คำอธิบาย |
|---|---|---|
| code | Integer | รหัสข้อผิดพลาด |
| message | String | รายละเอียดข้อผิดพลาด |
รหัสข้อผิดพลาด
| รหัสข้อผิดพลาด | คำอธิบาย |
|---|---|
| 40000 | พารามิเตอร์ไม่ถูกต้อง เช่น ขาดพารามิเตอร์ที่จำเป็น is_publish ไม่ใช่ค่าบูลีน agent_id และ workflow_id ไม่เป็นไปตามเงื่อนไขเลือกอย่างใดอย่างหนึ่ง หรือจำนวน API Key ของทรัพยากรถึงขีดจำกัดแล้ว |
| 40101 | Header Authorization ของคำขอว่างเปล่า |
| 40104 | บัญชีปัจจุบันไม่ใช่เจ้าของขององค์กรนี้ |
| 40324 | DevKey หรือ DevSecret ไม่ถูกต้อง |
| 40348 | ไม่พบ Agent หรือ Workflow หรือไม่ได้อยู่ในองค์กรนี้ |
| 403204 | ID ที่ส่งไม่ตรงกับประเภททรัพยากร (Agent / Workflow) |
รหัสสถานะ
| รหัสสถานะ | คำอธิบาย |
|---|---|
| 200 | สำเร็จ |
| 400 | พารามิเตอร์ไม่ถูกต้อง |
| 401 | ไม่ได้รับอนุญาต |
| 403 | สิทธิ์ไม่เพียงพอ |
| 429 | คำขอถี่เกินไป |
| 500 | ข้อผิดพลาดของเซิร์ฟเวอร์ |
