Onfido Webhooks API
The Webhooks API from Onfido — 3 operation(s) for webhooks.
The Webhooks API from Onfido — 3 operation(s) for webhooks.
openapi: 3.0.0
info:
contact:
name: Onfido
url: https://public.support.onfido.com
description: "\nCreate trust at onboarding and beyond with a complete, AI-powered digital\nidentity solution built to help you know your customers online. \nAutomation allows you to acquire new customers and reduce costs while\nmeeting global KYC and AML compliance."
license:
name: MIT
title: Onfido Webhooks API
version: v3.6
servers:
- url: https://api.{region}.onfido.com/v3.6
variables:
region:
default: eu
enum:
- eu
- us
- ca
security:
- Token: []
tags:
- name: Webhooks
paths:
/webhooks:
get:
description: 'Lists all webhooks you''ve created.
'
operationId: list_webhooks
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Webhooks_list'
description: A list of webhooks
default:
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
description: Unexpected error
summary: List webhooks
tags:
- Webhooks
post:
callbacks:
webhookEvent:
'{$request.body#/url}':
post:
operationId: webhookEventPost
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/webhook_event'
required: true
responses:
default:
description: Your server should acknowledge success by responding with an HTTP 20x response within 10 seconds.
x-callback-request: true
description: 'Registers a webhook. Returns a webhook object.
'
operationId: create_webhook
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/webhook_builder'
required: true
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/webhook'
description: Created
default:
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
description: Unexpected error
summary: Register webhook
tags:
- Webhooks
/webhooks/{webhook_id}:
delete:
description: 'Deletes a webhook.
'
operationId: delete_webhook
parameters:
- in: path
name: webhook_id
required: true
schema:
format: uuid
type: string
responses:
'204':
description: Webhook deleted
default:
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
description: Unexpected error
summary: Delete a webhook
tags:
- Webhooks
get:
description: 'Retrieves a single webhook. Returns a webhook object.
'
operationId: find_webhook
parameters:
- in: path
name: webhook_id
required: true
schema:
format: uuid
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/webhook'
description: Webhook object
default:
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
description: Unexpected error
summary: Retrieve a Webhook
tags:
- Webhooks
put:
description: 'Edits a webhook. Returns the updated webhook object.
'
operationId: update_webhook
parameters:
- in: path
name: webhook_id
required: true
schema:
format: uuid
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/webhook_updater'
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/webhook'
description: Webhook Object
default:
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
description: Unexpected error
summary: Edit a webhook
tags:
- Webhooks
/webhooks/resend:
post:
description: 'Resends events to all webhooks registered with a matching environment in your account.
'
operationId: resend_webhooks
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/webhook_resend'
required: true
responses:
'204':
description: Webhooks are resent for the respective checks
'422':
description: Request was received but it could not be processed
default:
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
description: Unexpected error
summary: Resends webhooks
tags:
- Webhooks
components:
schemas:
ErrorProperties:
example:
type: type
message: message
fields:
key: ''
properties:
type:
type: string
message:
type: string
fields:
additionalProperties: true
type: object
title: ErrorProperties
type: object
webhook_event_object_status:
description: The current state of the object, if available.
enum:
- processing
- awaiting_input
- awaiting_client_input
- approved
- declined
- review
- abandoned
- error
- started
- cancelled
- completed
- awaiting_data
- awaiting_approval
- complete
- withdrawn
- in_progress
- awaiting_applicant
- paused
- reopened
example: complete
type: string
workflow_run_link:
properties:
url:
description: Link to access the Workflow Run without the need to integrate with Onfido's SDKs.
type: string
completed_redirect_url:
description: When the interactive section of the Workflow Run has completed successfully, the user will be redirected to this URL instead of seeing the default Onfido 'thank you' page.
nullable: true
type: string
expired_redirect_url:
description: When the link has expired, the user will be immediately redirected to this URL instead of seeing the default Onfido error message.
nullable: true
type: string
expires_at:
description: Date and time when the link will expire.
format: date-time
nullable: true
type: string
language:
description: The code for the language when the workflow run is acessed using the link.
enum:
- en_US
- de_DE
- es_ES
- fr_FR
- it_IT
- pt_PT
- nl_NL
nullable: true
type: string
webhook_event_type:
enum:
- audit_log.created
- watchlist_monitor.matches_updated
- workflow_run.completed
- workflow_task.started
- workflow_task.completed
- check.started
- check.reopened
- check.withdrawn
- check.completed
- check.form_completed
- report.withdrawn
- report.resumed
- report.cancelled
- report.awaiting_approval
- report.completed
- workflow_timeline_file.created
- workflow_signed_evidence_file.created
- workflow_run_evidence_folder.created
type: string
webhook_create:
properties:
url:
description: The url that will listen to notifications (must be https).
type: string
required:
- url
webhook_event_payload:
properties:
resource_type:
allOf:
- $ref: '#/components/schemas/webhook_event_resource_type'
description: Indicates the resource affected by this event.
example: workflow_task
type: string
action:
allOf:
- $ref: '#/components/schemas/webhook_event_type'
description: The event that triggered this webhook.
example: workflow_task.completed
type: string
object:
$ref: '#/components/schemas/webhook_event_payload_object'
resource:
$ref: '#/components/schemas/webhook_event_payload_resource'
required:
- event
- resource_id
- resource_type
type: object
webhook_event:
properties:
payload:
$ref: '#/components/schemas/webhook_event_payload'
type: object
webhook_event_resource_type:
enum:
- check
- report
- audit_log
- workflow_run
- workflow_task
- watchlist_monitor
- workflow_timeline_file
- workflow_run_evidence_folder
type: string
webhook_builder:
allOf:
- $ref: '#/components/schemas/webhook_shared'
- $ref: '#/components/schemas/webhook_create'
webhook_event_payload_resource:
description: The resource affected by this event.
properties:
id:
description: The identifier of the resource.
example: profile_4f4b2
type: string
applicant_id:
description: The unique identifier for the Applicant.
format: uuid
type: string
created_at:
description: The date and time when the resource was created.
example: '2022-12-05T16:41:43.000Z'
format: date-time
type: string
updated_at:
description: The date and time when the resource was last updated.
example: '2022-12-19T16:41:44.000Z'
format: date-time
type: string
dashboard_url:
description: The URL for viewing the resource on Onfido Dashboard.
example: https://dashboard.onfido.com/results/36a56899-d617-4988-85bf-b76640861bf5
type: string
workflow_id:
description: The unique identifier for the Workflow.
format: uuid
type: string
workflow_run_id:
example: 2f152409-d6c4-4711-8750-48517f99a8d6
format: uuid
type: string
workflow_version_id:
description: The identifier for the Workflow version.
example: 0
type: integer
task_def_id:
description: The identifier for the Task Definition.
example: task_123
pattern: ^[0-9a-z_-]+$
type: string
task_def_version:
description: The task definition version.
nullable: true
type: string
input:
description: Input object with the fields used by the Task execution.
type: object
output:
description: Value field (it can be an Object, List, etc.) with the fields produced by the Task execution.
nullable: true
type: object
reasons:
description: The reasons the Workflow Run outcome was reached. Configurable when creating the Workflow Version.
items:
type: string
type: array
link:
allOf:
- $ref: '#/components/schemas/workflow_run_link'
description: Object for the configuration of the Workflow Run link.
type: object
error:
allOf:
- $ref: '#/components/schemas/workflow_run_error'
description: Error object that details why a Workflow Run is in Error status.
type: object
type: object
Webhooks_list:
example:
webhooks:
- payload_version: 0
environments:
- environments
- environments
id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91
href: href
enabled: true
events:
- audit_log.created
- audit_log.created
url: url
token: token
- payload_version: 0
environments:
- environments
- environments
id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91
href: href
enabled: true
events:
- audit_log.created
- audit_log.created
url: url
token: token
properties:
webhooks:
items:
$ref: '#/components/schemas/webhook'
type: array
required:
- webhooks
title: Webhooks list
type: object
webhook_event_payload_object:
description: The object affected by this event.
properties:
id:
description: The unique identifier of the resource.
type: string
status:
$ref: '#/components/schemas/webhook_event_object_status'
started_at_iso8601:
description: The date and time when the operation was started, if available.
example: '2019-10-28T14:55:09.000Z'
format: date-time
type: string
completed_at_iso8601:
description: The date and time when the operation was completed, if available.
example: '2019-10-28T15:00:39.000Z'
format: date-time
type: string
href:
description: The uri of the resource.
type: string
required:
- href
- id
type: object
webhook_updater:
allOf:
- $ref: '#/components/schemas/webhook_shared'
- $ref: '#/components/schemas/webhook_update'
webhook_update:
properties:
url:
description: The url that will listen to notifications (must be https).
type: string
Webhooks_resend_item:
properties:
resource_id:
description: ID of the resource whose webhooks are to be retriggered.
format: uuid
type: string
event:
allOf:
- $ref: '#/components/schemas/webhook_event_type'
description: The events that should retrigger webhooks. Accepts values check.completed.
example: check.completed
type: string
required:
- event
- resource_id
title: Webhooks resend item
type: object
webhook_shared:
properties:
enabled:
description: Determine if the webhook is active.
type: boolean
events:
description: 'The events that will be published to the webhook. If the events parameter is omitted all the events will be subscribed.
'
items:
$ref: '#/components/schemas/webhook_event_type'
type: array
environments:
description: 'The environments from which the webhook will receive events. Allowed values are sandbox and live. If the environments parameter is omitted the webhook will receive events from both environments.
'
items:
type: string
type: array
payload_version:
description: Webhook version used to control the payload object when sending webhooks.
type: integer
type: object
webhook_response:
properties:
id:
description: The unique identifier of the webhook.
format: uuid
type: string
url:
description: The url that will listen to notifications (must be https).
type: string
token:
description: Webhook secret token used to sign the webhook's payload.
type: string
href:
description: The API endpoint to retrieve the webhook.
type: string
required:
- id
type: object
Error:
example:
error:
type: type
message: message
fields:
key: ''
properties:
error:
$ref: '#/components/schemas/ErrorProperties'
title: Error
type: object
webhook:
allOf:
- $ref: '#/components/schemas/webhook_shared'
- $ref: '#/components/schemas/webhook_response'
example:
payload_version: 0
environments:
- environments
- environments
id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91
href: href
enabled: true
events:
- audit_log.created
- audit_log.created
url: url
token: token
webhook_resend:
properties:
data:
items:
$ref: '#/components/schemas/Webhooks_resend_item'
title: Webhooks resend list
type: array
type: object
workflow_run_error:
properties:
type:
description: The type of error.
type: string
message:
description: A textual description of the error.
type: string
type: object
securitySchemes:
Token:
in: header
name: Authorization
type: apiKey
externalDocs:
url: https://documentation.onfido.com