Skip to content

Jiko Customer API (Version: fd60d28d)

Introduction

Welcome to the Jiko Customer API Reference! Jiko enables you to integrate money storage and movement, backed by the safety and security of US Treasury Bills. Use the Customer API if you are a Jiko customer integrating Jiko directly into your internal systems.

For questions regarding authorization for the Customer API, please visit our OAuth guide

Download OpenAPI description
Languages
Servers
Production server
https://api.business.jiko.io
Sandbox server
https://customer-api.sandbox-api.jikoservices.com

Agreements

Use this endpoint to fetch Agreements specific to your institution and Jiko.

Operations

Events

Use these endpoints to view Events.

Operations

Notifications

Use these endpoints for interacting with Notifications.

Operations

Subscriptions

Use these endpoints to create, view, and manage Subscriptions. Subscriptions provide Partners with the ability to subscribe to Events. Once subscribed, Events will be sent to the specified URL.

Operations

Create Subscription

Request

This endpoint creates a new webhook subscription to receive real-time notifications for specified events.

The request body requires a CreateSubscriptionRequest object, which includes the url for the webhook, the events to subscribe to, and a shared_secret for verifying request signatures.

Security
CodeBearer
Bodyapplication/jsonrequired
descriptionstring(Description)

A description of the webhook's intended use.

Default ""
eventsArray of strings(Events)non-emptyrequired

Which types of events this webhook should be invoked for.

urlstring(uri)(Url)[ 1 .. 2083 ] charactersrequired

The webhook URL to invoke.

retry_policyRetryPolicy (object) or null

The retry policy to use if Jiko encounters HTTP errors when calling subscription URLs.

Any of:

The retry policy to use if Jiko encounters HTTP errors when calling subscription URLs.

shared_secretstring(Shared Secret)>= 16 charactersrequired

The shared secret used by the Partner API to sign requests made to the webhook. The shared secret needs to be minimum 16 characters long.

curl -i -X POST \
  https://api.business.jiko.io/api/v1/subscriptions/ \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "description": "",
    "events": [
      "string"
    ],
    "url": "http://example.com",
    "retry_policy": {
      "retry_on_status_codes": [
        0
      ],
      "backoff_coefficient": 1,
      "maximum_attempts": 1,
      "initial_interval_seconds": 30,
      "maximum_interval_seconds": 300
    },
    "shared_secret": "stringstringstri"
  }'

Responses

Successful Response

Bodyapplication/json
any
Response
application/json
null

Get Subscriptions

Request

This endpoint lists all of your current webhook subscriptions, and returns a paginated list of Subscription objects.

Security
CodeBearer
Query
cursorstring(Cursor)
Default ""
limitinteger(Limit)[ 1 .. 100 ]
Default 100
curl -i -X GET \
  'https://api.business.jiko.io/api/v1/subscriptions/?limit=100' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Successful Response

Bodyapplication/json
prev_pagePrev Page (string) or Prev Page (null)(Prev Page)
Any of:
string(Prev Page)
next_pageNext Page (string) or Next Page (null)(Next Page)
Any of:
string(Next Page)
itemsArray of objects(Items)required
items[].​descriptionstring(Description)

A description of the webhook's intended use.

Default ""
items[].​eventsArray of strings(Events)non-emptyrequired

Which types of events this webhook should be invoked for.

items[].​urlstring(uri)(Url)[ 1 .. 2083 ] charactersrequired

The webhook URL to invoke.

items[].​retry_policyRetryPolicy (object) or null

The retry policy to use if Jiko encounters HTTP errors when calling subscription URLs.

Any of:

The retry policy to use if Jiko encounters HTTP errors when calling subscription URLs.

items[].​idstring(uuid)(Id)required
items[].​time_createdstring(date-time)(Time Created)required
items[].​updated_atstring(date-time)(Updated At)required
items[].​statusstring(Status)required
Enum"enabled""disabled"
object_typestring(Object Type)
Default "CursorList"
Response
application/json
{ "prev_page": "string", "next_page": "string", "items": [ {} ], "object_type": "CursorList" }

Update Subscription

Request

This endpoint updates an existing webhook subscription. You can change the url, the subscribed events, or the status (enabled/disabled).

The request body requires an UpdateSubscriptionRequest object. It returns a 202 Accepted response with the updated Subscription object.

Security
CodeBearer
Path
subscription_idstring(uuid)(Subscription Id)required
Bodyapplication/jsonrequired
descriptionDescription (string) or Description (null)(Description)

A description of the webhook's intended use.

Any of:

A description of the webhook's intended use.

string(Description)
eventsArray of Events (strings) or Events (null)(Events)
Any of:

Which types of events this webhook should be invoked for.

non-empty
urlUrl (string) or Url (null)(Url)

The webhook URL to invoke.

Any of:

The webhook URL to invoke.

[ 1 .. 2083 ] characters
string(uri)(Url)[ 1 .. 2083 ] characters
shared_secretShared Secret (string) or Shared Secret (null)(Shared Secret)

The shared secret used by the Partner API to sign requests made to the webhook. The shared secret needs to be minimum 16 characters long.

Any of:

The shared secret used by the Partner API to sign requests made to the webhook. The shared secret needs to be minimum 16 characters long.

>= 16 characters
string(Shared Secret)>= 16 characters
retry_policyRetryPolicy (object) or null
Any of:
statusStatus (string) or Status (null)(Status)
Any of:
string(Status)
Enum"enabled""disabled"
curl -i -X PATCH \
  'https://api.business.jiko.io/api/v1/subscriptions/{subscription_id}/' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "description": "string",
    "events": [
      "string"
    ],
    "url": "http://example.com",
    "shared_secret": "stringstringstri",
    "retry_policy": {
      "retry_on_status_codes": [
        0
      ],
      "backoff_coefficient": 1,
      "maximum_attempts": 1,
      "initial_interval_seconds": 30,
      "maximum_interval_seconds": 300
    },
    "status": "enabled"
  }'

Responses

Successful Response

Bodyapplication/json
descriptionstring(Description)

A description of the webhook's intended use.

Default ""
eventsArray of strings(Events)non-emptyrequired

Which types of events this webhook should be invoked for.

urlstring(uri)(Url)[ 1 .. 2083 ] charactersrequired

The webhook URL to invoke.

retry_policyRetryPolicy (object) or null

The retry policy to use if Jiko encounters HTTP errors when calling subscription URLs.

Any of:

The retry policy to use if Jiko encounters HTTP errors when calling subscription URLs.

idstring(uuid)(Id)required
time_createdstring(date-time)(Time Created)required
updated_atstring(date-time)(Updated At)required
statusstring(Status)required
Enum"enabled""disabled"
Response
application/json
{ "description": "", "events": [ "string" ], "url": "http://example.com", "retry_policy": { "retry_on_status_codes": [], "backoff_coefficient": 1, "maximum_attempts": 1, "initial_interval_seconds": 30, "maximum_interval_seconds": 300 }, "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "time_created": "2019-08-24T14:15:22Z", "updated_at": "2019-08-24T14:15:22Z", "status": "enabled" }

Reports

⚠️ Experimental ⚠️ These endpoints are subject to change.

Use these endpoints to interact with Reports.

Operations

Statements

Use these endpoints to retrieve monthly statements for bank and brokerage accounts.

Operations

Team

Use these endpoints to view and manage details for a Team and its members.

Operations

Trades

Use these endpoints to view Trades, or transactions related to the buying and selling of T-bills, within the brokerage account component of Jiko Pockets.

Operations

Portals

Use these endpoints to create and view Portals. Portals allow third-party financial institutions to initiate ACH and wire transfers. A Portal consists of a routing and an account number. Multiple Portals can be created for a single Pocket.

Operations

Transfer Requests

Use these endpoints to manage Dual Authorization for Tranfer Requests.

Operations

Customer

Use these endpoints to view and manage personal details for a Customer.

Operations

User

Use these endpoints to view User information.

Operations

Business Applications V2

Use this endpoint to view, create and manage Business Applications.

Operations

Documents V2

Use this endpoint to upload a document associated with a specific document ID. Useful for providing supporting documents for verification purposes.

Operations

Pockets V2

Use these endpoints to view Pocket information. Jiko Pockets consist of a bank account and a brokerage account. When funds are deposited into a Pocket, they're immediately invested in T-bills.

Operations

Transactions V2

Use these endpoints to view Transactions of funds moving in and out of Jiko Pockets, specifically the bank account component (cash deposits and withdrawals). For viewing information regarding the brokerage account component (buying and selling of T-bills), use Trades.

Operations

Counterparties V2

Use these endpoints to view Counterparties. Counterparties represent external accounts when moving funds in or out of a Jiko Account. Jiko will only transfer funds between accounts where the Counterparty has status: “VERIFIED”, meaning ownership of the account has been confirmed.

Operations

Trading Strategies V2

Use these endpoints to see available trading strategies applicable to a Pocket.

Operations