External Account Verification v0.22.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.
This API allows financial institutions to verify their customer's external accounts. An external account is defined as a customer's account held at a different financial institution.
Two sets of operations can be utilized to accomplish the verification of an external account: instant verification and micro-deposit. Both operations are asynchronous, which means that upon resource creation the API will return a resource with state
equal to pending
. Once the verification completes, the state
will be updated to verified
or failed
to indicate the result of the operation.
Instant Account Verification (IAV)
This process verifies accounts held at a financial institution within seconds by authenticating via user account credentials with the external financial institution and multi-factor challenges when available.
This method may also be supported by a user experience (UX) widget via an instant account verification provider. Clients can use the createAccountVerificationProviderParameters
to get the client connection parameters for embedding that UX control, and then use createAccountVerification
to process the external account verification through that provider. When that completes successfully, the response includes the linked external accounts.
Micro-Deposit Verification (MD)
This is an alternative verification method for institutions that don't support IAV. When this verification is
initiated, Apiture creates two deposits (typically less than $0.99) to the customer account to be verified, followed by a debit which balances those deposits. Once the transactions post to the user account, the account owner should find the deposits on their external account and submit the two amounts to the micro-deposits resources. This verifies that the user has ownership or access to the external account. Please note that the micro-deposit transactions may take up to two business days to be reflected on the external financial institution.
Error Types
Error responses in this API may have one of the type
values described below.
See Errors for more information
on error responses and error types.
duplicateAccountVerification
Description: A verification resource with the same account number and routing number already exists.
Remediation: Try verifying a different account.
groupNotFound
Description: No Groups were found for the specified groupName.
Remediation: Check to make sure that the supplied groupName corresponds to an apiture group resource.
ineligibleAccount
Description: This account is ineligible to be linked.
Remediation: Try to use a different routing number.
invalidContactId
Description: No contact was found for the specified contact URI.
Remediation: Check to make sure that the supplied contact URI corresponds to an apiture contact resource.
invalidInstitutionId
Description: No institution was found for the specified institutionId.
Remediation: Check to make sure the supplied institutionId corresponds to an Apiture institution resource.
invalidLimitParam
Description: The supplied limit
query parameter is invalid.
Remediation: pass a valid numeric pagination limit (and integer from 1 to 1000).
invalidProviderParameters
Description: The provider parameter do not match the data for this account verification provider.
Remediation: Do not alter the received provider parameters before passing them in requests.
invalidStartParam
Description: The supplied start
query parameter is invalid.
Remediation: pass a valid numeric pagination start index (and integer, 0 or greater).
invalidState
Description: The current state of the resource is not valid to perform the operation.
Remediation: Retry the operation when the condition is met.
invalidUnmaskedQueryParam
Description: Only the values of false or true can be supplied with the unmasked query parameter.
Remediation: Resubmit the operation without the query parameter or check the documentation for valid query params.
invalidVerificationId
Description: No Verification instance was found for the specified verificationId.
Remediation: Check to make sure that the supplied verificationId corresponds to an apiture verification resource.
malformedLimitParam
Description: The supplied limit
query parameter is malformed.
Remediation: Ensure the value of the supplied limit
query parameter is a valid integer.
malformedRequestBody
Description: The supplied request body was malformed.
Remediation: Check to make sure that your request body exists and that it does not contain syntax errors.
malformedRequestBodyMissingContactUri
Description: The supplied request body did not contain the expected Contact URI.
Remediation: Check to make sure that your request body exists, that it does not contain syntax errors and has the contact URI in _links.
malformedStartParam
Description: The supplied start
query parameter is malformed.
Remediation: Ensure the value of the supplied start
query parameter is a valid integer.
missingAccountAuthenticationHeader
Description: The apiture-account-authentication header is missing.
Remediation: Check to make sure that you are passing the apiture-account-authentication header and try the request again.
noVerificationIdGivenForReport
Description: No verification query parameter was given for the verification report generation.
Remediation: Resubmit the operation with a verificationId in the query parameter, i.e. ?verification={verificationId}.
providerAccountNotReturned
Description: No account was returned by the provider. This is usually because the providerAccount did not pass login or MFA.
Remediation: Verify that the instantVerification for the given account was successful.
valueNotFound
Description: No Group values were found for the specified groupName and valueName.
Remediation: Check to make sure that the supplied groupName and valueName corresponds to an apiture group and value resource.
Download OpenAPI Definition (YAML)
Base URLs:
Authentication
- API Key (
apiKey
)- header parameter: API-Key
- API Key based authentication. Each client application must pass its private, unique API key, allocated in the developer portal, via the
API-Key: {api-key}
request header.
- OAuth2 authentication (
accessToken
)- OAuth2 client access token authentication. The client authenticates against the server at
authorizationUrl
, passing the client's privateclientId
(and optionalclientSecret
) as part of this flow. The client obtains an access token from the server attokenUrl
. It then passes the received access token via theAuthorization: Bearer {access-token}
header in subsequent API calls. The authorization process also returns a refresh token which the client should use to renew the access token before it expires. - Flow:
authorizationCode
- Authorization URL = https://auth.devbank.apiture.com/auth/oauth2/authorize
- Token URL = https://api.devbank.apiture.com/auth/oauth2/token
- OAuth2 client access token authentication. The client authenticates against the server at
Scope | Scope Description |
---|---|
banking/read |
Read access to (behavior TBD). |
banking/write |
Write (update) access to (behavior TBD). |
banking/delete |
Delete access to (behavior TBD). |
banking/full |
Full access to (behavior TBD). |
Account Verification
Creation and Retrieval of Account Verifications
createAccountVerificationProviderParameters
Code samples
# You can also use wget
curl -X POST https://api.devbank.apiture.com/accountVerifications/accountVerificationProviderParameters \
-H 'Accept: application/hal+json' \
-H 'API-Key: API_KEY'
POST https://api.devbank.apiture.com/accountVerifications/accountVerificationProviderParameters HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/hal+json
var headers = {
'Accept':'application/hal+json',
'API-Key':'API_KEY'
};
$.ajax({
url: 'https://api.devbank.apiture.com/accountVerifications/accountVerificationProviderParameters',
method: 'post',
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('https://api.devbank.apiture.com/accountVerifications/accountVerificationProviderParameters',
{
method: 'POST',
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.post 'https://api.devbank.apiture.com/accountVerifications/accountVerificationProviderParameters',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/hal+json',
'API-Key': 'API_KEY'
}
r = requests.post('https://api.devbank.apiture.com/accountVerifications/accountVerificationProviderParameters', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/accountVerifications/accountVerificationProviderParameters");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
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("POST", "https://api.devbank.apiture.com/accountVerifications/accountVerificationProviderParameters", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
Generate account provider parameters
POST /accountVerificationProviderParameters
This operation generates parameters to allow integration with a client-embedded secure account verification provider application component. The response is based on the current user and configured provider. There is no request body for this operation. The operation may take several seconds, so this operation may continue to process the request asynchronously, returning a 202 response code and Retry-After
. After that retry delay, the client should try again until the operation returns a 200 response.
Try It
Example responses
201 Response
{
"_profile": "https://production.api.apiture.com/schemas/accountVerifications/accountVerificationProviderParameters/v1.1.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/applications/application/328f6bf6-d762-422f-a077-ab91ca4d0b6f"
}
},
"issuer": "yodlee",
"parameters": {
"0": {
"name": "widgetUrl",
"value": "https://int-widgets.moneydesktop.com/md/connections/qfnp2wzqg9rthAp8tv70fb6pzqZ8v9xfzn3by2k2"
}
}
}
Responses
Status | Description |
---|---|
201 | Created |
Created. The response contains the parameters to integrate with the account verification provider components. | |
Schema: accountVerificationProviderParameters | |
202 | Accepted |
Accepted. The request has been accepted but could not complete in a timely manner. Retry the operation after waiting the number of seconds specified in the Retry-After response header. The returned response body has an empty parameters array. | |
Schema: accountVerificationProviderParameters |
Status | Description |
---|---|
400 | Bad Request |
Bad Request. The parameters are not well-formed. | |
Schema: errorResponse |
Response Headers
Status | Description |
---|---|
202 | Retry-After string |
Indicates a suggested delay in seconds after which the client should retry the operation. Example: Retry-After: 5 |
createAccountVerification
Code samples
# You can also use wget
curl -X POST https://api.devbank.apiture.com/accountVerifications/providerAccountVerification \
-H 'Content-Type: application/hal+json' \
-H 'Accept: application/hal+json' \
-H 'API-Key: API_KEY'
POST https://api.devbank.apiture.com/accountVerifications/providerAccountVerification HTTP/1.1
Host: api.devbank.apiture.com
Content-Type: application/hal+json
Accept: application/hal+json
var headers = {
'Content-Type':'application/hal+json',
'Accept':'application/hal+json',
'API-Key':'API_KEY'
};
$.ajax({
url: 'https://api.devbank.apiture.com/accountVerifications/providerAccountVerification',
method: 'post',
headers: headers,
success: function(data) {
console.log(JSON.stringify(data));
}
})
const fetch = require('node-fetch');
const inputBody = '{
"providerParameters": {
"issuer": "mx",
"parameters": [
{
"name": "widgetUrl",
"value": "https://int-widgets.moneydesktop.com/md/connections/qfnp2wzqg9rthAp8tv70fb6pzqZ8v9xfzn3by2k2"
},
{
"name": "context",
"value": "BC67FAA048724BA1994B336CC934A917"
}
]
},
"state": "verified",
"accounts": [
{
"id": "03abd-30f65c",
"name": "My account at 3rdParty Bank",
"ifxType": "SDA",
"state": "active",
"routingNumber": "021000021",
"accountNumbers": {
"masked": "********9999",
"full": "999999999"
},
"accountOwners": [
{
"firstName": "Steven",
"middleName": "Benjamin",
"lastName": "Storey",
"fullName": "Steven B. Storey",
"type": "primary"
}
],
"providerAccountId": "a4e48fba-a737-4f75-b703-3e1149b1ea45",
"verificationReport": {
"state": "passed",
"accountRiskFactors": []
}
}
]
}';
const headers = {
'Content-Type':'application/hal+json',
'Accept':'application/hal+json',
'API-Key':'API_KEY'
};
fetch('https://api.devbank.apiture.com/accountVerifications/providerAccountVerification',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/hal+json',
'Accept' => 'application/hal+json',
'API-Key' => 'API_KEY'
}
result = RestClient.post 'https://api.devbank.apiture.com/accountVerifications/providerAccountVerification',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': 'application/hal+json',
'Accept': 'application/hal+json',
'API-Key': 'API_KEY'
}
r = requests.post('https://api.devbank.apiture.com/accountVerifications/providerAccountVerification', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/accountVerifications/providerAccountVerification");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
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{
"Content-Type": []string{"application/hal+json"},
"Accept": []string{"application/hal+json"},
"API-Key": []string{"API_KEY"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://api.devbank.apiture.com/accountVerifications/providerAccountVerification", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
Create account data from the interactive instant account verification provider
POST /providerAccountVerification
Start the instant account verification provider to get account verification. The providerParameters
in the initial request body should be the parameters returned from the createAccountVerificationProviderParameters
.
The operation may take more than a few seconds, so this operation may continue to process the request asynchronously, returning a 202 response code and Retry-After
. After that retry delay, the client should try this operation again until the operation returns a 201 response. The client must pass providerAccountVerification
response body from the 202 response to the retry operation as the request body.
Body parameter
{
"providerParameters": {
"issuer": "mx",
"parameters": [
{
"name": "widgetUrl",
"value": "https://int-widgets.moneydesktop.com/md/connections/qfnp2wzqg9rthAp8tv70fb6pzqZ8v9xfzn3by2k2"
},
{
"name": "context",
"value": "BC67FAA048724BA1994B336CC934A917"
}
]
},
"state": "verified",
"accounts": [
{
"id": "03abd-30f65c",
"name": "My account at 3rdParty Bank",
"ifxType": "SDA",
"state": "active",
"routingNumber": "021000021",
"accountNumbers": {
"masked": "********9999",
"full": "999999999"
},
"accountOwners": [
{
"firstName": "Steven",
"middleName": "Benjamin",
"lastName": "Storey",
"fullName": "Steven B. Storey",
"type": "primary"
}
],
"providerAccountId": "a4e48fba-a737-4f75-b703-3e1149b1ea45",
"verificationReport": {
"state": "passed",
"accountRiskFactors": []
}
}
]
}
Parameters
Parameter | Description |
---|---|
body (body) |
providerAccountVerification (required) The data necessary to create a new account verification. |
Try It
Example responses
201 Response
{
"providerParameters": {
"issuer": "mx",
"parameters": [
{
"name": "widgetUrl",
"value": "https://int-widgets.moneydesktop.com/md/connections/qfnp2wzqg9rthAp8tv70fb6pzqZ8v9xfzn3by2k2"
},
{
"name": "context",
"value": "BC67FAA048724BA1994B336CC934A917"
}
]
},
"state": "verified",
"accounts": [
{
"id": "03abd-30f65c",
"name": "My account at 3rdParty Bank",
"ifxType": "SDA",
"state": "active",
"routingNumber": "021000021",
"accountNumbers": {
"masked": "********9999",
"full": "999999999"
},
"accountOwners": [
{
"firstName": "Steven",
"middleName": "Benjamin",
"lastName": "Storey",
"fullName": "Steven B. Storey",
"type": "primary"
}
],
"providerAccountId": "a4e48fba-a737-4f75-b703-3e1149b1ea45",
"verificationReport": {
"state": "passed",
"accountRiskFactors": []
}
}
]
}
Responses
Status | Description |
---|---|
201 | Created |
Created. The account verification provider either completed the external account verification (state is verified ), or the verification has failed (state is failed ). | |
Schema: providerAccountVerification | |
202 | Accepted |
Accepted. The request has been accepted but could not complete in a timely manner. Retry the operation after waiting the number of seconds specified in the Retry-After response header. The client must save the response body to pass as the request body on the retry. | |
Schema: providerAccountVerification |
Status | Description |
---|---|
400 | Bad Request |
Bad Request. The request body is not well-formed. | |
Schema: errorResponse |
Status | Description |
---|---|
422 | Unprocessable Entity |
Unprocessable Entity. The data in the request was well formed is invalid and could not be processed. This error response may have one of the following | |
Schema: errorResponse |
Response Headers
Status | Description |
---|---|
202 | Retry-After string |
Indicates a suggested delay in seconds after which the client should retry the operation. Example: Retry-After: 5 |
getMicroDepositVerifications
Code samples
# You can also use wget
curl -X GET https://api.devbank.apiture.com/accountVerifications/microDepositVerifications \
-H 'Accept: application/hal+json' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
GET https://api.devbank.apiture.com/accountVerifications/microDepositVerifications HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/hal+json
var headers = {
'Accept':'application/hal+json',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: 'https://api.devbank.apiture.com/accountVerifications/microDepositVerifications',
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('https://api.devbank.apiture.com/accountVerifications/microDepositVerifications',
{
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 'https://api.devbank.apiture.com/accountVerifications/microDepositVerifications',
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('https://api.devbank.apiture.com/accountVerifications/microDepositVerifications', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/accountVerifications/microDepositVerifications");
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", "https://api.devbank.apiture.com/accountVerifications/microDepositVerifications", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
Return a collection of micro-deposit verification resources
GET /microDepositVerifications
Return a paginated sortable filterable searchable collection of micro-deposit verifications. The links in the response include pagination links.
Parameters
Parameter | Description |
---|---|
start (query) |
integer(int64) The zero-based index of the first institution item to include in this page. The default 0 denotes the beginning of the collection. |
limit (query) |
integer(int32) The maximum number of institution representations to return in this page. Default: 100 |
sortBy (query) |
string Optional sort criteria. See sort criteria format, such as ?sortBy=field1,-field2 . |
filter (query) |
string Optional filter criteria. See filtering. |
q (query) |
string Optional search string. See searching. |
externalAccount (query) |
string Return verifications for the external account identified by this query parameter. The value is the unique _id or URL of an external account. |
Try It
Example responses
200 Response
{
"_profile": "https://production.api.apiture.com/schemas/common/abstractResource/v2.1.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/applications/application/328f6bf6-d762-422f-a077-ab91ca4d0b6f"
}
}
}
Responses
Status | Description |
---|---|
200 | OK |
OK. | |
Schema: microDepositVerifications |
Status | Description |
---|---|
400 | Bad Request |
Bad Request. 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 |
Status | Description |
---|---|
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 |
Status | Description |
---|---|
501 | Not Implemented |
The financial institution has disabled API verification. Use the user interface integration instead. | |
Schema: errorResponse |
createMicroDepositVerification
Code samples
# You can also use wget
curl -X POST https://api.devbank.apiture.com/accountVerifications/microDepositVerifications \
-H 'Content-Type: application/hal+json' \
-H 'Accept: application/hal+json' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
POST https://api.devbank.apiture.com/accountVerifications/microDepositVerifications HTTP/1.1
Host: api.devbank.apiture.com
Content-Type: application/hal+json
Accept: application/hal+json
var headers = {
'Content-Type':'application/hal+json',
'Accept':'application/hal+json',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: 'https://api.devbank.apiture.com/accountVerifications/microDepositVerifications',
method: 'post',
headers: headers,
success: function(data) {
console.log(JSON.stringify(data));
}
})
const fetch = require('node-fetch');
const inputBody = '{
"_profile": "https://production.api.apiture.com/schemas/accountVerifications/createMicroDepositVerification/v1.0.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/applications/"
}
},
"routingNumber": "054100318",
"accountNumbers": {
"full": "7432172992"
},
"ifxType": "SDA"
}';
const headers = {
'Content-Type':'application/hal+json',
'Accept':'application/hal+json',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
fetch('https://api.devbank.apiture.com/accountVerifications/microDepositVerifications',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/hal+json',
'Accept' => 'application/hal+json',
'API-Key' => 'API_KEY',
'Authorization' => 'Bearer {access-token}'
}
result = RestClient.post 'https://api.devbank.apiture.com/accountVerifications/microDepositVerifications',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': 'application/hal+json',
'Accept': 'application/hal+json',
'API-Key': 'API_KEY',
'Authorization': 'Bearer {access-token}'
}
r = requests.post('https://api.devbank.apiture.com/accountVerifications/microDepositVerifications', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/accountVerifications/microDepositVerifications");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
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{
"Content-Type": []string{"application/hal+json"},
"Accept": []string{"application/hal+json"},
"API-Key": []string{"API_KEY"},
"Authorization": []string{"Bearer {access-token}"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://api.devbank.apiture.com/accountVerifications/microDepositVerifications", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
Create a new micro-deposit verification resource
POST /microDepositVerifications
This operation is used to verify an account using micro-deposits. The verification must contain full unmasked account numbers.
Body parameter
{
"_profile": "https://production.api.apiture.com/schemas/accountVerifications/createMicroDepositVerification/v1.0.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/applications/"
}
},
"routingNumber": "054100318",
"accountNumbers": {
"full": "7432172992"
},
"ifxType": "SDA"
}
Parameters
Parameter | Description |
---|---|
body (body) |
createMicroDepositVerification (required) The data necessary to create a new account verification. |
Try It
Example responses
201 Response
{
"_profile": "https://production.api.apiture.com/accountVerifications/microDepositVerification/v1.0.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/microDepositVerifications/03abd-30f65c"
},
"apiture:externalAccounts": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/microDepositVerifications/03abd-30f65c/accounts"
},
"apiture:verificationReport": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/verificationReports?verification=03abd-30f65c"
},
"apiture:externalAccount": {
"href": "https://api.devbank.apiture.com/accountVerifications/accounts/externalAccounts/03abd-30f65c"
}
},
"state": "verified"
}
Responses
Status | Description |
---|---|
201 | Created |
Created. | |
Schema: microDepositVerification |
Status | Description |
---|---|
400 | Bad Request |
Bad Request. 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 |
Status | Description |
---|---|
409 | Conflict |
Conflict. An account verification that matches the request already exists. The This error response may have one of the following |
Status | Description |
---|---|
501 | Not Implemented |
The financial institution has disabled API verification. Use the user interface integration instead. | |
Schema: errorResponse |
Response Headers
Status | Description |
---|---|
201 | Location string uri |
The URI of the new resource. If the URI begins with / it is relative to the API root context. Else, it is a full URI starting with scheme ://host . | |
201 | 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 the resource. |
getMicroDepositVerification
Code samples
# You can also use wget
curl -X GET https://api.devbank.apiture.com/accountVerifications/microDepositVerifications/{verificationId} \
-H 'Accept: application/hal+json' \
-H 'If-None-Match: string' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
GET https://api.devbank.apiture.com/accountVerifications/microDepositVerifications/{verificationId} HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/hal+json
If-None-Match: string
var headers = {
'Accept':'application/hal+json',
'If-None-Match':'string',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: 'https://api.devbank.apiture.com/accountVerifications/microDepositVerifications/{verificationId}',
method: 'get',
headers: headers,
success: function(data) {
console.log(JSON.stringify(data));
}
})
const fetch = require('node-fetch');
const headers = {
'Accept':'application/hal+json',
'If-None-Match':'string',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
fetch('https://api.devbank.apiture.com/accountVerifications/microDepositVerifications/{verificationId}',
{
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',
'If-None-Match' => 'string',
'API-Key' => 'API_KEY',
'Authorization' => 'Bearer {access-token}'
}
result = RestClient.get 'https://api.devbank.apiture.com/accountVerifications/microDepositVerifications/{verificationId}',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/hal+json',
'If-None-Match': 'string',
'API-Key': 'API_KEY',
'Authorization': 'Bearer {access-token}'
}
r = requests.get('https://api.devbank.apiture.com/accountVerifications/microDepositVerifications/{verificationId}', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/accountVerifications/microDepositVerifications/{verificationId}");
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"},
"If-None-Match": []string{"string"},
"API-Key": []string{"API_KEY"},
"Authorization": []string{"Bearer {access-token}"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "https://api.devbank.apiture.com/accountVerifications/microDepositVerifications/{verificationId}", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
Fetch a representation of this micro-deposit verification resource
GET /microDepositVerifications/{verificationId}
Return a HAL representation of this account verification resource.
Parameters
Parameter | Description |
---|---|
verificationId (path) |
string (required) The unique identifier of this account verification. This is an opaque string. |
If-None-Match (header) |
string The entity tag that was returned in the ETag response. If the resource's current entity tag matches, the GET will return 304 (Not Modified) and no response body, else the resource representation will be returned. |
Try It
Example responses
200 Response
{
"_profile": "https://production.api.apiture.com/accountVerifications/microDepositVerification/v1.0.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/microDepositVerifications/03abd-30f65c"
},
"apiture:externalAccounts": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/microDepositVerifications/03abd-30f65c/accounts"
},
"apiture:verificationReport": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/verificationReports?verification=03abd-30f65c"
},
"apiture:externalAccount": {
"href": "https://api.devbank.apiture.com/accountVerifications/accounts/externalAccounts/03abd-30f65c"
}
},
"state": "verified"
}
Responses
Status | Description |
---|---|
200 | OK |
OK. | |
Schema: microDepositVerification |
Status | Description |
---|---|
304 | Not Modified |
Not Modified. The resource has not been modified since it was last fetched. |
Status | Description |
---|---|
404 | Not Found |
Not Found. There is no such account verification resource at the specified This error response may have one of the following | |
Schema: errorResponse |
Status | Description |
---|---|
501 | Not Implemented |
The financial institution has disabled API verification. Use the user interface integration instead. | |
Schema: errorResponse |
Response Headers
Status | Description |
---|---|
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 institution resource. |
patchMicroDepositVerification
Code samples
# You can also use wget
curl -X PATCH https://api.devbank.apiture.com/accountVerifications/microDepositVerifications/{verificationId} \
-H 'Content-Type: application/hal+json' \
-H 'Accept: application/hal+json' \
-H 'If-Match: string' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
PATCH https://api.devbank.apiture.com/accountVerifications/microDepositVerifications/{verificationId} HTTP/1.1
Host: api.devbank.apiture.com
Content-Type: application/hal+json
Accept: application/hal+json
If-Match: string
var headers = {
'Content-Type':'application/hal+json',
'Accept':'application/hal+json',
'If-Match':'string',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: 'https://api.devbank.apiture.com/accountVerifications/microDepositVerifications/{verificationId}',
method: 'patch',
headers: headers,
success: function(data) {
console.log(JSON.stringify(data));
}
})
const fetch = require('node-fetch');
const inputBody = '{
"_profile": "https://production.api.apiture.com/accountVerifications/microDepositVerification/v1.0.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/microDepositVerifications/03abd-30f65c"
},
"apiture:externalAccounts": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/microDepositVerifications/03abd-30f65c/accounts"
},
"apiture:verificationReport": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/verificationReports?verification=03abd-30f65c"
},
"apiture:externalAccount": {
"href": "https://api.devbank.apiture.com/accountVerifications/accounts/externalAccounts/03abd-30f65c"
}
},
"state": "verified"
}';
const headers = {
'Content-Type':'application/hal+json',
'Accept':'application/hal+json',
'If-Match':'string',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
fetch('https://api.devbank.apiture.com/accountVerifications/microDepositVerifications/{verificationId}',
{
method: 'PATCH',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/hal+json',
'Accept' => 'application/hal+json',
'If-Match' => 'string',
'API-Key' => 'API_KEY',
'Authorization' => 'Bearer {access-token}'
}
result = RestClient.patch 'https://api.devbank.apiture.com/accountVerifications/microDepositVerifications/{verificationId}',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': 'application/hal+json',
'Accept': 'application/hal+json',
'If-Match': 'string',
'API-Key': 'API_KEY',
'Authorization': 'Bearer {access-token}'
}
r = requests.patch('https://api.devbank.apiture.com/accountVerifications/microDepositVerifications/{verificationId}', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/accountVerifications/microDepositVerifications/{verificationId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("PATCH");
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{
"Content-Type": []string{"application/hal+json"},
"Accept": []string{"application/hal+json"},
"If-Match": []string{"string"},
"API-Key": []string{"API_KEY"},
"Authorization": []string{"Bearer {access-token}"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("PATCH", "https://api.devbank.apiture.com/accountVerifications/microDepositVerifications/{verificationId}", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
Update this micro-deposit verification resource
PATCH /microDepositVerifications/{verificationId}
Perform a partial update of this micro-deposit verification resource. To associate this account verification with an external account resource, include an apiture:externalAccount
link inside the _links
collection, with the link's href
set to that external account's URL.
Body parameter
{
"_profile": "https://production.api.apiture.com/accountVerifications/microDepositVerification/v1.0.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/microDepositVerifications/03abd-30f65c"
},
"apiture:externalAccounts": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/microDepositVerifications/03abd-30f65c/accounts"
},
"apiture:verificationReport": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/verificationReports?verification=03abd-30f65c"
},
"apiture:externalAccount": {
"href": "https://api.devbank.apiture.com/accountVerifications/accounts/externalAccounts/03abd-30f65c"
}
},
"state": "verified"
}
Parameters
Parameter | Description |
---|---|
verificationId (path) |
string (required) The unique identifier of this account verification. This is an opaque string. |
If-Match (header) |
string The entity tag that was returned in the ETag response. This must match the current entity tag of the resource. |
body (body) |
microDepositVerification (required) The data necessary to update a micro-deposit verification resource. |
Try It
Example responses
200 Response
{
"_profile": "https://production.api.apiture.com/accountVerifications/microDepositVerification/v1.0.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/microDepositVerifications/03abd-30f65c"
},
"apiture:externalAccounts": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/microDepositVerifications/03abd-30f65c/accounts"
},
"apiture:verificationReport": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/verificationReports?verification=03abd-30f65c"
},
"apiture:externalAccount": {
"href": "https://api.devbank.apiture.com/accountVerifications/accounts/externalAccounts/03abd-30f65c"
}
},
"state": "verified"
}
Responses
Status | Description |
---|---|
200 | OK |
OK. | |
Schema: microDepositVerification |
Status | Description |
---|---|
400 | Bad Request |
Bad Request. One or more of the query parameters was not well formed. The This error response may have one of the following | |
Schema: errorResponse |
Status | Description |
---|---|
403 | Forbidden |
Forbidden. The user is not entitled to the target external account. |
Status | Description |
---|---|
404 | Not Found |
Not Found. There is no such account verification resource at the specified This error response may have one of the following | |
Schema: errorResponse |
Status | Description |
---|---|
500 | Internal Server Error |
Server Error. Fatal error has occurred. | |
Schema: errorResponse |
Status | Description |
---|---|
501 | Not Implemented |
The financial institution has disabled API verification. Use the user interface integration instead. | |
Schema: errorResponse |
Response Headers
Status | Description |
---|---|
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 institution resource. |
verifyMicroDepositAmounts
Code samples
# You can also use wget
curl -X POST https://api.devbank.apiture.com/accountVerifications/microDepositVerifications/{verificationId} \
-H 'Content-Type: application/hal+json' \
-H 'Accept: application/hal+json' \
-H 'If-Match: string' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
POST https://api.devbank.apiture.com/accountVerifications/microDepositVerifications/{verificationId} HTTP/1.1
Host: api.devbank.apiture.com
Content-Type: application/hal+json
Accept: application/hal+json
If-Match: string
var headers = {
'Content-Type':'application/hal+json',
'Accept':'application/hal+json',
'If-Match':'string',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: 'https://api.devbank.apiture.com/accountVerifications/microDepositVerifications/{verificationId}',
method: 'post',
headers: headers,
success: function(data) {
console.log(JSON.stringify(data));
}
})
const fetch = require('node-fetch');
const inputBody = '{
"_profile": "https://production.api.apiture.com/schemas/common/abstractResource/v2.1.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/applications/application/328f6bf6-d762-422f-a077-ab91ca4d0b6f"
}
},
"amounts": {
"0": {
"value": ".02",
"currency": "USD",
"baseType": "credit"
},
"1": {
"value": ".04",
"currency": "USD",
"baseType": "credit"
},
"2": {
"value": ".06",
"currency": "USD",
"baseType": "debit"
}
}
}';
const headers = {
'Content-Type':'application/hal+json',
'Accept':'application/hal+json',
'If-Match':'string',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
fetch('https://api.devbank.apiture.com/accountVerifications/microDepositVerifications/{verificationId}',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/hal+json',
'Accept' => 'application/hal+json',
'If-Match' => 'string',
'API-Key' => 'API_KEY',
'Authorization' => 'Bearer {access-token}'
}
result = RestClient.post 'https://api.devbank.apiture.com/accountVerifications/microDepositVerifications/{verificationId}',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': 'application/hal+json',
'Accept': 'application/hal+json',
'If-Match': 'string',
'API-Key': 'API_KEY',
'Authorization': 'Bearer {access-token}'
}
r = requests.post('https://api.devbank.apiture.com/accountVerifications/microDepositVerifications/{verificationId}', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/accountVerifications/microDepositVerifications/{verificationId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
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{
"Content-Type": []string{"application/hal+json"},
"Accept": []string{"application/hal+json"},
"If-Match": []string{"string"},
"API-Key": []string{"API_KEY"},
"Authorization": []string{"Bearer {access-token}"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://api.devbank.apiture.com/accountVerifications/microDepositVerifications/{verificationId}", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
Verify micro-deposit amounts
POST /microDepositVerifications/{verificationId}
Complete the verification by providing the amount values from the micro-deposit transactions.
Body parameter
{
"_profile": "https://production.api.apiture.com/schemas/common/abstractResource/v2.1.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/applications/application/328f6bf6-d762-422f-a077-ab91ca4d0b6f"
}
},
"amounts": {
"0": {
"value": ".02",
"currency": "USD",
"baseType": "credit"
},
"1": {
"value": ".04",
"currency": "USD",
"baseType": "credit"
},
"2": {
"value": ".06",
"currency": "USD",
"baseType": "debit"
}
}
}
Parameters
Parameter | Description |
---|---|
verificationId (path) |
string (required) The unique identifier of this account verification. This is an opaque string. |
If-Match (header) |
string The entity tag that was returned in the ETag response. This must match the current entity tag of the resource. |
body (body) |
microDepositVerificationAmounts (required) The amounts from a micro-deposit. |
Try It
Example responses
200 Response
{
"_profile": "https://production.api.apiture.com/accountVerifications/microDepositVerification/v1.0.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/microDepositVerifications/03abd-30f65c"
},
"apiture:externalAccounts": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/microDepositVerifications/03abd-30f65c/accounts"
},
"apiture:verificationReport": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/verificationReports?verification=03abd-30f65c"
},
"apiture:externalAccount": {
"href": "https://api.devbank.apiture.com/accountVerifications/accounts/externalAccounts/03abd-30f65c"
}
},
"state": "verified"
}
Responses
Status | Description |
---|---|
200 | OK |
OK. | |
Schema: microDepositVerification |
Status | Description |
---|---|
404 | Not Found |
Not Found. There is no such account verification resource at the specified This error response may have one of the following | |
Schema: errorResponse |
Status | Description |
---|---|
501 | Not Implemented |
The financial institution has disabled API verification. Use the user interface integration instead. | |
Schema: errorResponse |
Response Headers
Status | Description |
---|---|
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 institution resource. |
getMicroDepositVerificationAccounts
Code samples
# You can also use wget
curl -X GET https://api.devbank.apiture.com/accountVerifications/microDepositVerifications/{verificationId}/accounts \
-H 'Accept: application/hal+json' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
GET https://api.devbank.apiture.com/accountVerifications/microDepositVerifications/{verificationId}/accounts HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/hal+json
var headers = {
'Accept':'application/hal+json',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: 'https://api.devbank.apiture.com/accountVerifications/microDepositVerifications/{verificationId}/accounts',
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('https://api.devbank.apiture.com/accountVerifications/microDepositVerifications/{verificationId}/accounts',
{
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 'https://api.devbank.apiture.com/accountVerifications/microDepositVerifications/{verificationId}/accounts',
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('https://api.devbank.apiture.com/accountVerifications/microDepositVerifications/{verificationId}/accounts', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/accountVerifications/microDepositVerifications/{verificationId}/accounts");
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", "https://api.devbank.apiture.com/accountVerifications/microDepositVerifications/{verificationId}/accounts", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
Returns a collection of external accounts related to this verification resource
GET /microDepositVerifications/{verificationId}/accounts
Once a verification is successful, this operation retrieves the accounts associated with it. The response includes the external account entities pertaining to the verification.
Parameters
Parameter | Description |
---|---|
verificationId (path) |
string (required) The unique identifier of this account verification. This is an opaque string. |
Try It
Example responses
200 Response
{
"_profile": "https://production.api.apiture.com/schemas/accountVerifications/simpleExternalAccounts/v1.1.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/instantVerifications/03abd-30f65c/accounts"
}
},
"externalAccounts": {
"0": {
"id": "03abd-30f65c",
"name": "My account at 3rdParty Bank",
"_profile": "https://production.api.apiture.com/schemas/accountVerifications/simpleExternalAccount/v1.1.0/profile.json",
"ifxType": "SDA",
"routingNumber": "021000021",
"accountNumbers": {
"masked": "*************3210"
}
}
}
}
Responses
Status | Description |
---|---|
200 | OK |
OK. | |
Schema: simpleExternalAccounts |
Status | Description |
---|---|
400 | Bad Request |
Bad Request. 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 |
Status | Description |
---|---|
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 |
Status | Description |
---|---|
501 | Not Implemented |
The financial institution has disabled API verification. Use the user interface integration instead. | |
Schema: errorResponse |
getInstantVerifications
Code samples
# You can also use wget
curl -X GET https://api.devbank.apiture.com/accountVerifications/instantVerifications \
-H 'Accept: application/hal+json' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
GET https://api.devbank.apiture.com/accountVerifications/instantVerifications HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/hal+json
var headers = {
'Accept':'application/hal+json',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: 'https://api.devbank.apiture.com/accountVerifications/instantVerifications',
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('https://api.devbank.apiture.com/accountVerifications/instantVerifications',
{
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 'https://api.devbank.apiture.com/accountVerifications/instantVerifications',
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('https://api.devbank.apiture.com/accountVerifications/instantVerifications', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/accountVerifications/instantVerifications");
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", "https://api.devbank.apiture.com/accountVerifications/instantVerifications", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
Return a collection of instant verifications
GET /instantVerifications
Return a paginated sortable filterable searchable collection of account verifications. The links in the response include pagination links.
Parameters
Parameter | Description |
---|---|
start (query) |
integer(int64) The zero-based index of the first instant verification item to include in this page. The default 0 denotes the beginning of the collection. |
limit (query) |
integer(int32) The maximum number of instant verification representations to return in this page. Default: 100 |
sortBy (query) |
string Optional sort criteria. See sort criteria format, such as ?sortBy=field1,-field2 . |
filter (query) |
string Optional filter criteria. See filtering. |
q (query) |
string Optional search string. See searching. |
externalAccount (query) |
string Return verifications for the external account identified by this query parameter. The value is the unique _id or URL of an external account. |
Try It
Example responses
200 Response
{
"_profile": "https://production.api.apiture.com/schemas/accountVerifications/instantVerifications/v1.1.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/applications/application/328f6bf6-d762-422f-a077-ab91ca4d0b6f"
}
}
}
Responses
Status | Description |
---|---|
200 | OK |
OK. | |
Schema: instantVerifications |
Status | Description |
---|---|
400 | Bad Request |
Bad Request. 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 |
Status | Description |
---|---|
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 |
createInstantVerification
Code samples
# You can also use wget
curl -X POST https://api.devbank.apiture.com/accountVerifications/instantVerifications \
-H 'Content-Type: application/hal+json' \
-H 'Accept: application/hal+json' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
POST https://api.devbank.apiture.com/accountVerifications/instantVerifications HTTP/1.1
Host: api.devbank.apiture.com
Content-Type: application/hal+json
Accept: application/hal+json
var headers = {
'Content-Type':'application/hal+json',
'Accept':'application/hal+json',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: 'https://api.devbank.apiture.com/accountVerifications/instantVerifications',
method: 'post',
headers: headers,
success: function(data) {
console.log(JSON.stringify(data));
}
})
const fetch = require('node-fetch');
const inputBody = '{
"_profile": "https://production.api.apiture.com/schemas/accountVerifications/createInstantVerification/v1.0.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/applications/"
},
"apiture:institution": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/institutions/961ffc1e-27671e"
},
"apiture:contact": {
"href": "https://api.devbank.apiture.com/accountVerifications/contacts/contact/03abd-30f65c"
}
},
"authenticationFields": {
"0": {
"username": {
"value": "user123"
}
},
"1": {
"password": {
"value": "pass123"
}
},
"2": {
"pin": {
"value": "123"
}
}
}
}';
const headers = {
'Content-Type':'application/hal+json',
'Accept':'application/hal+json',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
fetch('https://api.devbank.apiture.com/accountVerifications/instantVerifications',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/hal+json',
'Accept' => 'application/hal+json',
'API-Key' => 'API_KEY',
'Authorization' => 'Bearer {access-token}'
}
result = RestClient.post 'https://api.devbank.apiture.com/accountVerifications/instantVerifications',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': 'application/hal+json',
'Accept': 'application/hal+json',
'API-Key': 'API_KEY',
'Authorization': 'Bearer {access-token}'
}
r = requests.post('https://api.devbank.apiture.com/accountVerifications/instantVerifications', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/accountVerifications/instantVerifications");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
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{
"Content-Type": []string{"application/hal+json"},
"Accept": []string{"application/hal+json"},
"API-Key": []string{"API_KEY"},
"Authorization": []string{"Bearer {access-token}"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://api.devbank.apiture.com/accountVerifications/instantVerifications", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
Create a new instant verification resource
POST /instantVerifications
This type of verification requires to send encrypted login fields to initiate an authentication process with the external financial institution. A GET
to /institutions/{institutionId}/authenticationFields
must be executed to retrieve the required login fields. This operation returns a verification resource with a pending
status. In order to check for status updates, a client must continuously poll the resource via GET
to the /instantVerifications
endpoint.
Body parameter
{
"_profile": "https://production.api.apiture.com/schemas/accountVerifications/createInstantVerification/v1.0.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/applications/"
},
"apiture:institution": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/institutions/961ffc1e-27671e"
},
"apiture:contact": {
"href": "https://api.devbank.apiture.com/accountVerifications/contacts/contact/03abd-30f65c"
}
},
"authenticationFields": {
"0": {
"username": {
"value": "user123"
}
},
"1": {
"password": {
"value": "pass123"
}
},
"2": {
"pin": {
"value": "123"
}
}
}
}
Parameters
Parameter | Description |
---|---|
body (body) |
createInstantVerification (required) The data necessary to create a new account verification. |
Try It
Example responses
201 Response
{
"_profile": "https://production.api.apiture.com/schemas/accountVerifications/instantVerification/v1.1.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/instantVerifications/03abd-30f65c"
},
"apiture:externalAccounts": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/instantVerifications/03abd-30f65c/accounts"
},
"apiture:verificationReport": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/verificationReports?verification=03abd-30f65c"
},
"apiture:contact": {
"href": "https://api.devbank.apiture.com/accountVerifications/contacts/contacts/ef039bdb-5605-4802-b163-d2f7cdbd28ab"
},
"apiture:institution": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/institutions/961ffc1e-27671e"
},
"apiture:externalAccount": {
"href": "https://api.devbank.apiture.com/accountVerifications/accounts/externalAccounts/ee406e5b-7d63fb"
}
},
"_id": "03abd-30f65c",
"state": "pending",
"mfaRequired": true,
"mfaPrompt": {
"0": {
"key": 1,
"type": "TEXT",
"value": "Send code to",
"choices": {
"0": {
"key": 1,
"value": "Mobile XXX-XXX-9771"
},
"1": {
"key": 2,
"value": "Mobile XXX-XXX-9881"
}
}
}
}
}
Responses
Status | Description |
---|---|
201 | Created |
Created. | |
Schema: instantVerification |
Status | Description |
---|---|
400 | Bad Request |
Bad Request. One or more of the query parameters was not well formed. The This error response may have one of the following | |
Schema: errorResponse |
Status | Description |
---|---|
500 | Internal Server Error |
Server Error. Fatal error has occurred. | |
Schema: errorResponse |
Response Headers
Status | Description |
---|---|
201 | Location string uri |
The URI of the new resource. If the URI begins with / it is relative to the API root context. Else, it is a full URI starting with scheme ://host | |
201 | 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 the resource. |
getInstantVerification
Code samples
# You can also use wget
curl -X GET https://api.devbank.apiture.com/accountVerifications/instantVerifications/{verificationId} \
-H 'Accept: application/hal+json' \
-H 'If-None-Match: string' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
GET https://api.devbank.apiture.com/accountVerifications/instantVerifications/{verificationId} HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/hal+json
If-None-Match: string
var headers = {
'Accept':'application/hal+json',
'If-None-Match':'string',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: 'https://api.devbank.apiture.com/accountVerifications/instantVerifications/{verificationId}',
method: 'get',
headers: headers,
success: function(data) {
console.log(JSON.stringify(data));
}
})
const fetch = require('node-fetch');
const headers = {
'Accept':'application/hal+json',
'If-None-Match':'string',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
fetch('https://api.devbank.apiture.com/accountVerifications/instantVerifications/{verificationId}',
{
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',
'If-None-Match' => 'string',
'API-Key' => 'API_KEY',
'Authorization' => 'Bearer {access-token}'
}
result = RestClient.get 'https://api.devbank.apiture.com/accountVerifications/instantVerifications/{verificationId}',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/hal+json',
'If-None-Match': 'string',
'API-Key': 'API_KEY',
'Authorization': 'Bearer {access-token}'
}
r = requests.get('https://api.devbank.apiture.com/accountVerifications/instantVerifications/{verificationId}', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/accountVerifications/instantVerifications/{verificationId}");
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"},
"If-None-Match": []string{"string"},
"API-Key": []string{"API_KEY"},
"Authorization": []string{"Bearer {access-token}"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "https://api.devbank.apiture.com/accountVerifications/instantVerifications/{verificationId}", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
Fetch a representation of this instant verification resource
GET /instantVerifications/{verificationId}
Return a HAL representation of this account verification resource.
Parameters
Parameter | Description |
---|---|
verificationId (path) |
string (required) The unique identifier of this account verification. This is an opaque string. |
If-None-Match (header) |
string The entity tag that was returned in the ETag response. If the resource's current entity tag matches, the GET will return 304 (Not Modified) and no response body, else the resource representation will be returned. |
Try It
Example responses
200 Response
{
"_profile": "https://production.api.apiture.com/schemas/accountVerifications/instantVerification/v1.1.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/instantVerifications/03abd-30f65c"
},
"apiture:externalAccounts": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/instantVerifications/03abd-30f65c/accounts"
},
"apiture:verificationReport": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/verificationReports?verification=03abd-30f65c"
},
"apiture:contact": {
"href": "https://api.devbank.apiture.com/accountVerifications/contacts/contacts/ef039bdb-5605-4802-b163-d2f7cdbd28ab"
},
"apiture:institution": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/institutions/961ffc1e-27671e"
},
"apiture:externalAccount": {
"href": "https://api.devbank.apiture.com/accountVerifications/accounts/externalAccounts/ee406e5b-7d63fb"
}
},
"_id": "03abd-30f65c",
"state": "pending",
"mfaRequired": true,
"mfaPrompt": {
"0": {
"key": 1,
"type": "TEXT",
"value": "Send code to",
"choices": {
"0": {
"key": 1,
"value": "Mobile XXX-XXX-9771"
},
"1": {
"key": 2,
"value": "Mobile XXX-XXX-9881"
}
}
}
}
}
Responses
Status | Description |
---|---|
200 | OK |
OK. | |
Schema: instantVerification |
Status | Description |
---|---|
304 | Not Modified |
Not Modified. The resource has not been modified since it was last fetched. |
Status | Description |
---|---|
404 | Not Found |
Not Found. There is no such account verification resource at the specified This error response may have one of the following | |
Schema: errorResponse |
Status | Description |
---|---|
500 | Internal Server Error |
Server Error. Fatal error has occurred. | |
Schema: errorResponse |
Response Headers
Status | Description |
---|---|
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 instant verification resource. |
updateInstantVerification
Code samples
# You can also use wget
curl -X PATCH https://api.devbank.apiture.com/accountVerifications/instantVerifications/{verificationId} \
-H 'Content-Type: application/hal+json' \
-H 'Accept: application/hal+json' \
-H 'If-Match: string' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
PATCH https://api.devbank.apiture.com/accountVerifications/instantVerifications/{verificationId} HTTP/1.1
Host: api.devbank.apiture.com
Content-Type: application/hal+json
Accept: application/hal+json
If-Match: string
var headers = {
'Content-Type':'application/hal+json',
'Accept':'application/hal+json',
'If-Match':'string',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: 'https://api.devbank.apiture.com/accountVerifications/instantVerifications/{verificationId}',
method: 'patch',
headers: headers,
success: function(data) {
console.log(JSON.stringify(data));
}
})
const fetch = require('node-fetch');
const inputBody = '{
"_profile": "https://production.api.apiture.com/schemas/accountVerifications/updateInstantVerification/v1.1.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/applications/application/328f6bf6-d762-422f-a077-ab91ca4d0b6f"
},
"apiture:institution": {
"href": "https://api.devbank.apiture.com/accountVerifications/institutions/institutions/03abd-30f65c"
},
"apiture:contact": {
"href": "https://api.devbank.apiture.com/accountVerifications/contacts/contact/03abd-30f65c"
}
},
"mfa": {
"answers": {
"0": {
"key": 1,
"value": "Mobile XXX-XXX-9771"
}
}
}
}';
const headers = {
'Content-Type':'application/hal+json',
'Accept':'application/hal+json',
'If-Match':'string',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
fetch('https://api.devbank.apiture.com/accountVerifications/instantVerifications/{verificationId}',
{
method: 'PATCH',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/hal+json',
'Accept' => 'application/hal+json',
'If-Match' => 'string',
'API-Key' => 'API_KEY',
'Authorization' => 'Bearer {access-token}'
}
result = RestClient.patch 'https://api.devbank.apiture.com/accountVerifications/instantVerifications/{verificationId}',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': 'application/hal+json',
'Accept': 'application/hal+json',
'If-Match': 'string',
'API-Key': 'API_KEY',
'Authorization': 'Bearer {access-token}'
}
r = requests.patch('https://api.devbank.apiture.com/accountVerifications/instantVerifications/{verificationId}', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/accountVerifications/instantVerifications/{verificationId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("PATCH");
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{
"Content-Type": []string{"application/hal+json"},
"Accept": []string{"application/hal+json"},
"If-Match": []string{"string"},
"API-Key": []string{"API_KEY"},
"Authorization": []string{"Bearer {access-token}"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("PATCH", "https://api.devbank.apiture.com/accountVerifications/instantVerifications/{verificationId}", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
Update this instant verification resource
PATCH /instantVerifications/{verificationId}
This operation must be used to update a verification resource waiting for user input, that is when the mfaRequired
field is set to true and the state of the resource is pending
. To associate this account verification with an external account resource, include an apiture:externalAccount
link inside the _links
collection, with the link's href
set to that external account's URL.
Body parameter
{
"_profile": "https://production.api.apiture.com/schemas/accountVerifications/updateInstantVerification/v1.1.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/applications/application/328f6bf6-d762-422f-a077-ab91ca4d0b6f"
},
"apiture:institution": {
"href": "https://api.devbank.apiture.com/accountVerifications/institutions/institutions/03abd-30f65c"
},
"apiture:contact": {
"href": "https://api.devbank.apiture.com/accountVerifications/contacts/contact/03abd-30f65c"
}
},
"mfa": {
"answers": {
"0": {
"key": 1,
"value": "Mobile XXX-XXX-9771"
}
}
}
}
Parameters
Parameter | Description |
---|---|
verificationId (path) |
string (required) The unique identifier of this account verification. This is an opaque string. |
If-Match (header) |
string The entity tag that was returned in the ETag response. This must match the current entity tag of the resource. |
body (body) |
updateInstantVerification (required) The data necessary to update an instant verification resource. |
Try It
Example responses
200 Response
{
"_profile": "https://production.api.apiture.com/schemas/accountVerifications/instantVerification/v1.1.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/accountVerifications/instantVerifications/03abd-30f65c"
},
"apiture:externalAccounts": {
"href": "https://api.devbank.apiture.com/accountVerifications/instantVerifications/03abd-30f65c/accounts"
},
"apiture:verificationReport": {
"href": "https://api.devbank.apiture.com/accountVerifications/verificationReports?verification=03abd-30f65c"
},
"apiture:externalAccount": {
"href": "https://api.devbank.apiture.com/accountVerifications/accounts/externalAccounts/ee406e5b-7d63fb"
}
},
"state": "pending",
"mfaRequired": true,
"mfaPrompt": [
{
"key": 1,
"type": "TEXT",
"value": "Input the received code"
}
]
}
Responses
Status | Description |
---|---|
200 | OK |
OK. | |
Schema: Inline |
Status | Description |
---|---|
400 | Bad Request |
Bad Request. One or more of the query parameters was not well formed. The This error response may have one of the following | |
Schema: errorResponse |
Status | Description |
---|---|
403 | Forbidden |
Forbidden. The user is not entitled to the target external account. |
Status | Description |
---|---|
404 | Not Found |
Not Found. There is no such account verification resource at the specified This error response may have one of the following | |
Schema: errorResponse |
Status | Description |
---|---|
500 | Internal Server Error |
Server Error. Fatal error has occurred. | |
Schema: errorResponse |
Response Schema
Status Code 200
Property Name | Description |
---|---|
» _links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations. This schema was resolved from common/links . |
»» Link (v1.0.0) | 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. This schema was resolved from common/link . |
»»» 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. |
»» _embedded | object The objects which participate in this verification resource. |
»» _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. |
»»» 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. |
»»»» Error (v2.1.0) | error Describes an error in an API request or in a service called via the API. This schema was resolved from common/error . |
»»»»» 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. This schema was resolved from common/links . |
»»»» _links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations. This schema was resolved from common/links . |
»»» _id | string The unique identifier for this resource. This is an immutable opaque string. |
»»» state | string The state of the verification, one of the following: * pending - account verification is pending * mfaPending - multi-factor authentication is pending * mfaSubmitted - multi-factor authentication has been submitted * verified - the account verification succeeded * failed - the account verification failed |
»»» completedAt | string(date-time) An ISO 8601 UTC time stamp indicating when the verification completed (has a status different from pending). |
»»» createdAt | string(date-time) An ISO 8601 UTC time stamp indicating when the verification report was created. |
»»» mfaRequired | boolean Indicates if multi-factor authentication (MFA) is required. |
»»» mfaPrompt | [question] Representation of a multi-factor authentication challenge. |
»»»» MFA Question (v1.0.0) | question Representation of a multi-factor authentication question. The supported question formats are text and image, in which case the encoded payload is available under the content field. |
»»»»» key | string (required) The unique key for this question's fields. |
»»»»» content | string The question's content: the token value, or image URI. |
»»»»» _links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations. This schema was resolved from common/links . |
»»»»» choices | [choice] Optional array of choices for this question. |
»»»»»» MFA Choice (v1.0.0) | choice Representation of question choice. |
»»»»»»» type | string The user interface type of choice. |
»»»»»»» key | string The choice's unique key. |
»»»»»»» value | string The choice's value. |
»»»»»»» content | string The content specific to this choice. |
»»»»»»» _links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations. This schema was resolved from common/links . |
»»»»»» type | string The question type. |
»»»»»» value | string The question text. |
»»»»» stateMessages | [object] An array of messages providing additional information of the status of the verification. |
Enumerated Values
Property | Value |
---|---|
state | pending |
state | mfaPending |
state | mfaSubmitted |
state | verified |
state | failed |
type | image |
type | text |
type | option |
type | checkbox |
type | radio |
type | question |
type | token |
type | image |
Response Headers
Status | Description |
---|---|
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 instant verification resource. |
getInstantVerificationAccounts
Code samples
# You can also use wget
curl -X GET https://api.devbank.apiture.com/accountVerifications/instantVerifications/{verificationId}/accounts \
-H 'Accept: application/hal+json' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
GET https://api.devbank.apiture.com/accountVerifications/instantVerifications/{verificationId}/accounts HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/hal+json
var headers = {
'Accept':'application/hal+json',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: 'https://api.devbank.apiture.com/accountVerifications/instantVerifications/{verificationId}/accounts',
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('https://api.devbank.apiture.com/accountVerifications/instantVerifications/{verificationId}/accounts',
{
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 'https://api.devbank.apiture.com/accountVerifications/instantVerifications/{verificationId}/accounts',
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('https://api.devbank.apiture.com/accountVerifications/instantVerifications/{verificationId}/accounts', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/accountVerifications/instantVerifications/{verificationId}/accounts");
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", "https://api.devbank.apiture.com/accountVerifications/instantVerifications/{verificationId}/accounts", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
Returns a collection of external accounts related to this verification resource
GET /instantVerifications/{verificationId}/accounts
Once a verification is successful, this operation retrieves the accounts associated with it. The response includes an array of embedded external account entities pertaining to the verified FI account.
Parameters
Parameter | Description |
---|---|
verificationId (path) |
string (required) The unique identifier of this account verification. 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. |
Try It
Example responses
200 Response
{
"_profile": "https://production.api.apiture.com/schemas/accountVerifications/simpleExternalAccounts/v1.1.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/instantVerifications/03abd-30f65c/accounts"
}
},
"externalAccounts": {
"0": {
"id": "03abd-30f65c",
"name": "My account at 3rdParty Bank",
"_profile": "https://production.api.apiture.com/schemas/accountVerifications/simpleExternalAccount/v1.1.0/profile.json",
"ifxType": "SDA",
"routingNumber": "021000021",
"accountNumbers": {
"masked": "*************3210"
}
}
}
}
Responses
Status | Description |
---|---|
200 | OK |
OK. | |
Schema: simpleExternalAccounts |
Status | Description |
---|---|
400 | Bad Request |
Bad Request. One or more of the query parameters was not well formed. The This error response may have one of the following | |
Schema: errorResponse |
Status | Description |
---|---|
404 | Not Found |
Not Found. There is no such account verification resource at the specified This error response may have one of the following | |
Schema: errorResponse |
Status | Description |
---|---|
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 |
Status | Description |
---|---|
500 | Internal Server Error |
Server Error. Fatal error has occurred. | |
Schema: errorResponse |
Status | Description |
---|---|
501 | Not Implemented |
The financial institution has disabled API verification. Use the user interface integration instead. | |
Schema: errorResponse |
Verification Report
Account Verification Reports
createVerificationReport
Code samples
# You can also use wget
curl -X POST https://api.devbank.apiture.com/accountVerifications/verificationReports?verification=string \
-H 'Accept: application/hal+json' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
POST https://api.devbank.apiture.com/accountVerifications/verificationReports?verification=string HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/hal+json
var headers = {
'Accept':'application/hal+json',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: 'https://api.devbank.apiture.com/accountVerifications/verificationReports',
method: 'post',
data: '?verification=string',
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('https://api.devbank.apiture.com/accountVerifications/verificationReports?verification=string',
{
method: 'POST',
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.post 'https://api.devbank.apiture.com/accountVerifications/verificationReports',
params: {
'verification' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/hal+json',
'API-Key': 'API_KEY',
'Authorization': 'Bearer {access-token}'
}
r = requests.post('https://api.devbank.apiture.com/accountVerifications/verificationReports', params={
'verification': 'string'
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/accountVerifications/verificationReports?verification=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
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("POST", "https://api.devbank.apiture.com/accountVerifications/verificationReports", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
Create a new verification report resource
POST /verificationReports
A verification report is an additional layer of validation that can be run against a verification resource. It uses available account aggregation data from an external provider to generate a pass/fail result based on pre-configured risk factors. This operation does not create a new persistent resource; the report is transient and returned in the response body only.
Parameters
Parameter | Description |
---|---|
verification (query) |
string (required) A string which identifies a specific verification resource. The value may be a {verificationId} or a verification URI. |
Try It
Example responses
200 Response
{
"state": "failed",
"accountRiskFactors": {
"0": {
"riskCode": 101,
"description": "Account owner first name does not match"
},
"1": {
"riskCode": 102,
"description": "Account owner last name does not match"
},
"2": {
"riskCode": 103,
"description": "Account owner zip code does not match"
}
}
}
Responses
Status | Description |
---|---|
200 | OK |
OK. | |
Schema: verificationReport |
Status | Description |
---|---|
400 | Bad Request |
Bad Request. One or more of the query parameters was not well formed. The This error response may have one of the following | |
Schema: errorResponse |
Status | Description |
---|---|
404 | Not Found |
Not Found. There is no resource at the specified This error response may have one of the following | |
Schema: errorResponse |
Status | Description |
---|---|
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 |
Status | Description |
---|---|
500 | Internal Server Error |
Server Error. Fatal error has occurred. | |
Schema: errorResponse |
Status | Description |
---|---|
501 | Not Implemented |
The financial institution has disabled API verification. Use the user interface integration instead. | |
Schema: errorResponse |
Institutions
Information about Financial Institutions
getInstitutions
Code samples
# You can also use wget
curl -X GET https://api.devbank.apiture.com/accountVerifications/institutions \
-H 'Accept: application/hal+json' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
GET https://api.devbank.apiture.com/accountVerifications/institutions HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/hal+json
var headers = {
'Accept':'application/hal+json',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: 'https://api.devbank.apiture.com/accountVerifications/institutions',
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('https://api.devbank.apiture.com/accountVerifications/institutions',
{
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 'https://api.devbank.apiture.com/accountVerifications/institutions',
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('https://api.devbank.apiture.com/accountVerifications/institutions', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/accountVerifications/institutions");
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", "https://api.devbank.apiture.com/accountVerifications/institutions", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
Return a collection of institutions
GET /institutions
Return a paginated sortable filterable searchable collection of registered external financial institutions. This list is supplied by a third party and is immutable (there are no operations to add, modify, or remove institutions). The links in the response include pagination links.
In addition to the standard sorting mechanisms, it is possible to sort institutions by popularity by using the popularity
criteria, such as ?sortBy=popularity
.
Parameters
Parameter | Description |
---|---|
start (query) |
integer(int64) The zero-based index of the first institution item to include in this page. The default 0 denotes the beginning of the collection. |
limit (query) |
integer(int32) The maximum number of financial institution representations to return in this page. Default: 100 |
sortBy (query) |
string Optional sort criteria. See sort criteria format, such as ?sortBy=field1,-field2 .This collection may be sorted by the following properties: • name • label . |
filter (query) |
string Optional filter criteria. See filtering. This collection may be filtered by the following properties and functions: • Property name using functions eq , ne , lt , le , gt , ge , startsWith , endsWith , contains , search • Property label using functions eq , ne , lt , le , gt , ge , startsWith , endsWith , contains , search • Property _id using functions eq , in • Property featured using functions eq . |
q (query) |
string Optional search string. See searching. |
name (query) |
string Subset the institutions collection to those with this name value. Use | to separate multiple values. For example, ?name=Bartell will match only items whose name is Bartell; ?name=Bartell|kirsten will match items whose name is Bartell or kirsten. This is combined with an implicit and with other filters if they are used. See filtering. |
label (query) |
string Subset the institutions collection to those with this label value. Use | to separate multiple values. For example, ?label=email_verification matches only items whose label is email_verification ; ?label=email_verification|account_verification will match items whose label is email_verification or account_verification . This is combined with an implicit and with other filters if they are used. See filtering. |
Try It
Example responses
200 Response
{
"_profile": "https://production.api.apiture.com/schemas/accountVerifications/institutions/v1.1.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/institutions?start=10&limit=10"
},
"first": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/institutions?start=0&limit=10"
},
"next": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/institutions?start=20&limit=10"
},
"collection": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/institutions"
}
},
"start": 10,
"limit": 10,
"count": 67,
"name": "external institutions",
"_embedded": {
"items": {
"0": {
"_id": "03abd-30f65c",
"name": "Example Banks, Inc",
"_profile": "https://production.api.apiture.com/schemas/accountVerifications/institution/v1.1.0/profile.json",
"label": "Banks",
"featured": true,
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/institution/0399abed-30f35d"
},
"icon": {
"href": "http://d111111abcdef8.cloudfront.net/images/image2.jpg"
},
"home": {
"href": "https://bank.example.com/"
}
}
},
"1": {
"_id": "0399abed-30f35d",
"name": "Example Bank.",
"_profile": "https://production.api.apiture.com/schemas/accountVerifications/institution/v1.1.0/profile.json",
"label": "Example Bank",
"featured": true,
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/institution/0399abed-30f35d"
},
"icon": {
"href": "http://d111111abcdef8.cloudfront.net/images/image2.jpg"
},
"home": {
"href": "https://bank.example.com/"
}
}
}
}
}
}
Responses
Status | Description |
---|---|
200 | OK |
OK. | |
Schema: institutions |
Status | Description |
---|---|
400 | Bad Request |
Bad Request. One or more of the query parameters was not well formed. The This error response may have one of the following | |
Schema: errorResponse |
Status | Description |
---|---|
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 |
Status | Description |
---|---|
501 | Not Implemented |
The financial institution has disabled API verification. Use the user interface integration instead. | |
Schema: errorResponse |
getInstitution
Code samples
# You can also use wget
curl -X GET https://api.devbank.apiture.com/accountVerifications/institutions/{institutionId} \
-H 'Accept: application/hal+json' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
GET https://api.devbank.apiture.com/accountVerifications/institutions/{institutionId} HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/hal+json
var headers = {
'Accept':'application/hal+json',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: 'https://api.devbank.apiture.com/accountVerifications/institutions/{institutionId}',
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('https://api.devbank.apiture.com/accountVerifications/institutions/{institutionId}',
{
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 'https://api.devbank.apiture.com/accountVerifications/institutions/{institutionId}',
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('https://api.devbank.apiture.com/accountVerifications/institutions/{institutionId}', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/accountVerifications/institutions/{institutionId}");
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", "https://api.devbank.apiture.com/accountVerifications/institutions/{institutionId}", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
Fetch a representation of this external financial institution
GET /institutions/{institutionId}
Return a HAL representation of this external financial institution resource.
Parameters
Parameter | Description |
---|---|
institutionId (path) |
string (required) The unique identifier of this institution resource. This is an opaque string. |
Try It
Example responses
200 Response
{
"_profile": "https://production.api.apiture.com/schemas/accountVerifications/institution/v1.1.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/institution/0399abed-30f35d"
},
"icon": {
"href": "http://d111111abcdef8.cloudfront.net/images/image2.jpg"
},
"home": {
"href": "https://www.bank.example.bank/"
}
},
"name": "Example Bank Bancshares, Inc.",
"label": "Example Bank",
"featured": true
}
Responses
Status | Description |
---|---|
200 | OK |
OK. | |
Schema: institution |
Status | Description |
---|---|
304 | Not Modified |
Not Modified. The resource has not been modified since it was last fetched. |
Status | Description |
---|---|
404 | Not Found |
Not Found. There is no institution resource at the specified This error response may have one of the following | |
Schema: errorResponse |
Status | Description |
---|---|
501 | Not Implemented |
The financial institution has disabled API verification. Use the user interface integration instead. | |
Schema: errorResponse |
Response Headers
Status | Description |
---|---|
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 institution resource. |
getInstitutionFields
Code samples
# You can also use wget
curl -X GET https://api.devbank.apiture.com/accountVerifications/institutions/{institutionId}/authenticationFields \
-H 'Accept: application/hal+json' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
GET https://api.devbank.apiture.com/accountVerifications/institutions/{institutionId}/authenticationFields HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/hal+json
var headers = {
'Accept':'application/hal+json',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: 'https://api.devbank.apiture.com/accountVerifications/institutions/{institutionId}/authenticationFields',
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('https://api.devbank.apiture.com/accountVerifications/institutions/{institutionId}/authenticationFields',
{
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 'https://api.devbank.apiture.com/accountVerifications/institutions/{institutionId}/authenticationFields',
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('https://api.devbank.apiture.com/accountVerifications/institutions/{institutionId}/authenticationFields', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/accountVerifications/institutions/{institutionId}/authenticationFields");
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", "https://api.devbank.apiture.com/accountVerifications/institutions/{institutionId}/authenticationFields", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
Return descriptions of the fields required to authenticate with the external institution
GET /institutions/{institutionId}/authenticationFields
This endpoint returns descriptions of the fields required to authenticate with the external institution.
Parameters
Parameter | Description |
---|---|
institutionId (path) |
string (required) The unique identifier of this institution resource. This is an opaque string. |
Try It
Example responses
200 Response
{
"_profile": "https://production.api.apiture.com/schemas/accountVerifications/authenticationFieldsResponse/v1.1.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/institutions/03abd-30f65c/authenticationFields"
}
},
"fields": {
"0": {
"username": {
"title": "Online ID",
"value": "user123",
"type": "string"
}
},
"1": {
"password": {
"title": "Password",
"value": "pass123",
"type": "string"
}
},
"2": {
"pin": {
"title": "PIN",
"value": "123",
"type": "string"
}
}
}
}
Responses
Status | Description |
---|---|
200 | OK |
OK. | |
Schema: authenticationFieldsResponse |
Status | Description |
---|---|
304 | Not Modified |
Not Modified. The resource has not been modified since it was last fetched. |
Status | Description |
---|---|
404 | Not Found |
Not Found. There is no institution resource at the specified This error response may have one of the following | |
Schema: errorResponse |
Status | Description |
---|---|
501 | Not Implemented |
The financial institution has disabled API verification. Use the user interface integration instead. | |
Schema: errorResponse |
Response Headers
Status | Description |
---|---|
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 institution resource. |
Configuration
Account Verifications Service Configuration
getConfigurationGroups
Code samples
# You can also use wget
curl -X GET https://api.devbank.apiture.com/accountVerifications/configurations/groups \
-H 'Accept: application/hal+json' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
GET https://api.devbank.apiture.com/accountVerifications/configurations/groups HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/hal+json
var headers = {
'Accept':'application/hal+json',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: 'https://api.devbank.apiture.com/accountVerifications/configurations/groups',
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('https://api.devbank.apiture.com/accountVerifications/configurations/groups',
{
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 'https://api.devbank.apiture.com/accountVerifications/configurations/groups',
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('https://api.devbank.apiture.com/accountVerifications/configurations/groups', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/accountVerifications/configurations/groups");
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", "https://api.devbank.apiture.com/accountVerifications/configurations/groups", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
Return a collection of configuration groups
GET /configurations/groups
Return a paginated sortable filterable searchable collection of configuration groups. The links in the response include pagination links.
Try It
Example responses
200 Response
{
"_profile": "https://production.api.apiture.com/schemas/configurations/configurationGroups/v2.1.0/profile.json",
"_links": {
"self": {
"href": "/configurations/configurations/groups?start=10&limit=10"
},
"first": {
"href": "/configurations/configurations/groups?start=0&limit=10"
},
"next": {
"href": "/configurations/configurations/groups?start=20&limit=10"
},
"collection": {
"href": "/configurations/configurations/groups"
}
},
"start": 10,
"limit": 10,
"count": 67,
"name": "configurationGroups",
"_embedded": {
"items": {
"0": {
"_profile": "https://production.api.apiture.com/schemas/configurations/configurationGroup/v2.1.0/profile.json",
"_links": {
"self": {
"href": "/configurations/groups/basic"
}
},
"name": "basic",
"label": "Basic Settings",
"description": "The basic settings for the Transfers API"
},
"1": {
"_profile": "https://production.api.apiture.com/schemas/configurations/configurationGroup/v2.1.0/profile.json",
"_links": {
"self": {
"href": "/configurations/groups/calendar"
}
},
"name": "calendar",
"label": "Calendar",
"description": "A calendar that specifies which dates are valid for performing transfers (e.g., weekdays excluding federal holidays)"
}
}
}
}
Responses
Status | Description |
---|---|
200 | OK |
OK. | |
Schema: configurationGroups |
Status | Description |
---|---|
400 | Bad Request |
Bad Request. 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 |
Status | Description |
---|---|
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 |
getConfigurationGroup
Code samples
# You can also use wget
curl -X GET https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName} \
-H 'Accept: application/hal+json' \
-H 'If-None-Match: string' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
GET https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName} HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/hal+json
If-None-Match: string
var headers = {
'Accept':'application/hal+json',
'If-None-Match':'string',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: 'https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}',
method: 'get',
headers: headers,
success: function(data) {
console.log(JSON.stringify(data));
}
})
const fetch = require('node-fetch');
const headers = {
'Accept':'application/hal+json',
'If-None-Match':'string',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
fetch('https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}',
{
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',
'If-None-Match' => 'string',
'API-Key' => 'API_KEY',
'Authorization' => 'Bearer {access-token}'
}
result = RestClient.get 'https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/hal+json',
'If-None-Match': 'string',
'API-Key': 'API_KEY',
'Authorization': 'Bearer {access-token}'
}
r = requests.get('https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}");
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"},
"If-None-Match": []string{"string"},
"API-Key": []string{"API_KEY"},
"Authorization": []string{"Bearer {access-token}"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
Fetch a representation of this configuration group
GET /configurations/groups/{groupName}
Return a HAL representation of this configuration group resource.
Parameters
Parameter | Description |
---|---|
groupName (path) |
string (required) The unique name of this configuration group. |
If-None-Match (header) |
string The entity tag that was returned in the ETag response. If the resource's current entity tag matches, the GET will return 304 (Not Modified) and no response body, else the resource representation will be returned. |
Try It
Example responses
200 Response
{
"_profile": "https://production.api.apiture.com/schemas/configurations/configurationGroup/v2.1.0/profile.json",
"_links": {
"self": {
"href": "/configurations/groups/basic"
}
},
"name": "basic",
"label": "Basic Settings",
"description": "The basic settings for the Transfers API",
"schema": {
"type": "object",
"properties": {
"dailyLimit": {
"type": "number",
"description": "The daily limit for the number of transfers"
},
"cutoffTime": {
"type": "string",
"format": "time",
"description": "The cutoff time for scheduling transfers for the current day"
}
}
},
"values": {
"dailyLimit": 5,
"cutoffTime": 63000
}
}
Responses
Status | Description |
---|---|
200 | OK |
OK. | |
Schema: configurationGroup |
Status | Description |
---|---|
304 | Not Modified |
Not Modified. The resource has not been modified since it was last fetched. |
Status | Description |
---|---|
404 | Not Found |
Not Found. There is no such configuration group resource at the specified {groupName} The _error field in the response will contain details about the request error. | |
Schema: errorResponse |
Response Headers
Status | Description |
---|---|
200 | ETag string |
The ETag response header specifies an entity tag which may be provided in an If-None-Match request header for GET operations for this configuration group resource. |
getConfigurationGroupSchema
Code samples
# You can also use wget
curl -X GET https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}/schema \
-H 'Accept: application/hal+json' \
-H 'If-None-Match: string' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
GET https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}/schema HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/hal+json
If-None-Match: string
var headers = {
'Accept':'application/hal+json',
'If-None-Match':'string',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: 'https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}/schema',
method: 'get',
headers: headers,
success: function(data) {
console.log(JSON.stringify(data));
}
})
const fetch = require('node-fetch');
const headers = {
'Accept':'application/hal+json',
'If-None-Match':'string',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
fetch('https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}/schema',
{
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',
'If-None-Match' => 'string',
'API-Key' => 'API_KEY',
'Authorization' => 'Bearer {access-token}'
}
result = RestClient.get 'https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}/schema',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/hal+json',
'If-None-Match': 'string',
'API-Key': 'API_KEY',
'Authorization': 'Bearer {access-token}'
}
r = requests.get('https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}/schema', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}/schema");
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"},
"If-None-Match": []string{"string"},
"API-Key": []string{"API_KEY"},
"Authorization": []string{"Bearer {access-token}"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}/schema", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
Fetch the schema for this configuration group
GET /configurations/groups/{groupName}/schema
Return a HAL representation of this configuration group schema resource.
Parameters
Parameter | Description |
---|---|
groupName (path) |
string (required) The unique name of this configuration group. |
If-None-Match (header) |
string The entity tag that was returned in the ETag response. If the resource's current entity tag matches, the GET will return 304 (Not Modified) and no response body, else the resource representation will be returned. |
Try It
Example responses
200 Response
{
"type": "object",
"properties": {
"dailyLimit": {
"type": "number",
"description": "The daily limit for the number of transfers"
},
"cutoffTime": {
"type": "string",
"format": "time",
"description": "The cutoff time for scheduling transfers for the current day"
}
}
}
Responses
Status | Description |
---|---|
200 | OK |
OK. | |
Schema: configurationSchema |
Status | Description |
---|---|
304 | Not Modified |
Not Modified. The resource has not been modified since it was last fetched. |
Status | Description |
---|---|
404 | Not Found |
Not Found. There is no such configuration group resource at the specified {groupName} The _error field in the response will contain details about the request error. | |
Schema: errorResponse |
Response Headers
Status | Description |
---|---|
200 | ETag string |
The ETag response header specifies an entity tag which must be provided in an If-Match request header for PUT |
getConfigurationGroupValues
Code samples
# You can also use wget
curl -X GET https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}/values \
-H 'Accept: application/hal+json' \
-H 'If-None-Match: string' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
GET https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}/values HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/hal+json
If-None-Match: string
var headers = {
'Accept':'application/hal+json',
'If-None-Match':'string',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: 'https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}/values',
method: 'get',
headers: headers,
success: function(data) {
console.log(JSON.stringify(data));
}
})
const fetch = require('node-fetch');
const headers = {
'Accept':'application/hal+json',
'If-None-Match':'string',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
fetch('https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}/values',
{
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',
'If-None-Match' => 'string',
'API-Key' => 'API_KEY',
'Authorization' => 'Bearer {access-token}'
}
result = RestClient.get 'https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}/values',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/hal+json',
'If-None-Match': 'string',
'API-Key': 'API_KEY',
'Authorization': 'Bearer {access-token}'
}
r = requests.get('https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}/values', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}/values");
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"},
"If-None-Match": []string{"string"},
"API-Key": []string{"API_KEY"},
"Authorization": []string{"Bearer {access-token}"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}/values", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
Fetch the values for the specified configuration group
GET /configurations/groups/{groupName}/values
Return a representation of this configuration group's values.
Parameters
Parameter | Description |
---|---|
groupName (path) |
string (required) The unique name of this configuration group. |
If-None-Match (header) |
string The entity tag that was returned in the ETag response. If the resource's current entity tag matches, the GET will return 304 (Not Modified) and no response body, else the resource representation will be returned. |
Try It
Example responses
200 Response
{
"dailyLimit": 5,
"cutoffTime": 63000
}
Responses
Status | Description |
---|---|
200 | OK |
OK. | |
Schema: configurationValues |
Status | Description |
---|---|
304 | Not Modified |
Not Modified. The resource has not been modified since it was last fetched. |
Status | Description |
---|---|
404 | Not Found |
Not Found. There is no such configuration group resource at the specified {groupName} The _error field in the response will contain details about the request error. | |
Schema: errorResponse |
Response Headers
Status | Description |
---|---|
200 | ETag string |
The ETag response header specifies an entity tag which must be provided in an If-Match request header for PUT |
updateConfigurationGroupValues
Code samples
# You can also use wget
curl -X PUT https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}/values \
-H 'Content-Type: application/hal+json' \
-H 'Accept: application/hal+json' \
-H 'If-Match: string' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
PUT https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}/values HTTP/1.1
Host: api.devbank.apiture.com
Content-Type: application/hal+json
Accept: application/hal+json
If-Match: string
var headers = {
'Content-Type':'application/hal+json',
'Accept':'application/hal+json',
'If-Match':'string',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: 'https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}/values',
method: 'put',
headers: headers,
success: function(data) {
console.log(JSON.stringify(data));
}
})
const fetch = require('node-fetch');
const inputBody = '{
"dailyLimit": 5,
"cutoffTime": 63000
}';
const headers = {
'Content-Type':'application/hal+json',
'Accept':'application/hal+json',
'If-Match':'string',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
fetch('https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}/values',
{
method: 'PUT',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/hal+json',
'Accept' => 'application/hal+json',
'If-Match' => 'string',
'API-Key' => 'API_KEY',
'Authorization' => 'Bearer {access-token}'
}
result = RestClient.put 'https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}/values',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': 'application/hal+json',
'Accept': 'application/hal+json',
'If-Match': 'string',
'API-Key': 'API_KEY',
'Authorization': 'Bearer {access-token}'
}
r = requests.put('https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}/values', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}/values");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("PUT");
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{
"Content-Type": []string{"application/hal+json"},
"Accept": []string{"application/hal+json"},
"If-Match": []string{"string"},
"API-Key": []string{"API_KEY"},
"Authorization": []string{"Bearer {access-token}"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("PUT", "https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}/values", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
Update the values for the specified configuration group
PUT /configurations/groups/{groupName}/values
Perform a complete replacement of this set of configuration values.
Body parameter
{
"dailyLimit": 5,
"cutoffTime": 63000
}
Parameters
Parameter | Description |
---|---|
groupName (path) |
string (required) The unique name of this configuration group. |
If-Match (header) |
string The entity tag that was returned in the ETag response. This must match the current entity tag of the resource. |
body (body) |
configurationValues (required) |
Try It
Example responses
200 Response
{
"type": "object",
"properties": {
"dailyLimit": {
"type": "number",
"description": "The daily limit for the number of transfers"
},
"cutoffTime": {
"type": "string",
"format": "time",
"description": "The cutoff time for scheduling transfers for the current day"
}
}
}
Responses
Status | Description |
---|---|
200 | OK |
OK. | |
Schema: configurationSchema |
Status | Description |
---|---|
400 | Bad Request |
Bad Request. 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 |
Status | Description |
---|---|
403 | Forbidden |
Access denied. Only user allowed to update configurations is an admin. | |
Schema: errorResponse |
Status | Description |
---|---|
404 | Not Found |
Not Found. There is no such configuration group resource at the specified {groupName} The _error field in the response will contain details about the request error. | |
Schema: errorResponse |
Status | Description |
---|---|
412 | Precondition Failed |
Precondition Failed. The supplied if-Match header value does not match the most recent ETag response header value. The resource has changed in the interim. | |
Schema: errorResponse |
Response Headers
Status | Description |
---|---|
200 | ETag string |
The ETag response header specifies an entity tag which must be provided in an If-Match request header for PUT |
getConfigurationGroupValue
Code samples
# You can also use wget
curl -X GET https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}/values/{valueName} \
-H 'Accept: application/hal+json' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
GET https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}/values/{valueName} HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/hal+json
var headers = {
'Accept':'application/hal+json',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: 'https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}/values/{valueName}',
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('https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}/values/{valueName}',
{
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 'https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}/values/{valueName}',
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('https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}/values/{valueName}', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}/values/{valueName}");
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", "https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}/values/{valueName}", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
Fetch a single value associated with the specified configuration group
GET /configurations/groups/{groupName}/values/{valueName}
Fetch a single value associated with this configuration group. This provides convenient access to individual values of the configuration group.
The response is always a JSON value which can be parsed with a strict JSON parser. The response may be
- a primitive number, boolean, or quoted JSON string.
- a JSON array.
- a JSON object.
null
.
Examples:
"a string configuration value"
120
true
null
{ "borderWidth": 8, "foregroundColor": "blue" }
To update a specific value, use PUT /accountVerifications/configurations/groups/{groupName}/values/{valueName}
(operation updateConfigurationGroupValue
).
Parameters
Parameter | Description |
---|---|
groupName (path) |
string (required) The unique name of this configuration group. |
valueName (path) |
string (required) The unique name of a value in a configuration group. This is the name of the value in the schema . A {valueName} must be a simple identifier following the pattern letter [letter | digit | '-' | '_']* . |
Try It
Example responses
200 Response
"string"
Responses
Status | Description |
---|---|
200 | OK |
OK. The value of the named configuration value as a JSON string, number, boolean, array, or object. | |
Schema: string |
Status | Description |
---|---|
404 | Not Found |
Not Found. There is either no such configuration group resource at the specified This error response may have one of the following | |
Schema: errorResponse |
Response Headers
Status | Description |
---|---|
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 configuration group resource. |
updateConfigurationGroupValue
Code samples
# You can also use wget
curl -X PUT https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}/values/{valueName} \
-H 'Content-Type: application/hal+json' \
-H 'Accept: application/hal+json' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
PUT https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}/values/{valueName} HTTP/1.1
Host: api.devbank.apiture.com
Content-Type: application/hal+json
Accept: application/hal+json
var headers = {
'Content-Type':'application/hal+json',
'Accept':'application/hal+json',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: 'https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}/values/{valueName}',
method: 'put',
headers: headers,
success: function(data) {
console.log(JSON.stringify(data));
}
})
const fetch = require('node-fetch');
const inputBody = 'string';
const headers = {
'Content-Type':'application/hal+json',
'Accept':'application/hal+json',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
fetch('https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}/values/{valueName}',
{
method: 'PUT',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/hal+json',
'Accept' => 'application/hal+json',
'API-Key' => 'API_KEY',
'Authorization' => 'Bearer {access-token}'
}
result = RestClient.put 'https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}/values/{valueName}',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': 'application/hal+json',
'Accept': 'application/hal+json',
'API-Key': 'API_KEY',
'Authorization': 'Bearer {access-token}'
}
r = requests.put('https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}/values/{valueName}', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}/values/{valueName}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("PUT");
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{
"Content-Type": []string{"application/hal+json"},
"Accept": []string{"application/hal+json"},
"API-Key": []string{"API_KEY"},
"Authorization": []string{"Bearer {access-token}"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("PUT", "https://api.devbank.apiture.com/accountVerifications/configurations/groups/{groupName}/values/{valueName}", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
Update a single value associated with the specified configuration group
PUT /configurations/groups/{groupName}/values/{valueName}
Update a single value associated with this configuration group. This provides convenient access to individual values of the configuration group as defined in the configuration group's schema
. The request body must conform to the configuration group's schema for the named {valueName}
. This operation is idempotent.
The request body must be a JSON value which can be parsed with a strict JSON parser. The response may be
- a primitive number, boolean, or quoted JSON string.
- a JSON array.
- a JSON object.
null
.
Examples:
"a string configuration value"
120
true
null
{ "borderWidth": 8, "foregroundColor": "blue" }
To fetch specific value, use GET /accountVerifications/configurations/groups/{groupName}/values/{valueName}
operation getConfigurationGroupValue
).
Body parameter
"string"
Parameters
Parameter | Description |
---|---|
groupName (path) |
string (required) The unique name of this configuration group. |
valueName (path) |
string (required) The unique name of a value in a configuration group. This is the name of the value in the schema . A {valueName} must be a simple identifier following the pattern letter [letter | digit | '-' | '_']* . |
body (body) |
string (required) The request body must a valid JSON value and should be parsable with a JSON parser. The result may be a string, number, boolean, array, or object. |
Try It
Example responses
200 Response
"string"
Responses
Status | Description |
---|---|
200 | OK |
OK. | |
Schema: string |
Status | Description |
---|---|
403 | Forbidden |
Access denied. Only user allowed to update configurations is an admin. | |
Schema: errorResponse |
Response Headers
Status | Description |
---|---|
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 configuration group resource. |
API
the Account Verifications API
getApi
Code samples
# You can also use wget
curl -X GET https://api.devbank.apiture.com/accountVerifications/ \
-H 'Accept: application/hal+json' \
-H 'API-Key: API_KEY'
GET https://api.devbank.apiture.com/accountVerifications/ HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/hal+json
var headers = {
'Accept':'application/hal+json',
'API-Key':'API_KEY'
};
$.ajax({
url: 'https://api.devbank.apiture.com/accountVerifications/',
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('https://api.devbank.apiture.com/accountVerifications/',
{
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 'https://api.devbank.apiture.com/accountVerifications/',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/hal+json',
'API-Key': 'API_KEY'
}
r = requests.get('https://api.devbank.apiture.com/accountVerifications/', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/accountVerifications/");
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", "https://api.devbank.apiture.com/accountVerifications/", 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.
Try It
Example responses
200 Response
{
"_profile": "https://production.api.apiture.com/schemas/common/root/v2.1.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/applications/application/328f6bf6-d762-422f-a077-ab91ca4d0b6f"
}
},
"id": "apiName",
"name": "API name",
"apiVersion": "1.0.0"
}
Responses
getApiDoc
Code samples
# You can also use wget
curl -X GET https://api.devbank.apiture.com/accountVerifications/apiDoc \
-H 'Accept: application/json' \
-H 'API-Key: API_KEY'
GET https://api.devbank.apiture.com/accountVerifications/apiDoc HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/json
var headers = {
'Accept':'application/json',
'API-Key':'API_KEY'
};
$.ajax({
url: 'https://api.devbank.apiture.com/accountVerifications/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('https://api.devbank.apiture.com/accountVerifications/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 'https://api.devbank.apiture.com/accountVerifications/apiDoc',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/json',
'API-Key': 'API_KEY'
}
r = requests.get('https://api.devbank.apiture.com/accountVerifications/apiDoc', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/accountVerifications/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", "https://api.devbank.apiture.com/accountVerifications/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.
Try It
Example responses
200 Response
{}
Responses
Status | Description |
---|---|
200 | OK |
OK. | |
Schema: Inline |
Response Schema
Schemas
abstractRequest
{
"_profile": "https://production.api.apiture.com/schemas/common/abstractRequest/v2.0.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/applications/"
}
}
}
Abstract Request (v2.0.0)
An abstract schema used to define other request-only schemas. This is a HAL resource representation, minus the _error
defined in abstractResource
.
This schema was resolved from common/abstractRequest
.
Properties
Name | Description |
---|---|
_links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations. This schema was resolved from |
_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. read-only
|
abstractResource
{
"_profile": "https://production.api.apiture.com/schemas/common/abstractResource/v2.1.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/applications/application/328f6bf6-d762-422f-a077-ab91ca4d0b6f"
}
}
}
Abstract Resource (v2.1.0)
An abstract schema used to define other schemas for request and response bodies. This is a HAL resource representation. This model contains hypermedia _links
, and either optional domain object data with _profile
and optional _embedded
objects, or an _error
object. In responses, if the operation was successful, this object will not include the _error
, but if the operation was a 4xx or 5xx error, this object will not include _embedded
or any data fields, only _error
and optionally _links
.
This schema was resolved from common/abstractResource
.
Properties
Name | Description |
---|---|
_links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations. This schema was resolved from |
_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. read-only
|
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. read-only
|
accountNumbers
{
"masked": "*************3210",
"full": "9876543210"
}
Account Numbers (v1.0.0)
Different representations of an account number.
This schema was resolved from common/accountNumbers
.
Properties
Name | Description |
---|---|
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
|
accountVerificationProviderParameter
{
"name": "widgetUrl",
"value": "https://int-widgets.moneydesktop.com/md/connections/qfnp2wzqg9rthAp8tv70fb6pzqZ8v9xfzn3by2k2"
}
Account Verification Provider Parameter (v1.0.0)
A single name/value parameter that the client passes to the account verification provider user interface component. This is an element of paymentProviderParameters
.
Properties
Name | Description |
---|---|
name | string (required) The parameter name. minLength: 4
maxLength: 32
pattern: ^[a-zA-Z][-a-zA-Z0-9_]{3,31}
|
value | string (required) The parameter value. maxLength: 256
|
accountVerificationProviderParameters
{
"_profile": "https://production.api.apiture.com/schemas/accountVerifications/accountVerificationProviderParameters/v1.1.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/applications/application/328f6bf6-d762-422f-a077-ab91ca4d0b6f"
}
},
"issuer": "yodlee",
"parameters": {
"0": {
"name": "widgetUrl",
"value": "https://int-widgets.moneydesktop.com/md/connections/qfnp2wzqg9rthAp8tv70fb6pzqZ8v9xfzn3by2k2"
}
}
}
Account Verification Provider Parameters (v1.1.0)
Parameters that the client passes to the account verification provider user interface component. The set of parameter names is dynamic and not defined by a schema, as providers may be deployed after the API has been deployed.
Properties
Name | Description |
---|---|
_links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations. This schema was resolved from |
_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. read-only
|
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. read-only
|
issuer | string (required) The name of the account verification provider associated with the parameters |
parameters | [accountVerificationProviderParameter] (required) An array of individual account verification provider parameters. |
accountVerificationProviderState
"blockedForAccountSelection"
Provider Account Verification State (v1.0.0)
The possible states of the instant account verification provider's account verification.
accountVerificationProviderState
strings may have one of the following enumerated values:
Value | Description |
---|---|
blockedForAccountSelection | Blocked for Account Selection: The external account verification provider is blocked, waiting for the banking customer to select the financial institution, external account, or other input. |
verifyingAccounts | Verifying Accounts: The external account verification provider is verifying the external accounts for the banking user. |
accountsVerified | Accounts Verified: The external account verification provider has successfully verified the external accounts for the banking user. |
blockedForIdentityVerification | Blocked for Identity Verification: The external account verification provider is blocked, awaiting the account holder to enter information required by the financial institution in order for the provider to verify the account holder's identity. |
verifyingIdentity | Verifying Identity: The external account verification provider is verifying the account holder identity with the financial institution. |
verified | Verified: The external account verification provider verified the account and account holder. |
failed | Failed: The external account verification provider failed to verify the external accounts for the banking user. |
Type: string
Enumerated values: blockedForAccountSelection
verifyingAccounts
accountsVerified
blockedForIdentityVerification
verifyingIdentity
verified
failed
address
{
"addressLine1": "555 N Front Street",
"addressLine2": "Suite 5555",
"city": "Wilmington",
"regionCode": "NC",
"postalCode": "28401-5405",
"countryCode": "US",
"_id": "ha5",
"type": "home"
}
Address (v1.0.0)
A postal address with the address type and an identifier.
This schema was resolved from contacts/address
.
Properties
Name | Description |
---|---|
addressLine1 | string The first street address line of the address, normally a house number and street name. minLength: 4
maxLength: 128
|
addressLine2 | string The optional second street address line of the address. maxLength: 128
|
city | string The name of the city or municipality. minLength: 2
maxLength: 128
|
regionCode | string The mailing address region code, such as state in the US, or a province in Canada. This is normalized to uppercase. minLength: 2
maxLength: 2
pattern: ^[a-zA-Z]{2}$
|
postalCode | string The mailing address postal code, such as a US Zip or Zip+4 code, or a Canadian postal code. minLength: 5
maxLength: 10
pattern: ^[0-9]{5}(?:-[0-9]{4})?$
|
countryCode | string The ISO 3166-1 alpha-2 country code. This is normalized to uppercase. minLength: 2
maxLength: 2
pattern: ^[a-zA-Z]{2}$
|
type | addressType (required) The type of this address. |
label | string A text label, suitable for presentation to the end user. This is derived from type or from otherType if type is other
read-only
minLength: 4
maxLength: 32
|
otherType | string The actual address type if type is other .
minLength: 4
maxLength: 32
|
_id | string An identifier for this address, so that it can be referenced uniquely. The service will assign a unique _id if the client does not provide one. The _id must be unique across all addresses within the addresses array.
minLength: 1
maxLength: 8
pattern: ^[-a-zA-Z0-9_]{1,8}$
|
addressType
"unknown"
Address Type (v1.0.0)
The type of a postal address.
Warning: The enum
list will be removed in a future release.
The allowed values for this property are defined at runtime in the label group named addressType
in the response from the getLabels
operation.
This schema was resolved from contacts/addressType
.
Type: string
Enumerated values: unknown
home
prior
work
school
mailing
vacation
shipping
billing
headquarters
commercial
site
property
other
notApplicable
attributes
{}
Attributes (v2.1.0)
An optional map of name/value pairs which contains additional dynamic data about the resource.
This schema was resolved from common/attributes
.
Properties
authenticationField
{
"title": "Online ID",
"type": "string",
"value": "wellphunded1984"
}
Authentication Field (v1.0.0)
Description an authentication field used to authenticate against a financial institution. This service does not persist the user's responses to these field prompts.
Properties
Name | Description |
---|---|
title | string User readable title or label for this prompt/field. |
type | string Type of this field. |
value | string The data value the user entered for this field. |
format | string JSON schema format for this field.
|
authenticationFields
{
"username": {
"title": "Online ID",
"value": "user123",
"type": "string"
},
"password": {
"title": "Password",
"value": "pass123",
"type": "string",
"format": "password"
},
"pin": {
"title": "PIN",
"value": "123",
"type": "string"
}
}
Authentication Fields (v1.0.0)
A set of authentication fields necessary to authenticate against the external financial institution. The keys in this object are field names. The values describe each field prompt. The client application prompts the user for values for these fields. The underlying account verification service uses but does not persist the values of these fields to authenticate.
Properties
Name | Description |
---|---|
additionalProperties | authenticationField Description an authentication field used to authenticate against a financial institution. This service does not persist the user's responses to these field prompts. |
authenticationFieldsResponse
{
"_profile": "https://production.api.apiture.com/schemas/accountVerifications/authenticationFieldsResponse/v1.1.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/institutions/03abd-30f65c/authenticationFields"
}
},
"fields": {
"0": {
"username": {
"title": "Online ID",
"value": "user123",
"type": "string"
}
},
"1": {
"password": {
"title": "Password",
"value": "pass123",
"type": "string"
}
},
"2": {
"pin": {
"title": "PIN",
"value": "123",
"type": "string"
}
}
}
}
Authentication Fields Response (v1.1.0)
Map of authentication fields.
Properties
Name | Description |
---|---|
_links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations. This schema was resolved from |
_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. read-only
|
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. read-only
|
fields | authenticationFields A set of authentication fields necessary to authenticate against the external financial institution. The keys in this object are field names. The values describe each field prompt. The client application prompts the user for values for these fields. The underlying account verification service uses but does not persist the values of these fields to authenticate. |
authorizationType
"primary"
Account Authorization type (v1.0.0)
The type of this account access authorization.
primary
the person is the primary owner of a personal account. There may be only one primary owner.joint
the person is a non-primary joint owner of a personal account.authorizedSigner
the person is an authorized signer for all business accounts owned by the organization.
authorizationType
strings may have one of the following enumerated values:
Value | Description |
---|---|
primary | Primary Account Holder: The primary account holder of a personal account. There may be only one primary owner. |
joint | Joint Account Holder: A non-primary joint account holder of a personal account. |
authorizedSigner | Authorized Signer: Authorized Signer of a business account. |
These enumeration values are further described by the label group named authorizationType
in the response from the getLabels
operation.
This schema was resolved from contacts/authorizationType
.
Type: string
Enumerated values: primary
joint
authorizedSigner
choice
{
"type": "image",
"key": "string",
"value": "string",
"content": "string",
"_links": {
"property1": {
"href": "https://api.devbank.apiture.com/applications/application/328f6bf6-d762-422f-a077-ab91ca4d0b6f",
"title": "Application"
},
"property2": {
"href": "https://api.devbank.apiture.com/applications/application/328f6bf6-d762-422f-a077-ab91ca4d0b6f",
"title": "Application"
}
}
}
MFA Choice (v1.0.0)
Representation of question choice.
Properties
Name | Description |
---|---|
type | string The user interface type of choice.
|
key | string The choice's unique key. |
value | string The choice's value. |
content | string The content specific to this choice. |
_links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations. This schema was resolved from |
collection
{
"_profile": "https://production.api.apiture.com/schemas/common/abstractResource/v2.1.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/applications/application/328f6bf6-d762-422f-a077-ab91ca4d0b6f"
}
}
}
Collection (v2.1.0)
A collection of resources. This is an abstract model schema which is extended to define specific resource collections.
This schema was resolved from common/collection
.
Properties
Name | Description |
---|---|
_links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations. This schema was resolved from |
_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. read-only
|
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. read-only
|
count | integer The number of items in the collection. This value is optional and may 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. |
configurationGroup
{
"_profile": "https://production.api.apiture.com/schemas/configurations/configurationGroup/v2.1.0/profile.json",
"_links": {
"self": {
"href": "/configurations/groups/basic"
}
},
"name": "basic",
"label": "Basic Settings",
"description": "The basic settings for the Transfers API",
"schema": {
"type": "object",
"properties": {
"dailyLimit": {
"type": "number",
"description": "The daily limit for the number of transfers"
},
"cutoffTime": {
"type": "string",
"format": "time",
"description": "The cutoff time for scheduling transfers for the current day"
}
}
},
"values": {
"dailyLimit": 5,
"cutoffTime": 63000
}
}
Configuration Group (v2.1.0)
Represents a configuration group.
This schema was resolved from configurations/configurationGroup
.
Properties
Name | Description |
---|---|
_links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations. This schema was resolved from |
_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. read-only
|
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. read-only
|
name | string The name of this configuration group, must be unique within the set of all resources of this type. minLength: 1
maxLength: 48
pattern: [a-zA-Z][-\w_]*
|
label | string The text label for this resource, suitable for presentation to the client. minLength: 1
maxLength: 128
|
description | string The full description for this resource, suitable for presentation to the client. minLength: 1
maxLength: 4096
|
schema | configurationSchema The schema which defines the name and types of the variables that are part of this configuration definition. Property names must be simple identifiers which follow the pattern letter [letter | digit | - | _]* . This is implicitly a schema for The This schema was resolved from |
values | configurationValues The data values associated with this configuration group: the group's variable names and values. These values must conform to this item's schema . Note: the For example, multiple configurations may use the same schema that defines values This schema was resolved from |
configurationGroupSummary
{
"_profile": "https://production.api.apiture.com/schemas/configurations/configurationGroupSummary/v2.1.0/profile.json",
"_links": {
"self": {
"href": "/configurations/groups/basic"
}
},
"name": "basic",
"label": "Basic Settings",
"description": "The basic settings for the Transfers API"
}
Configuration Group Summary (v2.1.0)
A summary of the data contained within a configuration group resource.
This schema was resolved from configurations/configurationGroupSummary
.
Properties
Name | Description |
---|---|
_links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations. This schema was resolved from |
_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. read-only
|
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. read-only
|
name | string The name of this configuration group, must be unique within the set of all resources of this type. minLength: 1
maxLength: 48
pattern: [a-zA-Z][-\w_]*
|
label | string The text label for this resource, suitable for presentation to the client. minLength: 1
maxLength: 128
|
description | string The full description for this resource, suitable for presentation to the client. minLength: 1
maxLength: 4096
|
configurationGroups
{
"_profile": "https://production.api.apiture.com/schemas/configurations/configurationGroups/v2.1.0/profile.json",
"_links": {
"self": {
"href": "/configurations/configurations/groups?start=10&limit=10"
},
"first": {
"href": "/configurations/configurations/groups?start=0&limit=10"
},
"next": {
"href": "/configurations/configurations/groups?start=20&limit=10"
},
"collection": {
"href": "/configurations/configurations/groups"
}
},
"start": 10,
"limit": 10,
"count": 67,
"name": "configurationGroups",
"_embedded": {
"items": {
"0": {
"_profile": "https://production.api.apiture.com/schemas/configurations/configurationGroup/v2.1.0/profile.json",
"_links": {
"self": {
"href": "/configurations/groups/basic"
}
},
"name": "basic",
"label": "Basic Settings",
"description": "The basic settings for the Transfers API"
},
"1": {
"_profile": "https://production.api.apiture.com/schemas/configurations/configurationGroup/v2.1.0/profile.json",
"_links": {
"self": {
"href": "/configurations/groups/calendar"
}
},
"name": "calendar",
"label": "Calendar",
"description": "A calendar that specifies which dates are valid for performing transfers (e.g., weekdays excluding federal holidays)"
}
}
}
}
Configuration Group Collection (v2.1.0)
Collection of configuration groups. The items in the collection are ordered in the _embedded
object with name items
. The top-level _links
object may contain pagination links (self
, next
, prev
, first
, last
, collection
).
This schema was resolved from configurations/configurationGroups
.
Properties
Name | Description |
---|---|
_links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations. This schema was resolved from |
_embedded | configurationGroupsEmbedded Embedded objects. |
_profile | string(uri) The URI of a resource profile which describes the representation. read-only
|
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. read-only
|
count | integer The number of items in the collection. This value is optional and may 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. |
configurationGroupsEmbedded
{
"items": [
{
"_profile": "https://production.api.apiture.com/schemas/configurations/configurationGroupSummary/v2.1.0/profile.json",
"_links": {
"self": {
"href": "/configurations/groups/basic"
}
},
"name": "basic",
"label": "Basic Settings",
"description": "The basic settings for the Transfers API"
}
]
}
Configuration Groups Embedded Objects (v1.1.0)
Objects embedded in the configurationGroups
collection.
This schema was resolved from configurations/configurationGroupsEmbedded
.
Properties
Name | Description |
---|---|
items | [configurationGroupSummary] An array containing a page of configuration group items. |
configurationSchema
{
"type": "object",
"properties": {
"dailyLimit": {
"type": "number",
"description": "The daily limit for the number of transfers"
},
"cutoffTime": {
"type": "string",
"format": "time",
"description": "The cutoff time for scheduling transfers for the current day"
}
}
}
Configuration Schema (v2.1.0)
The schema which defines the name and types of the variables that are part of this configuration definition. Property names must be simple identifiers which follow the pattern letter [letter | digit | - | _]*
.
This is implicitly a schema for type: object
and contains the properties.
The values
in a configuration conform to the schema. The names and types are described with a subset of JSON Schema Core and JSON Schema Validation similar to that used to define schemas in OpenAPI Specification 2.0.
This schema was resolved from configurations/configurationSchema
.
Properties
Name | Description |
---|---|
additionalProperties | configurationSchemaValue The data associated with this configuration schema. This schema was resolved from |
configurationSchemaValue
{}
Configuration Schema Value (v2.0.0)
The data associated with this configuration schema.
This schema was resolved from configurations/configurationSchemaValue
.
Properties
configurationValue
{}
Configuration Value (v2.0.0)
The data associated with this configuration.
This schema was resolved from configurations/configurationValue
.
Properties
configurationValues
{
"dailyLimit": 5,
"cutoffTime": 63000
}
Configuration Values (v2.0.0)
The data values associated with this configuration group: the group's variable names and values. These values must conform to this item's schema
.
Note: the schema
may also contain default
values which, if present, are used if a value is not set in the definition's values
.
For example, multiple configurations may use the same schema that defines values a
, b
, and c
, but each configuration may have their own unique values for a
, b
, and c
which is separate from the schema.
This schema was resolved from configurations/configurationValues
.
Properties
Name | Description |
---|---|
additionalProperties | configurationValue The data associated with this configuration. This schema was resolved from |
createInstantVerification
{
"_profile": "https://production.api.apiture.com/schemas/accountVerifications/createInstantVerification/v1.0.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/applications/"
},
"apiture:institution": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/institutions/961ffc1e-27671e"
},
"apiture:contact": {
"href": "https://api.devbank.apiture.com/accountVerifications/contacts/contact/03abd-30f65c"
}
},
"authenticationFields": {
"0": {
"username": {
"value": "user123"
}
},
"1": {
"password": {
"value": "pass123"
}
},
"2": {
"pin": {
"value": "123"
}
}
}
}
Create Instant Verification (v1.0.0)
Representation used to create a new instant verification resource. The _links
on a createInstantVerification must include the following: apiture:*institution
An institution must be provided to authenticate and retrieve data from the financial institution provider. apiture:*contact
The contact associated to the account to verify.
Properties
Name | Description |
---|---|
_links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations. This schema was resolved from |
_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. read-only
|
authenticationFields | authenticationFields A set of authentication fields necessary to authenticate against the external financial institution. The keys in this object are field names. The values describe each field prompt. The client application prompts the user for values for these fields. The underlying account verification service uses but does not persist the values of these fields to authenticate. |
createMicroDepositVerification
{
"_profile": "https://production.api.apiture.com/schemas/accountVerifications/createMicroDepositVerification/v1.0.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/applications/"
}
},
"routingNumber": "054100318",
"accountNumbers": {
"full": "7432172992"
},
"ifxType": "SDA"
}
Create Micro Deposit Verification (v1.0.0)
Representation used to create a micro-deposit verification resource.
Properties
Name | Description |
---|---|
_links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations. This schema was resolved from |
_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. read-only
|
routingNumber | string (required) 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
|
accountNumbers | accountNumbers (required) Different representations of an account number. This schema was resolved from |
ifxType | ifxType (required) A code which identifies the product type. This is one of the IFX AcctType values. |
error
{
"_id": "2eae46e1575c0a7b0115a4b3",
"message": "Descriptive error message...",
"statusCode": 422,
"type": "errorType1",
"remediation": "Remediation string...",
"occurredAt": "2018-01-25T05:50:52.375Z",
"errors": [
{
"_id": "ccdbe2c5c938a230667b3827",
"message": "An optional embedded error"
},
{
"_id": "dbe9088dcfe2460f229338a3",
"message": "Another optional embedded error"
}
],
"_links": {
"describedby": {
"href": "https://developer.apiture.com/errors/errorType1"
}
}
}
Error (v2.1.0)
Describes an error in an API request or in a service called via the API.
This schema was resolved from common/error
.
Properties
Name | Description |
---|---|
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. read-only
|
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. This schema was resolved from |
errorResponse
{
"_profile": "https://production.api.apiture.com/schemas/common/errorResponse/v2.1.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/applications/application/328f6bf6-d762-422f-a077-ab91ca4d0b6f"
}
},
"_error": {
"_id": "2eae46e1-575c-4d69-8a8f-0a7b0115a4b3",
"message": "Description of the error will appear here.",
"statusCode": 422,
"type": "specificErrorType",
"attributes": {
"value": "Optional attribute describing the error"
},
"remediation": "Optional instructions to remediate the error may appear here.",
"occurredAt": "2018-01-25T05:50:52.375Z",
"_links": {
"describedby": {
"href": "https://production.api.apiture.com/errors/specificErrorType"
}
},
"_embedded": {
"errors": {}
}
}
}
Error Response (v2.1.0)
Describes an error response, typically returned on 4xx or 5xx errors from API operations. The _error
object contains the error details.
This schema was resolved from common/errorResponse
.
Properties
Name | Description |
---|---|
_links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations. This schema was resolved from |
_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. read-only
|
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. read-only
|
externalAccountNumbers
{
"masked": "*************3210",
"full": "9876543210"
}
External Account Numbers (v1.0.0)
The account numbers necessary to link an external account.
This schema was resolved from accounts/externalAccountNumbers
.
Properties
Name | Description |
---|---|
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 included when accounts are embedded in collections or other resources. 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 for an account. Not included in the summary representation of the account that is included in account collection responses. Pass in this value when linking an external account. This field can be updated whenever the account is still in the pending state.
minLength: 4
maxLength: 17
|
externalAccountOwner
{
"firstName": "Steven",
"middleName": "Benjamin",
"lastName": "Storey",
"fullName": "Steven B. Storey",
"type": "primary",
"addresses": {
"0": {
"type": "home",
"addressLine1": "555 N Front Street",
"addressLine2": "Apt 555",
"city": "Wilmington",
"regionCode": "NC",
"postalCode": "28401",
"countryCode": "US"
}
}
}
External Account Owner (v1.1.0)
An external account owner. Since this is a small finite set, this is not a paginated collection, just an array.
This schema was resolved from accounts/externalAccountOwner
.
Properties
Name | Description |
---|---|
firstName | string The person's first name (or given name). |
middleName | string The person's middle name. |
lastName | string The person's last name (or surname). |
fullName | string The account owner's full name (first name and last name or owning business name). maxLength: 128
|
type | authorizationType The account owner's ownership type. |
addresses | [address] The owner's addresses; addresses[0] is the primary mailing address of the owning individual or business.
|
externalAccountState
"active"
External Account State (v1.1.0)
The state of an external (linked) banking account. This field is immutable and derived.
To change the state of an account, POST
the account ID to the corresponding resource endpoints, using the corresponding link on the external account resource:
- To activate an account, use the
apiture:activate
link toPOST
to/accounts/activeAccounts
. * To deactivate an account, use theapiture:deactivate
link toPOST
to/accounts/inactiveAccounts
. * To freeze an account, use theapiture:freeze
link toPOST
to/accounts/frozenAccounts
. * To close an account, use theapiture:close
link toPOST
to/accounts/closedAccounts
. * To mark an account as under review, use theapiture:review
link toPOST
to/accounts/externalAccountsUnderReview
. * To mark an account as being verified via micro-deposits, use theapiture:requestMicroDepositVerification
link toPOST
to/externalAccountsNeedingMicroDepositVerification
.
externalAccountState
strings may have one of the following enumerated values:
Value | Description |
---|---|
pending | Pending: A new external account that has not been verified. |
verifying | Verifying: A new account that is being verified. This state only applies to external accounts. |
failed | Failed: A external account which has failed account verification. |
active | Active: An account which is active and available for use and for making new transactions. |
inactive | Inactive: An account which is marked inactive and not available for new transactions. Inactive accounts may be changed back to active. |
frozen | Frozen: An account which is frozen and not eligible for new transactions. This is typically the result of suspicious activity or fraud detection. The user must contact their financial institution to unfreeze the account (by changing the state back to active ) or the financial institution may opt to close the account. |
closed | Closed: An account that is closed and removed from use. Closed accounts are not eligble for transactions or to become active. Such accounts are retained for historical purposes because some transactions may refer to it. Users do not see closed accounts when they view their accounts. |
underReview | Under Review: A new external account that under is review. |
microDepositsRequested | Micro-deposits Requested: A new external account that is starting micro deposits verification. This state only applies to external accounts. |
These enumeration values are further described by the label group named externalAccountState
in the response from the getLabels
operation.
This schema was resolved from accounts/externalAccountState
.
Type: string
Enumerated values: pending
verifying
failed
active
inactive
frozen
closed
underReview
microDepositsRequested
ifxType
"CCA"
IFX Account Type (v1.0.0)
A code which identifies the product type. This is one of the IFX AcctType values. Labels and descriptions for the enumeration values are in the ifxType
key in the response of the getLabels
operation.
ifxType
strings may have one of the following enumerated values:
Value | Description |
---|---|
CCA | Credit card account |
CDA | Certificate of deposit account (CD) |
CLA | Commercial loan account |
CMA | Cash management account |
DDA | Demand deposit account |
EQU | Home equity loan |
GLA | General ledger account |
ILA | Installment loan account |
INV | Investment account |
IRA | Individual retirement account |
IRL | Accounts held in Ireland |
LOC | Consumer line of credit |
MLA | Military Lending Account: Credit facility held by former US service member |
MMA | Money market account |
PBA | Packaged bank Account: Account with additional benefits that charges a fixed monthly fee. |
PPA | Private pension administrator |
RWD | Reward accounts |
SDA | Savings deposit account |
These enumeration values are further described by the label group named ifxType
in the response from the getLabels
operation.
This schema was resolved from products/ifxType
.
Type: string
Enumerated values: CCA
CDA
CLA
CMA
DDA
EQU
GLA
ILA
INV
IRA
IRL
LOC
MLA
MMA
PBA
PPA
RWD
SDA
instantVerification
{
"_profile": "https://production.api.apiture.com/schemas/accountVerifications/instantVerification/v1.1.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/instantVerifications/03abd-30f65c"
},
"apiture:externalAccounts": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/instantVerifications/03abd-30f65c/accounts"
},
"apiture:verificationReport": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/verificationReports?verification=03abd-30f65c"
},
"apiture:contact": {
"href": "https://api.devbank.apiture.com/accountVerifications/contacts/contacts/ef039bdb-5605-4802-b163-d2f7cdbd28ab"
},
"apiture:institution": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/institutions/961ffc1e-27671e"
},
"apiture:externalAccount": {
"href": "https://api.devbank.apiture.com/accountVerifications/accounts/externalAccounts/ee406e5b-7d63fb"
}
},
"_id": "03abd-30f65c",
"state": "pending",
"mfaRequired": true,
"mfaPrompt": {
"0": {
"key": 1,
"type": "TEXT",
"value": "Send code to",
"choices": {
"0": {
"key": 1,
"value": "Mobile XXX-XXX-9771"
},
"1": {
"key": 2,
"value": "Mobile XXX-XXX-9881"
}
}
}
}
}
Instant Verification (v1.1.0)
Representation of an instant verification resource.
Properties
Name | Description |
---|---|
_links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations. This schema was resolved from |
_embedded | object The objects which participate in this verification resource. |
_profile | string(uri) The URI of a resource profile which describes the representation. read-only
|
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. read-only
|
_id | string The unique identifier for this resource. This is an immutable opaque string. read-only
|
state | string The state of the verification, one of the following:
|
completedAt | string(date-time) An ISO 8601 UTC time stamp indicating when the verification completed (has a status different from pending). |
createdAt | string(date-time) An ISO 8601 UTC time stamp indicating when the verification report was created. |
mfaRequired | boolean Indicates if multi-factor authentication (MFA) is required. |
mfaPrompt | mfaPrompt Representation of a multi-factor authentication challenge. |
stateMessages | [object] An array of messages providing additional information of the status of the verification. |
instantVerificationFields
{}
Instant Verification Fields (v1.0.0)
Common fields of an instant verification resource.
Properties
instantVerifications
{
"_profile": "https://production.api.apiture.com/schemas/accountVerifications/instantVerifications/v1.1.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/applications/application/328f6bf6-d762-422f-a077-ab91ca4d0b6f"
}
}
}
Instant Verification Collection (v1.1.0)
Collection of account verification. The items in the collection are ordered in the _embedded
object with name items
. The top-level _links
object may contain pagination links (self
, next
, prev
, first
, last
, collection
).
Properties
Name | Description |
---|---|
_links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations. This schema was resolved from |
_embedded | object Embedded objects. |
» items | [summaryInstantVerification] An array containing a page of account verification items. |
_profile | string(uri) The URI of a resource profile which describes the representation. read-only
|
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. read-only
|
count | integer The number of items in the collection. This value is optional and may 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. |
institution
{
"_profile": "https://production.api.apiture.com/schemas/accountVerifications/institution/v1.1.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/institution/0399abed-30f35d"
},
"icon": {
"href": "http://d111111abcdef8.cloudfront.net/images/image2.jpg"
},
"home": {
"href": "https://www.bank.example.bank/"
}
},
"name": "Example Bank Bancshares, Inc.",
"label": "Example Bank",
"featured": true
}
Institution (v1.1.0)
A financial institution where a user may hold external accounts.
Links
Response and request bodies using this institution
schema may contain the following links:
Rel | Summary | Method |
---|---|---|
home | Home | GET |
icon | Icon | GET |
Properties
Name | Description |
---|---|
_links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations. This schema was resolved from |
_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. read-only
|
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. read-only
|
_id | string The unique identifier for this resource. This is an immutable opaque string. read-only
|
name | string Name of the financial institution. maxLength: 128
|
label | string Display name of the institution maxLength: 128
|
featured | boolean indicates whether the institution is highlighted as one of the top most popular institutions. |
institutions
{
"_profile": "https://production.api.apiture.com/schemas/accountVerifications/institutions/v1.1.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/institutions?start=10&limit=10"
},
"first": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/institutions?start=0&limit=10"
},
"next": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/institutions?start=20&limit=10"
},
"collection": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/institutions"
}
},
"start": 10,
"limit": 10,
"count": 67,
"name": "external institutions",
"_embedded": {
"items": {
"0": {
"_id": "03abd-30f65c",
"name": "Example Banks, Inc",
"_profile": "https://production.api.apiture.com/schemas/accountVerifications/institution/v1.1.0/profile.json",
"label": "Banks",
"featured": true,
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/institution/0399abed-30f35d"
},
"icon": {
"href": "http://d111111abcdef8.cloudfront.net/images/image2.jpg"
},
"home": {
"href": "https://bank.example.com/"
}
}
},
"1": {
"_id": "0399abed-30f35d",
"name": "Example Bank.",
"_profile": "https://production.api.apiture.com/schemas/accountVerifications/institution/v1.1.0/profile.json",
"label": "Example Bank",
"featured": true,
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/institution/0399abed-30f35d"
},
"icon": {
"href": "http://d111111abcdef8.cloudfront.net/images/image2.jpg"
},
"home": {
"href": "https://bank.example.com/"
}
}
}
}
}
}
Institutions (v1.1.0)
Collection of external financial institutions. This list is supplied by a third party and is immutable (there are no operations to add, modify, or remove institutions). The items in the collection are ordered in the _embedded.items
array; the name
is institutions
. The top-level _links
object may contain pagination links (self
, next
, prev
, first
, last
, collection
).
Properties
Name | Description | |||||||||
---|---|---|---|---|---|---|---|---|---|---|
_links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations. This schema was resolved from | |||||||||
_embedded | object Embedded objects. | |||||||||
» items | [institution] [A financial institution where a user may hold external accounts. LinksResponse and request bodies using this
| |||||||||
_profile | string(uri) The URI of a resource profile which describes the representation. read-only
| |||||||||
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. read-only
| |||||||||
count | integer The number of items in the collection. This value is optional and may 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. |
link
{
"href": "https://api.devbank.apiture.com/applications/application/328f6bf6-d762-422f-a077-ab91ca4d0b6f",
"title": "Application"
}
Link (v1.0.0)
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.
This schema was resolved from common/link
.
Properties
Name | Description |
---|---|
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. |
links
{
"property1": {
"href": "https://api.devbank.apiture.com/applications/application/328f6bf6-d762-422f-a077-ab91ca4d0b6f",
"title": "Application"
},
"property2": {
"href": "https://api.devbank.apiture.com/applications/application/328f6bf6-d762-422f-a077-ab91ca4d0b6f",
"title": "Application"
}
}
Links (v1.0.0)
An optional map of links, mapping each link relation to a link object. This model defines the _links
object of HAL representations.
This schema was resolved from common/links
.
Properties
Name | Description |
---|---|
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. This schema was resolved from |
mfaPrompt
[
{
"key": "1",
"type": "question",
"value": "What is the name of your state?",
"choices": [
{
"key": "1",
"value": "North Carolina"
},
{
"key": "2",
"value": "South Carolina"
}
]
},
{
"key": "2",
"type": "question",
"value": "Send code to",
"choices": [
{
"key": "1",
"value": "Mobile XXX-XXX-9771"
},
{
"key": "2",
"value": "Mobile XXX-XXX-9881"
}
]
},
{
"key": "3",
"type": "question",
"value": "Input the received code"
}
]
MFA Challenge (v1.0.0)
Representation of a multi-factor authentication challenge.
mfaPrompt
is an array schema.
Array Elements
Name | Description |
---|---|
MFA Challenge (v1.0.0) | [question] Representation of a multi-factor authentication challenge. |
mfaResponse
{
"answers": [
{
"key": "string",
"value": "string"
}
]
}
MFA Response (v1.0.0)
Representation of a multi-factor authentication (MFA) response.
Properties
Name | Description |
---|---|
answers | [questionResponse] The answers provided for this MFA request. |
microDeposit
{
"value": "string",
"currency": "string",
"baseType": "credit"
}
Micro-Deposit (v1.0.0)
A micro-deposit.
Properties
Name | Description |
---|---|
value | string (required) Numeric value for the micro-deposit. Must include a leading zero and two decimal places. This value will always be between 0.01 and 0.99. |
currency | string (required) ISO 4217 currency code of the micro-deposit. Currently the only supported currency is USD. |
baseType | string (required) Type of micro-deposit transaction.
|
microDepositVerification
{
"_profile": "https://production.api.apiture.com/accountVerifications/microDepositVerification/v1.0.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/microDepositVerifications/03abd-30f65c"
},
"apiture:externalAccounts": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/microDepositVerifications/03abd-30f65c/accounts"
},
"apiture:verificationReport": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/verificationReports?verification=03abd-30f65c"
},
"apiture:externalAccount": {
"href": "https://api.devbank.apiture.com/accountVerifications/accounts/externalAccounts/03abd-30f65c"
}
},
"state": "verified"
}
Micro Deposit Verification (v1.1.0)
Representation of a micro-deposit verification resource.
Properties
Name | Description |
---|---|
_links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations. This schema was resolved from |
_embedded | object The objects which participate in this verification resource. |
_profile | string(uri) The URI of a resource profile which describes the representation. read-only
|
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. read-only
|
_id | string The unique identifier for this resource. This is an immutable opaque string. read-only
|
state | string The state of the micro-deposit verification, one of the following:
|
completedAt | string(date-time) An ISO 8601 UTC time stamp indicating when the verification completed (has a status different from pending). |
expiresAt | string(date-time) The date-time when the account verification expires. This is in [RFC 3339] (https://tools.ietf.org/html/rfc3339) UTC date-time format ( YYYY-MM-DDThh:mm:ss.sssZ ).
read-only
|
createdAt | string(date-time) An ISO 8601 UTC time stamp indicating when the verification report was created. |
stateMessages | [object] An array of messages providing additional information of the status of the verification. |
microDepositVerificationAmounts
{
"_profile": "https://production.api.apiture.com/schemas/common/abstractResource/v2.1.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/applications/application/328f6bf6-d762-422f-a077-ab91ca4d0b6f"
}
},
"amounts": {
"0": {
"value": ".02",
"currency": "USD",
"baseType": "credit"
},
"1": {
"value": ".04",
"currency": "USD",
"baseType": "credit"
},
"2": {
"value": ".06",
"currency": "USD",
"baseType": "debit"
}
}
}
Update Micro Deposits Verification (v1.1.0)
Representation used to update a micro-deposit verification resource.
Properties
Name | Description |
---|---|
_links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations. This schema was resolved from |
_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. read-only
|
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. read-only
|
amounts | [microDeposit] (required) An array containing a page of account verification items. minItems: 1
|
microDepositVerifications
{
"_profile": "https://production.api.apiture.com/schemas/common/abstractResource/v2.1.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/applications/application/328f6bf6-d762-422f-a077-ab91ca4d0b6f"
}
}
}
Micro Deposit Verification Collection (v1.1.0)
Collection of micro-deposit verifications. The items in the collection are ordered in the _embedded
object with name items
. The top-level _links
object may contain pagination links (self
, next
, prev
, first
, last
, collection
).
Properties
Name | Description |
---|---|
_links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations. This schema was resolved from |
_embedded | object Embedded objects. |
» items | [microDepositVerification] An array containing a page of account verification items. |
_profile | string(uri) The URI of a resource profile which describes the representation. read-only
|
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. read-only
|
count | integer The number of items in the collection. This value is optional and may 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. |
providerAccountVerification
{
"providerParameters": {
"issuer": "mx",
"parameters": [
{
"name": "widgetUrl",
"value": "https://int-widgets.moneydesktop.com/md/connections/qfnp2wzqg9rthAp8tv70fb6pzqZ8v9xfzn3by2k2"
},
{
"name": "context",
"value": "BC67FAA048724BA1994B336CC934A917"
}
]
},
"state": "verified",
"accounts": [
{
"id": "03abd-30f65c",
"name": "My account at 3rdParty Bank",
"ifxType": "SDA",
"state": "active",
"routingNumber": "021000021",
"accountNumbers": {
"masked": "********9999",
"full": "999999999"
},
"accountOwners": [
{
"firstName": "Steven",
"middleName": "Benjamin",
"lastName": "Storey",
"fullName": "Steven B. Storey",
"type": "primary"
}
],
"providerAccountId": "a4e48fba-a737-4f75-b703-3e1149b1ea45",
"verificationReport": {
"state": "passed",
"accountRiskFactors": []
}
}
]
}
Provider Account Verification (v1.1.0)
Data used by the instant account verification provider to to validate external accounts on behalf of the banking user, and the result of that verification.
Properties
Name | Description |
---|---|
providerParameters | accountVerificationProviderParameters (required) The banking user's parameters for this instant account verification provider. |
state | accountVerificationProviderState (required) The state of the instant account verification provider's account and identity verification. read-only
|
accounts | [providerExternalAccount] When state is passed , this is the list of eligible accounts the banking user holds at the financial institution.
read-only
|
providerExternalAccount
{
"id": "03abd-30f65c",
"_profile": "https://production.api.apiture.com/schemas/accountVerifications/simpleExternalAccount/v1.1.0/profile.json",
"name": "My account at 3rdParty Bank",
"ifxType": "SDA",
"state": "active",
"routingNumber": "021000021",
"accountNumbers": {
"masked": "********9999",
"full": "999999999"
},
"accountOwners": {
"0": {
"firstName": "Steven",
"middleName": "Benjamin",
"lastName": "Storey",
"fullName": "Steven B. Storey",
"type": "primary"
}
},
"providerAccountId": "a4e48fba-a737-4f75-b703-3e1149b1ea45",
"verificationReport": {
"state": "passed",
"accountRiskFactors": {}
}
}
Provider External Account (v1.0.0)
An eligible account the banking user holds at the financial institution, as discovered by the external account verification provider.
Properties
Name | Description |
---|---|
id | string The unique identifier for this external account resource. This is an immutable opaque string. |
name | string The user-assigned name of this external account. maxLength: 128
|
state | externalAccountState The state of the external account. read-only
|
ifxType | ifxType A code which identifies the product type. This is one of the IFX AcctType values. |
accountOwners | [externalAccountOwner] The array of account owners. This may be an empty array (0 items) but is always present. |
routingNumber | string The account routing number which identifies the financial institution (FI). The full routing number is derived from the FI's configuration. read-only
minLength: 9
maxLength: 9
|
accountNumbers | externalAccountNumbers The masked and full account number. |
attributes | attributes Additional attributes created by the account verification provider. These attributes may be copied to the final external account resource in the Accounts API to preserve the connection between the provider and the account. |
providerAccountId | string The provider's unique opaque identifier for the account. Note that this is not related to the external account ID in the Accounts API. minLength: 4
maxLength: 48
|
verificationReport | verificationReport An optional verification report and risk factors generated from the instant account verification provider. This is only available when state is failed or verified .
read-only
|
question
{
"key": "string",
"content": "string",
"_links": {
"property1": {
"href": "https://api.devbank.apiture.com/applications/application/328f6bf6-d762-422f-a077-ab91ca4d0b6f",
"title": "Application"
},
"property2": {
"href": "https://api.devbank.apiture.com/applications/application/328f6bf6-d762-422f-a077-ab91ca4d0b6f",
"title": "Application"
}
},
"choices": [
{
"type": "image",
"key": "string",
"value": "string",
"content": "string",
"_links": {
"property1": {
"href": "https://api.devbank.apiture.com/applications/application/328f6bf6-d762-422f-a077-ab91ca4d0b6f",
"title": "Application"
},
"property2": {
"href": "https://api.devbank.apiture.com/applications/application/328f6bf6-d762-422f-a077-ab91ca4d0b6f",
"title": "Application"
}
}
}
],
"type": "question",
"value": "string"
}
MFA Question (v1.0.0)
Representation of a multi-factor authentication question. The supported question formats are text and image, in which case the encoded payload is available under the content field.
Properties
Name | Description |
---|---|
key | string (required) The unique key for this question's fields. |
content | string The question's content: the token value, or image URI. |
_links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations. This schema was resolved from |
choices | [choice] Optional array of choices for this question. |
type | string The question type.
|
value | string The question text. |
questionFields
{
"key": "string"
}
MFA Question Fields (v1.0.0)
Common question and answer fields.
Properties
Name | Description |
---|---|
key | string (required) The unique key for this question's fields. |
questionResponse
{
"key": "string",
"value": "string"
}
MFA Question Answer (v1.0.0)
Representation of a multi-factor authentication question answer.
Properties
Name | Description |
---|---|
key | string (required) The unique key for this question's fields. |
value | string (required) User provided value for this question. |
riskFactor
{
"riskCode": "string",
"description": "string",
"attributes": {
"value": "string",
"expected": [
"string"
]
}
}
Risk Factor (v1.0.0)
A risk factor indicates a mismatch between user data and available account data.
Properties
Name | Description |
---|---|
riskCode | string The risk factor risk code |
description | string The risk code description |
attributes | riskFactorAttributes Details of the data used to determine a risk factor. |
riskFactorAttributes
{
"value": "string",
"expected": [
"string"
]
}
Risk Factor Attributes (v1.0.0)
Details of the data used to determine a risk factor.
Properties
Name | Description |
---|---|
value | string Supplied value for risk factor analysis |
expected | [string] Known values referenced for risk factor analysis |
root
{
"_profile": "https://production.api.apiture.com/schemas/common/root/v2.1.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/applications/application/328f6bf6-d762-422f-a077-ab91ca4d0b6f"
}
},
"id": "apiName",
"name": "API name",
"apiVersion": "1.0.0"
}
API Root (v2.1.0)
A HAL response, with hypermedia _links
for the top-level resources and operations in API.
This schema was resolved from common/root
.
Properties
Name | Description |
---|---|
_links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations. This schema was resolved from |
_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. read-only
|
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. read-only
|
_id | string This API's unique ID. read-only
|
name | string This API's name. |
apiVersion | string This API's version. |
simpleAddress
{
"addressLine1": "555 N Front Street",
"addressLine2": "Suite 5555",
"city": "Wilmington",
"regionCode": "NC",
"postalCode": "28401-5405",
"countryCode": "US"
}
Simple Address (v1.0.0)
A postal address.
This schema was resolved from contacts/simpleAddress
.
Properties
Name | Description |
---|---|
addressLine1 | string The first street address line of the address, normally a house number and street name. minLength: 4
maxLength: 128
|
addressLine2 | string The optional second street address line of the address. maxLength: 128
|
city | string The name of the city or municipality. minLength: 2
maxLength: 128
|
regionCode | string The mailing address region code, such as state in the US, or a province in Canada. This is normalized to uppercase. minLength: 2
maxLength: 2
pattern: ^[a-zA-Z]{2}$
|
postalCode | string The mailing address postal code, such as a US Zip or Zip+4 code, or a Canadian postal code. minLength: 5
maxLength: 10
pattern: ^[0-9]{5}(?:-[0-9]{4})?$
|
countryCode | string The ISO 3166-1 alpha-2 country code. This is normalized to uppercase. minLength: 2
maxLength: 2
pattern: ^[a-zA-Z]{2}$
|
simpleExternalAccount
{
"id": "03abd-30f65c",
"_profile": "https://production.api.apiture.com/schemas/accountVerifications/simpleExternalAccount/v1.1.0/profile.json",
"name": "My account at 3rdParty Bank",
"ifxType": "SDA",
"state": "active",
"routingNumber": "021000021",
"accountNumbers": {
"masked": "*************3210",
"full": "999999999"
},
"accountOwners": {
"0": {
"firstName": "Steven",
"middleName": "Benjamin",
"lastName": "Storey",
"fullName": "Steven B. Storey",
"type": "primary"
}
}
}
External Account (v1.1.0)
Simple representation of an external account resource.
Properties
Name | Description |
---|---|
id | string The unique identifier for this external account resource. This is an immutable opaque string. |
name | string The user-assigned name of this external account. maxLength: 128
|
state | externalAccountState The state of the external account. read-only
|
ifxType | ifxType A code which identifies the product type. This is one of the IFX AcctType values. |
accountOwners | [externalAccountOwner] The array of account owners. This may be an empty array (0 items) but is always present. |
routingNumber | string The account routing number which identifies the financial institution (FI). The full routing number is derived from the FI's configuration. read-only
minLength: 9
maxLength: 9
|
accountNumbers | externalAccountNumbers The masked and full account number. |
attributes | attributes Additional attributes created by the account verification provider. These attributes may be copied to the final external account resource in the Accounts API to preserve the connection between the provider and the account. |
simpleExternalAccounts
{
"_profile": "https://production.api.apiture.com/schemas/accountVerifications/simpleExternalAccounts/v1.1.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/instantVerifications/03abd-30f65c/accounts"
}
},
"externalAccounts": {
"0": {
"id": "03abd-30f65c",
"name": "My account at 3rdParty Bank",
"_profile": "https://production.api.apiture.com/schemas/accountVerifications/simpleExternalAccount/v1.1.0/profile.json",
"ifxType": "SDA",
"routingNumber": "021000021",
"accountNumbers": {
"masked": "*************3210"
}
}
}
}
External Accounts (v1.1.0)
A list of of external accounts related to this verification resource. Since this is a small finite set, this is not a paginated collection, just an array.
Properties
Name | Description |
---|---|
_links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations. This schema was resolved from |
_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. read-only
|
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. read-only
|
externalAccounts | [simpleExternalAccount] (required) A list of external accounts. |
summaryInstantVerification
{
"_profile": "https://production.api.apiture.com/schemas/accountVerifications/summaryInstantVerification/v1.1.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/instantVerifications/03abd-30f65c"
}
},
"_id": "03abd-30f65c",
"apiture:externalAccounts": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/instantVerifications/03abd-30f65c/accounts"
},
"apiture:verificationReport": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/verificationReports?verification=03abd-30f65c"
},
"apiture:contact": {
"href": "https://api.devbank.apiture.com/accountVerifications/contacts/contacts/ef039bdb-5605-4802-b163-d2f7cdbd28ab"
},
"apiture:institution": {
"href": "https://api.devbank.apiture.com/accountVerifications/accountVerifications/institutions/961ffc1e-27671e"
},
"state": "pending",
"mfaRequired": true
}
Summary Instant Verification (v1.1.0)
Summary representation of an instant verification resource.
Properties
Name | Description |
---|---|
_links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations. This schema was resolved from |
_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. read-only
|
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. read-only
|
_id | string The unique identifier for this resource. This is an immutable opaque string. read-only
|
state | string The state of an instant account verification, one of the following:
|
featured | boolean indicates whether the institution resource is highlighted as one of the top most popular institutions. |
updateInstantVerification
{
"_profile": "https://production.api.apiture.com/schemas/accountVerifications/updateInstantVerification/v1.1.0/profile.json",
"_links": {
"self": {
"href": "https://api.devbank.apiture.com/applications/application/328f6bf6-d762-422f-a077-ab91ca4d0b6f"
},
"apiture:institution": {
"href": "https://api.devbank.apiture.com/accountVerifications/institutions/institutions/03abd-30f65c"
},
"apiture:contact": {
"href": "https://api.devbank.apiture.com/accountVerifications/contacts/contact/03abd-30f65c"
}
},
"mfa": {
"answers": {
"0": {
"key": 1,
"value": "Mobile XXX-XXX-9771"
}
}
}
}
Update Instant Verification (v1.1.0)
Representation used to update an instant verification resource.
Properties
Name | Description |
---|---|
_links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations. This schema was resolved from |
_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. read-only
|
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. read-only
|
mfa | mfaResponse Representation of a multi-factor authentication (MFA) response. |
verificationReport
{
"state": "failed",
"accountRiskFactors": {
"0": {
"riskCode": 101,
"description": "Account owner first name does not match"
},
"1": {
"riskCode": 102,
"description": "Account owner last name does not match"
},
"2": {
"riskCode": 103,
"description": "Account owner zip code does not match"
}
}
}
Verification Report (v1.0.0)
A verification report is an additional layer of validation that can be run against an instant verification resource. It uses available account aggregation data to generate a pass/fail result based on configured risk factors.
Properties
Name | Description |
---|---|
state | string The state of a verification report. passed indicates that the verification does not contain any risk factors based upon the user and account information, failed indicates that the verification contains one or more risk factors.
|
accountRiskFactors | [riskFactor] Risk factors associated with the account verification. |