Bakkt Currency Onboarding API
The Currency Onboarding API from Bakkt — 5 operation(s) for currency onboarding.
The Currency Onboarding API from Bakkt — 5 operation(s) for currency onboarding.
openapi: 3.0.0
info:
title: Bakkt Crypto Solutions Accounts Currency Onboarding API
version: '2.0'
description: The Bakkt Crypto Solutions API is a REST-based API that provides a platform for clients, so their investors can purchase, hold, sell, and transfer digital assets. Clients must have authorization to use the APIs, secure endpoints, and facilities to ensure safe, fast execution and tracking of orders. Users must specify all date and time units using epoch time in UTC. The URL path includes a version number to indicate major versions which retain backward compatibility to other URLs with the same version prefix. This document is reconstructed by the API Evangelist enrichment pipeline from the per-endpoint OpenAPI fragments Bakkt publishes on its ReadMe developer hub (bakkt.readme.io); it merges the Crypto Solutions (/apex-crypto/api/v2) and Fiat/Partner (/partner/v1) endpoint families.
termsOfService: https://bakkt.com/user-agreement
contact:
name: Bakkt User Account Agreement
url: https://bakkt.com/user-agreement
servers:
- url: https://api.bakkt.com
description: Bakkt API gateway (dedicated per-client, IP-whitelisted; base paths /apex-crypto/api/v2 and /partner/v1)
tags:
- name: Currency Onboarding
paths:
/apex-crypto/api/v2/allocation/currency/batch/allocate:
post:
description: Currency allocation request for a single customer account
operationId: allocationCurrencyBatchAllocateCreate
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/CurrencyAllocationRequest'
required: true
responses:
'200':
description: Successful submission of currency allocation request
content:
application/json:
schema:
$ref: '#/components/schemas/CurrencyAllocation'
'400':
description: This response returns if the check was improperly submitted.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
default:
description: This response returns if the system encounters an unexpected error while handling this request.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
security:
- api_key: []
summary: Request For Currency Allocation
tags:
- Currency Onboarding
/apex-crypto/api/v2/allocation/currency/batch/allocate/{clientTransactionId}:
get:
description: Retrieve details pertaining to a particular currency allocation by its clientTransactionId
operationId: allocationCurrencyBatchAllocateGet
parameters:
- description: Client-specified unique identifer for the currency allocation
in: path
name: clientTransactionId
required: true
schema:
type: string
format: uuid
responses:
'200':
description: Returns details of the allocation
content:
application/json:
schema:
$ref: '#/components/schemas/CurrencyAllocation'
'400':
description: This response returns if the check was improperly submitted.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
default:
description: This response returns if the system encounters an unexpected error while handling this request.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
security:
- api_key: []
summary: Retrieve Currency Allocation Details By clientTransactionId
tags:
- Currency Onboarding
/apex-crypto/api/v2/allocation/currency/batch/close:
post:
description: Request to close off currency allocations of a particular batch
operationId: allocationCurrencyBatchClose
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/BatchCurrencyAllocationCloseRequest'
required: true
responses:
'200':
description: This response returns the details of the closed batch
content:
application/json:
schema:
$ref: '#/components/schemas/BatchCurrencyAllocation'
'400':
description: This response returns if the check was improperly submitted.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
default:
description: This response returns if the system encounters an unexpected error while handling this request
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
security:
- api_key: []
summary: Request To Close Currency Allocation Batch
tags:
- Currency Onboarding
/apex-crypto/api/v2/allocation/currency/batch/{batchTransactionId}:
get:
description: Retrieve allocation details pertaining to a particular series of currency allocations by their batchTransactionId
operationId: allocationCurrencyBatchGet
parameters:
- description: Client-specified unique identifier for a set of currency allocations belonging to the same batch request
in: path
name: batchTransactionId
required: true
schema:
type: string
format: uuid
responses:
'200':
description: This response returns the details of the currency allocation batch
content:
application/json:
schema:
$ref: '#/components/schemas/BatchCurrencyAllocation'
'400':
description: This response returns if the check was improperly submitted
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
default:
description: This response returns if the system encounters an unexpected error while handling this request
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
security:
- api_key: []
summary: Retrieve Currency Allocation Details By batchTransactionId
tags:
- Currency Onboarding
/apex-crypto/api/v2/allocation/currency/batch/open:
post:
description: Open a new batch of currency allocations for a particular currency where all transactions will be quantity based
operationId: allocationCurrencyBatchOpen
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/BatchCurrencyAllocationOpenRequest'
required: true
responses:
'200':
description: Successfully opened allocations batch
content:
application/json:
schema:
$ref: '#/components/schemas/BatchCurrencyAllocation'
'400':
description: This response returns if the check was improperly submitted.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
default:
description: This response returns if the system encounters an unexpected error while handling this request.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
security:
- api_key: []
summary: Request For New Currency Allocation Batch
tags:
- Currency Onboarding
components:
schemas:
CurrencyAllocationRequest:
description: Currency allocation request for a single customer account
properties:
account:
description: External ID for customer account
type: string
x-order: 0
batchTransactionId:
description: Client-specified unique identifier for a set of currency allocations belonging to the same batch
format: uuid
type: string
x-order: 2
clientTransactionId:
description: Client-specified unique identifier for the currency allocation
format: uuid
type: string
x-order: 3
currency:
description: Requested currency
type: string
x-order: 5
direction:
description: Denotes whether depositing or withdrawing currency
enum:
- DEPOSIT
- WITHDRAWAL
type: string
x-order: 4
quantity:
description: Order size in product units
format: decimal
type: string
x-order: 1
required:
- account
- quantity
- batchTransactionId
- clientTransactionId
- direction
- currency
AllocationStatus:
description: Status of allocation
enum:
- PENDING
- IN_PROGRESS
- COMPLETE
- REJECTED
- CANCELLED
type: string
BatchCurrencyAllocation:
description: Details of a particular currency allocation batch containing one or many allocation requests
properties:
allocations:
description: Number of requested currency allocations within the batch
type: integer
x-order: 0
createdAt:
description: Date and time at which the currency allocation batch was submitted
format: date-time
type: string
x-order: 1
id:
description: Bakkt internal id
format: uuid
type: string
x-order: 2
rejectReason:
description: The reason the currency allocation was rejected
type: string
x-order: 5
request:
$ref: '#/components/schemas/BatchCurrencyAllocationOpenRequest'
status:
$ref: '#/components/schemas/BatchAllocationStatus'
required:
- allocations
- createdAt
- id
- request
- status
BatchCurrencyAllocationOpenRequest:
description: Request to open a currency allocation batch
properties:
batchTransactionId:
description: Client-specified unique identifier for a set of currency allocations belonging to the same batch
format: uuid
type: string
x-order: 0
currency:
description: Requested currency
type: string
x-order: 1
transactionHash:
description: Transaction hash for the blockchain transaction
type: string
x-order: 2
required:
- batchTransactionId
- currency
- transactionHash
BatchAllocationStatus:
description: Status of allocation
enum:
- OPEN
- CLOSED
- IN_PROGRESS
- COMPLETE
- REJECTED
type: string
Error:
properties:
code:
description: This code represents an HTTP style error code. Error codes in the 4xx range indicate errors made in the way the client made the request. Error codes in the 5xx range indicate errors that the Apex Crypto system encountered in handling the request.
format: int32
type: integer
message:
description: This error message provides additional insight into the nature of the error encountered.
type: string
required:
- code
- message
type: object
CurrencyAllocation:
description: Summary of details pertaining to a currency allocation request
properties:
createdAt:
description: Date at which the currency allocation batch was submitted
format: date-time
type: string
x-order: 0
id:
description: Bakkt unique identifier for the currency allocation
format: uuid
type: string
x-order: 1
rejectReason:
description: The reason the currency allocation was rejected
type: string
x-order: 3
request:
$ref: '#/components/schemas/CurrencyAllocationRequest'
status:
$ref: '#/components/schemas/AllocationStatus'
required:
- createdAt
- id
- request
- status
BatchCurrencyAllocationCloseRequest:
description: Request to close off currency allocations of a particular batch
properties:
allocations:
description: Number of requested currency allocations within the batch
type: integer
x-order: 1
batchTransactionId:
description: Client-specified unique identifier for a set of currency allocations belonging to the same batch
format: uuid
type: string
x-order: 0
required:
- batchTransactionId
- allocations