ลบ Webhook Secret
ลบ webhook signing secret จากบัญชีของคุณ การดำเนินการนี้ไม่สามารถย้อนกลับได้ ตรวจสอบให้แน่ใจว่าคุณได้สร้างและ deploy secret ทดแทนก่อนลบอันปัจจุบัน มิฉะนั้นการยืนยันลายเซ็น webhook จะล้มเหลว
พารามิเตอร์คำขอ
จำเป็น - 1 ฟิลด์พารามิเตอร์ที่จำเป็น
`id`STRING(required)
รหัส Webhook secret ที่จะลบ (ต้องเป็นรหัส webhook secret ที่ถูกต้องที่ขึ้นต้นด้วย whsec_)
การตอบกลับ
200
ลบ Webhook secret สำเร็จลบ Webhook secret อย่างถาวรแล้ว ไม่สามารถยืนยัน webhooks โดยใช้ secret นี้ได้อีกต่อไป
ผลกระทบของการลบ:
- Secret ถูกลบอย่างถาวรและไม่สามารถกู้คืนได้
- ลายเซ็น webhook ที่สร้างด้วย secret นี้ไม่สามารถยืนยันได้อีกต่อไป
- หากนี่เป็น secret เดียวของคุณ การยืนยัน webhook จะล้มเหลวจนกว่าคุณจะสร้างอันใหม่
- ตรวจสอบให้แน่ใจว่าแอปพลิเคชันของคุณกำหนดค่าด้วย secret ทดแทนก่อนลบ
400
คำขอไม่ถูกต้องรูปแบบรหัส webhook secret ไม่ถูกต้อง
สาเหตุทั่วไป:
- รูปแบบรหัส webhook secret ไม่ถูกต้อง
- รหัสไม่ได้ขึ้นต้นด้วย whsec_
401
ไม่ได้รับอนุญาตการรับรองความถูกต้องล้มเหลว API key ไม่ถูกต้องหรือขาดหาย
สาเหตุทั่วไป:
- ไม่มีส่วนหัว Authorization
- secret key ไม่ถูกต้อง
- ใช้ public key แทน secret key
- รูปแบบ HTTP Basic Auth ไม่ถูกต้อง
404
ไม่พบไม่พบ Webhook secret
สาเหตุทั่วไป:
- รหัส webhook secret ไม่มีอยู่
- Webhook secret ถูกลบไปแล้ว
- Secret เป็นของบัญชีอื่น
5xx
ข้อผิดพลาดเซิร์ฟเวอร์เกิดข้อผิดพลาดฝั่งเซิร์ฟเวอร์ กรณีนี้เกิดขึ้นไม่บ่อยแต่ควรจัดการอย่างเหมาะสม
วิธีจัดการ:
- ลองคำขอใหม่ด้วย exponential backoff
- ตรวจสอบ status.omise.co สำหรับเหตุการณ์บริการ
- ดู การจัดการข้อผิดพลาด สำหรับคำแนะนำโดยละเอียด
ตัวอย่างโค้ด
- cURL
- Ruby
- Python
- Node.js
- PHP
- Java
- C#
- Go
curl https://api.omise.co/webhooks/secrets/whsec_test_5xuy4w91xqz7d1w9u0t \
-X DELETE \
-u skey_test_5xuy4w91xqz7d1w9u0t:
require 'omise'
Omise.api_key = 'skey_test_5xuy4w91xqz7d1w9u0t'
secret = Omise::WebhookSecret.destroy('whsec_test_5xuy4w91xqz7d1w9u0t')
import omise
omise.api_secret = 'skey_test_5xuy4w91xqz7d1w9u0t'
secret = omise.WebhookSecret.retrieve('whsec_test_5xuy4w91xqz7d1w9u0t')
secret.destroy()
const omise = require('omise')({
secretKey: 'skey_test_5xuy4w91xqz7d1w9u0t'
});
const secret = await omise.webhookSecrets.destroy('whsec_test_5xuy4w91xqz7d1w9u0t');
<?php
define('OMISE_SECRET_KEY', 'skey_test_5xuy4w91xqz7d1w9u0t');
$secret = OmiseWebhookSecret::retrieve('whsec_test_5xuy4w91xqz7d1w9u0t');
$secret->destroy();
Client client = new Client.Builder()
.secretKey("skey_test_5xuy4w91xqz7d1w9u0t")
.build();
WebhookSecret secret = client.webhookSecrets().destroy("whsec_test_5xuy4w91xqz7d1w9u0t");
var client = new Client("skey_test_5xuy4w91xqz7d1w9u0t");
var secret = await client.WebhookSecrets.Destroy("whsec_test_5xuy4w91xqz7d1w9u0t");
client, _ := omise.NewClient(
"pkey_test_5xuy4w91xqz7d1w9u0t",
"skey_test_5xuy4w91xqz7d1w9u0t",
)
deleted, _ := client.WebhookSecrets().Destroy("whsec_test_5xuy4w91xqz7d1w9u0t")
รหัสข้อผิดพลาดและผลลัพธ์
รหัสข้อผิดพลาดทั่วไป
| รหัส | คำอธิบาย | การแก้ไข |
|---|---|---|
bad_request | รูปแบบรหัส webhook secret ไม่ถูกต้อง | ตรวจสอบว่ารูปแบบรหัสขึ้นต้นด้วย whsec_ |
authentication_failure | API key ไม่ถูกต้อง | ตรวจสอบว่า secret key ถูกต้อง |
not_found | ไม่พบ Webhook secret | ตรวจสอบว่ารหัส webhook secret มีอยู่ |
การตอบกลับการลบ
| ฟิลด์ | คำอธิบาย |
|---|---|
object | ประเภทอ็อบเจกต์ (เป็น "webhook_secret" เสมอ) |
id | รหัสของ webhook secret ที่ถูกลบ |
deleted | แฟล็ก boolean (เป็น true เสมอสำหรับการลบที่สำเร็จ) |
livemode | เป็น secret โหมดจริงหรือไม่ |
หมายเหตุสำคัญ
แนวทางปฏิบัติที่ดีที่สุดสำหรับกา รหมุนเวียนคีย์
เมื่อหมุนเวียน webhook secrets ให้ทำตามขั้นตอนเหล่านี้เพื่อหลีกเลี่ยงการยืนยันล้มเหลว:
- สร้าง secret ใหม่โดยใช้ endpoint สร้าง Webhook Secret
- อัปเดตแอปพลิเคชันให้ยืนยัน webhooks โดยใช้ทั้ง secrets เก่าและใหม่
- deploy การเปลี่ยนแปลงไปยังสภาพแวดล้อม production
- รอการยืนยันว่า secret ใหม่ทำงานถูกต้อง
- ลบ secret เก่าโดยใช้ endpoint นี้
หลีกเลี่ยงการหยุดทำงาน
หากคุณลบ webhook secret ที่ใช้งานอยู่เพียงอันเดียว:
- webhooks ที่เข้ามาจะล้มเหลวในการยืนยันลายเซ็น
- แอปพลิเคชันของคุณจะไม่สามารถยืนยันความถูกต้องของ webhook ได้
- คุณควรยอมรับ webhooks ที่ไม่ได้ยืนยันชั่วคราวหรือจัดคิวไว้สำหรับการยืนยันในภายหลัง
ตรวจสอบให้แน่ใจว่าคุณมี secret ทดแทนที่ deploy แล้วก่อนลบ secret ที่ใช้งานอยู่เสมอ
ข้อมูลยืนยันตัวตน API
ลองใช้งาน
จำเป็น - 1 ฟิลด์
IP ของคุณ:
...กำลังโหลด...