sangtao.ai
API key

Webhook

Xoay secret

Secret ký mới; secret cũ còn dùng được 24 giờ.

POSThttps://api.sangtao.ai/v2/webhooks/{id}/rotate-secret

Xác thực

  • X-Api-Keystring · headerbắt buộc

    API key của bạn, tạo ở trang API key trong tài khoản.

Tham số đường dẫn

  • idstringbắt buộc

    ID trong đường dẫn.

Secret mới, chỉ hiện một lần. Secret cũ còn dùng được 24 giờ: tới previousSecretExpiresAt mỗi lần giao có hai chữ ký v1=, nên đổi secret không lỡ sự kiện nào.

Response

  • idstringbắt buộc

    Mã endpoint, whk_…

  • urlstringbắt buộc

    Nơi nhận sự kiện

  • eventsstring[]bắt buộc

    Các loại sự kiện endpoint nhận. ["*"] là tất cả

  • descriptionstring | null

    Ghi chú của bạn

  • enabledbooleanbắt buộc

    Có đang gửi sự kiện tới endpoint không

  • statusstringbắt buộc

    disabled_failing: tự tắt sau 3 ngày giao hỏng liên tục

    Giá trị có thể:activedisableddisabled_failing

  • createdAtstringbắt buộc

    Lúc tạo (ISO 8601, UTC). Endpoint chỉ nhận sự kiện xảy ra từ lúc này

  • lastDeliveryAtstring | null

    Lần gần nhất thử giao tới endpoint

  • lastSuccessAtstring | null

    Lần gần nhất endpoint trả 2xx

  • lastFailureAtstring | null

    Lần gần nhất giao hỏng

  • secretstringbắt buộc

    whsec_… — chỉ hiện ở response này. Hãy lưu lại: dùng để kiểm chữ ký mọi lần giao

  • previousSecretExpiresAtstringbắt buộc

    Lúc secret cũ hết được dùng để ký

Mã lỗi

MãerrorCodeKhi nào
404WEBHOOK_NOT_FOUNDKhông có endpoint nào của bạn với id này
POST/webhooks/{id}/rotate-secret
curl -X POST "https://api.sangtao.ai/v2/webhooks/whk_4nP8rT2xK/rotate-secret" \
  -H "X-Api-Key: YOUR_API_KEY"
{
  "success": true,
  "data": {
    "id": "whk_4nP8rT2xK",
    "url": "https://example.com/webhooks/sangtao",
    "events": [
      "image.completed",
      "image.failed"
    ],
    "description": "Production",
    "enabled": true,
    "status": "active",
    "createdAt": "2026-11-10T08:00:00Z",
    "lastDeliveryAt": "2026-11-10T09:43:32Z",
    "lastSuccessAt": "2026-11-10T09:43:32Z",
    "lastFailureAt": null,
    "secret": "whsec_Qm8…",
    "previousSecretExpiresAt": "2026-11-11T10:00:00Z"
  }
}