# Webhooks
폴링 없이 작업 및 청구 이벤트를 수신하려면 Webhooks를 사용하세요. Tripo는 구독된 이벤트가 발생할 때 JSON 페이로드를 HTTPS 엔드포인트로 보냅니다.
## 설정
1. 설정을 열고 Webhooks를 엽니다.
2. `https://api.yourapp.com/tripo-webhook`와 같은 HTTPS 엔드포인트를 추가합니다.
3. 받고 싶은 이벤트 유형을 선택하세요.
4. 엔드포인트를 저장합니다.
5. 서명 비밀을 복사하여 안전하게 저장하세요. 한 번만 표시됩니다.
## 이벤트 유형
| 이벤트 | 설명 |
| --- | --- |
| `task.completed` | 작업이 성공적으로 완료되었습니다. |
| `task.failed` | 작업이 실패했거나 취소되었습니다. |
| `balance.low` | 계정 잔액이 구성된 신용 경고 임계값 아래로 떨어졌습니다. |
## 요청 헤더
| 헤더 | 설명 |
| --- | --- |
| `Tripo-Webhook-Id` | Webhook 엔드포인트 ID. |
| `Tripo-Webhook-Delivery` | 고유한 배송 ID. 멱등성을 위해 사용하세요. |
| `Tripo-Webhook-Event` | `task.completed`와 같은 이벤트 유형입니다. |
| `Tripo-Webhook-Signature` | `{timestamp}.{raw_body}`를 통한 HMAC-SHA256 서명. |
| `Content-Type` | 항상 `application/json`. |
## 검증
1. `Tripo-Webhook-Signature`에서 `t` 및 `v1`를 구문 분석합니다.
2. `t + "." + rawBody`에 대한 서명 비밀을 사용하여 HMAC-SHA256를 계산합니다.
3. 상수 시간 비교를 사용하여 계산된 16진수 다이제스트를 `v1`와 비교합니다.
4. 선택적으로 약 5분보다 오래된 타임스탬프를 거부합니다.
## 모범 사례
- `2xx` 응답을 신속하게 반환한 다음 무거운 작업을 비동기식으로 처리합니다.
- 애플리케이션 상태를 변경하기 전에 모든 페이로드를 확인하세요.
- `Tripo-Webhook-Delivery`를 사용하여 이벤트 중복을 제거합니다.
- 크레딧 부족으로 인해 작업 생성이 실패하기 전에 `balance.low`를 사용하여 사용자에게 경고합니다.
Webhooks
폴링 없이 작업 및 청구 이벤트를 수신하려면 Webhooks를 사용하세요. Tripo는 구독된 이벤트가 발생할 때 JSON 페이로드를 HTTPS 엔드포인트로 보냅니다.
설정
설정을 열고 Webhooks를 엽니다.
https://api.yourapp.com/tripo-webhook와 같은 HTTPS 엔드포인트를 추가합니다.
받고 싶은 이벤트 유형을 선택하세요.
엔드포인트를 저장합니다.
서명 비밀을 복사하여 안전하게 저장하세요. 한 번만 표시됩니다.
이벤트 유형
이벤트
설명
task.completed
작업이 성공적으로 완료되었습니다.
task.failed
작업이 실패했거나 취소되었습니다.
balance.low
계정 잔액이 구성된 신용 경고 임계값 아래로 떨어졌습니다.
요청 헤더
헤더
설명
Tripo-Webhook-Id
Webhook 엔드포인트 ID.
Tripo-Webhook-Delivery
고유한 배송 ID. 멱등성을 위해 사용하세요.
Tripo-Webhook-Event
task.completed와 같은 이벤트 유형입니다.
Tripo-Webhook-Signature
{timestamp}.{raw_body}를 통한 HMAC-SHA256 서명.
Content-Type
항상 application/json.
검증
Tripo-Webhook-Signature에서 t 및 v1를 구문 분석합니다.
t + "." + rawBody에 대한 서명 비밀을 사용하여 HMAC-SHA256를 계산합니다.
상수 시간 비교를 사용하여 계산된 16진수 다이제스트를 v1와 비교합니다.
선택적으로 약 5분보다 오래된 타임스탬프를 거부합니다.
모범 사례
2xx 응답을 신속하게 반환한 다음 무거운 작업을 비동기식으로 처리합니다.
애플리케이션 상태를 변경하기 전에 모든 페이로드를 확인하세요.
Tripo-Webhook-Delivery를 사용하여 이벤트 중복을 제거합니다.
크레딧 부족으로 인해 작업 생성이 실패하기 전에 balance.low를 사용하여 사용자에게 경고합니다.