Unit Accounts API

Deposit and credit accounts.

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

Other Resources

OpenAPI Specification

unit-co-accounts-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Unit Accounts 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: Accounts
  description: Deposit and credit accounts.
paths:
  /accounts:
    get:
      operationId: getAccountsList
      tags:
      - Accounts
      summary: Get List Accounts
      parameters:
      - $ref: '#/components/parameters/PageLimit'
      - $ref: '#/components/parameters/PageOffset'
      responses:
        '200':
          $ref: '#/components/responses/ResourceList'
    post:
      operationId: createAccount
      tags:
      - Accounts
      summary: Create Account
      requestBody:
        required: true
        content:
          application/vnd.api+json:
            schema:
              $ref: '#/components/schemas/CreateAccountRequest'
      responses:
        '201':
          $ref: '#/components/responses/SingleResource'
  /accounts/{accountId}:
    parameters:
    - $ref: '#/components/parameters/AccountId'
    get:
      operationId: getAccount
      tags:
      - Accounts
      summary: Get Account by Id
      responses:
        '200':
          $ref: '#/components/responses/SingleResource'
    patch:
      operationId: updateAccount
      tags:
      - Accounts
      summary: Update Account
      requestBody:
        required: true
        content:
          application/vnd.api+json:
            schema:
              type: object
      responses:
        '200':
          $ref: '#/components/responses/SingleResource'
  /accounts/{accountId}/limits:
    parameters:
    - $ref: '#/components/parameters/AccountId'
    get:
      operationId: getAccountLimits
      tags:
      - Accounts
      summary: Get Account Limits by Id
      responses:
        '200':
          $ref: '#/components/responses/SingleResource'
  /accounts/{accountId}/freeze:
    parameters:
    - $ref: '#/components/parameters/AccountId'
    post:
      operationId: freezeAccount
      tags:
      - Accounts
      summary: Freeze Account by Id
      responses:
        '200':
          $ref: '#/components/responses/SingleResource'
  /accounts/{accountId}/unfreeze:
    parameters:
    - $ref: '#/components/parameters/AccountId'
    post:
      operationId: unfreezeAccount
      tags:
      - Accounts
      summary: Unfreeze Account by Id
      responses:
        '200':
          $ref: '#/components/responses/SingleResource'
  /accounts/{accountId}/close:
    parameters:
    - $ref: '#/components/parameters/AccountId'
    post:
      operationId: closeAccount
      tags:
      - Accounts
      summary: Close an Account by Id
      responses:
        '200':
          $ref: '#/components/responses/SingleResource'
  /accounts/{accountId}/reopen:
    parameters:
    - $ref: '#/components/parameters/AccountId'
    post:
      operationId: reopenAccount
      tags:
      - Accounts
      summary: Reopen an Account by Id
      responses:
        '200':
          $ref: '#/components/responses/SingleResource'
  /accounts/{accountId}/enter-daca:
    parameters:
    - $ref: '#/components/parameters/AccountId'
    post:
      operationId: enterDaca
      tags:
      - Accounts
      summary: Enter Deposit Account Control Agreement by Id
      responses:
        '200':
          $ref: '#/components/responses/SingleResource'
  /accounts/{accountId}/activate-daca:
    parameters:
    - $ref: '#/components/parameters/AccountId'
    post:
      operationId: activateDaca
      tags:
      - Accounts
      summary: Activate Deposit Account Control Agreement by Id
      responses:
        '200':
          $ref: '#/components/responses/SingleResource'
  /accounts/{accountId}/deactivate-daca:
    parameters:
    - $ref: '#/components/parameters/AccountId'
    post:
      operationId: deactivateDaca
      tags:
      - Accounts
      summary: Deactivate Deposit Account Control Agreement by Id
      responses:
        '200':
          $ref: '#/components/responses/SingleResource'
  /account-end-of-day:
    get:
      operationId: getAccountBalanceHistory
      tags:
      - Accounts
      summary: Get Account Balance History
      parameters:
      - $ref: '#/components/parameters/PageLimit'
      - $ref: '#/components/parameters/PageOffset'
      responses:
        '200':
          $ref: '#/components/responses/ResourceList'
  /accounts/{accountId}/repayment-information:
    parameters:
    - $ref: '#/components/parameters/AccountId'
    get:
      operationId: getRepaymentInformation
      tags:
      - Accounts
      summary: Get Repayment Information
      responses:
        '200':
          $ref: '#/components/responses/SingleResource'
  /accounts/{accountId}/deposit-products:
    parameters:
    - $ref: '#/components/parameters/AccountId'
    get:
      operationId: getDepositProducts
      tags:
      - Accounts
      summary: Get Deposit Products
      responses:
        '200':
          $ref: '#/components/responses/ResourceList'
  /accounts/{accountId}/relationships/customers:
    parameters:
    - $ref: '#/components/parameters/AccountId'
    post:
      operationId: addAccountOwners
      tags:
      - Accounts
      summary: Add Owners to Account by Id
      requestBody:
        required: true
        content:
          application/vnd.api+json:
            schema:
              type: object
      responses:
        '200':
          $ref: '#/components/responses/SingleResource'
    delete:
      operationId: removeAccountOwners
      tags:
      - Accounts
      summary: Remove Owners from Account by Id
      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
    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
    CreateAccountRequest:
      type: object
      required:
      - data
      properties:
        data:
          type: object
          required:
          - type
          - attributes
          - relationships
          properties:
            type:
              type: string
              enum:
              - depositAccount
              - creditAccount
            attributes:
              type: object
              properties:
                depositProduct:
                  type: string
                tags:
                  type: object
                  additionalProperties:
                    type: string
                idempotencyKey:
                  type: string
            relationships:
              type: object
              properties:
                customer:
                  type: object
                  properties:
                    data:
                      type: object
                      properties:
                        type:
                          type: string
                          enum:
                          - customer
                        id:
                          type: string
  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'
  parameters:
    AccountId:
      name: accountId
      in: path
      required: true
      schema:
        type: string
    PageOffset:
      name: page[offset]
      in: query
      schema:
        type: integer
        default: 0
    PageLimit:
      name: page[limit]
      in: query
      schema:
        type: integer
        default: 100
        maximum: 1000
  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.'