openapi: 3.2.0 info: contact: email: support@herondata.io name: Support title: Heron Data Webhooks API version: '2021-07-19' servers: - description: Production url: https://app.herondata.io security: - ApiKeyAuth: - key_XXX tags: - name: Webhooks paths: /api/webhooks: get: description: 'Get webhook ' responses: '200': content: application/json: schema: properties: webhooks: items: $ref: '#/components/schemas/WebhookSchema' type: array type: object description: Ok security: - ApiKeyAuth: [] summary: Get webhooks tags: - Webhooks post: description: 'Create a webhook ' requestBody: content: application/json: schema: $ref: '#/components/schemas/WebhookSchema' required: true responses: '201': content: application/json: schema: properties: webhook: $ref: '#/components/schemas/WebhookSchema' type: object description: Created security: - ApiKeyAuth: [] summary: Create a webhook tags: - Webhooks /api/webhooks/topics: get: description: 'Get webhook topics ' responses: '200': content: application/json: schema: properties: topics: items: type: string type: array type: object description: Ok security: - ApiKeyAuth: [] summary: Get webhook topics tags: - Webhooks /api/webhooks/{heron_id}: delete: description: 'Delete a webhook by its heron_id. The webhook must belong to the authenticated user. ' parameters: - description: The heron_id of the webhook to delete in: path name: heron_id required: true schema: type: string responses: '204': content: application/json: schema: properties: heron_id: description: The heron_id of the deleted webhook type: string type: object description: Webhook successfully deleted '404': content: application/json: schema: properties: description: example: webhook with heron_id {heron_id} not found type: string type: object description: Webhook not found security: - ApiKeyAuth: [] summary: Delete a webhook tags: - Webhooks put: description: 'Update a webhook ' parameters: - in: path name: heron_id required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/WebhookUpdateSchema' required: true responses: '200': content: application/json: schema: properties: webhook: $ref: '#/components/schemas/WebhookSchema' type: object description: Ok security: - ApiKeyAuth: [] summary: Update a webhook tags: - Webhooks components: schemas: WebhookUpdateSchema: properties: headers: additionalProperties: {} description: Headers to send webhook with example: Content-Type: application/json type: - object - 'null' heron_id: description: Unique ID for webhook generated by Heron example: wbh_hsNPaZqjD75FdhmViHWyNh readOnly: true type: string is_enabled: description: Whether the webhook is enabled example: true type: boolean topic: description: Webhook topic for different Heron events enum: - data_source.enabled - data_source_account_summary.created - data_source.disabled - end_user.created - end_user.processed - end_user.failed - end_user.reviewed - end_user.transactions_updated - end_user.review_required - end_user.files_changed - end_user.files_classified - end_user_information.updated - end_user.policy_workflow_finished - end_user.policy_workflow_failed - enrich_workflow.finished - transactions.deleted - transactions.updated - pdf.processed - pdf.checks_passed - pdf.checks_failed - pdf.transactions_loaded - pdf.failed - pdf.parsed - pdf.human_reviewing - pdf.approved - integration_link.erroring - iso_application.processed - iso_application.processed_simple - iso_application.created - iso_application.failed - end_user_email.processed - end_user_email.failed - end_user_file.parsed - end_user_file.parse_failed - end_user_file.processed_standalone - end_user_file.deleted - end_user_files.processing_failed - enricher.succeeded - enricher.failed - pricing_template.generation_succeeded - pricing_template.generation_failed - pricing_template.delivery_succeeded - pricing_template.delivery_failed - workflow.event example: end_user.processed type: string url: description: URL where webhook should be sent example: https://www.your-webhook-endpoint.com/heron format: url type: string type: object WebhookSchema: properties: headers: additionalProperties: {} description: Headers to send webhook with example: Content-Type: application/json type: - object - 'null' heron_id: description: Unique ID for webhook generated by Heron example: wbh_hsNPaZqjD75FdhmViHWyNh readOnly: true type: string is_enabled: description: Whether the webhook is enabled example: true type: boolean topic: description: Webhook topic for different Heron events enum: - data_source.enabled - data_source_account_summary.created - data_source.disabled - end_user.created - end_user.processed - end_user.failed - end_user.reviewed - end_user.transactions_updated - end_user.review_required - end_user.files_changed - end_user.files_classified - end_user_information.updated - end_user.policy_workflow_finished - end_user.policy_workflow_failed - enrich_workflow.finished - transactions.deleted - transactions.updated - pdf.processed - pdf.checks_passed - pdf.checks_failed - pdf.transactions_loaded - pdf.failed - pdf.parsed - pdf.human_reviewing - pdf.approved - integration_link.erroring - iso_application.processed - iso_application.processed_simple - iso_application.created - iso_application.failed - end_user_email.processed - end_user_email.failed - end_user_file.parsed - end_user_file.parse_failed - end_user_file.processed_standalone - end_user_file.deleted - end_user_files.processing_failed - enricher.succeeded - enricher.failed - pricing_template.generation_succeeded - pricing_template.generation_failed - pricing_template.delivery_succeeded - pricing_template.delivery_failed - workflow.event example: end_user.processed type: string url: description: URL where webhook should be sent example: https://www.your-webhook-endpoint.com/heron format: url type: string type: object securitySchemes: ApiKeyAuth: in: header name: x-api-key type: apiKey externalDocs: description: Read Tutorial url: https://docs.herondata.io/