Get Started (Try It)

Welcome to developer.apiture.com!

Apiture APIs are a set of RESTful APIs that you can use to:

  • Access accounts, balances, and transaction history
  • Schedule one-time or recurring transfers between local or external accounts
  • Orchestrate custom workflows for complex banking activities, such as opening new accounts or dispute resolution

To get started, you begin with understanding how to use Apiture APIs securely by acquiring and managing an API key and having users authenticate so that Apiture APIs can authorize their access to resources and operations. API Keys, authentication, and authorition are described in Secure Access.

  1. Apiture APIs use modern REST API design and resource-oriented architecture. The reader should be familiar with the basic concepts of RESTful HTTP JSON APIs.
  2. Our key API concepts page describes the structure and common design patterns in Apiture APIs that build upon REST over HTTP+JSON.
  3. Next, head over to our Apiture OpenAPI Reference to dive into our APIs.

You should also review and consent to the Apiture Terms and Conditions. .

Try out the Apiture APIs

To see the Apiture APIs in action, you will execute a series of API calls to perform a simple yet common scenario:

  1. Use the Accounts API to list all accounts for the authenticated user.
  2. Next, we will select one account and fetch the details for that account.
  3. Finally, we will veiw recent transactions of that selected account.

The Apiture developer portal gives you an OAuth access token that represents a banking customer with several accounts. The operations require passing that access token in the Authentication request header. In addition, each operation requires passing your personal API Key as the API-Key request header.

Both the access token for the sample banking customer and your API key are listed in your Account Settings, in case you wish to try the operation outside the developer portal, such as from your IDE or terminal. Code snippets for all API operations (in various client programming languages) may be found in the API Reference.

List all accounts for a user

Our first call is a GET call to list all the accounts for the authenticated user. This is the getAccounts operation in the Accounts API. (There are some some optional query parameters for paging or filtering the list, but the number of accounts per user is usually small and pagination and filtering are not necessary.)


GET
Request Headers:
Accept:
API-Key:
Authentication:
Query Parameters:
start:
limit:
sortBy:
filter:
q:


REST Response

Response Code: 200 OK
Response Headers:
Response Body:

{ .... }

View the details for one of the user’s accounts

The response is a collection of accounts. The nested _embedded object in the response body contains an array of items, each representing a different account owned by the authenticated banking customer. You may choose any of these accounts. Inside that embedded account object are links related to the account; the link labeled self is the URI of the account. The nested object also contains the unique resource ID in the property named _id. Copy the value of _id (without the enclosing quotes) and paste it into the field labeled accountId in the form below. This next call will fetch the details for the selected account, including the account balance.

This is the getAccount operation in the Accounts API.


GET
Request Headers:
Accept:
API-Key:
Authentication:
Path Parameters:
accountId:
Unmasked


The {actual account product name} account name is {actual account name derived from the response} and the balance is {actual balance derived from the response}.

Click the Try It button to run the second API call to view account details.

REST Response

Response Code: 200 OK
Response Headers:
Response Body:

{ .... }
{
    "_embedded": {
        "product": {
            "_id": "/products/products/1ffbbddc-9ee7-40a6-8b56-33ca8e13cd27",
            "_profile": "https://api.apiture.com/schemas/product/v1.0.0/profile.json"
        }
    },
    "_id": "c06d7a66-14fa-4579-988d-fd615137fc57",
    "_links": {
        "apiture:activate": {
            "href": "/accounts/activeAccounts?account= c06d7a66-14fa-4579-988d-fd615137fc57"
        },
        "apiture:application": {
            "href": "/accountApplications/applications/2f23b9fe-532f-4e82-943e-b079ea55aebc"
        },
        "apiture:close": {
            "href": "/accounts/closedAccounts?account= c06d7a66-14fa-4579-988d-fd615137fc57"
        },
        "apiture:freeze": {
            "href": "/accounts/frozenAccounts?account= c06d7a66-14fa-4579-988d-fd615137fc57"
        },
        "apiture:product": {
            "href": "/products/products/1ffbbddc-9ee7-40a6-8b56-33ca8e13cd27"
        },
        "apiture:transactions": {
            "href": "/transactions/history?account=/accounts/accounts/1ffbbddc-9ee7-40a6-8b56-33ca8e13cd27"
        },

        "self": {
            "href": "/accounts/accounts/c06d7a66-14fa-4579-988d-fd615137fc57"
        }
    },
    "_profile": "https://api.apiture.com/schemas/accounts/accounts/v1.0.0/profile.json",
    "accountNumbers": {
        "masked": "*************7523"
    },
    "balance": {
        "available": "231234",
        "currency": "USD",
        "value": "231234"
    },
    "description": "231234",
    "name": "test account for dH",
    "productName": "1 Year CD - APY 1.25%52ffdc51-c55b-4a38-ab11-74caa0e4b806",
    "rate": {
        "type": "apr",
        "value": "0.0"
    },
    "state": "inactive",
    "subtype": "1 Year CD Account",
    "type": "CD"
}

The response above contains the details of the account. To see the full account number, set the unmasked query parameter to true and rerun the operation.

View the transactions for the selected account

In the _links of the response, find the link named apiture:transactions. That link is the list of recent transactions, starting with the most recent transaction history for the account. The link looks something like the following

        "apiture:transactions": {
            "href": "/transactions/history?account=/accounts/accounts/1ffbbddc-9ee7-40a6-8b56-33ca8e13cd27"
        },

The transactions operation accepts a ?account= query parameter which identifies the account: /accounts/accounts/1ffbbddc-9ee7-40a6-8b56-33ca8e13cd27. This is the URL of the selected account in this example. Copy the value of this account URI from the actual API call response above and paste it into the account parameter in the form below. This form invokes the the getHistory operation in the Transactions API to list recent transactions on the selected account.


GET
Request Headers:
Accept:
API-Key:
Authentication:
Query Parameters:
account:


The response is a collection of transactions for the specified account. Click the Try It button to perform this API call.

REST Response

Response Code: 200 OK
Response Headers:
Response Body:

{ .... }

Summary

This tutorial shows how to make authenticated API calls against the Apiture APIs, using an OAuth access token for a sample banking customer.

  • The getAccounts operation in the Accounts API lists all the accounts that the sample user has access to, with links to each account.
  • The getAccount operation in the Accounts API lists the details of a selected account, including its balance and links to related resources, such as transaction history.
  • The getHistory operation in the Transactions API lists the recent transaction history on the selected account.

These and all the other API operations are documented in API Reference.