Shell HTTP JavaScript Node.JS Ruby Python Java Go

Statements v0.3.1

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

This API provides access to monthly statements for accounts. The user can query this API to list statements for one or more accounts. Statements may also be queried based on time intervals:

Download OpenAPI Definition (YAML)

Base URLs:

Terms of service

Email: Apiture Web: Apiture

Authentication

Scope Scope Description
banking/read Read access to accounts and account-related resources such as transfers and transactions.
banking/readBalance Read access to account balances. This must be granted in addition to the banking/read scope in order to view balances, but is included in the banking/full scope.
banking/full Full access to accounts and account-related resources such as transfers and transactions.
data/read Read access to non-account, non-profile data.

API

Endpoints which describe this API.

getApi

Code samples

# You can also use wget
curl -X GET /statements/ \
  -H 'Accept: application/hal+json' \
  -H 'API-Key: API_KEY'

GET /statements/ HTTP/1.1

Accept: application/hal+json

var headers = {
  'Accept':'application/hal+json',
  'API-Key':'API_KEY'

};

$.ajax({
  url: '/statements/',
  method: 'get',

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

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

const headers = {
  'Accept':'application/hal+json',
  'API-Key':'API_KEY'

};

fetch('/statements/',
{
  method: 'GET',

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

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/hal+json',
  'API-Key' => 'API_KEY'
}

result = RestClient.get '/statements/',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/hal+json',
  'API-Key': 'API_KEY'
}

r = requests.get('/statements/', params={

}, headers = headers)

print r.json()

URL obj = new URL("/statements/");
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/hal+json"},
        "API-Key": []string{"API_KEY"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "/statements/", data)
    req.Header = headers

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

Top-level resources and operations in this API

GET /

Return links to the top-level resources and operations in this API.

Example responses

200 Response

{
  "id": "apiName",
  "name": "API name",
  "apiVersion": "1.0.0",
  "_profile": "https://api.apiture.com/schemas/common/root/v1.0.0/profile.json",
  "_links": {}
}

Responses

StatusDescription
200 OK
OK
Schema: root

getApiDoc

Code samples

# You can also use wget
curl -X GET /statements/apiDoc \
  -H 'Accept: application/json' \
  -H 'API-Key: API_KEY'

GET /statements/apiDoc HTTP/1.1

Accept: application/json

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

};

$.ajax({
  url: '/statements/apiDoc',
  method: 'get',

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

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

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

};

fetch('/statements/apiDoc',
{
  method: 'GET',

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

require 'rest-client'
require 'json'

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

result = RestClient.get '/statements/apiDoc',
  params: {
  }, headers: headers

p JSON.parse(result)

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

r = requests.get('/statements/apiDoc', params={

}, headers = headers)

print r.json()

URL obj = new URL("/statements/apiDoc");
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"},
        "API-Key": []string{"API_KEY"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "/statements/apiDoc", data)
    req.Header = headers

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

Return API definition document

GET /apiDoc

Return the OpenAPI document that describes this API.

Example responses

200 Response

{}

Responses

StatusDescription
200 OK
OK
Schema: Inline

Response Schema

Statement

Account Statements

getStatements

Code samples

# You can also use wget
curl -X GET /statements/statements \
  -H 'Accept: application/hal+json' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'

GET /statements/statements HTTP/1.1

Accept: application/hal+json

var headers = {
  'Accept':'application/hal+json',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: '/statements/statements',
  method: 'get',

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

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

const headers = {
  'Accept':'application/hal+json',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

fetch('/statements/statements',
{
  method: 'GET',

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

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/hal+json',
  'API-Key' => 'API_KEY',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get '/statements/statements',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/hal+json',
  'API-Key': 'API_KEY',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('/statements/statements', params={

}, headers = headers)

print r.json()

URL obj = new URL("/statements/statements");
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/hal+json"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "/statements/statements", data)
    req.Header = headers

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

Return a collection of statements

GET /statements

Return a paginated sortable filterable searchable collection of statements. The links in the response include pagination links. Statements may be filtered in several ways:

  1. Pass the endDate and a period which represents how far in the past to include. The endDate is the current date if omitted. For example, to fetch statements for the last six months, request ?period=P6M query parameters. Each prev link will return the previous six months of statements. The default period if ommitted is P6M. Thus, the default request if none of startDate, endDate and period are passed is the last 6 months of statements. This implies a result sorted in descending order by time.
  2. Pass the startDate and/and endDate, to find any statements which overlap that date range. This implies a result sorted in ascending order by time.
  3. Pass the startDate and a period which represents how far after the start date to include. For example, to fetch statements for the first six months of 2018, request ?startDate=2018-01-01&period=P6M query parameters. Each next link in the response collection will return the next six months of statements, if available. This implies a result sorted in ascending order by time.
  4. If accounts are included in the the optional accounts query parameter, only statements corresponding to those accounts to which the user is entitled will be returned. An empty list of _embedded.items will be returned if the user is not entitled to any of the requested accounts.

Parameters

Parameter Description
start
(query)
integer(int64)
The zero-based index of the first statement item to include in this page. The default 0 denotes the beginning of the collection.
limit
(query)
integer(int32)
The maximum number of statement representations to return in this page.
sortBy
(query)
string
Optional sort criteria. See sort criteria format, such as ?sortBy=field1,-field2.
accounts
(query)
string
An optional comma or pipe (|) separated list list of account IDs. Note: these are not account numbers but are the unique resource _id of the corresponding financial institution accounts. The user must have access to the corresponding accounts in order to view statements.
startDate
(query)
string(date)
The start date of the query range. May be combined with endDate or period but not both.
endDate
(query)
string(date)
The end date of the query range. May be combined with endDate or period but not both.
period
(query)
string(period)
The time period for the date range, looking backwards from endDate (or today, if endDate is omitted), or forward from startDate. For example, to list the statements for the last 6 months, use ?period=P6m.
filter
(query)
string
Optional filter criteria. See filtering.
q
(query)
string
Optional search string. See searching.
name
(query)
string
Subset the accounts or external accounts collection to those with this name value. Use

Example responses

200 Response

{
  "_profile": "https://api.apiture.com/schemas/statements/statements/v1.0.0/profile.json",
  "start": 10,
  "limit": 10,
  "count": 67,
  "name": "statements",
  "_links": {
    "self": {
      "href": "https://www.example.com/statements/statements?start=10&limit=10"
    },
    "first": {
      "href": "https://www.example.com/statements/statements?start=0&limit=10"
    },
    "next": {
      "href": "https://www.example.com/statements/statements?start=20&limit=10"
    },
    "collection": {
      "href": "https://www.example.com/statements/statements"
    }
  },
  "_embedded": {
    "items": [
      {
        "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
        "_profile": "https://api.apiture.com/schemas/statements/statement/v1.0.0/profile.json",
        "_links": {
          "self": {
            "href": "https://www.example.com/statements/statements/0399abed-fd3d-4830-a88b-30f38b8a365c"
          }
        }
      },
      {
        "_id": "d62c0701-0d74-4836-83f9-ebf3709442ea",
        "_profile": "https://api.apiture.com/schemas/statements/statement/v1.0.0/profile.json",
        "_links": {
          "self": {
            "href": "https://www.example.com/statements/statements/d62c0701-0d74-4836-83f9-ebf3709442ea"
          }
        }
      }
    ]
  }
}

Responses

StatusDescription
200 OK
OK
Schema: statements
400 Bad Request
Bad Request. The request body or one or more of the query parameters was not well formed. The _error field in the response will contain details about the request error.
Schema: errorResponse
422 Unprocessable Entity
Unprocessable Entity. One or more of the query parameters was well formed but otherwise invalid. The _error field in the response will contain details about the request error.
Schema: errorResponse

getStatement

Code samples

# You can also use wget
curl -X GET /statements/statements/{statementId} \
  -H 'Accept: application/hal+json' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'

GET /statements/statements/{statementId} HTTP/1.1

Accept: application/hal+json

var headers = {
  'Accept':'application/hal+json',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: '/statements/statements/{statementId}',
  method: 'get',

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

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

const headers = {
  'Accept':'application/hal+json',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

fetch('/statements/statements/{statementId}',
{
  method: 'GET',

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

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/hal+json',
  'API-Key' => 'API_KEY',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get '/statements/statements/{statementId}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/hal+json',
  'API-Key': 'API_KEY',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('/statements/statements/{statementId}', params={

}, headers = headers)

print r.json()

URL obj = new URL("/statements/statements/{statementId}");
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/hal+json"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "/statements/statements/{statementId}", data)
    req.Header = headers

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

Fetch a representation of this statement

GET /statements/{statementId}

Return a HAL representation of this statement resource.

Parameters

Parameter Description
statementId
(path)
string (required)
The unique identifier of this statement. This is an opaque string.
unmasked
(query)
boolean
When requesting an account, the full account number is not included in the response by default, for security reasons. Include this query parameter, with a value of true, to request that the response body includes the full account number. Such requests are auditable.

Example responses

200 Response

{
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "_profile": "https://api.apiture.com/schemas/statements/statement/v1.0.0/profile.json",
  "_links": {
    "self": {
      "href": "https://www.example.com/statements/statements/0399abed-fd3d-4830-a88b-30f38b8a365c"
    }
  },
  "_embedded": {
    "other": {
      "_id": "2f41f97f-f8d2-4ec1-89f5-c7c9d2583aad",
      "_profile": "https://api.apiture.com/schemas/statements/other/v1.0.0/profile.json"
    }
  }
}

Responses

StatusDescription
200 OK
OK
Schema: statement
304 Not Modified
Not Modified. The resource has not been modified since it was last fetched.
404 Not Found
Not Found. There is no such statement resource at the specified {statementId}. The _error field in the response will contain details about the request error.
Schema: errorResponse

Response Headers

StatusDescription
200 ETag string
The ETag response header specifies an entity tag which must be provided in an If-Match request header for PUT or PATCH operations which update this statement resource.

Schemas

statementFields

{
  "periodStartDate": {},
  "periodEndDate": {},
  "accountName": "Personal Savings",
  "accountTitle": "John Smith",
  "institutionName": "3rd Party Bank",
  "routingNumber": "021000021",
  "accountNumbers": {
    "masked": "******3210"
  }
}

Statement Fields

Each statement resource includes summary properties which describe the account.

Properties

NameDescription
periodStartDate string(date)
The inclusive date in RFC 3339 YYYY-MM-DD format for the beginning of the statement period.
periodEndDate string(date)
The inclusive date in RFC 3339 YYYY-MM-DD format for the end of the statement period.
accountName string
The name of the account.
accountTitle string
The title of the account holder.
institutionName string
The name of the financial institution.
accountNumbers accountNumbers
Different representations of an account number.
routingNumber string
The account routing number which identifies the financial institution. The full routing number and full account number are required to fully identify the account.
minLength: 9
maxLength: 9

summaryStatement

{
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "_profile": "https://api.apiture.com/schemas/statements/statement/v1.0.0/profile.json",
  "_links": {
    "self": {
      "href": "https://www.example.com/statements/statements/0399abed-fd3d-4830-a88b-30f38b8a365c"
    },
    "apiture:statement": {
      "href": "https://www.example.com/some/expiring/download/location"
    },
    "apiture:account": {
      "href": "https://www.example.com/accounts/accounts/{accountId}"
    }
  }
}

Statement Summary

Summary representation of a statement resource in statements collections. This representation normally does not contain any _embedded objects. If needed, call the GET operation on the item's self link to get _embedded objects. This object and contains a link (apiture:statement) to the downloadable statement document, typically PDF.

Properties

NameDescription
_links object
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
» additionalProperties link
Describes a hypermedia link within a _links object in HAL representations. In Apiture APIs, links are HAL links, but Apiture APIs do not use the name or hreflang properties of HAL. Apiture links may include a method property.
_embedded object
An optional map of nested resources, mapping each nested resource name to a nested resource representation.
_profile string(uri)
The URI of a resource profile which describes the representation.
_error error
An object which describes an error. This value is omitted if the operation succeeded without error.
periodStartDate string(date)
The inclusive date in RFC 3339 YYYY-MM-DD format for the beginning of the statement period.
periodEndDate string(date)
The inclusive date in RFC 3339 YYYY-MM-DD format for the end of the statement period.
accountName string
The name of the account.
accountTitle string
The title of the account holder.
institutionName string
The name of the financial institution.
accountNumbers accountNumbers
Different representations of an account number.
routingNumber string
The account routing number which identifies the financial institution. The full routing number and full account number are required to fully identify the account.
minLength: 9
maxLength: 9
_id string
The unique identifier for this statement resource. This is an immutable opaque string.

statement

{
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "_profile": "https://api.apiture.com/schemas/statements/statement/v1.0.0/profile.json",
  "_links": {
    "self": {
      "href": "https://www.example.com/statements/statements/0399abed-fd3d-4830-a88b-30f38b8a365c"
    }
  },
  "_embedded": {
    "other": {
      "_id": "2f41f97f-f8d2-4ec1-89f5-c7c9d2583aad",
      "_profile": "https://api.apiture.com/schemas/statements/other/v1.0.0/profile.json"
    }
  }
}

Statement

Representation of statement resources.

Properties

NameDescription
_links object
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
» additionalProperties link
Describes a hypermedia link within a _links object in HAL representations. In Apiture APIs, links are HAL links, but Apiture APIs do not use the name or hreflang properties of HAL. Apiture links may include a method property.
_embedded object
An optional map of nested resources, mapping each nested resource name to a nested resource representation.
_profile string(uri)
The URI of a resource profile which describes the representation.
_error error
An object which describes an error. This value is omitted if the operation succeeded without error.
periodStartDate string(date)
The inclusive date in RFC 3339 YYYY-MM-DD format for the beginning of the statement period.
periodEndDate string(date)
The inclusive date in RFC 3339 YYYY-MM-DD format for the end of the statement period.
accountName string
The name of the account.
accountTitle string
The title of the account holder.
institutionName string
The name of the financial institution.
accountNumbers accountNumbers
Different representations of an account number.
routingNumber string
The account routing number which identifies the financial institution. The full routing number and full account number are required to fully identify the account.
minLength: 9
maxLength: 9
_id string
The unique identifier for this statement resource. This is an immutable opaque string.

statements

{
  "_profile": "https://api.apiture.com/schemas/statements/statements/v1.0.0/profile.json",
  "start": 10,
  "limit": 10,
  "count": 67,
  "name": "statements",
  "_links": {
    "self": {
      "href": "https://www.example.com/statements/statements?start=10&limit=10"
    },
    "first": {
      "href": "https://www.example.com/statements/statements?start=0&limit=10"
    },
    "next": {
      "href": "https://www.example.com/statements/statements?start=20&limit=10"
    },
    "collection": {
      "href": "https://www.example.com/statements/statements"
    }
  },
  "_embedded": {
    "items": [
      {
        "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
        "_profile": "https://api.apiture.com/schemas/statements/statement/v1.0.0/profile.json",
        "_links": {
          "self": {
            "href": "https://www.example.com/statements/statements/0399abed-fd3d-4830-a88b-30f38b8a365c"
          }
        }
      },
      {
        "_id": "d62c0701-0d74-4836-83f9-ebf3709442ea",
        "_profile": "https://api.apiture.com/schemas/statements/statement/v1.0.0/profile.json",
        "_links": {
          "self": {
            "href": "https://www.example.com/statements/statements/d62c0701-0d74-4836-83f9-ebf3709442ea"
          }
        }
      }
    ]
  }
}

Statement Collection

Collection of statements. The items in the collection are ordered in the _embedded.items array; the name is statements. The top-level _links object may contain pagination links (self, next, prev, first, last, collection).

Properties

NameDescription
_links object
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
» additionalProperties link
Describes a hypermedia link within a _links object in HAL representations. In Apiture APIs, links are HAL links, but Apiture APIs do not use the name or hreflang properties of HAL. Apiture links may include a method property.
_embedded object
» items [summaryStatement]
An array containing a page of statement items.
_profile string(uri)
The URI of a resource profile which describes the representation.
_error error
An object which describes an error. This value is omitted if the operation succeeded without error.
count integer
The number of items in the collection. This value is optional and my be omitted if the count is not computable efficiently. If a filter is applied to the collection (either implicitly or explicitly), the count, if present, indicates the number of items that satisfy the filter.
start integer
The start index of this page of items.
limit integer
The maximum number of items per page.
name string
The name of the collection.

attributes

{}

Attributes

An optional map of name/value pairs which contains additional dynamic data about the resource.

Properties

root

{
  "id": "apiName",
  "name": "API name",
  "apiVersion": "1.0.0",
  "_profile": "https://api.apiture.com/schemas/common/root/v1.0.0/profile.json",
  "_links": {}
}

API Root

A HAL response, with hypermedia _links for the top-level resources and operations in API.

Properties

NameDescription
_links object
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
» additionalProperties link
Describes a hypermedia link within a _links object in HAL representations. In Apiture APIs, links are HAL links, but Apiture APIs do not use the name or hreflang properties of HAL. Apiture links may include a method property.
_embedded object
An optional map of nested resources, mapping each nested resource name to a nested resource representation.
_profile string(uri)
The URI of a resource profile which describes the representation.
_error error
An object which describes an error. This value is omitted if the operation succeeded without error.
_id string
This API's unique ID.
name string
This API's name.
apiVersion string
This API's version.

errorResponse

{
  "_profile": "https://api.apiture.com/schemas/common/errorResponse/v1.0.0/profile.json",
  "_error": {
    "_id": "2eae46e1-575c-4d69-8a8f-0a7b0115a4b3",
    "message": "The value for deposit must be greater than 0.",
    "statusCode": 422,
    "type": "positiveNumberRequired",
    "attributes": {
      "value": -125.5
    },
    "remediation": "Provide a value which is greater than 0",
    "occurredAt": "2018-01-25T05:50:52.375Z",
    "_links": {
      "describedby": {
        "href": "https://api.apiture.com/errors/positiveNumberRequired"
      }
    },
    "_embedded": {
      "errors": []
    }
  }
}

Error Response

Describes an error response, typically returned on 4xx or 5xx errors from API operations. The _error object contains the error details.

Properties

NameDescription
_links object
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
» additionalProperties link
Describes a hypermedia link within a _links object in HAL representations. In Apiture APIs, links are HAL links, but Apiture APIs do not use the name or hreflang properties of HAL. Apiture links may include a method property.
_embedded object
An optional map of nested resources, mapping each nested resource name to a nested resource representation.
_profile string(uri)
The URI of a resource profile which describes the representation.
_error error
An object which describes an error. This value is omitted if the operation succeeded without error.

accountNumbers

{
  "masked": "*************3210",
  "full": "9876543210"
}

Account Numbers

Different representations of an account number.

Properties

NameDescription
masked string
A partial account number that does not contain all the digits of the full account number. This masked number appears in statements or in user experience presentation. It is sufficient for a user to differentiate this account from other accounts they hold, but is not sufficient for initiating transfers, etc. The first character is the mask character and is repeated; this does not indicate that the full account number is the same as the mask length. This value is derived and immutable.
read-only
minLength: 8
maxLength: 32
full string
The full account number. This value only appears when ?unmasked=true is passed on the GET request. Not included in the summary representation of the account that is included in account collection responses. This value is derived and immutable.
read-only
minLength: 4
maxLength: 17

{
  "href": "/contacts/contacts/328f6bf6-d762-422f-a077-ab91ca4d0b6f",
  "title": "Applicant"
}

Link

Describes a hypermedia link within a _links object in HAL representations. In Apiture APIs, links are HAL links, but Apiture APIs do not use the name or hreflang properties of HAL. Apiture links may include a method property.

Properties

NameDescription
href string(uri) (required)
The URI or URI template for the resource/operation this link refers to.
type string
The media type for the resource.
templated boolean
If true, the link's href is a URI template.
title string
An optional human-readable localized title for the link.
deprecation string(uri)
If present, the containing link is deprecated and the value is a URI which provides human-readable text information about the deprecation.
profile string(uri)
The URI of a profile document, a JSON document which describes the target resource/operation.

error

{
  "_id": "2eae46e1-575c-4d69-8a8f-0a7b0115a4b3",
  "message": "The value for deposit must be greater than 0.",
  "statusCode": 422,
  "type": "positiveNumberRequired",
  "attributes": {
    "value": -125.5
  },
  "remediation": "Provide a value which is greater than 0",
  "occurredAt": "2018-01-25T05:50:52.375Z",
  "_links": {
    "describedby": {
      "href": "https://developer.apiture.com/errors/positiveNumberRequired"
    }
  },
  "_embedded": {
    "errors": []
  }
}

Error

Describes an error in an API request or in a service called via the API.

Properties

NameDescription
message string (required)
A localized message string describing the error condition.
_id string
A unique identifier for this error instance. This may be used as a correlation ID with the root cause error (i.e. this ID may be logged at the source of the error). This is is an opaque string.
statusCode integer
The HTTP status code associate with this error.
minimum: 100
maximum: 599
type string
An error identifier which indicates the category of error and associate it with API support documentation or which the UI tier can use to render an appropriate message or hint. This provides a finer level of granularity than the statusCode. For example, instead of just 400 Bad Request, the type may be much more specific. such as integerValueNotInAllowedRange or numericValueExceedsMaximum or stringValueNotInAllowedSet.
occurredAt string(date-time)
An RFC 3339 UTC time stamp indicating when the error occurred.
attributes attributes
Informative values or constraints which describe the error. For example, for a value out of range error, the attributes may specify the minimum and maximum values. This allows clients to present error messages as they see fit (the API does not assume the client/presentation tier). The set of attributes varies by error type.
remediation string
An optional localized string which provides hints for how the user or client can resolve the error.
errors [error]
An optional array of nested error objects. This property is not always present.
_links links
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
_embedded object
Embedded objects. An error object may contain nested errors. For example, an API which validates its request body may find multiple errors in the request, which are returned with an error response with nested errors. These are held in an items array of errorResponse objects. _embedded or _embedded.items may not exist if the error does not have nested errors. This property is deprecated; use see error.errors instead.
» items [errorResponse]
An array of error objects.

{
  "property1": {
    "href": "/contacts/contacts/328f6bf6-d762-422f-a077-ab91ca4d0b6f",
    "title": "Applicant"
  },
  "property2": {
    "href": "/contacts/contacts/328f6bf6-d762-422f-a077-ab91ca4d0b6f",
    "title": "Applicant"
  }
}

Links

An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.

Properties

NameDescription
additionalProperties link
Describes a hypermedia link within a _links object in HAL representations. In Apiture APIs, links are HAL links, but Apiture APIs do not use the name or hreflang properties of HAL. Apiture links may include a method property.