Unit Webhooks API

Subscriptions that deliver events as signed HTTP callbacks.

Documentation

📖
Documentation
https://www.unit.co/docs/api/
📖
APIReference
https://www.unit.co/docs/api/applications/
📖
Documentation
https://www.unit.co/docs/api/customers/
📖
APIReference
https://www.unit.co/docs/api/customers/
📖
Documentation
https://www.unit.co/docs/api/accounts/deposit-accounts/overview/
📖
APIReference
https://www.unit.co/docs/api/accounts/
📖
Documentation
https://www.unit.co/docs/api/cards/
📖
APIReference
https://www.unit.co/docs/api/cards/
📖
Documentation
https://docs.unit.co/cards-authorization-requests/
📖
APIReference
https://www.unit.co/docs/api/cards-authorizations/
📖
Documentation
https://docs.unit.co/payments/
📖
APIReference
https://www.unit.co/docs/api/payments/book/
📖
Documentation
https://www.unit.co/docs/api/counterparties/overview/
📖
APIReference
https://www.unit.co/docs/api/payments-counterparties/
📖
Documentation
https://docs.unit.co/check-deposits/
📖
APIReference
https://www.unit.co/docs/api/checks/
📖
Documentation
https://www.unit.co/docs/api/transactions/overview/
📖
APIReference
https://www.unit.co/docs/api/transactions/
📖
Documentation
https://docs.unit.co/statements/
📖
APIReference
https://www.unit.co/docs/api/statements/
📖
Documentation
https://docs.unit.co/webhooks/
📖
APIReference
https://www.unit.co/docs/api/events/
📖
Documentation
https://www.unit.co/docs/api/stop-payments/apis/
📖
APIReference
https://www.unit.co/docs/api/disputes/
📖
Documentation
https://docs.unit.co/repayments/
📖
APIReference
https://docs.unit.co/credit-accounts/
📖
Documentation
https://www.unit.co/docs/api/fees/overview/
📖
APIReference
https://www.unit.co/docs/api/fees/
📖
Documentation
https://www.unit.co/docs/tokens/
📖
APIReference
https://www.unit.co/docs/api/org-api-tokens/

Specifications

OpenAPI Specification

unit-co-webhooks-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Unit Accounts Webhooks API
  description: Unit is a Banking-as-a-Service (BaaS) platform. This document is an API Evangelist consolidation of Unit's public REST surface, organized into logical groupings (Applications, Customers, Accounts, Cards, Authorizations, Payments, Counterparties, Checks, Transactions, Statements, Tax Forms, Events, Webhooks, Risk/Fraud, Credit/Repayments, Fees, Rewards, and API Tokens). All paths, methods, and the request/ response envelope below were confirmed against Unit's officially published OpenAPI 3.0.2 specification at github.com/unit-finance/openapi-unit-sdk (openapi.json, version 0.4.0); request/response bodies here are condensed and re-typed for readability rather than reproduced schema-for-schema. Unit's API follows the JSON:API specification - every request and response uses the `application/vnd.api+json` media type, wraps the primary resource in a top-level `data` object with `type`/`id`/`attributes`/`relationships`, and authenticates with a Bearer JWT obtained as an org API token or a customer API token.
  version: '1.0'
  contact:
    name: Unit
    url: https://www.unit.co
  license:
    name: Proprietary
    url: https://www.unit.co/legal/
servers:
- url: https://api.s.unit.sh
  description: Sandbox (confirmed - default server in Unit's published OpenAPI spec)
- url: https://api.unit.co
  description: Production (industry-standard Unit convention paired with the sandbox host; not independently re-confirmed against a live docs page in this research pass - verify with your Unit solution engineer)
security:
- bearerAuth: []
tags:
- name: Webhooks
  description: Subscriptions that deliver events as signed HTTP callbacks.
paths:
  /webhooks:
    get:
      operationId: getWebhooksList
      tags:
      - Webhooks
      summary: Get List Webhooks
      responses:
        '200':
          $ref: '#/components/responses/ResourceList'
    post:
      operationId: createWebhook
      tags:
      - Webhooks
      summary: Create Webhook
      requestBody:
        required: true
        content:
          application/vnd.api+json:
            schema:
              $ref: '#/components/schemas/CreateWebhookRequest'
      responses:
        '201':
          $ref: '#/components/responses/SingleResource'
  /webhooks/{webhookId}:
    parameters:
    - name: webhookId
      in: path
      required: true
      schema:
        type: string
    get:
      operationId: getWebhook
      tags:
      - Webhooks
      summary: Get Webhook by Id
      responses:
        '200':
          $ref: '#/components/responses/SingleResource'
    patch:
      operationId: updateWebhook
      tags:
      - Webhooks
      summary: Update Webhook
      requestBody:
        required: true
        content:
          application/vnd.api+json:
            schema:
              type: object
      responses:
        '200':
          $ref: '#/components/responses/SingleResource'
  /webhooks/{webhookId}/enable:
    parameters:
    - name: webhookId
      in: path
      required: true
      schema:
        type: string
    post:
      operationId: enableWebhook
      tags:
      - Webhooks
      summary: Enable Webhook
      responses:
        '200':
          $ref: '#/components/responses/SingleResource'
  /webhooks/{webhookId}/disable:
    parameters:
    - name: webhookId
      in: path
      required: true
      schema:
        type: string
    post:
      operationId: disableWebhook
      tags:
      - Webhooks
      summary: Disable a Webhook
      responses:
        '200':
          $ref: '#/components/responses/SingleResource'
components:
  schemas:
    JsonApiSingleResponse:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/JsonApiResource'
        included:
          type: array
          items:
            $ref: '#/components/schemas/JsonApiResource'
    JsonApiResource:
      type: object
      properties:
        type:
          type: string
          description: The JSON:API resource type, e.g. individualApplication, depositAccount, individualDebitCard, bookPayment, achPayment.
        id:
          type: string
        attributes:
          type: object
          additionalProperties: true
        relationships:
          type: object
          additionalProperties: true
    CreateWebhookRequest:
      type: object
      required:
      - data
      properties:
        data:
          type: object
          required:
          - type
          - attributes
          properties:
            type:
              type: string
              enum:
              - webhook
            attributes:
              type: object
              properties:
                url:
                  type: string
                  format: uri
                secret:
                  type: string
                  description: Signing secret; Unit computes an HMAC-SHA1 hash of the request body, base64-encodes it, and sends it in the X-Unit-Signature header.
    JsonApiListResponse:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/JsonApiResource'
        meta:
          type: object
          properties:
            pagination:
              type: object
              properties:
                total:
                  type: integer
                limit:
                  type: integer
                offset:
                  type: integer
  responses:
    ResourceList:
      description: A page of JSON:API resources.
      content:
        application/vnd.api+json:
          schema:
            $ref: '#/components/schemas/JsonApiListResponse'
    SingleResource:
      description: A single JSON:API resource.
      content:
        application/vnd.api+json:
          schema:
            $ref: '#/components/schemas/JsonApiSingleResponse'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: 'Bearer JWT issued as an org API token (Dashboard > Developers) or a customer API token. Sent as `Authorization: Bearer ${TOKEN}`. All request and response bodies use the `application/vnd.api+json` JSON:API media type.'