External Account Verification v0.1.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.
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.
Download OpenAPI Definition (YAML)
Base URLs:
API
Endpoints which describe this API
getApi
Code samples
# You can also use wget
curl -X GET /accountVerifications/ \
-H 'Accept: application/hal+json'
GET /accountVerifications/ HTTP/1.1
Accept: application/hal+json
var headers = {
'Accept':'application/hal+json'
};
$.ajax({
url: '/accountVerifications/',
method: 'get',
headers: headers,
success: function(data) {
console.log(JSON.stringify(data));
}
})
const fetch = require('node-fetch');
const headers = {
'Accept':'application/hal+json'
};
fetch('/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'
}
result = RestClient.get '/accountVerifications/',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/hal+json'
}
r = requests.get('/accountVerifications/', params={
}, headers = headers)
print r.json()
URL obj = new URL("/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"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "/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
Fields marked with * are mandatory.
Response
Response Code:
Response Headers:
Response Body:
Click on 'Try It' to get a response.
Example responses
200 Response
{
"id": "apiName",
"name": "API name",
"apiVersion": "0.0.1-SNAPSHOT",
"_profile": "https://api.apiture.com/schema/apiRoot/v1.0.0/profile.json",
"_links": {}
}
Responses
Status | Description |
---|---|
200 | OK |
OK | |
Schema: root |
getApiDoc
Code samples
# You can also use wget
curl -X GET /accountVerifications/apiDoc \
-H 'Accept: application/json'
GET /accountVerifications/apiDoc HTTP/1.1
Accept: application/json
var headers = {
'Accept':'application/json'
};
$.ajax({
url: '/accountVerifications/apiDoc',
method: 'get',
headers: headers,
success: function(data) {
console.log(JSON.stringify(data));
}
})
const fetch = require('node-fetch');
const headers = {
'Accept':'application/json'
};
fetch('/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'
}
result = RestClient.get '/accountVerifications/apiDoc',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/json'
}
r = requests.get('/accountVerifications/apiDoc', params={
}, headers = headers)
print r.json()
URL obj = new URL("/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"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "/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
Fields marked with * are mandatory.
Response
Response Code:
Response Headers:
Response Body:
Click on 'Try It' to get a response.
Example responses
200 Response
{}
Responses
Status | Description |
---|---|
200 | OK |
OK | |
Schema: Inline |
Response Schema
Account Verification
Creation and retrieval of account verifications
getmicroDepositVerifications
Code samples
# You can also use wget
curl -X GET /accountVerifications/microDepositVerifications \
-H 'Accept: application/hal+json'
GET /accountVerifications/microDepositVerifications HTTP/1.1
Accept: application/hal+json
var headers = {
'Accept':'application/hal+json'
};
$.ajax({
url: '/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'
};
fetch('/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'
}
result = RestClient.get '/accountVerifications/microDepositVerifications',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/hal+json'
}
r = requests.get('/accountVerifications/microDepositVerifications', params={
}, headers = headers)
print r.json()
URL obj = new URL("/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"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "/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. |
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. |
Try it
Fields marked with * are mandatory.
Response
Response Code:
Response Headers:
Response Body:
Click on 'Try It' to get a response.
Example responses
200 Response
{
"_profile": "http://api.apiture.com/schema/example/v1.0.0/profile.json",
"_links": {
"self": {
"href": "{uri of current resource}"
}
},
"count": 0,
"start": 0,
"limit": 0,
"name": "string",
"_embedded": {
"items": [
{
"_profile": "http://api.apiture.com/accountVerifications/microDepositVerification/v1.0.0/profile.json",
"_links": {
"self": {
"href": "/accountVerifications/microDepositVerifications/0399abed-fd3d-4830-a88b-30f38b8a365c"
},
"apiture:externalAccounts": {
"href": "/accountVerifications/microDepositVerifications/0399abed-fd3d-4830-a88b-30f38b8a365c/accounts"
},
"apiture:verificationReport": {
"href": "/accountVerifications/verificationReports?verification=0399abed-fd3d-4830-a88b-30f38b8a365c"
}
},
"state": "verified"
}
]
}
}
Responses
Status | Description |
---|---|
200 | OK |
OK | |
Schema: microDepositVerifications | |
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 | |
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 |
createMicroDepositVerification
Code samples
# You can also use wget
curl -X POST /accountVerifications/microDepositVerifications \
-H 'Content-Type: application/hal+json' \
-H 'Accept: application/hal+json'
POST /accountVerifications/microDepositVerifications HTTP/1.1
Content-Type: application/hal+json
Accept: application/hal+json
var headers = {
'Content-Type':'application/hal+json',
'Accept':'application/hal+json'
};
$.ajax({
url: '/accountVerifications/microDepositVerifications',
method: 'post',
headers: headers,
success: function(data) {
console.log(JSON.stringify(data));
}
})
const fetch = require('node-fetch');
const inputBody = '{
"routingNumbers": {
"full": "054100318"
},
"accountNumbers": {
"full": "7432172992"
}
}';
const headers = {
'Content-Type':'application/hal+json',
'Accept':'application/hal+json'
};
fetch('/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'
}
result = RestClient.post '/accountVerifications/microDepositVerifications',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': 'application/hal+json',
'Accept': 'application/hal+json'
}
r = requests.post('/accountVerifications/microDepositVerifications', params={
}, headers = headers)
print r.json()
URL obj = new URL("/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"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "/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
{
"routingNumbers": {
"full": "054100318"
},
"accountNumbers": {
"full": "7432172992"
}
}
Parameters
Parameter | Description |
---|---|
body (body) |
any (required) The data necessary to create a new account verification. |
Try it
Fields marked with * are mandatory.
Response
Response Code:
Response Headers:
Response Body:
Click on 'Try It' to get a response.
Example responses
201 Response
{
"_profile": "http://api.apiture.com/accountVerifications/microDepositVerification/v1.0.0/profile.json",
"_links": {
"self": {
"href": "/accountVerifications/microDepositVerifications/0399abed-fd3d-4830-a88b-30f38b8a365c"
},
"apiture:externalAccounts": {
"href": "/accountVerifications/microDepositVerifications/0399abed-fd3d-4830-a88b-30f38b8a365c/accounts"
},
"apiture:verificationReport": {
"href": "/accountVerifications/verificationReports?verification=0399abed-fd3d-4830-a88b-30f38b8a365c"
}
},
"state": "verified"
}
Responses
Status | Description |
---|---|
201 | Created |
Created | |
Schema: Inline | |
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 | |
409 | Conflict |
Conflict. A conflict can occur for several reasons:
| |
Schema: error |
Response Schema
Status Code 201
Property Name | Description |
---|---|
Micro Deposit Verification | any Representation of a micro-deposit verification resource. |
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 /accountVerifications/microDepositVerifications/{verificationId} \
-H 'Accept: application/hal+json' \
-H 'If-None-Match: string'
GET /accountVerifications/microDepositVerifications/{verificationId} HTTP/1.1
Accept: application/hal+json
If-None-Match: string
var headers = {
'Accept':'application/hal+json',
'If-None-Match':'string'
};
$.ajax({
url: '/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'
};
fetch('/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'
}
result = RestClient.get '/accountVerifications/microDepositVerifications/{verificationId}',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/hal+json',
'If-None-Match': 'string'
}
r = requests.get('/accountVerifications/microDepositVerifications/{verificationId}', params={
}, headers = headers)
print r.json()
URL obj = new URL("/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"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "/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 verificaton. 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
Fields marked with * are mandatory.
Response
Response Code:
Response Headers:
Response Body:
Click on 'Try It' to get a response.
Example responses
200 Response
{
"_profile": "http://api.apiture.com/accountVerifications/microDepositVerification/v1.0.0/profile.json",
"_links": {
"self": {
"href": "/accountVerifications/microDepositVerifications/0399abed-fd3d-4830-a88b-30f38b8a365c"
},
"apiture:externalAccounts": {
"href": "/accountVerifications/microDepositVerifications/0399abed-fd3d-4830-a88b-30f38b8a365c/accounts"
},
"apiture:verificationReport": {
"href": "/accountVerifications/verificationReports?verification=0399abed-fd3d-4830-a88b-30f38b8a365c"
}
},
"state": "verified"
}
Responses
Status | Description |
---|---|
200 | OK |
OK | |
Schema: Inline | |
304 | Not Modified |
Not Modified. The resource has not been modified since it was last fetched. | |
404 | Not Found |
Not Found. There is no such account verification resource at the specified {verificationId} The _error field in the response will contain details about the request error. | |
Schema: error |
Response Schema
Status Code 200
Property Name | Description |
---|---|
Micro Deposit Verification | any Representation of a micro-deposit verification resource. |
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 /accountVerifications/microDepositVerifications/{verificationId} \
-H 'Content-Type: application/hal+json' \
-H 'Accept: application/hal+json' \
-H 'If-None-Match: string'
PATCH /accountVerifications/microDepositVerifications/{verificationId} HTTP/1.1
Content-Type: application/hal+json
Accept: application/hal+json
If-None-Match: string
var headers = {
'Content-Type':'application/hal+json',
'Accept':'application/hal+json',
'If-None-Match':'string'
};
$.ajax({
url: '/accountVerifications/microDepositVerifications/{verificationId}',
method: 'patch',
headers: headers,
success: function(data) {
console.log(JSON.stringify(data));
}
})
const fetch = require('node-fetch');
const inputBody = '{
"amount1": {
"value": ".02",
"currency": "USD"
},
"amount2": {
"value": ".04",
"currency": "USD"
}
}';
const headers = {
'Content-Type':'application/hal+json',
'Accept':'application/hal+json',
'If-None-Match':'string'
};
fetch('/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-None-Match' => 'string'
}
result = RestClient.patch '/accountVerifications/microDepositVerifications/{verificationId}',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': 'application/hal+json',
'Accept': 'application/hal+json',
'If-None-Match': 'string'
}
r = requests.patch('/accountVerifications/microDepositVerifications/{verificationId}', params={
}, headers = headers)
print r.json()
URL obj = new URL("/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-None-Match": []string{"string"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("PATCH", "/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 verification resource. This operation must be used to complete the verification by providing the amount values from the micro-deposit transactions.
Body parameter
{
"amount1": {
"value": ".02",
"currency": "USD"
},
"amount2": {
"value": ".04",
"currency": "USD"
}
}
Parameters
Parameter | Description |
---|---|
verificationId (path) |
string (required) The unique identifier of this account verificaton. 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. |
body (body) |
any (required) The data necessary to update a microdeposit verification resource. |
Try it
Fields marked with * are mandatory.
Response
Response Code:
Response Headers:
Response Body:
Click on 'Try It' to get a response.
Example responses
200 Response
{
"_profile": "http://api.apiture.com/accountVerifications/microDepositVerification/v1.0.0/profile.json",
"_links": {
"self": {
"href": "/accountVerifications/microDepositVerifications/0399abed-fd3d-4830-a88b-30f38b8a365c"
},
"apiture:externalAccounts": {
"href": "/accountVerifications/microDepositVerifications/0399abed-fd3d-4830-a88b-30f38b8a365c/accounts"
},
"apiture:verificationReport": {
"href": "/accountVerifications/verificationReports?verification=0399abed-fd3d-4830-a88b-30f38b8a365c"
}
},
"state": "verified"
}
Responses
Status | Description |
---|---|
200 | OK |
OK | |
Schema: Inline | |
304 | Not Modified |
Not Modified. The resource has not been modified since it was last fetched. | |
404 | Not Found |
Not Found. There is no such account verification resource at the specified {verificationId} The _error field in the response will contain details about the request error. | |
Schema: error |
Response Schema
Status Code 200
Property Name | Description |
---|---|
Micro Deposit Verification | any Representation of a micro-deposit verification resource. |
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. |
getMicroDeposit_Ver_Accounts
Code samples
# You can also use wget
curl -X GET /accountVerifications/microDepositVerifications/{verificationId}/accounts \
-H 'Accept: application/hal+json'
GET /accountVerifications/microDepositVerifications/{verificationId}/accounts HTTP/1.1
Accept: application/hal+json
var headers = {
'Accept':'application/hal+json'
};
$.ajax({
url: '/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'
};
fetch('/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'
}
result = RestClient.get '/accountVerifications/microDepositVerifications/{verificationId}/accounts',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/hal+json'
}
r = requests.get('/accountVerifications/microDepositVerifications/{verificationId}/accounts', params={
}, headers = headers)
print r.json()
URL obj = new URL("/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"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "/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 verificaton. This is an opaque string. |
Try it
Fields marked with * are mandatory.
Response
Response Code:
Response Headers:
Response Body:
Click on 'Try It' to get a response.
Example responses
200 Response
{
"_profile": "http://api.apiture.com/schemas/collection/externalAccount/v1.0.0/profile.json",
"_links": {
"self": {
"href": "/instantVerifications/0399abed-fd3d-4830-a88b-30f38b8a365c/accounts"
}
},
"_embedded": {
"items": [
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"name": "My account at 3rdParty Bank",
"_profile": "http://api.apiture.com/schemas/externalAccount/v1.0.0/profile.json",
"type": "savings",
"state": "active",
"primaryUserName": "Lucille Wellphunded",
"institutionName": "3rdParty Bank",
"verifiedAt": "2018-01-20T18:13:33.375Z",
"createdAt": "2018-01-20T05:54:52.375Z",
"routingNumber": "021000021",
"accountNumbers": {
"masked": "*************3210"
},
"transactionTypes": [
"credit",
"debit"
],
"_links": {
"self": {
"href": "/accounts/externalAccounts/0399abed-fd3d-4830-a88b-30f38b8a365c"
}
}
}
]
}
}
Responses
Status | Description |
---|---|
200 | OK |
OK | |
Schema: Inline | |
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 | |
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 |
Response Schema
Status Code 200
Property Name | Description |
---|---|
External Account Collection | any Collection of external accounts associated to this verification resource. |
getInstantVerifications
Code samples
# You can also use wget
curl -X GET /accountVerifications/instantVerifications \
-H 'Accept: application/hal+json'
GET /accountVerifications/instantVerifications HTTP/1.1
Accept: application/hal+json
var headers = {
'Accept':'application/hal+json'
};
$.ajax({
url: '/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'
};
fetch('/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'
}
result = RestClient.get '/accountVerifications/instantVerifications',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/hal+json'
}
r = requests.get('/accountVerifications/instantVerifications', params={
}, headers = headers)
print r.json()
URL obj = new URL("/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"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "/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. |
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. |
Try it
Fields marked with * are mandatory.
Response
Response Code:
Response Headers:
Response Body:
Click on 'Try It' to get a response.
Example responses
200 Response
{
"_profile": "http://api.apiture.com/schemas/accountVerifications/instantVerifications/v1.0.0/profile.json"
}
Responses
Status | Description |
---|---|
200 | OK |
OK | |
Schema: instantVerifications | |
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 | |
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 /accountVerifications/instantVerifications \
-H 'Content-Type: application/hal+json' \
-H 'Accept: application/hal+json' \
-H 'Authentication: string'
POST /accountVerifications/instantVerifications HTTP/1.1
Content-Type: application/hal+json
Accept: application/hal+json
Authentication: string
var headers = {
'Content-Type':'application/hal+json',
'Accept':'application/hal+json',
'Authentication':'string'
};
$.ajax({
url: '/accountVerifications/instantVerifications',
method: 'post',
headers: headers,
success: function(data) {
console.log(JSON.stringify(data));
}
})
const fetch = require('node-fetch');
const inputBody = '{
"_links": {
"apiture:institution": {
"href": "/accountVerifications/institutions/961ffc1e-e1f1-11e8-8366-274c0a4e671e"
},
"apiture:contact": {
"href": "/contacts/contact/0399abed-fd3d-4830-a88b-30f38b8a365c"
}
}
}';
const headers = {
'Content-Type':'application/hal+json',
'Accept':'application/hal+json',
'Authentication':'string'
};
fetch('/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',
'Authentication' => 'string'
}
result = RestClient.post '/accountVerifications/instantVerifications',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': 'application/hal+json',
'Accept': 'application/hal+json',
'Authentication': 'string'
}
r = requests.post('/accountVerifications/instantVerifications', params={
}, headers = headers)
print r.json()
URL obj = new URL("/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"},
"Authentication": []string{"string"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "/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 the send user credentials as part of the Authentication
header to initiate an authentication process with the external financial institution. 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
{
"_links": {
"apiture:institution": {
"href": "/accountVerifications/institutions/961ffc1e-e1f1-11e8-8366-274c0a4e671e"
},
"apiture:contact": {
"href": "/contacts/contact/0399abed-fd3d-4830-a88b-30f38b8a365c"
}
}
}
Parameters
Parameter | Description |
---|---|
Authentication (header) |
string (required) Base64 encoded account username and password. |
body (body) |
any (required) The data necessary to create a new account verification. |
Try it
Fields marked with * are mandatory.
Response
Response Code:
Response Headers:
Response Body:
Click on 'Try It' to get a response.
Example responses
201 Response
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://api.apiture.com/schemas/accountVerifications/instantVerification/v1.0.0/profile.json",
"_links": {
"self": {
"href": "/accountVerifications/instantVerifications/0399abed-fd3d-4830-a88b-30f38b8a365c"
},
"apiture:externalAccounts": {
"href": "/accountVerifications/instantVerifications/0399abed-fd3d-4830-a88b-30f38b8a365c/accounts"
},
"apiture:verificationReport": {
"href": "/accountVerifications/verificationReports?verification=0399abed-fd3d-4830-a88b-30f38b8a365c"
},
"apiture:contact": {
"href": "/contacts/contacts/ef039bdb-5605-4802-b163-d2f7cdbd28ab"
},
"apiture:institution": {
"href": "/accountVerifications/institutions/961ffc1e-e1f1-11e8-8366-274c0a4e671e"
}
},
"state": "pending",
"mfaRequired": true,
"mfaPrompt": null,
"questions": {
"question": [
{
"key": 1,
"type": "TEXT",
"value": "Send code to",
"choices": [
{
"key": 1,
"value": "Mobile XXX-XXX-9771"
},
{
"key": 2,
"value": "Mobile XXX-XXX-9881"
}
]
}
]
}
}
Responses
Status | Description |
---|---|
201 | Created |
Created | |
Schema: instantVerification | |
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 | |
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 /accountVerifications/instantVerifications/{verificationId} \
-H 'Accept: application/hal+json' \
-H 'If-None-Match: string'
GET /accountVerifications/instantVerifications/{verificationId} HTTP/1.1
Accept: application/hal+json
If-None-Match: string
var headers = {
'Accept':'application/hal+json',
'If-None-Match':'string'
};
$.ajax({
url: '/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'
};
fetch('/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'
}
result = RestClient.get '/accountVerifications/instantVerifications/{verificationId}',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/hal+json',
'If-None-Match': 'string'
}
r = requests.get('/accountVerifications/instantVerifications/{verificationId}', params={
}, headers = headers)
print r.json()
URL obj = new URL("/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"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "/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 verificaton. 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
Fields marked with * are mandatory.
Response
Response Code:
Response Headers:
Response Body:
Click on 'Try It' to get a response.
Example responses
200 Response
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://api.apiture.com/schemas/accountVerifications/instantVerification/v1.0.0/profile.json",
"_links": {
"self": {
"href": "/accountVerifications/instantVerifications/0399abed-fd3d-4830-a88b-30f38b8a365c"
},
"apiture:externalAccounts": {
"href": "/accountVerifications/instantVerifications/0399abed-fd3d-4830-a88b-30f38b8a365c/accounts"
},
"apiture:verificationReport": {
"href": "/accountVerifications/verificationReports?verification=0399abed-fd3d-4830-a88b-30f38b8a365c"
},
"apiture:contact": {
"href": "/contacts/contacts/ef039bdb-5605-4802-b163-d2f7cdbd28ab"
},
"apiture:institution": {
"href": "/accountVerifications/institutions/961ffc1e-e1f1-11e8-8366-274c0a4e671e"
}
},
"state": "pending",
"mfaRequired": true,
"mfaPrompt": null,
"questions": {
"question": [
{
"key": 1,
"type": "TEXT",
"value": "Send code to",
"choices": [
{
"key": 1,
"value": "Mobile XXX-XXX-9771"
},
{
"key": 2,
"value": "Mobile XXX-XXX-9881"
}
]
}
]
}
}
Responses
Status | Description |
---|---|
200 | OK |
OK | |
Schema: Inline | |
304 | Not Modified |
Not Modified. The resource has not been modified since it was last fetched. | |
404 | Not Found |
Not Found. There is no such account verification resource at the specified {verificationId} The _error field in the response will contain details about the request error. | |
Schema: error | |
500 | Internal Server Error |
Server Error. Fatal error has occurred. | |
Schema: errorResponse |
Response Schema
Status Code 200
Property Name | Description |
---|---|
Instant Verification | any Representation of an instant verification resource. |
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 /accountVerifications/instantVerifications/{verificationId} \
-H 'Content-Type: application/hal+json' \
-H 'Accept: application/hal+json' \
-H 'If-None-Match: string'
PATCH /accountVerifications/instantVerifications/{verificationId} HTTP/1.1
Content-Type: application/hal+json
Accept: application/hal+json
If-None-Match: string
var headers = {
'Content-Type':'application/hal+json',
'Accept':'application/hal+json',
'If-None-Match':'string'
};
$.ajax({
url: '/accountVerifications/instantVerifications/{verificationId}',
method: 'patch',
headers: headers,
success: function(data) {
console.log(JSON.stringify(data));
}
})
const fetch = require('node-fetch');
const inputBody = '{
"_profile": "http://api.apiture.com/schemas/accountVerifications/instantVerifications/v1.0.0/profile.json",
"_links": {
"apiture:institution": {
"href": "/institutions/institutions/0399abed-fd3d-4830-a88b-30f38b8a365c"
},
"apiture:contact": {
"href": "/contacts/contact/0399abed-fd3d-4830-a88b-30f38b8a365c"
}
},
"mfa": {
"answers": [
{
"key": 1,
"value": "Mobile XXX-XXX-9771"
}
]
}
}';
const headers = {
'Content-Type':'application/hal+json',
'Accept':'application/hal+json',
'If-None-Match':'string'
};
fetch('/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-None-Match' => 'string'
}
result = RestClient.patch '/accountVerifications/instantVerifications/{verificationId}',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': 'application/hal+json',
'Accept': 'application/hal+json',
'If-None-Match': 'string'
}
r = requests.patch('/accountVerifications/instantVerifications/{verificationId}', params={
}, headers = headers)
print r.json()
URL obj = new URL("/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-None-Match": []string{"string"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("PATCH", "/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
.
Body parameter
{
"_profile": "http://api.apiture.com/schemas/accountVerifications/instantVerifications/v1.0.0/profile.json",
"_links": {
"apiture:institution": {
"href": "/institutions/institutions/0399abed-fd3d-4830-a88b-30f38b8a365c"
},
"apiture:contact": {
"href": "/contacts/contact/0399abed-fd3d-4830-a88b-30f38b8a365c"
}
},
"mfa": {
"answers": [
{
"key": 1,
"value": "Mobile XXX-XXX-9771"
}
]
}
}
Parameters
Parameter | Description |
---|---|
verificationId (path) |
string (required) The unique identifier of this account verificaton. 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. |
body (body) |
any (required) The data necessary to update an instant verification resource. |
Try it
Fields marked with * are mandatory.
Response
Response Code:
Response Headers:
Response Body:
Click on 'Try It' to get a response.
Example responses
200 Response
{
"_profile": "http://api.apiture.com/schemas/accountVerifications/instantVerification/v1.0.0/profile.json",
"_links": {
"self": {
"href": "/accountVerifications/instantVerifications/0399abed-fd3d-4830-a88b-30f38b8a365c"
},
"apiture:externalAccounts": {
"href": "/accountVerifications/instantVerifications/0399abed-fd3d-4830-a88b-30f38b8a365c/accounts"
},
"apiture:verificationReport": {
"href": "/accountVerifications/verificationReports?verification=0399abed-fd3d-4830-a88b-30f38b8a365c"
}
},
"state": "pending",
"mfaRequired": true,
"mfaPrompt": null,
"questions": {
"question": [
{
"key": 1,
"type": "TEXT",
"value": "Input the received code"
}
]
}
}
Responses
Status | Description |
---|---|
200 | OK |
OK | |
Schema: Inline | |
304 | Not Modified |
Not Modified. The resource has not been modified since it was last fetched. | |
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 | |
404 | Not Found |
Not Found. There is no such account verification resource at the specified {verificationId} The _error field in the response will contain details about the request error. | |
Schema: error | |
428 | Precondition Required |
Precondition Required. The request did not include the required if-Match header. Resubmit with the operation, supplying the value of the ETag and the most recent state of the resource. | |
Schema: errorResponse | |
500 | Internal Server Error |
Server Error. Fatal error has occurred. | |
Schema: errorResponse |
Response Schema
Status Code 200
Property Name | Description |
---|---|
Instant Verification | any Representation of an instant verification resource. |
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 /accountVerifications/instantVerifications/{verificationId}/accounts \
-H 'Accept: application/hal+json'
GET /accountVerifications/instantVerifications/{verificationId}/accounts HTTP/1.1
Accept: application/hal+json
var headers = {
'Accept':'application/hal+json'
};
$.ajax({
url: '/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'
};
fetch('/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'
}
result = RestClient.get '/accountVerifications/instantVerifications/{verificationId}/accounts',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/hal+json'
}
r = requests.get('/accountVerifications/instantVerifications/{verificationId}/accounts', params={
}, headers = headers)
print r.json()
URL obj = new URL("/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"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "/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 embeded external account entities pertaining to the verified FI account.
Parameters
Parameter | Description |
---|---|
verificationId (path) |
string (required) The unique identifier of this account verificaton. This is an opaque string. |
Try it
Fields marked with * are mandatory.
Response
Response Code:
Response Headers:
Response Body:
Click on 'Try It' to get a response.
Example responses
200 Response
{
"_profile": "http://api.apiture.com/schemas/collection/externalAccount/v1.0.0/profile.json",
"_links": {
"self": {
"href": "/instantVerifications/0399abed-fd3d-4830-a88b-30f38b8a365c/accounts"
}
},
"_embedded": {
"items": [
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"name": "My account at 3rdParty Bank",
"_profile": "http://api.apiture.com/schemas/externalAccount/v1.0.0/profile.json",
"type": "savings",
"state": "active",
"primaryUserName": "Lucille Wellphunded",
"institutionName": "3rdParty Bank",
"verifiedAt": "2018-01-20T18:13:33.375Z",
"createdAt": "2018-01-20T05:54:52.375Z",
"routingNumber": "021000021",
"accountNumbers": {
"masked": "*************3210"
},
"transactionTypes": [
"credit",
"debit"
],
"_links": {
"self": {
"href": "/accounts/externalAccounts/0399abed-fd3d-4830-a88b-30f38b8a365c"
}
}
}
]
}
}
Responses
Status | Description |
---|---|
200 | OK |
OK | |
Schema: Inline | |
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 | |
404 | Not Found |
Not Found. There is no such account verification resource at the specified {verificationId} The _error field in the response will contain details about the request error. | |
Schema: error | |
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 | |
500 | Internal Server Error |
Server Error. Fatal error has occurred. | |
Schema: errorResponse |
Response Schema
Status Code 200
Property Name | Description |
---|---|
External Account Collection | any Collection of external accounts associated to this verification resource. |
Verification Report
Generating reports of a verification resource
createVerificationReport
Code samples
# You can also use wget
curl -X POST /accountVerifications/verificationReports?verification=string \
-H 'Accept: application/hal+json'
POST /accountVerifications/verificationReports?verification=string HTTP/1.1
Accept: application/hal+json
var headers = {
'Accept':'application/hal+json'
};
$.ajax({
url: '/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'
};
fetch('/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'
}
result = RestClient.post '/accountVerifications/verificationReports',
params: {
'verification' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/hal+json'
}
r = requests.post('/accountVerifications/verificationReports', params={
'verification': 'string'
}, headers = headers)
print r.json()
URL obj = new URL("/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"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "/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 persisent 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
Fields marked with * are mandatory.
Response
Response Code:
Response Headers:
Response Body:
Click on 'Try It' to get a response.
Example responses
200 Response
{
"state": "failed",
"accountRiskFactors": [
{
"riskCode": 101,
"description": "Account owner first name does not match"
},
{
"riskCode": 102,
"description": "Account owner last name does not match"
},
{
"riskCode": 103,
"description": "Account owner zip code does not match"
}
]
}
Responses
Status | Description |
---|---|
200 | OK |
OK | |
Schema: Inline | |
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 | |
404 | Not Found |
Not Found. There is no resource at the specified {Id} The _error field in the response will contain details about the request error. | |
Schema: error | |
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 | |
500 | Internal Server Error |
Server Error. Fatal error has occurred. | |
Schema: errorResponse |
Response Schema
Status Code 200
Property Name | Description |
---|---|
» state | string The state of a verification report. passed indicates that the verification does not conain any risk factors based upon the user and account information, failed indicates that the verification contains one or more risk factors. |
» accountRiskFactors | [riskFactor] [A risk factor indicates a mismatch between user data and available account data.] |
»» Risk Factor | object A risk factor indicates a mismatch between user data and available account data. |
»»» riskCode | string The risk factor risk code |
»»» description | string The risk code description |
»»» attributes | object Details of the data used to determine a risk factor |
»»»» value | string Supplied value for risk factor analysis |
»»»» expected | [string] Known values referenced for risk factor analysis |
Enumerated Values
Property | Value |
---|---|
state | passed |
state | failed |
Institutions
Information about financial institutions
getInstitutions
Code samples
# You can also use wget
curl -X GET /accountVerifications/institutions \
-H 'Accept: application/hal+json'
GET /accountVerifications/institutions HTTP/1.1
Accept: application/hal+json
var headers = {
'Accept':'application/hal+json'
};
$.ajax({
url: '/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'
};
fetch('/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'
}
result = RestClient.get '/accountVerifications/institutions',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/hal+json'
}
r = requests.get('/accountVerifications/institutions', params={
}, headers = headers)
print r.json()
URL obj = new URL("/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"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "/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 adition 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. |
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. |
Try it
Fields marked with * are mandatory.
Response
Response Code:
Response Headers:
Response Body:
Click on 'Try It' to get a response.
Example responses
200 Response
{
"_profile": "http://api.apiture.com/schemas/accountVerifications/externalInstitutions/v1.0.0/profile.json",
"start": 10,
"limit": 10,
"count": 67,
"name": "external institutions",
"_links": {
"self": {
"href": "/accountVerifications/institutions?start=10&limit=10"
},
"first": {
"href": "/accountVerifications/institutions?start=0&limit=10"
},
"next": {
"href": "/accountVerifications/institutions?start=20&limit=10"
},
"collection": {
"href": "/accountVerifications/institutions"
}
},
"_embedded": {
"items": [
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"name": "SunTrust Banks, Inc",
"_profile": "http://api.apiture.com/schemas/accountVerifications/institution/v1.0.0/profile.json",
"label": "Suntrust",
"featured": true,
"_links": {
"self": {
"href": "/accountVerifications/institution/0399abed-fd3d-4830-a88b-30f38b8a365d"
},
"icon": {
"href": "http://d111111abcdef8.cloudfront.net/images/image2.jpg"
},
"home": {
"href": "https://www.liveoak.bank/"
}
}
},
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365d",
"name": "Live Oak Bancshares, Inc.",
"_profile": "http://api.apiture.com/schemas/accountVerifications/institution/v1.0.0/profile.json",
"label": "Live Oak Bank",
"featured": true,
"_links": {
"self": {
"href": "/accountVerifications/institution/0399abed-fd3d-4830-a88b-30f38b8a365d"
},
"icon": {
"href": "http://d111111abcdef8.cloudfront.net/images/image2.jpg"
},
"home": {
"href": "https://www.liveoak.bank/"
}
}
}
]
}
}
Responses
Status | Description |
---|---|
200 | OK |
OK | |
Schema: institutions | |
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 | |
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 |
getInstitution
Code samples
# You can also use wget
curl -X GET /accountVerifications/institutions/{institutionId} \
-H 'Accept: application/hal+json'
GET /accountVerifications/institutions/{institutionId} HTTP/1.1
Accept: application/hal+json
var headers = {
'Accept':'application/hal+json'
};
$.ajax({
url: '/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'
};
fetch('/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'
}
result = RestClient.get '/accountVerifications/institutions/{institutionId}',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/hal+json'
}
r = requests.get('/accountVerifications/institutions/{institutionId}', params={
}, headers = headers)
print r.json()
URL obj = new URL("/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"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "/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.
The links in an institution may contain the following:
home
- Home URL of the financial websiteicon
- URL referencing an institution icon. The possible image formats are SVG and PNG. # TODO: Pending yodlee to define sizes and/or aspect ratio
Parameters
Parameter | Description |
---|---|
institutionId (path) |
string (required) The unique identifier of this institution resource. This is an opaque string. |
Try it
Fields marked with * are mandatory.
Response
Response Code:
Response Headers:
Response Body:
Click on 'Try It' to get a response.
Example responses
200 Response
{
"name": "Live Oak Bancshares, Inc.",
"label": "Live Oak Bank",
"featured": true,
"_profile": "http://api.apiture.com/schemas/accountVerifications/institution/v1.0.0/profile.json",
"_links": {
"self": {
"href": "/accountVerifications/institution/0399abed-fd3d-4830-a88b-30f38b8a365d"
},
"icon": {
"href": "http://d111111abcdef8.cloudfront.net/images/image2.jpg"
},
"home": {
"href": "https://www.liveoak.bank/"
}
}
}
Responses
Status | Description |
---|---|
200 | OK |
OK | |
Schema: Inline | |
304 | Not Modified |
Not Modified. The resource has not been modified since it was last fetched. | |
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 | |
404 | Not Found |
Not Found. There is no institution resource at the specified {institutionId} The _error field in the response will contain details about the request error. | |
Schema: error |
Response Schema
Status Code 200
Property Name | Description |
---|---|
Institution | any The links in a institution may contain the following: * home - Home URL of the finantial website * icon - URL referencing an instution icon. The possible image formats are SVG, PNG or JPEG. The maximum aspect ratio for the image is 250*100. |
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. |
Schemas
institutions
{
"_profile": "http://api.apiture.com/schemas/accountVerifications/externalInstitutions/v1.0.0/profile.json",
"start": 10,
"limit": 10,
"count": 67,
"name": "external institutions",
"_links": {
"self": {
"href": "/accountVerifications/institutions?start=10&limit=10"
},
"first": {
"href": "/accountVerifications/institutions?start=0&limit=10"
},
"next": {
"href": "/accountVerifications/institutions?start=20&limit=10"
},
"collection": {
"href": "/accountVerifications/institutions"
}
},
"_embedded": {
"items": [
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"name": "SunTrust Banks, Inc",
"_profile": "http://api.apiture.com/schemas/accountVerifications/institution/v1.0.0/profile.json",
"label": "Suntrust",
"featured": true,
"_links": {
"self": {
"href": "/accountVerifications/institution/0399abed-fd3d-4830-a88b-30f38b8a365d"
},
"icon": {
"href": "http://d111111abcdef8.cloudfront.net/images/image2.jpg"
},
"home": {
"href": "https://www.liveoak.bank/"
}
}
},
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365d",
"name": "Live Oak Bancshares, Inc.",
"_profile": "http://api.apiture.com/schemas/accountVerifications/institution/v1.0.0/profile.json",
"label": "Live Oak Bank",
"featured": true,
"_links": {
"self": {
"href": "/accountVerifications/institution/0399abed-fd3d-4830-a88b-30f38b8a365d"
},
"icon": {
"href": "http://d111111abcdef8.cloudfront.net/images/image2.jpg"
},
"home": {
"href": "https://www.liveoak.bank/"
}
}
}
]
}
}
Institutions
Properties
Schema Name | Description |
---|---|
Institutions | any 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 .) |
allOf
Schema Name | Description |
---|---|
anonymous | collection A collection of resources. This is an abstract model schema which is extended to define specific resource collections. |
and
Schema Name | Description |
---|---|
anonymous | object undefined |
_embedded | object undefined |
items | [institution] [The links in a institution may contain the following: * home - Home URL of the finantial website * icon - URL referencing an instution icon. The possible image formats are SVG, PNG or JPEG. The maximum aspect ratio for the image is 250*100.] |
institution
{
"name": "Live Oak Bancshares, Inc.",
"label": "Live Oak Bank",
"featured": true,
"_profile": "http://api.apiture.com/schemas/accountVerifications/institution/v1.0.0/profile.json",
"_links": {
"self": {
"href": "/accountVerifications/institution/0399abed-fd3d-4830-a88b-30f38b8a365d"
},
"icon": {
"href": "http://d111111abcdef8.cloudfront.net/images/image2.jpg"
},
"home": {
"href": "https://www.liveoak.bank/"
}
}
}
Institution
Properties
Schema Name | Description |
---|---|
Institution | any The links in a institution may contain the following: * home - Home URL of the finantial website * icon - URL referencing an instution icon. The possible image formats are SVG, PNG or JPEG. The maximum aspect ratio for the image is 250*100. |
allOf
Schema Name | Description |
---|---|
anonymous | abstractResource An augmented 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 . |
and
Schema Name | Description |
---|---|
anonymous | object undefined |
_id | string The unique identifier for this resource. This is an immutable opaque string. |
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. |
createMicroDepositVerification
{
"routingNumbers": {
"full": "054100318"
},
"accountNumbers": {
"full": "7432172992"
}
}
Create Micro Deposit Verification
Properties
Schema Name | Description |
---|---|
Create Micro Deposit Verification | abstractResource Representation used to create a micro-deposit verification resource. |
routingNumbers | accountNumbers (required) Different representations of an account number. |
accountNumbers | accountNumbers (required) Different representations of an account number. |
accountType | string (required) undefined |
Enumerated Values
Property | Value |
---|---|
accountType | checking |
accountType | savings |
updateMicroDepositVerification
{
"amount1": {
"value": ".02",
"currency": "USD"
},
"amount2": {
"value": ".04",
"currency": "USD"
}
}
Update Micro Deposits Verification
Properties
Schema Name | Description |
---|---|
Update Micro Deposits Verification | abstractResource Representation used to update a micro-deposit verification resource. |
amount1 | microDeposit (required) undefined |
amount2 | microDeposit (required) undefined |
microDeposit
{
"value": "string",
"currency": "string"
}
Micro Deposit
Properties
Schema 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 |
microDepositVerification
{
"_profile": "http://api.apiture.com/accountVerifications/microDepositVerification/v1.0.0/profile.json",
"_links": {
"self": {
"href": "/accountVerifications/microDepositVerifications/0399abed-fd3d-4830-a88b-30f38b8a365c"
},
"apiture:externalAccounts": {
"href": "/accountVerifications/microDepositVerifications/0399abed-fd3d-4830-a88b-30f38b8a365c/accounts"
},
"apiture:verificationReport": {
"href": "/accountVerifications/verificationReports?verification=0399abed-fd3d-4830-a88b-30f38b8a365c"
}
},
"state": "verified"
}
Micro Deposit Verification
Properties
Schema Name | Description |
---|---|
Micro Deposit Verification | any Representation of a micro-deposit verification resource. |
allOf
Schema Name | Description |
---|---|
anonymous | abstractResource An augmented 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 . |
and
Schema Name | Description |
---|---|
anonymous | object undefined |
_id | string The unique identifier for this resource. This is an immutable opaque string. |
state | string The state of the verification. pending indicates that it is in progress, verified indicates the verification succeeded, failed that it was unsuccessful. |
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. |
_embedded | object The objects which participate in this verification resource |
Enumerated Values
Property | Value |
---|---|
state | pending |
state | verified |
state | failed |
microDepositVerifications
{
"_profile": "http://api.apiture.com/schema/example/v1.0.0/profile.json",
"_links": {
"self": {
"href": "{uri of current resource}"
}
},
"count": 0,
"start": 0,
"limit": 0,
"name": "string",
"_embedded": {
"items": [
{
"_profile": "http://api.apiture.com/accountVerifications/microDepositVerification/v1.0.0/profile.json",
"_links": {
"self": {
"href": "/accountVerifications/microDepositVerifications/0399abed-fd3d-4830-a88b-30f38b8a365c"
},
"apiture:externalAccounts": {
"href": "/accountVerifications/microDepositVerifications/0399abed-fd3d-4830-a88b-30f38b8a365c/accounts"
},
"apiture:verificationReport": {
"href": "/accountVerifications/verificationReports?verification=0399abed-fd3d-4830-a88b-30f38b8a365c"
}
},
"state": "verified"
}
]
}
}
Micro Deposit Verification Collection
Properties
Schema Name | Description |
---|---|
Micro Deposit Verification Collection | any 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 .) |
allOf
Schema Name | Description |
---|---|
anonymous | collection A collection of resources. This is an abstract model schema which is extended to define specific resource collections. |
and
Schema Name | Description |
---|---|
anonymous | object undefined |
_embedded | object undefined |
items | [microDepositVerification] An array containing a page of account verification items. |
instantVerificationFields
{}
Instant Verification Fields
Properties
No properties
instantVerification
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://api.apiture.com/schemas/accountVerifications/instantVerification/v1.0.0/profile.json",
"_links": {
"self": {
"href": "/accountVerifications/instantVerifications/0399abed-fd3d-4830-a88b-30f38b8a365c"
},
"apiture:externalAccounts": {
"href": "/accountVerifications/instantVerifications/0399abed-fd3d-4830-a88b-30f38b8a365c/accounts"
},
"apiture:verificationReport": {
"href": "/accountVerifications/verificationReports?verification=0399abed-fd3d-4830-a88b-30f38b8a365c"
},
"apiture:contact": {
"href": "/contacts/contacts/ef039bdb-5605-4802-b163-d2f7cdbd28ab"
},
"apiture:institution": {
"href": "/accountVerifications/institutions/961ffc1e-e1f1-11e8-8366-274c0a4e671e"
}
},
"state": "pending",
"mfaRequired": true,
"mfaPrompt": null,
"questions": {
"question": [
{
"key": 1,
"type": "TEXT",
"value": "Send code to",
"choices": [
{
"key": 1,
"value": "Mobile XXX-XXX-9771"
},
{
"key": 2,
"value": "Mobile XXX-XXX-9881"
}
]
}
]
}
}
Instant Verification
Properties
Schema Name | Description |
---|---|
Instant Verification | any Representation of an instant verification resource. |
allOf
Schema Name | Description |
---|---|
anonymous | abstractResource An augmented 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 . |
and
Schema Name | Description |
---|---|
anonymous | instantVerificationFields Common fields of an instant verification resource |
and
Schema Name | Description |
---|---|
anonymous | object undefined |
_id | string The unique identifier for this resource. This is an immutable opaque string. |
state | string The state of the verification. pending indicates that it is in progress, verified indicates the verification succeeded, failed that it was unsuccessful. |
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 | [any] undefined |
_embedded | object The objects which participate in this verification resource |
Enumerated Values
Property | Value |
---|---|
state | pending |
state | verified |
state | failed |
updatedInstantVerification
{
"_profile": "http://api.apiture.com/schemas/accountVerifications/instantVerification/v1.0.0/profile.json",
"_links": {
"self": {
"href": "/accountVerifications/instantVerifications/0399abed-fd3d-4830-a88b-30f38b8a365c"
},
"apiture:externalAccounts": {
"href": "/accountVerifications/instantVerifications/0399abed-fd3d-4830-a88b-30f38b8a365c/accounts"
},
"apiture:verificationReport": {
"href": "/accountVerifications/verificationReports?verification=0399abed-fd3d-4830-a88b-30f38b8a365c"
}
},
"state": "pending",
"mfaRequired": true,
"mfaPrompt": null,
"questions": {
"question": [
{
"key": 1,
"type": "TEXT",
"value": "Input the received code"
}
]
}
}
Instant Verification
Properties
Schema Name | Description |
---|---|
Instant Verification | any Representation of an instant verification resource. |
allOf
Schema Name | Description |
---|---|
anonymous | abstractResource An augmented 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 . |
and
Schema Name | Description |
---|---|
anonymous | instantVerificationFields Common fields of an instant verification resource |
and
Schema Name | Description |
---|---|
anonymous | instantVerification Representation of an instant verification resource. |
summaryInstantVerification
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://api.apiture.com/schemas/accountVerifications/instantVerification/v1.0.0/profile.json",
"_links": {
"self": {
"href": "/accountVerifications/instantVerifications/0399abed-fd3d-4830-a88b-30f38b8a365c"
}
},
"apiture:externalAccounts": {
"href": "/accountVerifications/instantVerifications/0399abed-fd3d-4830-a88b-30f38b8a365c/accounts"
},
"apiture:verificationReport": {
"href": "/accountVerifications/verificationReports?verification=0399abed-fd3d-4830-a88b-30f38b8a365c"
},
"apiture:contact": {
"href": "/contacts/contacts/ef039bdb-5605-4802-b163-d2f7cdbd28ab"
},
"apiture:institution": {
"href": "/accountVerifications/institutions/961ffc1e-e1f1-11e8-8366-274c0a4e671e"
},
"state": "pending",
"mfaRequired": true
}
Summary Instant Verification
Properties
Schema Name | Description |
---|---|
Summary Instant Verification | any Summary representation of an instant verification resource. |
allOf
Schema Name | Description |
---|---|
anonymous | abstractResource An augmented 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 . |
and
Schema Name | Description |
---|---|
anonymous | instantVerificationFields Common fields of an instant verification resource |
and
Schema Name | Description |
---|---|
anonymous | object undefined |
_id | string The unique identifier for this resource. This is an immutable opaque string. |
state | string States of an instant account verification: verified failed pending |
featured | boolean indicates whether the institution resource is highlighted as one of the top most popular institutions. |
Enumerated Values
Property | Value |
---|---|
state | pending |
state | verified |
state | failed |
instantVerifications
{
"_profile": "http://api.apiture.com/schemas/accountVerifications/instantVerifications/v1.0.0/profile.json"
}
Instant Verification Collection
Properties
Schema Name | Description |
---|---|
Instant Verification Collection | any 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 .) |
allOf
Schema Name | Description |
---|---|
anonymous | collection A collection of resources. This is an abstract model schema which is extended to define specific resource collections. |
and
Schema Name | Description |
---|---|
anonymous | object undefined |
_embedded | object undefined |
items | [summaryInstantVerification] An array containing a page of account verification items. |
createInstantVerification
{
"_links": {
"apiture:institution": {
"href": "/accountVerifications/institutions/961ffc1e-e1f1-11e8-8366-274c0a4e671e"
},
"apiture:contact": {
"href": "/contacts/contact/0399abed-fd3d-4830-a88b-30f38b8a365c"
}
}
}
Create Instant Verification
Properties
Schema Name | Description |
---|---|
Create Instant Verification | any 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 retreive data from the financial institution provider. * apiture:contact` The contact associated to the account to verify. |
allOf
Schema Name | Description |
---|---|
anonymous | abstractResource An augmented 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 . |
and
Schema Name | Description |
---|---|
anonymous | object undefined |
updateInstantVerification
{
"_profile": "http://api.apiture.com/schemas/accountVerifications/instantVerifications/v1.0.0/profile.json",
"_links": {
"apiture:institution": {
"href": "/institutions/institutions/0399abed-fd3d-4830-a88b-30f38b8a365c"
},
"apiture:contact": {
"href": "/contacts/contact/0399abed-fd3d-4830-a88b-30f38b8a365c"
}
},
"mfa": {
"answers": [
{
"key": 1,
"value": "Mobile XXX-XXX-9771"
}
]
}
}
Update Instant Verification
Properties
allOf
Schema Name | Description |
---|---|
anonymous | abstractResource An augmented 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 . |
and
Schema Name | Description |
---|---|
anonymous | object undefined |
mfa | mfaResponse Representation of a multi-factor authentication response. |
mfaPrompt
{
"questions": {
"question": [
{
"key": 1,
"type": "TEXT",
"value": "What is the name of your state?",
"choices": [
{
"key": 1,
"value": "North Carolina"
},
{
"key": 2,
"value": "South Carolina"
}
]
},
{
"key": 2,
"type": "TEXT",
"value": "Send code to",
"choices": [
{
"key": 1,
"value": "Mobile XXX-XXX-9771"
},
{
"key": 2,
"value": "Mobile XXX-XXX-9881"
}
]
},
{
"key": 3,
"type": "TEXT",
"value": "Input the received code"
}
]
}
}
MFA Challenge
Properties
Schema Name | Description |
---|---|
MFA Challenge | [any] Representation of a multi-factor authentication challenge |
questions | 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. #TODO pending yodlee defining encoding format |
questionFields
{
"key": "string"
}
MFA Question Fields
Properties
Schema Name | Description |
---|---|
key | string (required) undefined |
question
{
"key": "string",
"content": "string",
"_links": {
"property1": {
"href": "http://example.com",
"type": "string",
"templated": true,
"title": "string",
"deprecation": "http://example.com",
"profile": "http://example.com"
},
"property2": {
"href": "http://example.com",
"type": "string",
"templated": true,
"title": "string",
"deprecation": "http://example.com",
"profile": "http://example.com"
}
},
"choices": [
{
"type": "IMAGE",
"key": 0,
"value": "string",
"content": "string",
"_links": {
"property1": {
"href": "http://example.com",
"type": "string",
"templated": true,
"title": "string",
"deprecation": "http://example.com",
"profile": "http://example.com"
},
"property2": {
"href": "http://example.com",
"type": "string",
"templated": true,
"title": "string",
"deprecation": "http://example.com",
"profile": "http://example.com"
}
}
}
],
"type": "QUESTION",
"value": "string"
}
MFA Question
Properties
Schema Name | Description |
---|---|
MFA Question | any 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. #TODO pending yodlee defining encoding format |
allOf
Schema Name | Description |
---|---|
anonymous | questionFields Common question and answer fields. |
and
Schema Name | Description |
---|---|
anonymous | object undefined |
content | string undefined |
_links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations. |
choices | [choice] [Representation of question choice.] |
type | string undefined |
value | string undefined |
Enumerated Values
Property | Value |
---|---|
type | QUESTION |
type | TOKEN |
type | IMAGE |
questionResponse
{
"title": "MFA Answer",
"description": "Representation of a multi-factor authentication question answer.",
"type": "array",
"required": [
"value"
],
"allOf": [
{
"title": "MFA Question Fields",
"description": "Common question and answer fields.",
"required": [
"key"
],
"properties": {
"key": {
"type": "string"
}
}
},
{
"type": "array",
"properties": {
"value": {
"type": "string"
}
},
"items": {}
}
],
"items": {}
}
MFA Answer
Properties
Schema Name | Description |
---|---|
MFA Answer | [any] Representation of a multi-factor authentication question answer. |
allOf
Schema Name | Description |
---|---|
anonymous | questionFields Common question and answer fields. |
and
Schema Name | Description |
---|---|
anonymous | [any] undefined |
value | string undefined |
choice
{
"type": "IMAGE",
"key": 0,
"value": "string",
"content": "string",
"_links": {
"property1": {
"href": "http://example.com",
"type": "string",
"templated": true,
"title": "string",
"deprecation": "http://example.com",
"profile": "http://example.com"
},
"property2": {
"href": "http://example.com",
"type": "string",
"templated": true,
"title": "string",
"deprecation": "http://example.com",
"profile": "http://example.com"
}
}
}
MFA Choice
Properties
Schema Name | Description |
---|---|
type | string undefined |
key | integer(int64) undefined |
value | string undefined |
content | string undefined |
_links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations. |
Enumerated Values
Property | Value |
---|---|
type | IMAGE |
type | TEXT |
type | OPTION |
type | CHECKBOX |
type | RADIO |
mfaResponse
{
"title": "MFA Response",
"description": "Representation of a multi-factor authentication response.",
"allOf": [
{
"type": "object"
},
{
"properties": {
"answers": {
"title": "MFA Answer",
"description": "Representation of a multi-factor authentication question answer.",
"type": "array",
"required": [
"value"
],
"allOf": [
{
"title": "MFA Question Fields",
"description": "Common question and answer fields.",
"required": [
"key"
],
"properties": {
"key": {
"type": "string"
}
}
},
{
"type": "array",
"properties": {
"value": {
"type": "string"
}
},
"items": {}
}
],
"items": {}
}
}
}
]
}
MFA Response
Properties
Schema Name | Description |
---|---|
MFA Response | any Representation of a multi-factor authentication response. |
allOf
Schema Name | Description |
---|---|
anonymous | object undefined |
and
Schema Name | Description |
---|---|
anonymous | object undefined |
answers | questionResponse Representation of a multi-factor authentication question answer. |
externalAccounts
{
"_profile": "http://api.apiture.com/schemas/collection/externalAccount/v1.0.0/profile.json",
"_links": {
"self": {
"href": "/instantVerifications/0399abed-fd3d-4830-a88b-30f38b8a365c/accounts"
}
},
"_embedded": {
"items": [
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"name": "My account at 3rdParty Bank",
"_profile": "http://api.apiture.com/schemas/externalAccount/v1.0.0/profile.json",
"type": "savings",
"state": "active",
"primaryUserName": "Lucille Wellphunded",
"institutionName": "3rdParty Bank",
"verifiedAt": "2018-01-20T18:13:33.375Z",
"createdAt": "2018-01-20T05:54:52.375Z",
"routingNumber": "021000021",
"accountNumbers": {
"masked": "*************3210"
},
"transactionTypes": [
"credit",
"debit"
],
"_links": {
"self": {
"href": "/accounts/externalAccounts/0399abed-fd3d-4830-a88b-30f38b8a365c"
}
}
}
]
}
}
External Account Collection
Properties
Schema Name | Description |
---|---|
External Account Collection | any Collection of external accounts associated to this verification resource. |
allOf
Schema Name | Description |
---|---|
anonymous | abstractResource An augmented 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 . |
and
Schema Name | Description |
---|---|
anonymous | object undefined |
_embedded | object undefined |
items | [summaryExternalAccount] An array containing the external account items. |
count | integer The number of items in the full collection. |
name | string The name of the collection. |
verificationReport
{
"state": "failed",
"accountRiskFactors": [
{
"riskCode": 101,
"description": "Account owner first name does not match"
},
{
"riskCode": 102,
"description": "Account owner last name does not match"
},
{
"riskCode": 103,
"description": "Account owner zip code does not match"
}
]
}
Verification Report
Properties
Schema Name | Description |
---|---|
state | string The state of a verification report. passed indicates that the verification does not conain any risk factors based upon the user and account information, failed indicates that the verification contains one or more risk factors. |
accountRiskFactors | [riskFactor] [A risk factor indicates a mismatch between user data and available account data.] |
Enumerated Values
Property | Value |
---|---|
state | passed |
state | failed |
riskFactor
{
"riskCode": "string",
"description": "string",
"attributes": {
"value": "string",
"expected": [
"string"
]
}
}
Risk Factor
Properties
Schema 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
Properties
Schema Name | Description |
---|---|
value | string Supplied value for risk factor analysis |
expected | [string] Known values referenced for risk factor analysis |
summaryExternalAccount
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://api.apiture.com/schemas/externalAccount/v1.0.0/profile.json",
"_links": {
"self": {
"href": "/accounts/externalAccounts/0399abed-fd3d-4830-a88b-30f38b8a365c"
}
},
"state": "active",
"verifiedAt": "2018-01-20T18:13:33.375Z",
"createdAt": "2018-01-20T05:54:52.375Z",
"routingNumber": "021000021",
"institutionName": "3rd Party Bank"
}
External Account Summary
Properties
Schema Name | Description |
---|---|
External Account Summary | any Summary representation of an external account resource in external accounts collections. This representation normally does not contain any _embedded objects. If needed, call the GET operation on the item's self link to get _embedded objects. |
allOf
Schema Name | Description |
---|---|
anonymous | abstractResource An augmented 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 . |
and
Schema Name | Description |
---|---|
anonymous | object undefined |
_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 |
verifiedAt | string(date-time) The date-time when the external account was most recently verified. This is in ISO 8601 format, UTC. |
createdAt | string(date-time) The date-time when the external account was created. This is in ISO 8601 format, UTC. This is derived and immutable. |
state | string The state of the external account. This field is immutable and derived.
|
routingNumber | string The account routing number which identifies the financial institution. The full routing number and full account number are required to fully identify the account. minLength: 9 maxLength: 32 |
accountNumbers | accountNumbers Different representations of an account number. |
attributes | attributes An optional map of name/value pairs which contains additional dynamic data about the resource. |
Enumerated Values
Property | Value |
---|---|
state | pending |
state | verifying |
state | failed |
state | active |
state | inactive |
state | frozen |
state | closed |
accountNumbers
{
"masked": "*************3210",
"full": "9876543210"
}
Account Numbers
Properties
Schema 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. TODO Move this model schema to common-fin-models where it can be used in accountverifications and payments APIs |
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. minLength: 9 maxLength: 32 |
collection
{
"_profile": "http://api.apiture.com/schema/example/v1.0.0/profile.json",
"_links": {
"self": {
"href": "{uri of current resource}"
}
},
"count": 0,
"start": 0,
"limit": 0,
"name": "string"
}
Collection
Properties
Schema Name | Description |
---|---|
Collection | any A collection of resources. This is an abstract model schema which is extended to define specific resource collections. |
allOf
Schema Name | Description |
---|---|
anonymous | abstractResource An augmented 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 . |
and
Schema Name | Description |
---|---|
anonymous | object undefined |
count | integer The number of items in the full collection. |
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. |
abstractResource
{
"_profile": "http://api.apiture.com/schema/example/v1.0.0/profile.json",
"_links": {
"self": {
"href": "{uri of current resource}"
}
}
}
Abstract Resource
Properties
Schema 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. |
_embedded | object An optional map of nested resources, mapping each nested resource name to a nested resource representation. |
_profile | string(uri) The URI of a resource profile which describes the representation. |
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. |
root
{
"id": "apiName",
"name": "API name",
"apiVersion": "0.0.1-SNAPSHOT",
"_profile": "https://api.apiture.com/schema/apiRoot/v1.0.0/profile.json",
"_links": {}
}
API Root
Properties
Schema Name | Description |
---|---|
API Root | any A HAL response, with hypermedia _links for the top-level resources and operations in API. |
allOf
Schema Name | Description |
---|---|
anonymous | abstractResource An augmented 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 . |
and
Schema Name | Description |
---|---|
anonymous | object undefined |
_id | string This API's unique ID. |
name | string This API's name. |
apiVersion | string This API's version. |
errorResponse
{
"_profile": "http://api.apiture.com/schema/error/v1.0.0/profile.json",
"_error": {
"_id": "2eae46e1-575c-4d69-8a8f-0a7b0115a4b3",
"_profile": "https://api.apiture.com/schema/error/v1.0.0/profile.json",
"message": "The value for deposit must be greater than 0.",
"statusCode": 422,
"type": "positiveNumberRequired",
"attributes": {
"value": -125.5
},
"remediation": "Provide a value which is greater than 0",
"occurredAt": "2018-01-25T05:50:52.375Z",
"_links": {
"describedby": {
"href": "http://doc.apiture.com/errors/positiveNumberRequired"
}
},
"_embedded": {
"errors": []
}
}
}
Error Response
Properties
Schema Name | Description |
---|---|
Error Response | abstractResource Describes an error response, typically returned on 4xx or 5xx errors from API operations. The _error object contains the error details. |
error
{
"_id": "2eae46e1-575c-4d69-8a8f-0a7b0115a4b3",
"_profile": "https://api.apiture.com/schema/error/v1.0.0/profile.json",
"message": "The value for deposit must be greater than 0.",
"statusCode": 422,
"type": "positiveNumberRequired",
"attributes": {
"value": -125.5
},
"remediation": "Provide a value which is greater than 0",
"occurredAt": "2018-01-25T05:50:52.375Z",
"_links": {
"describedby": {
"href": "http://doc.apiture.com/errors/positiveNumberRequired"
}
},
"_embedded": {
"errors": []
}
}
Error
Properties
Schema 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. |
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 ISO 8601 UTC time stamp indicating when the error occurred. |
attributes | attributes Data attribute associated with the error, such as values or constraints. |
remediation | string An optional localized string which provides hints for how the user or client can resolve the error. |
_embedded | object Optional embedded array of errors. This field may not exist if the error does not have nested errors. |
items | [errorResponse] An array of error objects. |
attributes
{}
Attributes
Properties
No properties
links
{
"property1": {
"href": "http://example.com",
"type": "string",
"templated": true,
"title": "string",
"deprecation": "http://example.com",
"profile": "http://example.com"
},
"property2": {
"href": "http://example.com",
"type": "string",
"templated": true,
"title": "string",
"deprecation": "http://example.com",
"profile": "http://example.com"
}
}
Links
Properties
Schema 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. |
link
{
"href": "http://example.com",
"type": "string",
"templated": true,
"title": "string",
"deprecation": "http://example.com",
"profile": "http://example.com"
}
Link
Properties
Schema 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. |