Webhook 구성
Webhook 구성 리소스는 API에서 Webhook 수신기에 이벤트를 보내는 데 사용됩니다.
조직은 자신의 webhook 구성을 지정하지 않은 해당 조직 내의 모든 키가 사용하는 기본 webook 구성을 가질 수 있습니다.
속성
이름 | 유형 | 설명 |
---|---|---|
id |
webhook config ID | Resource identifier. |
resource |
string, always webhook_config |
Resource type specifier. |
organisation |
organisation ID | The organisation the resource belongs to. |
url |
string | The url to target when sending events. |
secret |
string | The shared secret used to verify event signatures. |
state |
string | One of: new , valid , invalid , deactivated . |
date_created |
datetime | When the resource was created. |
비밀
Webhook 구성이 생성되면 API와 함께 전송되는 이벤트에 서명하는 데 사용되는 비밀이 생성됩니다. 이 비밀을 사용하여 들어오는 이벤트의 서명을 확인하려면 웹 훅 수신기를 구현하는 것이 좋습니다. 서명 확인 절차에 대한 자세한 내용은 webhook 구성 설명서를 참조하십시오.
주
-
new
가 방금 생성되었거나 최근에 업데이트되었지만 아직 테스트되지 않았습니다. -
valid
는 유효성 검사를 통과했으며 사용할 준비가되었습니다. 조직은이 상태에서 적어도 하나의 webhook 구성을 가져야 사용할 수 있습니다. -
invalid
가 유효성 검사에 실패했습니다. 반드시 갱신되거나 재시험되어야합니다. -
deactivated
된 것은 소유 조직에 의해 해제되었습니다.
POST /configs/webhook
만들기
이 작업은 끝점 정보를 확인하기 위해 webhook_config.test
작업을 만듭니다. Webhook 수신기가 아직 설정되지 않은 경우이 테스트는 실패하고 config를 invalid
상태로 설정합니다. 그러나 구성은 항상 테스트 동작을 사용하여 다시 테스트 할 수 있습니다.
매개 변수
name | type | description |
---|---|---|
url |
required | The URL of your webhook receiver. |
cURL 사용
curl https://ricloud-api.reincubate.com/configs/webhook \ -X POST \ -H 'Authorization: Token <your key_token>' \ -H 'Content-Type: application/json' \ -d '{ "url": "https://www.mywebhook.com/webhooks/" }'
ricloud-py 사용하기
import ricloud webhook_config = ricloud.WebhookConfig.create(url='https://www.mywebhook.com/webhooks/')
GET /configs/webhook/{webhook_config ID}
cURL 사용
curl https://ricloud-api.reincubate.com/configs/webhook/<webhook_config ID> \ -H 'Authorization: Token <your key_token>'
ricloud-py 사용하기
import ricloud webhook_config = ricloud.WebhookConfig.retrieve(<webhook_config ID>)
GET /configs/webhook
목록보기
deactivated
상태의 Webhook 구성은 기본적으로 숨겨져 있으며 명시 적 필터링으로 만 나열 할 수 있습니다.
매개 변수
name | type | description |
---|---|---|
state |
string | Filter webhook configs by their state. |
date_created |
datetime filter | Filter by resource creation date. |
업데이트 POST /configs/webhook/{webhook_config ID}
이 작업을 수행하면 백그라운드에서 webhook_confg.test
작업이 만들어져 구성에 대한 모든 변경 사항의 유효성이 검사됩니다.
본질적으로 구성을 폐기하는 경우에만 state
속성을 deactivated
로 변경할 수 있습니다.
매개 변수
name | type | description |
---|---|---|
url |
string | Update the URL. |
state |
string | Only to new or deactivated . |
cURL 사용
curl https://ricloud-api.reincubate.com/configs/webhook/<webhook_config ID> \ -X POST \ -H 'Authorization: Token <your key_token>' \ -H 'Content-Type: application/json' \ -d '{ "url": "https://www.myupdatedwebhook.com/webhooks/", }'
ricloud-py 사용하기
import ricloud webhook_config = ricloud.WebhookConfig.update_with_id( <webhook_config ID>, url='https://www.myupdatedwebhook.com/webhooks/' ) # OR webhook_config = ricloud.WebhookConfig.retrieve(<webhook_config ID>) webhook_config.update(url='https://www.myupdatedwebhook.com/webhooks/')
POST /configs/webhook/{webhook_config ID}/test
이 작업은 지정된 구성을 사용하여 테스트 이벤트를 보내는 webhook_config.test
작업을 만듭니다. 테스트의 결과는 그에 따라 webook 구성의 state
속성을 업데이트합니다.
cURL 사용
curl https://ricloud-api.reincubate.com/configs/webhook/<webhook_config ID>/test \ -H 'Authorization: Token <your key_token>'
ricloud-py 사용하기
import ricloud test_task = ricloud.WebhookConfig.test_with_id(<webhook_config ID>) # OR webhook_config = ricloud.WebhookConfig.retrieve(<webhook_config ID>) test_task = webhook_config.test()