Webhook
웹훅이란?
웹훅은 특정 이벤트가 발생한 경우 고객사 응용프로그램에게 이벤트에 대한 알림이 전달되는 기능을 의미합니다.
웹훅 등록 방법
웹훅 등록을 위해 이벤트를 받을 webhook URL을 헬프데스크로 전달해 주세요.
웹훅 트리거
Submission data는 입력받은 정보만 리턴합니다. 예를 들어 submission 제출 시 cf1, wallet address 등 optional 정보를 입력하지 않은 경우 해당 내용은 response에 포함되지 않습니다.
KYC Status Change
webhook_trigger 가 [approved, rejected, updated] 중 한 가지일 경우 아래 3가지 파라미터 추가 반환합니다.
단, submission 데이터에 해당 데이터가 존재하는 경우에 한 함 (gender, date_of_birth, nationality)
AML Results
KYC 승인 후 AML Screening 절차가 완료되면 AML 결과와 submission 정보가 리턴됩니다. KYC가 거절된 경우에는 AML Screening을 하지 않습니다. KYC가 승인된 경우에만 AML Screening을 하여 결과가 리턴됩니다.
Example
{
"webhook_trigger":"aml",
"submission_id":"string",
"email":"sample@test.com",
"userid":"test",
"cf":{
"cf1":"cf1",
"cf2":"cf2",
"cf3":"cf3"
},
"aml_result":{
"currentstatus":"Not Screened",
"risk_level_summary":"Not Screened"
},
"tokenId": "test"
}
Approved
Example
{
"webhook_trigger": "approved",
"kyc_result": {
"status": "string",
"updated_at": "string",
"created_at": "string",
"kyc_result_at": "string",
"pending_at" : "string",
"reviewer": "string"
},
"applicant_id": "string",
"submission_id": "string",
"email": "string",
"tokenId" : "string",
"cf": {
"cf1": "string",
"cf2": "string",
"cf3": "string"
},
"userid": "string",
"age_group" : "string",
"gender": "string",
"date_of_birth": "string",
"nationality": "string",
"ipAddress": "string",
"fullName": "string",
"idType": "string",
"issuingCountry": "string",
"issueDate": "string",
"expireDate": "string",
"identityNumber" : "string",
"documentNumber" : "string",
"additional_list" : {
"answer" : "string",
"inputValue" : "string",
"blockType" : "string"
}
}
Rejected
Example
{
"webhook_trigger": "rejected",
"kyc_result": {
"status": "string",
"comment": "string",
"updated_at": "string",
"commentCode": "string"
},
"submission_id": "string",
"applicant_id" : "string",
"email": "string",
"cf": {
"cf1": "string",
"cf2": "string",
"cf3" : "string"
},
"userid": "string",
"tokenId" : "string",
"ipAddress": "string"
}
Updated
Example
{
"webhook_trigger":"updated",
"submission_id":"string",
"email":"test@argosidentity.com",
"data":
{
"update":
[
"idType",
"issuingCountry",
"fullName",
"gender",
"birthDate",
"nationality",
"kycStatus",
"issueDate",
"identityNumber"
],
"kyc_result":"rejected"
},
"admin":"sample@test.com",
"update_time":"2024-06-21T01:47:12.321Z",
"age_group":"N/A",
"gender":"female",
"date_of_birth":"1999-10-19",
"nationality":"KOR",
"userid": "test",
"tokenId": "test"
}
Submit
Example
{
"webhook_trigger": "submit",
"created_at": "string",
"submission_id": "string",
"email": "string",
"cf": {
"cf1": "string",
"cf2": "string",
"cf3": "string"
},
"userid": "string",
"tokenid": "string",
"ipAddress": "string"
}
Delete
Example
{
"webhook_trigger":"delete",
"submission_id":"string",
"account_email":"sample@test.com",
"delete_time":"2024-06-21T01:54:47.481Z",
"comment":"test"
}
Injection
Example
{
"webhook_trigger":"injection",
"action":{
"type":"address",
"created_at":"2024-06-21T03:24:57.565Z"
},
"submission_id":"string",
"email":"sample@test.com",
"kyc_status":"approved",
"applicant_id":"string",
"cf1":"cf1",
"cf2":"cf2",
"cf3":"cf3",
"userid":"test",
"tokenId":"test"
}
샘플 데이터
submit
{
uri: 'https://your-endPoint-url.com',
method: 'POST',
body: {
webhook_trigger:"submit",
kyc_result:{
status:"rejected",
created_at:"2023-07-06T02:01:03.494Z"
},
submission_id:"{submissionId}",
projectId:"{projectId}",
email:"test@sample.com",
userid:"{userid}"
},
json: true
}
approved
{
uri: 'https://your-endPoint-url.com',
method: 'POST',
body: {
webhook_trigger:"approved",
kyc_result:{
status:"rejected",
comment:"Multiple invalid KYC attempts"
updated_at:"2023-07-06T00:45:05.738Z"
},
submission_id:"{submissionId}",
projectId:"{projectId}",
email:"test@sample.com",
userid:"{userid}"
},
json: true
}
rejected
{
uri: 'https://your-endPoint-url.com',
method: 'POST',
body: {
webhook_trigger:"approved",
kyc_result:{
status:"rejected",
comment:"Multiple invalid KYC attempts"
updated_at:"2023-07-06T00:45:05.738Z"
},
submission_id:"{submissionId}",
projectId:"{projectId}",
email:"test@sample.com",
userid:"{userid}"
},
json: true
}
updated
{
uri: 'https://your-endPoint-url.com',
method: 'POST',
body: {
kyc_result: { status: 'approved', updated_at: '2023-07-11T09:13:24.751Z' },
email: 'test@sample.com',
webhook_trigger: 'updated',
submission_id: 'test_submissions_id',
userid:{userid}
},
json: true
}
aml
{
uri: 'https://your-endPoint-url.com',
method: 'POST',
body: {
webhook_trigger: 'aml',
submission_id: '{submissionId}',
email: 'test@sample.com',
userid:{userid}
aml_result: {
currentstatus: 'Not Screened',
risk_level_summary: 'Not Screened'
}
},
json: true
}
Delete
{
uri: 'https://your-endPoint-url.com',
method: 'DEL',
body: {
webhook_trigger:"delete",
submission_id:"{submissionId}",
account email:"test@sample.com",
delete_time:"2024-05-03T02:01:03.494Z"
},
json: true
}
Injection
{
uri: 'https://your-endPoint-url.com',
method: 'PUT',
body: {
webhook_trigger:"injection",
action:{
type:"address",
created_at:"2024-05-03T02:01:03.494Z"
},
submission_id:"{submissionId}",
email:"test@sample.com",
userid:"{userid}"
},
json: true
}
암호화 옵션 사용 시 Output 의 양 방향 암/복호화
Output
Body 에 암호화 된 결과 반환
response : { ... body : "encrypted-string" }
Last updated