Products v0.11.0

Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.

Banking products describes product offerings against which bank customers open new accounts. A banking product resource describes the type, label, product code, rates, constraints (limits) and other data about a banking products such as Basic Savings, Premiere Checking, 180 Day CD and other products.

Use listBankingProducts to list the account products offered by the financial institution, and use getBankingProduct to fetch the full details of a specific product.

Download OpenAPI Definition (YAML)

Base URLs:

Terms of service

Email: Apiture Web: Apiture

License: Apiture API License

Authentication

  • API Key (apiKey)
    • header parameter: API-Key
    • API Key based client identification. See details at Secure Access.

Banking Products

Banking Products which describe banking accounts

listBankingProducts

Code samples

# You can also use wget
curl -X GET https://api.apiture.com/banking/bankingProducts \
  -H 'Accept: application/json' \
  -H 'Institution-Id: TIBURON' \
  -H 'API-Key: API_KEY'

GET https://api.apiture.com/banking/bankingProducts HTTP/1.1
Host: api.apiture.com
Accept: application/json
Institution-Id: TIBURON

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Institution-Id':'TIBURON',
  'API-Key':'API_KEY'

};

fetch('https://api.apiture.com/banking/bankingProducts',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

var headers = {
  'Accept':'application/json',
  'Institution-Id':'TIBURON',
  'API-Key':'API_KEY'

};

$.ajax({
  url: 'https://api.apiture.com/banking/bankingProducts',
  method: 'get',

  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json',
  'Institution-Id' => 'TIBURON',
  'API-Key' => 'API_KEY'
}

result = RestClient.get 'https://api.apiture.com/banking/bankingProducts',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json',
  'Institution-Id': 'TIBURON',
  'API-Key': 'API_KEY'
}

r = requests.get('https://api.apiture.com/banking/bankingProducts', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.apiture.com/banking/bankingProducts");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
        "Institution-Id": []string{"TIBURON"},
        "API-Key": []string{"API_KEY"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.apiture.com/banking/bankingProducts", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

Return a collection of banking products

GET https://api.apiture.com/banking/bankingProducts

Return a collection of the financial institution's banking products. The products describe the banking accounts at the institution. Each account is an instance of one banking product.

By default, this operation lists products for the institution associated with the API Key. Use the Institution-Id request header to view the products for another institution allowed by the API key.
The operation listBankingProducts was added on version 0.6.0 of the API.

Parameters

ParameterDescription
type
in: query
array[string]
Filter banking products to those whose type property is in this pipe-delimited list.
unique items
minItems: 1
maxItems: 6
pipe-delimited
items: string
» enum values: savings, checking, cd, ira, loan, creditCard
state
in: query
array[string]
Filter banking products to those whose state property is in this pipe-delimited list.
unique items
minItems: 1
maxItems: 6
pipe-delimited
items: string
» enum values: active, inactive, removed
resolve
in: query
boolean
If false (the default), the raw highlights and secondaryHighlights strings are returned (as unresolved templates) without substituting product properties. If true, the product's properties are replaced by their values in the highlights and secondaryHighlights strings. Use true when fetching products to show the highlights to end users.
default: false
Institution-Id
in: header
institutionId
The unique identifier of the financial institution.
minLength: 2
maxLength: 8
pattern: "^[A-Z0-9_]{2,8}$"

Example responses

200 Response

{
  "items": [
    {
      "id": "3c1fecca79d826f86a6b",
      "type": "cd",
      "customerType": "personal",
      "coreType": "CD",
      "code": "30D_CDA",
      "label": "30 Day CD",
      "description": "30-day Certificate of Deposit account that earns 1.50%"
    },
    {
      "id": "97321f98fece14faa978",
      "type": "cd",
      "customerType": "personal",
      "coreType": "CD",
      "code": "90D_CDA",
      "label": "90 Day CD",
      "description": "90-day Certificate of Deposit account that earns 1.55%"
    },
    {
      "id": "3545997133afaf3dcd30",
      "type": "cd",
      "customerType": "personal",
      "coreType": "CD",
      "code": "180D_CDA",
      "label": "180 Day CD",
      "description": "180-day Certificate of Deposit account that earns 1.60%"
    },
    {
      "id": "37fcd855d7873549584d",
      "type": "savings",
      "customerType": "personal",
      "coreType": "SAV",
      "code": "SAV_01",
      "label": "Basic Savings",
      "description": "Basic savings account that earns 0.15%"
    }
  ]
}

Responses

StatusDescription
200 OK
OK.
Schema: bankingProducts
StatusDescription
400 Bad Request

Bad Request. The request body, request headers, and/or query parameters are not well-formed.

This error response may have one of the following type values:

Schema: Inline
StatusDescription
401 Unauthorized

Unauthorized. The operation requires authentication but no authentication or insufficient authentication was given.

This error response may have one of the following type values:

Schema: Inline
StatusDescription
403 Forbidden

Forbidden. The authenticated caller is not authorized to perform the requested operation.

This error response may have one of the following type values:

Schema: Inline
StatusDescription
422 Unprocessable Entity
Unprocessable Entity. The request body and/or query parameters were well formed but otherwise invalid.
Schema: problemResponse
StatusDescription
429 Too Many Requests

Too Many Requests. The client has sent too many requests in a given amount of time.

This error response may have one of the following type values:

Schema: Inline
StatusDescription
4XX Unknown
Client Request Problem. The client request had a problem not listed under another specific 400-level HTTP response code. View the detail in the problem response for additional details.
Schema: Inline
StatusDescription
5XX Unknown
Server Problem. The server encountered a problem not listed under another specific 500-level HTTP response code. View the detail in the problem response for additional details.
Schema: Inline

Response Schema

Status Code 400

Property Name Description
Problem Response (v0.4.1) object
API problem or error response, as per RFC 9457 application/problem+json.
» type string(uri-reference)
A URI reference (RFC3986) that identifies the problem type. If present, this is the URL of human-readable HTML documentation for the problem type. When this member is not present, its value is assumed to be "about:blank".
maxLength: 2048
» title string(text)
A short, human-readable summary of the problem type. The title is usually the same for all problem with the same type.
maxLength: 120
» status integer(int32)
The HTTP status code for this occurrence of the problem.
minimum: 100
maximum: 599
» detail string(text)
A human-readable explanation specific to this occurrence of the problem.
maxLength: 256
» instance string(uri-reference)
A URI reference that identifies the specific occurrence of the problem. This is the URI of an API resource that the problem is related to, with a unique error correlation ID URI fragment
maxLength: 2048
» id readOnlyResourceId
The unique identifier for this problem. This is an immutable opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]{6,48}$
» occurredAt readOnlyTimestamp(date-time)
The timestamp when the problem occurred, in RFC 3339 date-time YYYY-MM-DDThh:mm:ss.sssZ format, UTC.
minLength: 20
maxLength: 30
» problems array: [apiProblem]
Optional root-causes if there are multiple problems in the request or API call processing.
maxItems: 128
» attributes object
Additional optional attributes related to the problem. This data conforms to the schema associated with the error type.

Status Code 401

Property Name Description
Problem Response (v0.4.1) object
API problem or error response, as per RFC 9457 application/problem+json.
» type string(uri-reference)
A URI reference (RFC3986) that identifies the problem type. If present, this is the URL of human-readable HTML documentation for the problem type. When this member is not present, its value is assumed to be "about:blank".
maxLength: 2048
» title string(text)
A short, human-readable summary of the problem type. The title is usually the same for all problem with the same type.
maxLength: 120
» status integer(int32)
The HTTP status code for this occurrence of the problem.
minimum: 100
maximum: 599
» detail string(text)
A human-readable explanation specific to this occurrence of the problem.
maxLength: 256
» instance string(uri-reference)
A URI reference that identifies the specific occurrence of the problem. This is the URI of an API resource that the problem is related to, with a unique error correlation ID URI fragment
maxLength: 2048
» id readOnlyResourceId
The unique identifier for this problem. This is an immutable opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]{6,48}$
» occurredAt readOnlyTimestamp(date-time)
The timestamp when the problem occurred, in RFC 3339 date-time YYYY-MM-DDThh:mm:ss.sssZ format, UTC.
minLength: 20
maxLength: 30
» problems array: [apiProblem]
Optional root-causes if there are multiple problems in the request or API call processing.
maxItems: 128
» attributes object
Additional optional attributes related to the problem. This data conforms to the schema associated with the error type.

Status Code 403

Property Name Description
Problem Response (v0.4.1) object
API problem or error response, as per RFC 9457 application/problem+json.
» type string(uri-reference)
A URI reference (RFC3986) that identifies the problem type. If present, this is the URL of human-readable HTML documentation for the problem type. When this member is not present, its value is assumed to be "about:blank".
maxLength: 2048
» title string(text)
A short, human-readable summary of the problem type. The title is usually the same for all problem with the same type.
maxLength: 120
» status integer(int32)
The HTTP status code for this occurrence of the problem.
minimum: 100
maximum: 599
» detail string(text)
A human-readable explanation specific to this occurrence of the problem.
maxLength: 256
» instance string(uri-reference)
A URI reference that identifies the specific occurrence of the problem. This is the URI of an API resource that the problem is related to, with a unique error correlation ID URI fragment
maxLength: 2048
» id readOnlyResourceId
The unique identifier for this problem. This is an immutable opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]{6,48}$
» occurredAt readOnlyTimestamp(date-time)
The timestamp when the problem occurred, in RFC 3339 date-time YYYY-MM-DDThh:mm:ss.sssZ format, UTC.
minLength: 20
maxLength: 30
» problems array: [apiProblem]
Optional root-causes if there are multiple problems in the request or API call processing.
maxItems: 128
» attributes object
Additional optional attributes related to the problem. This data conforms to the schema associated with the error type.

Status Code 429

Property Name Description
Problem Response (v0.4.1) object
API problem or error response, as per RFC 9457 application/problem+json.
» type string(uri-reference)
A URI reference (RFC3986) that identifies the problem type. If present, this is the URL of human-readable HTML documentation for the problem type. When this member is not present, its value is assumed to be "about:blank".
maxLength: 2048
» title string(text)
A short, human-readable summary of the problem type. The title is usually the same for all problem with the same type.
maxLength: 120
» status integer(int32)
The HTTP status code for this occurrence of the problem.
minimum: 100
maximum: 599
» detail string(text)
A human-readable explanation specific to this occurrence of the problem.
maxLength: 256
» instance string(uri-reference)
A URI reference that identifies the specific occurrence of the problem. This is the URI of an API resource that the problem is related to, with a unique error correlation ID URI fragment
maxLength: 2048
» id readOnlyResourceId
The unique identifier for this problem. This is an immutable opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]{6,48}$
» occurredAt readOnlyTimestamp(date-time)
The timestamp when the problem occurred, in RFC 3339 date-time YYYY-MM-DDThh:mm:ss.sssZ format, UTC.
minLength: 20
maxLength: 30
» problems array: [apiProblem]
Optional root-causes if there are multiple problems in the request or API call processing.
maxItems: 128
» attributes object
Additional optional attributes related to the problem. This data conforms to the schema associated with the error type.

Status Code 4XX

Property Name Description
Problem Response (v0.4.1) object
API problem or error response, as per RFC 9457 application/problem+json.
» type string(uri-reference)
A URI reference (RFC3986) that identifies the problem type. If present, this is the URL of human-readable HTML documentation for the problem type. When this member is not present, its value is assumed to be "about:blank".
maxLength: 2048
» title string(text)
A short, human-readable summary of the problem type. The title is usually the same for all problem with the same type.
maxLength: 120
» status integer(int32)
The HTTP status code for this occurrence of the problem.
minimum: 100
maximum: 599
» detail string(text)
A human-readable explanation specific to this occurrence of the problem.
maxLength: 256
» instance string(uri-reference)
A URI reference that identifies the specific occurrence of the problem. This is the URI of an API resource that the problem is related to, with a unique error correlation ID URI fragment
maxLength: 2048
» id readOnlyResourceId
The unique identifier for this problem. This is an immutable opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]{6,48}$
» occurredAt readOnlyTimestamp(date-time)
The timestamp when the problem occurred, in RFC 3339 date-time YYYY-MM-DDThh:mm:ss.sssZ format, UTC.
minLength: 20
maxLength: 30
» problems array: [apiProblem]
Optional root-causes if there are multiple problems in the request or API call processing.
maxItems: 128
» attributes object
Additional optional attributes related to the problem. This data conforms to the schema associated with the error type.

Status Code 5XX

Property Name Description
Problem Response (v0.4.1) object
API problem or error response, as per RFC 9457 application/problem+json.
» type string(uri-reference)
A URI reference (RFC3986) that identifies the problem type. If present, this is the URL of human-readable HTML documentation for the problem type. When this member is not present, its value is assumed to be "about:blank".
maxLength: 2048
» title string(text)
A short, human-readable summary of the problem type. The title is usually the same for all problem with the same type.
maxLength: 120
» status integer(int32)
The HTTP status code for this occurrence of the problem.
minimum: 100
maximum: 599
» detail string(text)
A human-readable explanation specific to this occurrence of the problem.
maxLength: 256
» instance string(uri-reference)
A URI reference that identifies the specific occurrence of the problem. This is the URI of an API resource that the problem is related to, with a unique error correlation ID URI fragment
maxLength: 2048
» id readOnlyResourceId
The unique identifier for this problem. This is an immutable opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]{6,48}$
» occurredAt readOnlyTimestamp(date-time)
The timestamp when the problem occurred, in RFC 3339 date-time YYYY-MM-DDThh:mm:ss.sssZ format, UTC.
minLength: 20
maxLength: 30
» problems array: [apiProblem]
Optional root-causes if there are multiple problems in the request or API call processing.
maxItems: 128
» attributes object
Additional optional attributes related to the problem. This data conforms to the schema associated with the error type.

getBankingProduct

Code samples

# You can also use wget
curl -X GET https://api.apiture.com/banking/bankingProducts/{productIdOrCode} \
  -H 'Accept: application/json' \
  -H 'If-None-Match: string' \
  -H 'Institution-Id: TIBURON' \
  -H 'API-Key: API_KEY'

GET https://api.apiture.com/banking/bankingProducts/{productIdOrCode} HTTP/1.1
Host: api.apiture.com
Accept: application/json
If-None-Match: string
Institution-Id: TIBURON

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'If-None-Match':'string',
  'Institution-Id':'TIBURON',
  'API-Key':'API_KEY'

};

fetch('https://api.apiture.com/banking/bankingProducts/{productIdOrCode}',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

var headers = {
  'Accept':'application/json',
  'If-None-Match':'string',
  'Institution-Id':'TIBURON',
  'API-Key':'API_KEY'

};

$.ajax({
  url: 'https://api.apiture.com/banking/bankingProducts/{productIdOrCode}',
  method: 'get',

  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json',
  'If-None-Match' => 'string',
  'Institution-Id' => 'TIBURON',
  'API-Key' => 'API_KEY'
}

result = RestClient.get 'https://api.apiture.com/banking/bankingProducts/{productIdOrCode}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json',
  'If-None-Match': 'string',
  'Institution-Id': 'TIBURON',
  'API-Key': 'API_KEY'
}

r = requests.get('https://api.apiture.com/banking/bankingProducts/{productIdOrCode}', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.apiture.com/banking/bankingProducts/{productIdOrCode}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
        "If-None-Match": []string{"string"},
        "Institution-Id": []string{"TIBURON"},
        "API-Key": []string{"API_KEY"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.apiture.com/banking/bankingProducts/{productIdOrCode}", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

Fetch a banking product

GET https://api.apiture.com/banking/bankingProducts/{productIdOrCode}

Return the JSON representation of this banking product. This response contains additional detail not present in the listBankingProducts response, such as the account currency, rates, and links to the product's terms and conditions.

By default, this operation lists products for the institution associated with the API Key. Use the Institution-Id request header to view a product for another institution allowed by the API key.
The operation getBankingProduct was added on version 0.6.0 of the API.

Parameters

ParameterDescription
resolve
in: query
boolean
If false (the default), the raw highlights and secondaryHighlights strings are returned (as unresolved templates) without substituting product properties. If true, the product's properties are replaced by their values in the highlights and secondaryHighlights strings. Use true when fetching products to show the highlights to end users.
default: false
If-None-Match
in: header
string
The entity tag that was returned in the ETag response header of a previous call. If the resource's current entity tag value matches this header value, the GET will return 304 (Not Modified) and no response body, else the current resource representation and updated ETag is returned.
maxLength: 512
pattern: "^\\P{Cc}{1,512}$"
Institution-Id
in: header
institutionId
The unique identifier of the financial institution.
minLength: 2
maxLength: 8
pattern: "^[A-Z0-9_]{2,8}$"
productIdOrCode
in: path
string(text) (required)
Identifies which banking product to return. This path parameter is either the id or the code from a bankingProductItem from the listBankingProducts response.
format: text
minLength: 1
maxLength: 48

Example responses

200 Response

{
  "type": "cd",
  "coreType": "CD",
  "code": "180D_CDA",
  "label": "180 Day CD",
  "description": "Certificate of Deposit with a 180 day term",
  "id": "0399abed-fd3d",
  "customerType": "personal",
  "currency": "USD",
  "constraints": {
    "minimumBalance": "500.00",
    "minimumFundingAmount": "500.00",
    "maximumFundingAmount": "25000.00",
    "minimumTransferAmount": "10.00",
    "maximumTransferAmount": "25000.00",
    "maximumWithdrawalCount": 6,
    "fundingTerm": "P30D"
  },
  "cd": {
    "minimumTerm": "P180D",
    "maximumTerm": "P180D",
    "depositsRestrictedAfterGracePeriod": true,
    "depositsRestrictedAfterFunding": true,
    "debitGracePeriod": "P14D",
    "depositGracePeriod": "P14D"
  },
  "rates": {
    "apr": "1.40",
    "apy": "1.44",
    "compoundPeriod": "P1D",
    "accrualType": "compounding"
  },
  "primaryHighlights": [
    "High APY of {depositRates.apy}%",
    "No monthly fees if minimum balance of ${constraints.minimumBalance} is maintained."
  ],
  "secondaryHighlights": [
    "Optional electronic delivery of monthly statements"
  ],
  "documents": [
    {
      "id": "86aac4ee-b695",
      "type": "termsAndConditions",
      "title": "Terms and Conditions for 180 Day CD Accounts",
      "contentType": "application/pdf",
      "url": "http://cdn.apiture.com/TCF/product-documents/P003CD180/termsAndConditions-2023-05.pdf"
    },
    {
      "id": "abd5ef6b-3c44",
      "type": "electronicConsent",
      "title": "Tiburon Community Financial Electronic Consent",
      "contentType": "text/html",
      "url": "http://cdn.apiture.com/TCF/product-documents/termsAndConditions-2023-05.html"
    },
    {
      "id": "598e24f9-2763",
      "type": "other",
      "title": "Tiburon Community Financial Bank Depositor Agreement",
      "contentType": "application/pdf",
      "url": "http://cdn.apiture.com/TCF/product-documents/bank-depositor-agreement-2023-05.pdf"
    }
  ]
}

Responses

StatusDescription
200 OK
OK.
Schema: bankingProduct
HeaderETag
string
The ETag response header specifies an entity tag which may be provided in an If-Match request header for PUT or PATCH operations which update this product resource.
StatusDescription
304 Not Modified
Not Modified. The resource has not been modified since it was last fetched.
StatusDescription
401 Unauthorized

Unauthorized. The operation requires authentication but no authentication or insufficient authentication was given.

This error response may have one of the following type values:

Schema: Inline
StatusDescription
403 Forbidden

Forbidden. The authenticated caller is not authorized to perform the requested operation.

This error response may have one of the following type values:

Schema: Inline
StatusDescription
404 Not Found
Not Found. There is no such product resource at the specified {bankingProductId}.
Schema: problemResponse
StatusDescription
429 Too Many Requests

Too Many Requests. The client has sent too many requests in a given amount of time.

This error response may have one of the following type values:

Schema: Inline
StatusDescription
4XX Unknown
Client Request Problem. The client request had a problem not listed under another specific 400-level HTTP response code. View the detail in the problem response for additional details.
Schema: Inline
StatusDescription
5XX Unknown
Server Problem. The server encountered a problem not listed under another specific 500-level HTTP response code. View the detail in the problem response for additional details.
Schema: Inline

Response Schema

Status Code 401

Property Name Description
Problem Response (v0.4.1) object
API problem or error response, as per RFC 9457 application/problem+json.
» type string(uri-reference)
A URI reference (RFC3986) that identifies the problem type. If present, this is the URL of human-readable HTML documentation for the problem type. When this member is not present, its value is assumed to be "about:blank".
maxLength: 2048
» title string(text)
A short, human-readable summary of the problem type. The title is usually the same for all problem with the same type.
maxLength: 120
» status integer(int32)
The HTTP status code for this occurrence of the problem.
minimum: 100
maximum: 599
» detail string(text)
A human-readable explanation specific to this occurrence of the problem.
maxLength: 256
» instance string(uri-reference)
A URI reference that identifies the specific occurrence of the problem. This is the URI of an API resource that the problem is related to, with a unique error correlation ID URI fragment
maxLength: 2048
» id readOnlyResourceId
The unique identifier for this problem. This is an immutable opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]{6,48}$
» occurredAt readOnlyTimestamp(date-time)
The timestamp when the problem occurred, in RFC 3339 date-time YYYY-MM-DDThh:mm:ss.sssZ format, UTC.
minLength: 20
maxLength: 30
» problems array: [apiProblem]
Optional root-causes if there are multiple problems in the request or API call processing.
maxItems: 128
» attributes object
Additional optional attributes related to the problem. This data conforms to the schema associated with the error type.

Status Code 403

Property Name Description
Problem Response (v0.4.1) object
API problem or error response, as per RFC 9457 application/problem+json.
» type string(uri-reference)
A URI reference (RFC3986) that identifies the problem type. If present, this is the URL of human-readable HTML documentation for the problem type. When this member is not present, its value is assumed to be "about:blank".
maxLength: 2048
» title string(text)
A short, human-readable summary of the problem type. The title is usually the same for all problem with the same type.
maxLength: 120
» status integer(int32)
The HTTP status code for this occurrence of the problem.
minimum: 100
maximum: 599
» detail string(text)
A human-readable explanation specific to this occurrence of the problem.
maxLength: 256
» instance string(uri-reference)
A URI reference that identifies the specific occurrence of the problem. This is the URI of an API resource that the problem is related to, with a unique error correlation ID URI fragment
maxLength: 2048
» id readOnlyResourceId
The unique identifier for this problem. This is an immutable opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]{6,48}$
» occurredAt readOnlyTimestamp(date-time)
The timestamp when the problem occurred, in RFC 3339 date-time YYYY-MM-DDThh:mm:ss.sssZ format, UTC.
minLength: 20
maxLength: 30
» problems array: [apiProblem]
Optional root-causes if there are multiple problems in the request or API call processing.
maxItems: 128
» attributes object
Additional optional attributes related to the problem. This data conforms to the schema associated with the error type.

Status Code 429

Property Name Description
Problem Response (v0.4.1) object
API problem or error response, as per RFC 9457 application/problem+json.
» type string(uri-reference)
A URI reference (RFC3986) that identifies the problem type. If present, this is the URL of human-readable HTML documentation for the problem type. When this member is not present, its value is assumed to be "about:blank".
maxLength: 2048
» title string(text)
A short, human-readable summary of the problem type. The title is usually the same for all problem with the same type.
maxLength: 120
» status integer(int32)
The HTTP status code for this occurrence of the problem.
minimum: 100
maximum: 599
» detail string(text)
A human-readable explanation specific to this occurrence of the problem.
maxLength: 256
» instance string(uri-reference)
A URI reference that identifies the specific occurrence of the problem. This is the URI of an API resource that the problem is related to, with a unique error correlation ID URI fragment
maxLength: 2048
» id readOnlyResourceId
The unique identifier for this problem. This is an immutable opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]{6,48}$
» occurredAt readOnlyTimestamp(date-time)
The timestamp when the problem occurred, in RFC 3339 date-time YYYY-MM-DDThh:mm:ss.sssZ format, UTC.
minLength: 20
maxLength: 30
» problems array: [apiProblem]
Optional root-causes if there are multiple problems in the request or API call processing.
maxItems: 128
» attributes object
Additional optional attributes related to the problem. This data conforms to the schema associated with the error type.

Status Code 4XX

Property Name Description
Problem Response (v0.4.1) object
API problem or error response, as per RFC 9457 application/problem+json.
» type string(uri-reference)
A URI reference (RFC3986) that identifies the problem type. If present, this is the URL of human-readable HTML documentation for the problem type. When this member is not present, its value is assumed to be "about:blank".
maxLength: 2048
» title string(text)
A short, human-readable summary of the problem type. The title is usually the same for all problem with the same type.
maxLength: 120
» status integer(int32)
The HTTP status code for this occurrence of the problem.
minimum: 100
maximum: 599
» detail string(text)
A human-readable explanation specific to this occurrence of the problem.
maxLength: 256
» instance string(uri-reference)
A URI reference that identifies the specific occurrence of the problem. This is the URI of an API resource that the problem is related to, with a unique error correlation ID URI fragment
maxLength: 2048
» id readOnlyResourceId
The unique identifier for this problem. This is an immutable opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]{6,48}$
» occurredAt readOnlyTimestamp(date-time)
The timestamp when the problem occurred, in RFC 3339 date-time YYYY-MM-DDThh:mm:ss.sssZ format, UTC.
minLength: 20
maxLength: 30
» problems array: [apiProblem]
Optional root-causes if there are multiple problems in the request or API call processing.
maxItems: 128
» attributes object
Additional optional attributes related to the problem. This data conforms to the schema associated with the error type.

Status Code 5XX

Property Name Description
Problem Response (v0.4.1) object
API problem or error response, as per RFC 9457 application/problem+json.
» type string(uri-reference)
A URI reference (RFC3986) that identifies the problem type. If present, this is the URL of human-readable HTML documentation for the problem type. When this member is not present, its value is assumed to be "about:blank".
maxLength: 2048
» title string(text)
A short, human-readable summary of the problem type. The title is usually the same for all problem with the same type.
maxLength: 120
» status integer(int32)
The HTTP status code for this occurrence of the problem.
minimum: 100
maximum: 599
» detail string(text)
A human-readable explanation specific to this occurrence of the problem.
maxLength: 256
» instance string(uri-reference)
A URI reference that identifies the specific occurrence of the problem. This is the URI of an API resource that the problem is related to, with a unique error correlation ID URI fragment
maxLength: 2048
» id readOnlyResourceId
The unique identifier for this problem. This is an immutable opaque string.
minLength: 6
maxLength: 48
pattern: ^[-_:.~$a-zA-Z0-9]{6,48}$
» occurredAt readOnlyTimestamp(date-time)
The timestamp when the problem occurred, in RFC 3339 date-time YYYY-MM-DDThh:mm:ss.sssZ format, UTC.
minLength: 20
maxLength: 30
» problems array: [apiProblem]
Optional root-causes if there are multiple problems in the request or API call processing.
maxItems: 128
» attributes object
Additional optional attributes related to the problem. This data conforms to the schema associated with the error type.

Schemas

apiProblem

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/accountNotFound/v1.0.0",
  "title": "Account Not Found",
  "status": 422,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "No account exists at the given account_url",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

API Problem (v1.2.1)

API problem or error, as per RFC 7807 application/problem+json.

Properties

NameDescription
API Problem (v1.2.1) object
API problem or error, as per RFC 7807 application/problem+json.
type string(uri-reference)
A URI reference (RFC3986) that identifies the problem type. If present, this is the URL of human-readable HTML documentation for the problem type. When this member is not present, its value is assumed to be "about:blank".
format: uri-reference
maxLength: 2048
title string(text)
A short, human-readable summary of the problem type. The title is usually the same for all problem with the same type.
format: text
maxLength: 120
status integer(int32)
The HTTP status code for this occurrence of the problem.
format: int32
minimum: 100
maximum: 599
detail string(text)
A human-readable explanation specific to this occurrence of the problem.
format: text
maxLength: 256
instance string(uri-reference)
A URI reference that identifies the specific occurrence of the problem. This is the URI of an API resource that the problem is related to, with a unique error correlation ID URI fragment
format: uri-reference
maxLength: 2048
id readOnlyResourceId
The unique identifier for this problem. This is an immutable opaque string.
read-only
minLength: 6
maxLength: 48
pattern: "^[-_:.~$a-zA-Z0-9]{6,48}$"
occurredAt readOnlyTimestamp(date-time)
The timestamp when the problem occurred, in RFC 3339 date-time YYYY-MM-DDThh:mm:ss.sssZ format, UTC.
read-only
format: date-time
minLength: 20
maxLength: 30
problems array: [apiProblem]
Optional root-causes if there are multiple problems in the request or API call processing.
maxItems: 128
items: object

bankingDisclosureDocumentType

"termsAndConditions"

Banking Disclosure Document Type (v1.2.0)

The type of disclosure document.

bankingDisclosureDocumentType strings may have one of the following enumerated values:

ValueDescription
termsAndConditionsTerms and Conditions:

Terms and conditions for a banking account

termsAndConditionsSupplementSupplement to Terms and Conditions:

A supplement or addendum to the terms and conditions for a banking account

attestationAttestation:

Personal attestation that all supplied information is truthful and correct

electronicConsentElectronic Consent:

Consent to use electronic communications between the financial institution and the banking customer

privacyDocumentPrivacy Document:

How the financial institution protects the customer's privacy. Deprecated. Use privacyPolicy instead.

privacyPolicyPrivacy Policy:

Policy describing how the financial institution protects the customer's privacy.

digitalBankingAgreementDigital Banking Agreement:

Consent for usage of digital banking between the financial institution and the banking customer

otherOther:

Another document type

type: string


enum values: termsAndConditions, termsAndConditionsSupplement, electronicConsent, digitalBankingAgreement, privacyDocument, privacyPolicy, attestation, other

bankingProduct

{
  "type": "cd",
  "coreType": "CD",
  "code": "180D_CDA",
  "label": "180 Day CD",
  "description": "Certificate of Deposit with a 180 day term",
  "id": "0399abed-fd3d",
  "customerType": "personal",
  "currency": "USD",
  "constraints": {
    "minimumBalance": "500.00",
    "minimumFundingAmount": "500.00",
    "maximumFundingAmount": "25000.00",
    "minimumTransferAmount": "10.00",
    "maximumTransferAmount": "25000.00",
    "maximumWithdrawalCount": 6,
    "fundingTerm": "P30D"
  },
  "cd": {
    "minimumTerm": "P180D",
    "maximumTerm": "P180D",
    "depositsRestrictedAfterGracePeriod": true,
    "depositsRestrictedAfterFunding": true,
    "debitGracePeriod": "P14D",
    "depositGracePeriod": "P14D"
  },
  "rates": {
    "apr": "1.40",
    "apy": "1.44",
    "compoundPeriod": "P1D",
    "accrualType": "compounding"
  },
  "primaryHighlights": [
    "High APY of {depositRates.apy}%",
    "No monthly fees if minimum balance of ${constraints.minimumBalance} is maintained."
  ],
  "secondaryHighlights": [
    "Optional electronic delivery of monthly statements"
  ],
  "documents": [
    {
      "id": "86aac4ee-b695",
      "type": "termsAndConditions",
      "title": "Terms and Conditions for 180 Day CD Accounts",
      "contentType": "application/pdf",
      "url": "http://cdn.apiture.com/TCF/product-documents/P003CD180/termsAndConditions-2023-05.pdf"
    },
    {
      "id": "abd5ef6b-3c44",
      "type": "electronicConsent",
      "title": "Tiburon Community Financial Electronic Consent",
      "contentType": "text/html",
      "url": "http://cdn.apiture.com/TCF/product-documents/termsAndConditions-2023-05.html"
    },
    {
      "id": "598e24f9-2763",
      "type": "other",
      "title": "Tiburon Community Financial Bank Depositor Agreement",
      "contentType": "application/pdf",
      "url": "http://cdn.apiture.com/TCF/product-documents/bank-depositor-agreement-2023-05.pdf"
    }
  ]
}

Banking Product (v2.1.0)

Representation of a banking product resource.

Properties

NameDescription
Banking Product (v2.1.0) object
Representation of a banking product resource.
type productType (required)
The type of account.
enum values: savings, checking, cd, ira, loan, creditCard
coreType string (required)
The account product type in the banking core. For example, some cores may use "D" for a demand deposit (checking) account, some may use "DDA".
minLength: 1
maxLength: 4
pattern: "^[A-Z0-9]{1,4}$"
code string(text) (required)
The product's product code which uniquely identifies the product from other banking products. Codes are unique to the financial institution. For example, different products with the same type and the same coreType but different rates or other properties have different product codes, such as CD3M, DDA_HI_YLD, P3207.
format: text
minLength: 1
maxLength: 16
label string(text) (required)
A human-readable label for this banking product.
format: text
minLength: 2
maxLength: 48
description string(markdown)
A human-readable description of this banking product.
format: markdown
minLength: 2
maxLength: 400
customerType productCustomerType (required)
Describes the target audience or consumer of the accounts, personal or business. Labels and descriptions for the enumeration values are in the productTarget key in the response of the getLabels operation.
enum values: personal, business, both
id readOnlyResourceId (required)
The unique identifier for this product resource. This is an immutable opaque string.
read-only
minLength: 6
maxLength: 48
pattern: "^[-_:.~$a-zA-Z0-9]{6,48}$"
currency currencyCode(text) (required)
The ISO 4217 currency code for accounts based on this product.
format: text
minLength: 3
maxLength: 3
pattern: "^[A-Z]{3}$"
primaryHighlights array: [string]
A list of descriptive strings which highlight attributes of the product, to be presented to the end users in the product details. The strings may include these product property references:

  • {depositRates.apy}
  • {depositRates.apr}
  • {depositRates.accrualType}

Note: The corresponding values are inserted into these primaryHighlights and secondaryHighlights strings only when the ?resolve=true option is used on the getBankingProduct call.
maxItems: 16
items: string(text)
» format: text
» maxLength: 512

secondaryHighlights array: [string]
A list of descriptive strings which highlight secondary attributes of the product, to be presented to the end users in the product details. The strings may include these product property as described for primaryHighlights.
maxItems: 16
items: string(template)
» format: template
» maxLength: 512
constraints productConstraints (required)
Constraints on banking accounts based on this banking product, such as minimum and maximum balances. All properties are optional. If a property is not present, that constraint does not apply to accounts.
rates productInterestRates
The interest rates for this product, if this is a loan product.
cd cdBankingProduct
Properties of CD banking products. This property is present only if type is cd.
documents array: [bankingProductDocument]
A list of documents related to the banking product, such as the product terms and conditions and other disclosures.
maxItems: 100
items: object

bankingProductDocument

{
  "id": "86aac4ee-b695",
  "type": "termsAndConditions",
  "title": "Terms and Conditions for 180 Day CD Accounts",
  "contentType": "application/pdf",
  "url": "http://cdn.apiture.com/TCF/product-documents/P003CD180/termsAndConditions-2023-05.pdf"
}

Banking Product Document (v2.1.0)

A document associated with a banking product offered by a financial institution.

Properties

NameDescription
Banking Product Document (v2.1.0) object
A document associated with a banking product offered by a financial institution.
id readOnlyResourceId (required)
The identifier of this disclosure document resource. This is an opaque string.
read-only
minLength: 6
maxLength: 48
pattern: "^[-_:.~$a-zA-Z0-9]{6,48}$"
type bankingDisclosureDocumentType (required)
The document type.
enum values: termsAndConditions, termsAndConditionsSupplement, electronicConsent, digitalBankingAgreement, privacyDocument, privacyPolicy, attestation, other
title string(text) (required)
The human-readable title for this document.
format: text
minLength: 4
maxLength: 128
contentType contentType (required)
The media type of this document.
minLength: 8
maxLength: 191
pattern: "^[-a-z0-9]{4,48}\\/[-+a-z0-9.]{3,142}$"
url string(uri) (required)
The URL where the document is located. This must be publicly accessible without authentication.
format: uri
maxLength: 128

bankingProductFields

{
  "type": "cd",
  "coreType": "CD",
  "code": "180D_CDA",
  "label": "180 Day CD",
  "description": "Certificate of Deposit with a 180 day term"
}

Banking Product Fields (v1.1.1)

Common fields of the product resource used to build other model schemas.

Properties

NameDescription
Banking Product Fields (v1.1.1) object
Common fields of the product resource used to build other model schemas.
type productType (required)
The type of account.
enum values: savings, checking, cd, ira, loan, creditCard
coreType string (required)
The account product type in the banking core. For example, some cores may use "D" for a demand deposit (checking) account, some may use "DDA".
minLength: 1
maxLength: 4
pattern: "^[A-Z0-9]{1,4}$"
code string(text) (required)
The product's product code which uniquely identifies the product from other banking products. Codes are unique to the financial institution. For example, different products with the same type and the same coreType but different rates or other properties have different product codes, such as CD3M, DDA_HI_YLD, P3207.
format: text
minLength: 1
maxLength: 16
label string(text) (required)
A human-readable label for this banking product.
format: text
minLength: 2
maxLength: 48
description string(markdown)
A human-readable description of this banking product.
format: markdown
minLength: 2
maxLength: 400
customerType productCustomerType
Describes the target audience or consumer of the accounts, personal or business. Labels and descriptions for the enumeration values are in the productTarget key in the response of the getLabels operation.
enum values: personal, business, both

bankingProductItem

{
  "type": "cd",
  "coreType": "CD",
  "code": "180D_CDA",
  "label": "180 Day CD",
  "description": "180-day Certificate of Deposit account that earns 1.60%",
  "id": "9d8f45ef9be307e1405d",
  "customerType": "personal"
}

Product Item (v1.1.1)

Summary representation of a product resource in products collections. To fetch the full representation of this product, use the getBankingProduct operation, passing this item's id field as the bankingProductId path parameter.

Properties

NameDescription
Product Item (v1.1.1) object
Summary representation of a product resource in products collections. To fetch the full representation of this product, use the getBankingProduct operation, passing this item's id field as the bankingProductId path parameter.
type productType (required)
The type of account.
enum values: savings, checking, cd, ira, loan, creditCard
coreType string (required)
The account product type in the banking core. For example, some cores may use "D" for a demand deposit (checking) account, some may use "DDA".
minLength: 1
maxLength: 4
pattern: "^[A-Z0-9]{1,4}$"
code string(text) (required)
The product's product code which uniquely identifies the product from other banking products. Codes are unique to the financial institution. For example, different products with the same type and the same coreType but different rates or other properties have different product codes, such as CD3M, DDA_HI_YLD, P3207.
format: text
minLength: 1
maxLength: 16
label string(text) (required)
A human-readable label for this banking product.
format: text
minLength: 2
maxLength: 48
description string(markdown)
A human-readable description of this banking product.
format: markdown
minLength: 2
maxLength: 400
customerType productCustomerType (required)
Describes the target audience or consumer of the accounts, personal or business. Labels and descriptions for the enumeration values are in the productTarget key in the response of the getLabels operation.
enum values: personal, business, both
id readOnlyResourceId (required)
The unique identifier for this product resource. This is an immutable opaque string.
read-only
minLength: 6
maxLength: 48
pattern: "^[-_:.~$a-zA-Z0-9]{6,48}$"

bankingProducts

{
  "items": [
    {
      "id": "3c1fecca79d826f86a6b",
      "type": "cd",
      "customerType": "personal",
      "coreType": "CD",
      "code": "30D_CDA",
      "label": "30 Day CD",
      "description": "30-day Certificate of Deposit account that earns 1.50%"
    },
    {
      "id": "97321f98fece14faa978",
      "type": "cd",
      "customerType": "personal",
      "coreType": "CD",
      "code": "90D_CDA",
      "label": "90 Day CD",
      "description": "90-day Certificate of Deposit account that earns 1.55%"
    },
    {
      "id": "3545997133afaf3dcd30",
      "type": "cd",
      "customerType": "personal",
      "coreType": "CD",
      "code": "180D_CDA",
      "label": "180 Day CD",
      "description": "180-day Certificate of Deposit account that earns 1.60%"
    },
    {
      "id": "37fcd855d7873549584d",
      "type": "savings",
      "customerType": "personal",
      "coreType": "SAV",
      "code": "SAV_01",
      "label": "Basic Savings",
      "description": "Basic savings account that earns 0.15%"
    }
  ]
}

Banking Product Collection (v1.1.1)

Collection of banking products offered by the financial institution.

Properties

NameDescription
Banking Product Collection (v1.1.1) object
Collection of banking products offered by the financial institution.
items array: [bankingProductItem] (required)
An array containing the banking product items.
maxItems: 10000
items: object

cdBankingProduct

{
  "minimumTerm": "P6M",
  "maximumTerm": "P6M",
  "depositsRestrictedAfterGracePeriod": true,
  "depositsRestrictedAfterFunding": true,
  "depositGracePeriod": "P14D",
  "debitGracePeriod": "P14D"
}

CD Banking Product (v1.0.0)

Describes a banking product for Certificate of Deposit (CD) accounts.

Properties

NameDescription
CD Banking Product (v1.0.0) object
Describes a banking product for Certificate of Deposit (CD) accounts.
minimumTerm string(duration) (required)
The minimum maturity term offered by this product, for products such as certificates of deposits. See also maximumTerm. For example, some CD products may be opened with a flexible term such as 31 to 181 days, expressed as minimumTerm: P31D, maximumTerm: P181D. For fixed-term products, minimumTerm and maximumTerm are the same.

This value is an ISO 8601 duration string of the form P[n]Y[n]M[n]D to specify the term in the number of years/months/days. For example, the values P30D, P6M, P2Y indicate a term of 30 days, six months, and two years, respectively.
format: duration
minLength: 3
maxLength: 6

maximumTerm string(duration)
The maximum maturity term offered by this product, for products such as certificates of deposits. If omitted, there is no fixed term (not all product types impose a fixed term). For example, some CD products may be opened with a flexible term such as 31 to 181 days, expressed as minimumTerm: P31D, maximumTerm: P181D. For fixed-term products, minimumTerm and maximumTerm are the same.

This value is an ISO 8601 duration string of the form P[n]Y[n]M[n]D to specify the term in the number of years/months/days. For example, the values P30D, P6M, P2Y indicate a term of 30 days, six months, and two years, respectively.
format: duration
minLength: 3
maxLength: 6

depositsRestrictedAfterGracePeriod boolean (required)
If true, deposits are not allowed after the rollover grace period (see depositGracePeriod). This applies to CD products only.
default: true
depositsRestrictedAfterFunding boolean (required)
If true, deposits are not allowed after the initial account funding has completed. This typically applies to CD products.
default: true
depositGracePeriod string(duration) (required)
A period of time after account rollover when additional deposits are allowed. This is an ISO 8601 duration duration. Only day and month periods are allowed, and the only allowed fractional value for months is 0.5, as in P5D or P14D or P1M or P0.5M.
format: duration
maxLength: 6
debitGracePeriod string(duration) (required)
A period of time after account rollover when debits (withdrawals) are allowed. This is an ISO 8601 duration duration. Only day and month periods are allowed, and the only allowed fractional value for months is 0.5, as in P5D or P14D or P1M or P0.5M.
format: duration
maxLength: 6

challengeFactor

{
  "type": "sms",
  "labels": [
    "9876"
  ]
}

Challenge Factor (v1.2.1)

An challenge factor. See requiredIdentityChallenge for multiple examples.

Properties

NameDescription
Challenge Factor (v1.2.1) object
An challenge factor. See requiredIdentityChallenge for multiple examples.
id challengeFactorId
The ID of an a challenge factor. This ID is unique within the challenge factors associated with a challenge. The client should pass this id value as the factorId when starting or verifying a challenge factor.

Note: The id will become required in a future update to this schema.
minLength: 3
maxLength: 48
pattern: "^[-a-zA-Z0-9$_]{3,48}$"

type challengeFactorType (required)

The name of challenge factor.

challengeFactorType strings may have one of the following enumerated values:

ValueDescription
smsSMS:

One-time passcode sent to the primary mobile phone number

emailEmail:

One-time passcode sent to the primary email address

voiceVoice:

One-time passcode communicated via automated voice phone call

authenticatorTokenauthenticator Token:

One-time passcode issued by a pre-registered hardware device, such as a token key fob, or an authenticator app

securityQuestionsSecurity Questions:

Prompt with the user's security questions registered with their security profile


enum values: sms, email, voice, securityQuestions, authenticatorToken
labels array: [string]
A list of text label which identifies the channel(s) through which the user completes the challenge. For an sms or voice challenge, the only label item is the last four digits of the corresponding phone number. For an email challenge, each label is the masked email address.
minItems: 1
maxItems: 4
items: string(text)
» format: text
» maxLength: 300
securityQuestions challengeSecurityQuestions
Describes a securityQuestions challenge. This is omitted if the challenge type is not securityQuestions.

challengeFactorId

"string"

Challenge Factor ID (v1.0.0)

The ID of an a challenge factor. This ID is unique within the factors offered with a challenge.

type: string


minLength: 3
maxLength: 48
pattern: "^[-a-zA-Z0-9$_]{3,48}$"

challengeFactorType

"sms"

Challenge Factor Type (v1.0.0)

The name of challenge factor.

challengeFactorType strings may have one of the following enumerated values:

ValueDescription
smsSMS:

One-time passcode sent to the primary mobile phone number

emailEmail:

One-time passcode sent to the primary email address

voiceVoice:

One-time passcode communicated via automated voice phone call

authenticatorTokenauthenticator Token:

One-time passcode issued by a pre-registered hardware device, such as a token key fob, or an authenticator app

securityQuestionsSecurity Questions:

Prompt with the user's security questions registered with their security profile

type: string


enum values: sms, email, voice, securityQuestions, authenticatorToken

challengeOperationId

"string"

Challenge Operation ID (v1.0.1)

The ID of an operation/action for which the user must verify their identity via an identity challenge. This is passed when starting a challenge factor or when validating the identity challenge responses.

type: string


minLength: 6
maxLength: 48
pattern: "^[-a-zA-Z0-9$_]{6,48}$"

challengePromptId

"string"

Challenge Prompt ID (v1.0.0)

The unique ID of a prompt (such as a security question) in a challenge factor.

type: string


minLength: 1
maxLength: 48
pattern: "^[-_:.~$a-zA-Z0-9]+$"

challengeSecurityQuestion

{
  "id": "74699fa628911e762ea5",
  "prompt": "What is your mother's maiden name?"
}

Challenge Security Question (v1.0.1)

A single security question within the questions array of the challengeSecurityQuestions

Properties

NameDescription
Challenge Security Question (v1.0.1) object
A single security question within the questions array of the challengeSecurityQuestions
id challengePromptId (required)
The unique ID of security question prompt. This should be included in the challengeVerification response as the promptId.
minLength: 1
maxLength: 48
pattern: "^[-_:.~$a-zA-Z0-9]+$"
prompt string(text) (required)
The text prompt of this security question.
format: text
maxLength: 80

challengeSecurityQuestions

{
  "questions": [
    {
      "id": "q1",
      "prompt": "What is your mother's maiden name?"
    },
    {
      "id": "q4",
      "prompt": "What is your high school's name?"
    },
    {
      "id": "q9",
      "prompt": "What is the name of your first pet?"
    }
  ]
}

Challenge Security Questions (v1.0.1)

Describes a securityQuestions challenge. This is omitted if the challenge type is not securityQuestions.

Properties

NameDescription
Challenge Security Questions (v1.0.1) object
Describes a securityQuestions challenge. This is omitted if the challenge type is not securityQuestions.
questions array: [challengeSecurityQuestion] (required)
The array of security questions.
minItems: 1
maxItems: 8
items: object

contentType

"application/pdf"
  • (v1.0.0)*

The media type of a file.

type: string


minLength: 8
maxLength: 191
pattern: "^[-a-z0-9]{4,48}\/[-+a-z0-9.]{3,142}$"

currencyCode

"str"
  • (v1.0.0)*

A ISO 4217 currency code This is always upper case ASCII. Crypto currencies with codes longer that 3 characters are not supported.

type: string(text)


format: text
minLength: 3
maxLength: 3
pattern: "^[A-Z]{3}$"

institutionId

"TIBURON"

Institution ID (v1.1.0)

The unique immutable identifier of a financial institution.

type: string


minLength: 2
maxLength: 8
pattern: "^[A-Z0-9_]{2,8}$"

monetaryValue

"3456.78"

Monetary Value (v1.1.0)

The monetary value, supporting only positive amounts. The numeric value is represented as a string so that it can be exact with no loss of precision.

type: string


maxLength: 16
pattern: "^(0|[1-9][0-9]*)\.[0-9][0-9]$"

problemResponse

{
  "id": "3fbad566-be86-4b22-9ba6-3ca99fdc0799",
  "type": "https://production.api.apiture.com/errors/noSuchAccount/v1.0.0",
  "title": "Account Not Found",
  "status": 422,
  "occurredAt": "2022-04-25T12:42:21.375Z",
  "detail": "No account exists for the given account reference",
  "instance": "https://production.api.apiture.com/banking/transfers/bb709151-575041fcd617"
}

Problem Response (v0.4.1)

API problem or error response, as per RFC 9457 application/problem+json.

Properties

NameDescription
Problem Response (v0.4.1) object
API problem or error response, as per RFC 9457 application/problem+json.
type string(uri-reference)
A URI reference (RFC3986) that identifies the problem type. If present, this is the URL of human-readable HTML documentation for the problem type. When this member is not present, its value is assumed to be "about:blank".
format: uri-reference
maxLength: 2048
title string(text)
A short, human-readable summary of the problem type. The title is usually the same for all problem with the same type.
format: text
maxLength: 120
status integer(int32)
The HTTP status code for this occurrence of the problem.
format: int32
minimum: 100
maximum: 599
detail string(text)
A human-readable explanation specific to this occurrence of the problem.
format: text
maxLength: 256
instance string(uri-reference)
A URI reference that identifies the specific occurrence of the problem. This is the URI of an API resource that the problem is related to, with a unique error correlation ID URI fragment
format: uri-reference
maxLength: 2048
id readOnlyResourceId
The unique identifier for this problem. This is an immutable opaque string.
read-only
minLength: 6
maxLength: 48
pattern: "^[-_:.~$a-zA-Z0-9]{6,48}$"
occurredAt readOnlyTimestamp(date-time)
The timestamp when the problem occurred, in RFC 3339 date-time YYYY-MM-DDThh:mm:ss.sssZ format, UTC.
read-only
format: date-time
minLength: 20
maxLength: 30
problems array: [apiProblem]
Optional root-causes if there are multiple problems in the request or API call processing.
maxItems: 128
items: object
attributes object
Additional optional attributes related to the problem. This data conforms to the schema associated with the error type.

productAccrualType

"compounding"

Accrual Type (v1.0.0)

Indicates how interest is accrued according to the compoundPeriod.

productAccrualType strings may have one of the following enumerated values:

ValueDescription
compoundingCompounding interest
simpleSimple interest

type: string


enum values: compounding, simple

productConstraints

{
  "minimumBalance": "500.00",
  "minimumFundingAmount": "500.00",
  "maximumFundingAmount": "25000.00",
  "minimumTransferAmount": "10.00",
  "maximumTransferAmount": "25000.00",
  "maximumWithdrawalCount": 6,
  "fundingTerm": "P30D"
}

Product Constraints (v1.0.0)

Constraints on banking accounts based on this banking product, such as minimum and maximum balances. All properties are optional. If a property is not present, that constraint does not apply to accounts.

Properties

NameDescription
Product Constraints (v1.0.0) object
Constraints on banking accounts based on this banking product, such as minimum and maximum balances. All properties are optional. If a property is not present, that constraint does not apply to accounts.
minimumBalance monetaryValue
The minimum balance for accounts of this product. The numeric value is represented as a string so that it can be exact with no loss of precision. This balance is in the currency for the product.
maxLength: 16
pattern: "^(0|[1-9][0-9]*)\\.[0-9][0-9]$"
minimumFundingAmount monetaryValue
The minimum monetary value when funding a new account of this product. The numeric value is represented as a string so that it can be exact with no loss of precision. This balance is in the currency for the product.
maxLength: 16
pattern: "^(0|[1-9][0-9]*)\\.[0-9][0-9]$"
maximumFundingAmount monetaryValue
The maximum monetary value when funding a new account of this product. The numeric value is represented as a string so that it can be exact with no loss of precision. This balance is in the currency for the product.
maxLength: 16
pattern: "^(0|[1-9][0-9]*)\\.[0-9][0-9]$"
minimumTransferAmount monetaryValue
The minimum monetary value for new transfers from accounts of this product. The numeric value is represented as a string so that it can be exact with no loss of precision. This balance is in the currency for the product.
maxLength: 16
pattern: "^(0|[1-9][0-9]*)\\.[0-9][0-9]$"
maximumTransferAmount monetaryValue
The maximum monetary value for new transfers from accounts of this product. The numeric value is represented as a string so that it can be exact with no loss of precision. This balance is in the currency for the product.
maxLength: 16
pattern: "^(0|[1-9][0-9]*)\\.[0-9][0-9]$"
maximumWithdrawalCount integer(int16)
The maximum number of withdrawals allowed per cycle. If not present, there is no hard limit.
format: int16
minimum: 0
maximum: 65535
fundingTerm string(duration)
The time limit within which account opening funding must occur after account creation. This is expressed as an ISO 8601 duration duration; only day and month periods are allowed, and the only allowed fractional value for months is 0.5, as in P5D or P14D or P1M or P0.5M.
format: duration
maxLength: 6

productCustomerType

"personal"

Product Customer Type (v1.0.0)

Indicates the type of customer that uses this banking product: personal (retail) or business (commercial).

productCustomerType strings may have one of the following enumerated values:

ValueDescription
personalPersonal:

Retail banking products for personal customers

businessBusiness:

Commercial banking products for business customers

bothPersonal and Business:

Banking products for personal or business customers

type: string


enum values: personal, business, both

productInterestRateTier

{
  "apy": "1.40",
  "minimumBalance": "12000.00"
}

Product Interest Rate Tier (v1.0.0)

The rates offered for accounts whose minimum balance within the statement period meets or exceeds the tier's minimumBalance and which do not also meet the minimumBalance of a higher tier.

Properties

NameDescription
Product Interest Rate Tier (v1.0.0) object
The rates offered for accounts whose minimum balance within the statement period meets or exceeds the tier's minimumBalance and which do not also meet the minimumBalance of a higher tier.
minimumBalance monetaryValue (required)
The minimum balance that a deposit account must hold to earn the rate in this tier. This value is expressed in the product's currency.
maxLength: 16
pattern: "^(0|[1-9][0-9]*)\\.[0-9][0-9]$"
apy twoDecimalInterestRate(decimal) (required)
The annual percentage yield (APY): the effective yield from interest, including compounding, as a percentage. Used on deposit account products.
format: decimal
minLength: 4
maxLength: 7
pattern: "^(-|\\+)?(0|[1-9]\\d?)\\.\\d{2}$"

productInterestRates

{
  "apr": "1.40",
  "apy": "1.44",
  "compoundPeriod": "P1D",
  "accrualType": "compounding"
}

Product Interest Rates (v1.0.0)

The interest rates for accounts based on this product. The apy and apr values are a decimal percentages, coded as strings in order to represent the rate exactly. Rates are coded to two decimal places. Rates are fixed, such { "apy" : "1.40" } for 1.40% APY.

Properties

NameDescription
Product Interest Rates (v1.0.0) object
The interest rates for accounts based on this product. The apy and apr values are a decimal percentages, coded as strings in order to represent the rate exactly. Rates are coded to two decimal places. Rates are fixed, such { "apy" : "1.40" } for 1.40% APY.
apr twoDecimalInterestRate(decimal) (required)
The annual percentage rate (APY): the base interest rate as a percentage.
format: decimal
minLength: 4
maxLength: 7
pattern: "^(-|\\+)?(0|[1-9]\\d?)\\.\\d{2}$"
apy twoDecimalInterestRate(decimal)
The annual percentage yield (APY): the effective yield from interest, including compounding, as a percentage. Used on deposit account products. If the product has rate tiers, this is tiers[0].apy (the lowest tier).
format: decimal
minLength: 4
maxLength: 7
pattern: "^(-|\\+)?(0|[1-9]\\d?)\\.\\d{2}$"
compoundPeriod string(duration)
The period at which interest compounds. This value is an ISO 8601 duration string of the form P[n]Y[n]M[n]D to specify the compounding in the number of years/months/days. P1D mean compounded daily, P1M means compounded monthly, and P0D means compounded continuously.
format: duration
minLength: 3
maxLength: 6
accrualType productAccrualType
Indicates how interest is accrued according to the compoundPeriod.
enum values: compounding, simple
tiers array: [productInterestRateTier]
If present, the apy rate for the account statement period is based on looking up the account's minimum balance (in the current cycle) in this array. The items are sorted from lowest minimumBalance to highest. This array is not present if the rates are fixed (not based on the account's minimum balance) and defined in in the apy property.
minItems: 1
maxItems: 200
items: object

productReference

{
  "type": "cd",
  "coreType": "CD",
  "code": "180D_CDA",
  "label": "180 Day CD",
  "description": "Certificate of Deposit with a 180 day term"
}

Product Reference (v2.2.1)

A reference to a banking product.

Properties

NameDescription
Product Reference (v2.2.1) object
A reference to a banking product.
type productType (required)
The type of account.
enum values: savings, checking, cd, ira, loan, creditCard
coreType string (required)
The account product type in the banking core. For example, some cores may use "D" for a demand deposit (checking) account, some may use "DDA".
minLength: 1
maxLength: 4
pattern: "^[A-Z0-9]{1,4}$"
code string(text) (required)
The product's product code which uniquely identifies the product from other banking products. Codes are unique to the financial institution. For example, different products with the same type and the same coreType but different rates or other properties have different product codes, such as CD3M, DDA_HI_YLD, P3207.
format: text
minLength: 1
maxLength: 16
label string(text) (required)
A human-readable label for this banking product.
format: text
minLength: 2
maxLength: 48
description string(markdown)
A human-readable description of this banking product.
format: markdown
minLength: 2
maxLength: 400

productState

"active"

Product State (v1.0.0)

The state of this banking product.

productState strings may have one of the following enumerated values:

ValueDescription
activeThis product is active and available for use.
inactiveThis product is unavailable for use.
removedThis product has been removed and is permanently unavailable for use.

type: string


enum values: active, inactive, removed

productType

"savings"

Product Type (v2.0.0)

The type (or category) of banking product.

productType strings may have one of the following enumerated values:

ValueDescription
savingsSavings:

Savings Account

checkingChecking:

Checking Account

cdCD:

Certificate of Deposit Account

iraIRA:

Individual Retirement Account

loanLoan:

Loan Account

creditCardCredit Card:

Credit Card Account

type: string


enum values: savings, checking, cd, ira, loan, creditCard

readOnlyResourceId

"string"

Read-only Resource Identifier (v1.0.1)

The unique, opaque system-assigned identifier for a resource. This case-sensitive ID is also used in URLs as path parameters or in other properties or parameters that reference a resource by ID rather than URL. Resource IDs are immutable.

type: string


read-only
minLength: 6
maxLength: 48
pattern: "^[-_:.~$a-zA-Z0-9]{6,48}$"

readOnlyTimestamp

"2021-10-30T19:06:04.250Z"

Read-Only Timestamp (v1.0.0)

A readonly or derived timestamp (an instant in time) formatted in RFC 3339 date-time UTC format: YYYY-MM-DDThh:mm:ss.sssZ.

type: string(date-time)


read-only
format: date-time
minLength: 20
maxLength: 30

requiredIdentityChallenge

{
  "operationId": "createTransfer",
  "challengeId": "0504076c566a3cf7009c",
  "factors": [
    {
      "type": "sms",
      "labels": [
        "9876"
      ],
      "id": "85c0ee5753fcd0b0953f"
    },
    {
      "type": "voice",
      "labels": [
        "9876"
      ],
      "id": "d089e10a80a8627df37b"
    },
    {
      "type": "voice",
      "labels": [
        "6754"
      ],
      "id": "10506ecf9d1c2ee00403"
    },
    {
      "type": "email",
      "labels": [
        "an****nk@example.com",
        "an****98@example.com"
      ],
      "id": "e917d671cb2f030b56f1"
    },
    {
      "type": "authenticatorToken",
      "labels": [
        "Acme fob"
      ],
      "id": "fe6c452d7da0bbb4e407"
    },
    {
      "type": "securityQuestions",
      "securityQuestions": {
        "questions": [
          {
            "id": "q1",
            "prompt": "What is your mother's maiden name?"
          },
          {
            "id": "q4",
            "prompt": "What is your high school's name?"
          },
          {
            "id": "q9",
            "prompt": "What is the name of your first pet?"
          }
        ]
      },
      "id": "df33c6f88a37d6b3f0a6"
    }
  ]
}

Required Challenge (v1.2.3)

A request from the service for the user to verify their identity. This contains a challenge ID, the corresponding operation ID, and a list of challenge factors for identity verification. The user must complete one of these challenge factors to satisfy the challenge. This schema defines the attributes in the 401 Unauthorized problem response when the 401 problem type name is challengeRequired. See the "Challenge API" for details.

Properties

NameDescription
Required Challenge (v1.2.3) object
A request from the service for the user to verify their identity. This contains a challenge ID, the corresponding operation ID, and a list of challenge factors for identity verification. The user must complete one of these challenge factors to satisfy the challenge. This schema defines the attributes in the 401 Unauthorized problem response when the 401 problem type name is challengeRequired. See the "Challenge API" for details.
operationId challengeOperationId (required)
The ID of an operation/action for which the user must verify their identity via an identity challenge. This is passed when starting a challenge factor or when validating the identity challenge responses.
minLength: 6
maxLength: 48
pattern: "^[-a-zA-Z0-9$_]{6,48}$"
challengeId readOnlyResourceId (required)
The unique ID of this challenge instance. This is an opaque string. This is passed when starting a challenge factor or when validating the identity challenge responses.
read-only
minLength: 6
maxLength: 48
pattern: "^[-_:.~$a-zA-Z0-9]{6,48}$"
factors array: [challengeFactor] (required)
A list of challenge factors. The user must complete one of these challenge factors. The labels in each factor identify one or more channels the user may use, such as a list of email addresses the system may use to send a one-time passcode to the user. *Note: The same channel may be used by multiple factors in the array of factors. For example, the user's primary mobile phone number may be used for both an sms factor and a voice factor.
minItems: 1
maxItems: 8
items: object

resourceId

"string"

Resource Identifier (v1.0.1)

The unique, opaque system identifier for a resource. This case-sensitive ID is also used as path parameters in URLs or in other properties or parameters that reference a resource by ID rather than URL.

type: string


minLength: 6
maxLength: 48
pattern: "^[-_:.~$a-zA-Z0-9]{6,48}$"

twoDecimalInterestRate

"1.40"

Two Decimal Interest Rate (v1.0.1)

An interest rate, expressed as a percentage value with two decimal places of precision.

type: string(decimal)


format: decimal
minLength: 4
maxLength: 7
pattern: "^(-|\+)?(0|[1-9]\d?)\.\d{2}$"


Generated by @apiture/api-doc 3.2.1 on Wed Apr 10 2024 15:36:11 GMT+0000 (Coordinated Universal Time).