Identity v0.6.3
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 manages the set of actions that allow financial institutions to verify the identity of their customers and applicants. 'Identity' is defined as a set of personally identifiable information (PII) that can potentially identify a specific individual.
PII consists of the following attributes:
taxIdThe identity's tax or government IDfirstNameThe identity's first namelastNameThe identity's last nameaddress1Line 1 of the identity's street addressaddress2Line 2 of the identity's street addresscityThe identity's cityregionThe identity's regionpostalCodeThe identity's postal codephoneThe identity's phonebirthdateThe identity's birth date inyyyy-mm-ddformat.emailThe identity's email addressipAddressThe identity's IP address
There are two major steps to the identity verification process - fraud-risk analysis and knowledge-base authentication (KBA) quizzes.
A fraud-risk report can be generated by specifying the PII associated with an individual. The report will contain a state indicating the result of the operation as well as an optional list of fraud risk factors associated with that identity. A passed state indicates that the provided PII was located and contains no risk factors. A passedWithRiskFactors state means that the provided PII matches an identity but contains risk factors. A failed state means that the provided PII does not match any identity records.
In order to generate a report, submit the PII via POST to /fraudRiskReports. This will return a 201 response containing a new fraudRiskReport resource which includes a set outputs with a collection of fraudRiskCategories. These categories are:
personalInfoDoesNotMatchThe retrieved identity does not match the provided PII.addressIsPOBoxOrNonApprovedThe provided address is a PO Box or other non-approved addressaddressIsHighRiskThe provided address is considered high-riskidentityOnGovernmentWatchlistThe provided identity is located on one or more government watchlistsidentityOnAlertListThe provided identity is located on one or more alert listsipRestrictedThe provided IP address is restrictedemailRestrictedThe provided email address is restrictedageRestrictedThe provided identity does not meet the required age. Example: US COPPA laws forbid conducting e-commerce with people under 14 years of age.nonStandardTaxIdThe provided taxId is non-standard. Example: The provided SSN is an ITIN (Individual Taxpayer Identification Number)
A quiz containing a list of questions and their possible answers can be generated with a set of PII. This information can be used to assist in the verification of the identity, by presenting the customer or applicant with the questions and prompting them to choose the appropriate answers. These answers can then be submitted to verify their correctness, confirming the identity.
In order to generate a quiz, submit the PII via POST to /quizzes. This will return a 201 response containing a new quiz resource with a state of pending. You can then POST to /quizzes/{quizId}/questions by following the apiture:getQuestions link to generate one-time-use (transient) set of questions. When you have collected the answers to these questions you can submit them to /quizzes/{quizId}/answers via POST by following the apiture:score link. This will return the quiz resource with an updated state, either passed, failed or expired.
Download OpenAPI Definition (YAML)
Base URLs:
Authentication
- API Key (
apiKey)- header parameter: API-Key
- API Key based authentication. Each client application must pass its private, unique API key, allocated in the developer portal, via the
API-Key: {api-key}request header.
- OAuth2 authentication (
accessToken)- OAuth2 client access token authentication. The client authenticates against the server at
authorizationUrl, passing the client's privateclientId(and optionalclientSecret) as part of this flow. The client obtains an access token from the server attokenUrl. It then passes the received access token via theAuthorization: Bearer {access-token}header in subsequent API calls. The authorization process also returns a refresh token which the client should use to renew the access token before it expires. - Flow:
authorizationCode - Authorization URL = /auth/oauth2/authorize
- Token URL = /auth/oauth2/token
- OAuth2 client access token authentication. The client authenticates against the server at
| Scope | Scope Description |
|---|---|
profiles/read |
Read access to user and contact related resources. |
profiles/write |
Write (update) access to user and contact related resources. |
profiles/delete |
Delete access to user and contact related resources. |
profiles/full |
Full access to user and contact related resources. |
API
Endpoints which describe this API.
getApi
Code samples
# You can also use wget
curl -X GET https://api.devbank.apiture.com/identity/ \
-H 'Accept: application/hal+json' \
-H 'API-Key: API_KEY'
GET https://api.devbank.apiture.com/identity/ HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/hal+json
var headers = {
'Accept':'application/hal+json',
'API-Key':'API_KEY'
};
$.ajax({
url: 'https://api.devbank.apiture.com/identity/',
method: 'get',
headers: headers,
success: function(data) {
console.log(JSON.stringify(data));
}
})
const fetch = require('node-fetch');
const headers = {
'Accept':'application/hal+json',
'API-Key':'API_KEY'
};
fetch('https://api.devbank.apiture.com/identity/',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/hal+json',
'API-Key' => 'API_KEY'
}
result = RestClient.get 'https://api.devbank.apiture.com/identity/',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/hal+json',
'API-Key': 'API_KEY'
}
r = requests.get('https://api.devbank.apiture.com/identity/', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/identity/");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/hal+json"},
"API-Key": []string{"API_KEY"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "https://api.devbank.apiture.com/identity/", 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
OK
{
"id": "identity",
"name": "Identity",
"apiVersion": "0.1.0",
"_profile": "https://api.apiture.com/schemas/common/root/v2.0.0/profile.json",
"_links": {
"apiture:fraudRiskReports": {
"href": "/identity/fraudRiskReports"
},
"apiture:quizzes": {
"href": "/identity/quizzes"
}
}
}
200 Response
{
"id": "apiName",
"name": "API name",
"apiVersion": "1.0.0",
"_profile": "http://localhost:8080/schemas/common/root/v2.0.0/profile.json",
"_links": {}
}
Responses
getApiDoc
Code samples
# You can also use wget
curl -X GET https://api.devbank.apiture.com/identity/apiDoc \
-H 'Accept: application/json' \
-H 'API-Key: API_KEY'
GET https://api.devbank.apiture.com/identity/apiDoc HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/json
var headers = {
'Accept':'application/json',
'API-Key':'API_KEY'
};
$.ajax({
url: 'https://api.devbank.apiture.com/identity/apiDoc',
method: 'get',
headers: headers,
success: function(data) {
console.log(JSON.stringify(data));
}
})
const fetch = require('node-fetch');
const headers = {
'Accept':'application/json',
'API-Key':'API_KEY'
};
fetch('https://api.devbank.apiture.com/identity/apiDoc',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json',
'API-Key' => 'API_KEY'
}
result = RestClient.get 'https://api.devbank.apiture.com/identity/apiDoc',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/json',
'API-Key': 'API_KEY'
}
r = requests.get('https://api.devbank.apiture.com/identity/apiDoc', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/identity/apiDoc");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
"API-Key": []string{"API_KEY"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "https://api.devbank.apiture.com/identity/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
Fraud-Risk Reports
Identity Fraud-Risk Reports
getFraudRiskReports
Code samples
# You can also use wget
curl -X GET https://api.devbank.apiture.com/identity/fraudRiskReports \
-H 'Accept: application/hal+json' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
GET https://api.devbank.apiture.com/identity/fraudRiskReports HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/hal+json
var headers = {
'Accept':'application/hal+json',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: 'https://api.devbank.apiture.com/identity/fraudRiskReports',
method: 'get',
headers: headers,
success: function(data) {
console.log(JSON.stringify(data));
}
})
const fetch = require('node-fetch');
const headers = {
'Accept':'application/hal+json',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
fetch('https://api.devbank.apiture.com/identity/fraudRiskReports',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/hal+json',
'API-Key' => 'API_KEY',
'Authorization' => 'Bearer {access-token}'
}
result = RestClient.get 'https://api.devbank.apiture.com/identity/fraudRiskReports',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/hal+json',
'API-Key': 'API_KEY',
'Authorization': 'Bearer {access-token}'
}
r = requests.get('https://api.devbank.apiture.com/identity/fraudRiskReports', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/identity/fraudRiskReports");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/hal+json"},
"API-Key": []string{"API_KEY"},
"Authorization": []string{"Bearer {access-token}"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "https://api.devbank.apiture.com/identity/fraudRiskReports", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
Returns a collection of fraud-risk analysis results
GET /fraudRiskReports
Return a paginated sortable filterable searchable collection of fraud-risk analysis reports.The links in the response include pagination links.
Parameters
| Parameter | Description |
|---|---|
start (query) |
integer(int64) The zero-based index of the first fraud-risk analysis report in this page. The default, 0, represents the first report in the collection. |
limit (query) |
integer(int32) The maximum number of fraud-risk analysis report 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. |
type (query) |
string Subset the accounts or external accounts collection to those with this exact type value. Use |
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": "https://api.apiture.com/schemas/identity/fraudRiskReports/v2.0.0/profile.json",
"start": 0,
"limit": 1,
"count": 1,
"name": "fraudRiskReports",
"_links": {
"self": {
"href": "/identity/fraudRiskReports?start=0&limit=1"
},
"first": {
"href": "/identity/fraudRiskReports?start=0&limit=1"
},
"next": {
"href": "/identity/fraudRiskReports?start=1&limit=1"
},
"collection": {
"href": "/identity/fraudRiskReports"
}
},
"_embedded": {
"items": [
{
"_profile": "https://api.apiture.com/schemas/identity/fraudRiskReport/v2.0.0/profile.json",
"_links": {
"self": {
"href": "/identity/fraudRiskReports/c6dbc32f-e0eb-4947-9819-c691bb9164a5"
},
"apiture:contact": {
"href": "/contacts/contacts/6da5ccc7-727a-4256-bdd4-74023ae349c3"
}
},
"_id": "c6dbc32f-e0eb-4947-9819-c691bb9164a5",
"type": "fraudRiskReport",
"inputs": {
"identity": {
"_profile": "https://api.apiture.com/schemas/identity/identity/v2.0.0/profile.json",
"taxId": "555-55-5555",
"firstName": "John",
"lastName": "Smith",
"address1": "1741 Tiburon Dr",
"city": "Wilmington",
"region": "NC",
"postalCode": "28403",
"phone": "555-555-5555",
"birthdate": "1940-10-15",
"email": "api@apiture.com",
"ipAddress": "127.0.0.1"
}
},
"outputs": {
"state": "passedWithRiskFactors",
"providerReportId": 1234,
"fraudRiskCategories": [
{
"type": "personalInfoDoesNotMatch",
"description": "The retrieved identity does not match the provided PII."
},
{
"type": "addressIsPOBoxOrNonApproved",
"description": "The provided address is a PO Box or other non-approved address"
},
{
"type": "identityOnGovernmentWatchlist",
"description": "The provided identity is located on one or more government watchlists"
},
{
"type": "identityOnAlertList",
"description": "The provided identity is located on one or more alert lists"
},
{
"type": "ipRestricted",
"description": "The provided IP address is restricted"
},
{
"type": "emailRestricted",
"description": "The provided email address is restricted"
}
]
}
}
]
}
}
Responses
| Status | Description |
|---|---|
| 200 | OK |
| OK | |
Schema: fraudRiskReports |
| Status | Description |
|---|---|
| 400 | Bad Request |
Bad Request. One or more of the query parameters was not well formed. The _error field in the response will contain details about the request error. | |
Schema: errorResponse |
| Status | Description |
|---|---|
| 422 | Unprocessable Entity |
Unprocessable Entity. One or more of the query parameters was well formed but otherwise invalid. The _error field in the response will contain details about the request error. | |
Schema: errorResponse |
createFraudRiskReport
Code samples
# You can also use wget
curl -X POST https://api.devbank.apiture.com/identity/fraudRiskReports \
-H 'Content-Type: application/hal+json' \
-H 'Accept: application/hal+json' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
POST https://api.devbank.apiture.com/identity/fraudRiskReports HTTP/1.1
Host: api.devbank.apiture.com
Content-Type: application/hal+json
Accept: application/hal+json
var headers = {
'Content-Type':'application/hal+json',
'Accept':'application/hal+json',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: 'https://api.devbank.apiture.com/identity/fraudRiskReports',
method: 'post',
headers: headers,
success: function(data) {
console.log(JSON.stringify(data));
}
})
const fetch = require('node-fetch');
const inputBody = '{
"_links": {
"apiture:contact": {
"href": "/contacts/contacts/6da5ccc7-727a-4256-bdd4-74023ae349c3"
}
}
}';
const headers = {
'Content-Type':'application/hal+json',
'Accept':'application/hal+json',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
fetch('https://api.devbank.apiture.com/identity/fraudRiskReports',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/hal+json',
'Accept' => 'application/hal+json',
'API-Key' => 'API_KEY',
'Authorization' => 'Bearer {access-token}'
}
result = RestClient.post 'https://api.devbank.apiture.com/identity/fraudRiskReports',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': 'application/hal+json',
'Accept': 'application/hal+json',
'API-Key': 'API_KEY',
'Authorization': 'Bearer {access-token}'
}
r = requests.post('https://api.devbank.apiture.com/identity/fraudRiskReports', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/identity/fraudRiskReports");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"application/hal+json"},
"Accept": []string{"application/hal+json"},
"API-Key": []string{"API_KEY"},
"Authorization": []string{"Bearer {access-token}"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://api.devbank.apiture.com/identity/fraudRiskReports", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
Create a new fraud-risk analysis report
POST /fraudRiskReports
Create a new fraud-risk analysis report in the fraud-risk analysis reports collection.
If an apiture:contact link is specified in the request a verification token will be returned in the response.
If an apiture:contact link is invalid a 400 Bad Request response will be returned.
The following links will be included in a successful response under the _links property:
self: URI of the created fraud-risk report resource -/fraudRiskReports/{fraudRiskReportId}apiture:contact: If the resource was created with anapiture:contacta link to the specified resource will be present
Body parameter
{
"_links": {
"apiture:contact": {
"href": "/contacts/contacts/6da5ccc7-727a-4256-bdd4-74023ae349c3"
}
}
}
Parameters
| Parameter | Description |
|---|---|
body (body) |
createFraudRiskReport (required) The identity |
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": "https://api.apiture.com/schemas/identity/fraudRiskReport/v2.0.0/profile.json",
"_links": {
"self": {
"href": "/identity/fraudRiskReports/c6dbc32f-e0eb-4947-9819-c691bb9164a5"
},
"apiture:contact": {
"href": "/contacts/contacts/6da5ccc7-727a-4256-bdd4-74023ae349c3"
}
},
"_id": "c6dbc32f-e0eb-4947-9819-c691bb9164a5",
"type": "fraudRiskReport",
"inputs": {
"identity": {
"_profile": "https://api.apiture.com/schemas/identity/identity/v2.0.0/profile.json",
"taxId": "555-55-5555",
"firstName": "John",
"lastName": "Smith",
"address1": "1741 Tiburon Dr",
"city": "Wilmington",
"region": "NC",
"postalCode": "28403",
"phone": "555-555-5555",
"birthdate": "1940-10-15",
"email": "api@apiture.com",
"ipAddress": "127.0.0.1"
}
},
"outputs": {
"state": "passedWithRiskFactors",
"fraudRiskCategories": [
{
"type": "personalInfoDoesNotMatch",
"description": "The retrieved identity does not match the provided PII."
},
{
"type": "addressIsHighRisk",
"description": "The provided address is considered high-risk"
},
{
"type": "addressIsPOBoxOrNonApproved",
"description": "The provided address is a PO Box or other non-approved address"
},
{
"type": "identityOnGovernmentWatchlist",
"description": "The provided identity is located on one or more watchlists"
},
{
"type": "ipRestricted",
"description": "The provided IP address is restricted"
},
{
"type": "emailRestricted",
"description": "The provided email address is restricted"
},
{
"type": "nonStandardTaxId",
"description": "The provided taxId is non-standard. Example: The provided SSN is an ITIN (Individual Taxpayer Identification Number)"
},
{
"type": "ageRestricted",
"description": "The provided identity does not meet the required age. Example: US COPPA laws forbid conducting e-commerce with people under 14 years of age."
}
],
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.XbPfbIHMI6arZ3Y922BhjWgQzWXcXNrz0ogtVhfEd2o"
}
}
Responses
| Status | Description |
|---|---|
| 201 | Created |
| Created | |
Schema: fraudRiskReport |
| Status | Description |
|---|---|
| 400 | Bad Request |
Bad Request. One or more of the query parameters was not well formed. The _error field in the response will contain details about the request error. | |
Schema: errorResponse |
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 schema://host |
getFraudRiskReport
Code samples
# You can also use wget
curl -X GET https://api.devbank.apiture.com/identity/fraudRiskReports/{fraudRiskReportId} \
-H 'Accept: application/hal+json' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
GET https://api.devbank.apiture.com/identity/fraudRiskReports/{fraudRiskReportId} HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/hal+json
var headers = {
'Accept':'application/hal+json',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: 'https://api.devbank.apiture.com/identity/fraudRiskReports/{fraudRiskReportId}',
method: 'get',
headers: headers,
success: function(data) {
console.log(JSON.stringify(data));
}
})
const fetch = require('node-fetch');
const headers = {
'Accept':'application/hal+json',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
fetch('https://api.devbank.apiture.com/identity/fraudRiskReports/{fraudRiskReportId}',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/hal+json',
'API-Key' => 'API_KEY',
'Authorization' => 'Bearer {access-token}'
}
result = RestClient.get 'https://api.devbank.apiture.com/identity/fraudRiskReports/{fraudRiskReportId}',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/hal+json',
'API-Key': 'API_KEY',
'Authorization': 'Bearer {access-token}'
}
r = requests.get('https://api.devbank.apiture.com/identity/fraudRiskReports/{fraudRiskReportId}', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/identity/fraudRiskReports/{fraudRiskReportId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/hal+json"},
"API-Key": []string{"API_KEY"},
"Authorization": []string{"Bearer {access-token}"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "https://api.devbank.apiture.com/identity/fraudRiskReports/{fraudRiskReportId}", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
Fetch a representation of this fraud-risk report
GET /fraudRiskReports/{fraudRiskReportId}
Return a HAL representation of this fraud-risk analysis report resource.
The following links will be included in a successful response under the _links property:
self: URI of the this fraud-risk report resource -/fraudRiskReports/{fraudRiskReportId}apiture:contact: If the resource was created with anapiture:contacta link to the specified resource will be present
Parameters
| Parameter | Description |
|---|---|
fraudRiskReportId (path) |
string (required) The unique identifier of this fraud-risk report. 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": "https://api.apiture.com/schemas/identity/fraudRiskReport/v2.0.0/profile.json",
"_links": {
"self": {
"href": "/identity/fraudRiskReports/c6dbc32f-e0eb-4947-9819-c691bb9164a5"
},
"apiture:contact": {
"href": "/contacts/contacts/6da5ccc7-727a-4256-bdd4-74023ae349c3"
}
},
"_id": "c6dbc32f-e0eb-4947-9819-c691bb9164a5",
"type": "fraudRiskReport",
"inputs": {
"identity": {
"_profile": "https://api.apiture.com/schemas/identity/identity/v2.0.0/profile.json",
"taxId": "555-55-5555",
"firstName": "John",
"lastName": "Smith",
"address1": "1741 Tiburon Dr",
"city": "Wilmington",
"region": "NC",
"postalCode": "28403",
"phone": "555-555-5555",
"birthdate": "1940-10-15",
"email": "api@apiture.com",
"ipAddress": "127.0.0.1"
}
},
"outputs": {
"state": "passedWithRiskFactors",
"fraudRiskCategories": [
{
"type": "personalInfoDoesNotMatch",
"description": "The retrieved identity does not match the provided PII."
},
{
"type": "addressIsHighRisk",
"description": "The provided address is considered high-risk"
},
{
"type": "addressIsPOBoxOrNonApproved",
"description": "The provided address is a PO Box or other non-approved address"
},
{
"type": "identityOnGovernmentWatchlist",
"description": "The provided identity is located on one or more watchlists"
},
{
"type": "ipRestricted",
"description": "The provided IP address is restricted"
},
{
"type": "emailRestricted",
"description": "The provided email address is restricted"
},
{
"type": "nonStandardTaxId",
"description": "The provided taxId is non-standard. Example: The provided SSN is an ITIN (Individual Taxpayer Identification Number)"
},
{
"type": "ageRestricted",
"description": "The provided identity does not meet the required age. Example: US COPPA laws forbid conducting e-commerce with people under 14 years of age."
}
],
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.XbPfbIHMI6arZ3Y922BhjWgQzWXcXNrz0ogtVhfEd2o"
}
}
Responses
| Status | Description |
|---|---|
| 200 | OK |
| OK | |
Schema: fraudRiskReport |
| Status | Description |
|---|---|
| 304 | Not Modified |
| Not Modified. The resource has not been modified since it was last fetched. |
| Status | Description |
|---|---|
| 404 | Not Found |
Not Found. There is no such fraud-risk report resource at the specified {fraudRiskReportId} The _error field in the response will contain details about the request error. | |
Schema: errorResponse |
Quizzes
Identity Verification Quizzes
getQuizzes
Code samples
# You can also use wget
curl -X GET https://api.devbank.apiture.com/identity/quizzes \
-H 'Accept: application/hal+json' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
GET https://api.devbank.apiture.com/identity/quizzes HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/hal+json
var headers = {
'Accept':'application/hal+json',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: 'https://api.devbank.apiture.com/identity/quizzes',
method: 'get',
headers: headers,
success: function(data) {
console.log(JSON.stringify(data));
}
})
const fetch = require('node-fetch');
const headers = {
'Accept':'application/hal+json',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
fetch('https://api.devbank.apiture.com/identity/quizzes',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/hal+json',
'API-Key' => 'API_KEY',
'Authorization' => 'Bearer {access-token}'
}
result = RestClient.get 'https://api.devbank.apiture.com/identity/quizzes',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/hal+json',
'API-Key': 'API_KEY',
'Authorization': 'Bearer {access-token}'
}
r = requests.get('https://api.devbank.apiture.com/identity/quizzes', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/identity/quizzes");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/hal+json"},
"API-Key": []string{"API_KEY"},
"Authorization": []string{"Bearer {access-token}"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "https://api.devbank.apiture.com/identity/quizzes", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
Returns a collection of quizzes
GET /quizzes
Return a paginated sortable filterable searchable collection of quizzes. The links in the response include pagination links.
Parameters
| Parameter | Description |
|---|---|
start (query) |
integer(int64) The zero-based index of the first quiz in this page. |
| The default, 0, represents the first report in the collection. | |
limit (query) |
integer(int32) The maximum number of quiz 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. |
createdAt (query) |
string(date-time) Subset the accounts or external accounts collection to those with this createdAt value. Use |
expiredAt (query) |
string(date-time) Subset the accounts or external accounts collection to those with this expiredAt value. Use |
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": "https://api.apiture.com/schemas/identity/quizzes/v2.0.0/profile.json",
"start": 0,
"limit": 1,
"count": 1,
"name": "quizzes",
"_links": {
"self": {
"href": "/identity/quizzes?start=0&limit=1"
},
"first": {
"href": "/identity/quizzes?start=0&limit=1"
},
"next": {
"href": "/identity/quizzes?start=1&limit=1"
},
"collection": {
"href": "/identity/quizzes"
}
},
"_embedded": {
"items": [
{
"createdAt": "2018-01-12T10:15:17Z",
"expiresAt": "2018-01-12T10:30:17Z",
"_links": {
"self": {
"href": "/identity/quizzes/73be83af-9e64-4214-8e90-76da43610b31"
},
"apiture:score": {
"href": "/identity/quizzes/73be83af-9e64-4214-8e90-76da43610b31/answers"
},
"apiture:contacts": {
"href": "/contacts/contacts/6da5ccc7-727a-4256-bdd4-74023ae349c3"
}
},
"inputs": {
"identity": {
"_profile": "https://api.apiture.com/schemas/identity/identity/v2.0.0/profile.json",
"taxId": "555-55-5555",
"firstName": "John",
"lastName": "Smith",
"address1": "1741 Tiburon Dr",
"city": "Wilmington",
"region": "NC",
"postalCode": "28403",
"phone": "555-555-5555",
"birthdate": "1940-10-15",
"email": "api@apiture.com",
"ipAddress": "127.0.0.1"
}
},
"outputs": {
"state": "failed",
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.XbPfbIHMI6arZ3Y922BhjWgQzWXcXNrz0ogtVhfEd2o"
}
},
{
"createdAt": "2018-01-02T12:11:47Z",
"expiresAt": "2018-01-02T12:26:47Z",
"_links": {
"self": {
"href": "/identity/quizzes/a71c3843-32c2-4054-b7b2-fcf11a84532f"
}
},
"inputs": {
"identity": {
"_profile": "https://api.apiture.com/schemas/identity/identity/v2.0.0/profile.json",
"taxId": "111-11-1111",
"firstName": "Mary",
"lastName": "Williams",
"address1": "1741 Tiburon Dr",
"city": "Wilmington",
"region": "NC",
"postalCode": "28403",
"phone": "555-555-5555",
"birthdate": "1960-03-05",
"email": "api@apiture.com",
"ipAddress": "127.0.0.1"
}
},
"outputs": {
"state": "passed",
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.XbPfbIHMI6arZ3Y922BhjWgQzWXcXNrz0ogtVhfEd2o"
}
}
]
}
}
Responses
| Status | Description |
|---|---|
| 200 | OK |
| OK | |
Schema: quizzes |
| Status | Description |
|---|---|
| 400 | Bad Request |
Bad Request. One or more of the query parameters was not well formed. The _error field in the response will contain details about the request error. | |
Schema: errorResponse |
| Status | Description |
|---|---|
| 422 | Unprocessable Entity |
Unprocessable Entity. One or more of the query parameters was well formed but otherwise invalid. The _error field in the response will contain details about the request error. | |
Schema: errorResponse |
createQuiz
Code samples
# You can also use wget
curl -X POST https://api.devbank.apiture.com/identity/quizzes \
-H 'Content-Type: application/hal+json' \
-H 'Accept: application/hal+json' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
POST https://api.devbank.apiture.com/identity/quizzes HTTP/1.1
Host: api.devbank.apiture.com
Content-Type: application/hal+json
Accept: application/hal+json
var headers = {
'Content-Type':'application/hal+json',
'Accept':'application/hal+json',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: 'https://api.devbank.apiture.com/identity/quizzes',
method: 'post',
headers: headers,
success: function(data) {
console.log(JSON.stringify(data));
}
})
const fetch = require('node-fetch');
const inputBody = '{
"_links": {
"apiture:contact": {
"href": "/contacts/contacts/6da5ccc7-727a-4256-bdd4-74023ae349c3"
}
}
}';
const headers = {
'Content-Type':'application/hal+json',
'Accept':'application/hal+json',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
fetch('https://api.devbank.apiture.com/identity/quizzes',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/hal+json',
'Accept' => 'application/hal+json',
'API-Key' => 'API_KEY',
'Authorization' => 'Bearer {access-token}'
}
result = RestClient.post 'https://api.devbank.apiture.com/identity/quizzes',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': 'application/hal+json',
'Accept': 'application/hal+json',
'API-Key': 'API_KEY',
'Authorization': 'Bearer {access-token}'
}
r = requests.post('https://api.devbank.apiture.com/identity/quizzes', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/identity/quizzes");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"application/hal+json"},
"Accept": []string{"application/hal+json"},
"API-Key": []string{"API_KEY"},
"Authorization": []string{"Bearer {access-token}"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://api.devbank.apiture.com/identity/quizzes", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
Create a new quiz
POST /quizzes
Create a new quiz in the quizzes collection for the specified identity. state defaults to pending
If the apiture:contactlink is invalid a 400 Bad Request response will be returned. The following links will be included in a successful response under the_links` property:
self: URI of the created quiz resource -/quizzes/{quizId}apiture:contact: If the resource was created with anapiture:contacta link to the specified resource will be present
Body parameter
{
"_links": {
"apiture:contact": {
"href": "/contacts/contacts/6da5ccc7-727a-4256-bdd4-74023ae349c3"
}
}
}
Parameters
| Parameter | Description |
|---|---|
body (body) |
createQuiz (required) The identity |
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": "73be83af-9e64-4214-8e90-76da43610b31",
"type": "quiz",
"createdAt": "2018-01-12T10:15:17Z",
"expiresAt": "2018-01-12T10:30:17Z",
"_profile": "https://api.apiture.com/schemas/identity/quiz/v2.0.0/profile.json",
"_links": {
"self": {
"href": "/identity/quizzes/73be83af-9e64-4214-8e90-76da43610b31"
},
"apiture:score": {
"href": "/identity/quizzes/73be83af-9e64-4214-8e90-76da43610b31/answers"
},
"apiture:getQuestions": {
"href": "/identity/quizzes/73be83af-9e64-4214-8e90-76da43610b31/questions"
},
"apiture:contact": {
"href": "/contacts/contacts/6da5ccc7-727a-4256-bdd4-74023ae349c3"
}
},
"inputs": {
"identity": {
"_profile": "https://api.apiture.com/schemas/identity/identity/v1.0.0/profile.json",
"taxId": "555-55-5555",
"firstName": "John",
"lastName": "Smith",
"address1": "1741 Tiburon Dr",
"city": "Wilmington",
"region": "NC",
"postalCode": "28403",
"phone": "555-555-5555",
"birthdate": "1940-10-15",
"email": "api@apiture.com",
"ipAddress": "127.0.0.1"
}
},
"outputs": {
"state": "passed",
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.XbPfbIHMI6arZ3Y922BhjWgQzWXcXNrz0ogtVhfEd2o"
}
}
Responses
| Status | Description |
|---|---|
| 201 | Created |
| Created | |
Schema: quiz |
| Status | Description |
|---|---|
| 400 | Bad Request |
Bad Request. One or more of the query parameters was not well formed. The _error field in the response will contain details about the request error. | |
Schema: errorResponse |
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 schema://host |
getQuiz
Code samples
# You can also use wget
curl -X GET https://api.devbank.apiture.com/identity/quizzes/{quizId} \
-H 'Accept: application/hal+json' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
GET https://api.devbank.apiture.com/identity/quizzes/{quizId} HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/hal+json
var headers = {
'Accept':'application/hal+json',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: 'https://api.devbank.apiture.com/identity/quizzes/{quizId}',
method: 'get',
headers: headers,
success: function(data) {
console.log(JSON.stringify(data));
}
})
const fetch = require('node-fetch');
const headers = {
'Accept':'application/hal+json',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
fetch('https://api.devbank.apiture.com/identity/quizzes/{quizId}',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/hal+json',
'API-Key' => 'API_KEY',
'Authorization' => 'Bearer {access-token}'
}
result = RestClient.get 'https://api.devbank.apiture.com/identity/quizzes/{quizId}',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/hal+json',
'API-Key': 'API_KEY',
'Authorization': 'Bearer {access-token}'
}
r = requests.get('https://api.devbank.apiture.com/identity/quizzes/{quizId}', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/identity/quizzes/{quizId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/hal+json"},
"API-Key": []string{"API_KEY"},
"Authorization": []string{"Bearer {access-token}"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "https://api.devbank.apiture.com/identity/quizzes/{quizId}", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
Fetch a representation of this quiz
GET /quizzes/{quizId}
Return a HAL representation of this quiz resource.
The following links will be included in a successful response under the _links property:
self: URI of the this quiz resource -/quizzes/{quizId}apiture:contact: If the resource was created with anapiture:contacta link to the specified resource will be present
Parameters
| Parameter | Description |
|---|---|
quizId (path) |
string (required) The unique identifier of this quiz. 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
{
"_id": "73be83af-9e64-4214-8e90-76da43610b31",
"type": "quiz",
"createdAt": "2018-01-12T10:15:17Z",
"expiresAt": "2018-01-12T10:30:17Z",
"_profile": "https://api.apiture.com/schemas/identity/quiz/v2.0.0/profile.json",
"_links": {
"self": {
"href": "/identity/quizzes/73be83af-9e64-4214-8e90-76da43610b31"
},
"apiture:score": {
"href": "/identity/quizzes/73be83af-9e64-4214-8e90-76da43610b31/answers"
},
"apiture:getQuestions": {
"href": "/identity/quizzes/73be83af-9e64-4214-8e90-76da43610b31/questions"
},
"apiture:contact": {
"href": "/contacts/contacts/6da5ccc7-727a-4256-bdd4-74023ae349c3"
}
},
"inputs": {
"identity": {
"_profile": "https://api.apiture.com/schemas/identity/identity/v1.0.0/profile.json",
"taxId": "555-55-5555",
"firstName": "John",
"lastName": "Smith",
"address1": "1741 Tiburon Dr",
"city": "Wilmington",
"region": "NC",
"postalCode": "28403",
"phone": "555-555-5555",
"birthdate": "1940-10-15",
"email": "api@apiture.com",
"ipAddress": "127.0.0.1"
}
},
"outputs": {
"state": "passed",
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.XbPfbIHMI6arZ3Y922BhjWgQzWXcXNrz0ogtVhfEd2o"
}
}
Responses
| Status | Description |
|---|---|
| 200 | OK |
| OK | |
Schema: quiz |
| Status | Description |
|---|---|
| 304 | Not Modified |
| Not Modified. The resource has not been modified since it was last fetched. |
| Status | Description |
|---|---|
| 404 | Not Found |
Not Found. There is no such quiz resource at the specified {quizId} The _error field in the response will contain details about the request error. | |
Schema: errorResponse |
createQuizQuestions
Code samples
# You can also use wget
curl -X POST https://api.devbank.apiture.com/identity/quizzes/{quizId}/questions \
-H 'Accept: application/hal+json' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
POST https://api.devbank.apiture.com/identity/quizzes/{quizId}/questions HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/hal+json
var headers = {
'Accept':'application/hal+json',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: 'https://api.devbank.apiture.com/identity/quizzes/{quizId}/questions',
method: 'post',
headers: headers,
success: function(data) {
console.log(JSON.stringify(data));
}
})
const fetch = require('node-fetch');
const headers = {
'Accept':'application/hal+json',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
fetch('https://api.devbank.apiture.com/identity/quizzes/{quizId}/questions',
{
method: 'POST',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/hal+json',
'API-Key' => 'API_KEY',
'Authorization' => 'Bearer {access-token}'
}
result = RestClient.post 'https://api.devbank.apiture.com/identity/quizzes/{quizId}/questions',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/hal+json',
'API-Key': 'API_KEY',
'Authorization': 'Bearer {access-token}'
}
r = requests.post('https://api.devbank.apiture.com/identity/quizzes/{quizId}/questions', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/identity/quizzes/{quizId}/questions");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/hal+json"},
"API-Key": []string{"API_KEY"},
"Authorization": []string{"Bearer {access-token}"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://api.devbank.apiture.com/identity/quizzes/{quizId}/questions", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
Generate the questions for a quiz
POST /quizzes/{quizId}/questions
Generates the a set of questions for the quiz. Questions can only be generated if the state of the resource is pending.
The following links will be included in a successful response under the _links property:
up: URI of the quiz resource -/quizzes/{quizId}apiture:score: URI of the/quizzes/{quizId}/answersendpointapiture:contact: If the resource was created with aapiture:contacta link to the specified resource will be present
Parameters
| Parameter | Description |
|---|---|
quizId (path) |
string (required) The unique identifier of this quiz. 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
201 Response
{
"_links": {
"up": {
"href": "/identity/quizzes/73be83af-9e64-4214-8e90-76da43610b31"
},
"apiture:score": {
"href": "/identity/quizzes/73be83af-9e64-4214-8e90-76da43610b31/answers"
}
},
"questions": [
{
"id": "1",
"question": "Who have you lived with?",
"choices": [
"Mary",
"Caleb",
"Angela",
"Elliott"
]
},
{
"id": "2",
"question": "What's your mother's maiden name?",
"choices": [
"Clark",
"Morris",
"Niffle",
"Bennett"
]
}
],
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.XbPfbIHMI6arZ3Y922BhjWgQzWXcXNrz0ogtVhfEd2o"
}
Responses
| Status | Description |
|---|---|
| 201 | Created |
| Created | |
Schema: quizQuestions |
| Status | Description |
|---|---|
| 400 | Bad Request |
Bad Request. One or more of the query parameters was not well formed. The _error field in the response will contain details about the request error. | |
Schema: errorResponse |
| Status | Description |
|---|---|
| 409 | Conflict |
Conflict. Questions may only be retrieved if the current state of the resource is pending. | |
Schema: errorResponse |
scoreQuiz
Code samples
# You can also use wget
curl -X POST https://api.devbank.apiture.com/identity/quizzes/{quizId}/answers \
-H 'Content-Type: application/hal+json' \
-H 'Accept: application/hal+json' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
POST https://api.devbank.apiture.com/identity/quizzes/{quizId}/answers HTTP/1.1
Host: api.devbank.apiture.com
Content-Type: application/hal+json
Accept: application/hal+json
var headers = {
'Content-Type':'application/hal+json',
'Accept':'application/hal+json',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: 'https://api.devbank.apiture.com/identity/quizzes/{quizId}/answers',
method: 'post',
headers: headers,
success: function(data) {
console.log(JSON.stringify(data));
}
})
const fetch = require('node-fetch');
const inputBody = '{}';
const headers = {
'Content-Type':'application/hal+json',
'Accept':'application/hal+json',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
fetch('https://api.devbank.apiture.com/identity/quizzes/{quizId}/answers',
{
method: 'POST',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/hal+json',
'Accept' => 'application/hal+json',
'API-Key' => 'API_KEY',
'Authorization' => 'Bearer {access-token}'
}
result = RestClient.post 'https://api.devbank.apiture.com/identity/quizzes/{quizId}/answers',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': 'application/hal+json',
'Accept': 'application/hal+json',
'API-Key': 'API_KEY',
'Authorization': 'Bearer {access-token}'
}
r = requests.post('https://api.devbank.apiture.com/identity/quizzes/{quizId}/answers', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/identity/quizzes/{quizId}/answers");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"application/hal+json"},
"Accept": []string{"application/hal+json"},
"API-Key": []string{"API_KEY"},
"Authorization": []string{"Bearer {access-token}"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://api.devbank.apiture.com/identity/quizzes/{quizId}/answers", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
Submit the answers to a quiz
POST /quizzes/{quizId}/answers
Submits the answers for scoring and returns the quiz with a state of passed, failed, scoring or expired. Can only be processed if state is asked.
The following links will be included in a successful response under the _links property:
up: URI of the quiz resource -/quizzes/{quizId}apiture:contact: If the resource was created with aapiture:contacta link to the specified resource will be present
Body parameter
{}
Parameters
| Parameter | Description |
|---|---|
quizId (path) |
string (required) The unique identifier of this quiz. This is an opaque string. |
body (body) |
scoreQuizAnswers (required) The identity |
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": "73be83af-9e64-4214-8e90-76da43610b31",
"type": "quiz",
"createdAt": "2018-01-12T10:15:17Z",
"expiresAt": "2018-01-12T10:30:17Z",
"_profile": "https://api.apiture.com/schemas/identity/quiz/v2.0.0/profile.json",
"_links": {
"self": {
"href": "/identity/quizzes/73be83af-9e64-4214-8e90-76da43610b31"
},
"apiture:score": {
"href": "/identity/quizzes/73be83af-9e64-4214-8e90-76da43610b31/answers"
},
"apiture:getQuestions": {
"href": "/identity/quizzes/73be83af-9e64-4214-8e90-76da43610b31/questions"
},
"apiture:contact": {
"href": "/contacts/contacts/6da5ccc7-727a-4256-bdd4-74023ae349c3"
}
},
"inputs": {
"identity": {
"_profile": "https://api.apiture.com/schemas/identity/identity/v1.0.0/profile.json",
"taxId": "555-55-5555",
"firstName": "John",
"lastName": "Smith",
"address1": "1741 Tiburon Dr",
"city": "Wilmington",
"region": "NC",
"postalCode": "28403",
"phone": "555-555-5555",
"birthdate": "1940-10-15",
"email": "api@apiture.com",
"ipAddress": "127.0.0.1"
}
},
"outputs": {
"state": "passed",
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.XbPfbIHMI6arZ3Y922BhjWgQzWXcXNrz0ogtVhfEd2o"
}
}
Responses
| Status | Description |
|---|---|
| 201 | Created |
| Created | |
Schema: quiz |
| Status | Description |
|---|---|
| 400 | Bad Request |
Bad Request. One or more of the query parameters was not well formed. The _error field in the response will contain details about the request error. | |
Schema: errorResponse |
| Status | Description |
|---|---|
| 409 | Conflict |
Conflict. Answers may only be submitted if the current state of the resource is asked. | |
Schema: errorResponse |
Verify
getContactVerification
Code samples
# You can also use wget
curl -X GET https://api.devbank.apiture.com/identity/contactVerification?contactUri=string \
-H 'Accept: application/hal+json' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
GET https://api.devbank.apiture.com/identity/contactVerification?contactUri=string HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/hal+json
var headers = {
'Accept':'application/hal+json',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: 'https://api.devbank.apiture.com/identity/contactVerification',
method: 'get',
data: '?contactUri=string',
headers: headers,
success: function(data) {
console.log(JSON.stringify(data));
}
})
const fetch = require('node-fetch');
const headers = {
'Accept':'application/hal+json',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
fetch('https://api.devbank.apiture.com/identity/contactVerification?contactUri=string',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/hal+json',
'API-Key' => 'API_KEY',
'Authorization' => 'Bearer {access-token}'
}
result = RestClient.get 'https://api.devbank.apiture.com/identity/contactVerification',
params: {
'contactUri' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/hal+json',
'API-Key': 'API_KEY',
'Authorization': 'Bearer {access-token}'
}
r = requests.get('https://api.devbank.apiture.com/identity/contactVerification', params={
'contactUri': 'string'
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/identity/contactVerification?contactUri=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/hal+json"},
"API-Key": []string{"API_KEY"},
"Authorization": []string{"Bearer {access-token}"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "https://api.devbank.apiture.com/identity/contactVerification", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
Retrieves contact verification resource.
GET /contactVerification
Retrieves the contact verification status. If the contactUri link is invalid a 400 Bad Request response will be returned.
The following links will be included in a successful response under the _links property:
apiture:contact: If the specified contactUri param refers to a Contact resource a link to it will be present
Parameters
| Parameter | Description |
|---|---|
contactUri (query) |
string (required) The apiture:contact URI. |
type (query) |
string The identity method type. Possible values are fraudRiskReport, quiz or adminApproval. |
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
{
"_links": {
"apiture:contact": {
"href": "/contacts/contacts/6da5ccc7-727a-4256-bdd4-74023ae349c3"
}
},
"verifications": [
{
"type": "fraudRiskReport",
"_links": {
"self": {
"href": "/identity/fraudRiskReports/c6dbc32f-e0eb-4947-9819-c691bb9164a5"
}
},
"state": "passed",
"createdAt": "2018-01-12T10:15:17Z"
},
{
"type": "quiz",
"_links": {
"self": {
"href": "/identity/quizzes/73be83af-9e64-4214-8e90-76da43610b31"
}
},
"state": "passed",
"createdAt": "2018-01-12T10:19:41Z"
}
]
}
Responses
| Status | Description |
|---|---|
| 200 | OK |
| OK | |
Schema: contactVerification |
| Status | Description |
|---|---|
| 400 | Bad Request |
Bad Request. One or more of the query parameters was not well formed. The _error field in the response will contain details about the request error. | |
Schema: errorResponse |
Approvals
createApproval
Code samples
# You can also use wget
curl -X POST https://api.devbank.apiture.com/identity/approvals?contactUri=string \
-H 'Accept: application/hal+json' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
POST https://api.devbank.apiture.com/identity/approvals?contactUri=string HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/hal+json
var headers = {
'Accept':'application/hal+json',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: 'https://api.devbank.apiture.com/identity/approvals',
method: 'post',
data: '?contactUri=string',
headers: headers,
success: function(data) {
console.log(JSON.stringify(data));
}
})
const fetch = require('node-fetch');
const headers = {
'Accept':'application/hal+json',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
fetch('https://api.devbank.apiture.com/identity/approvals?contactUri=string',
{
method: 'POST',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/hal+json',
'API-Key' => 'API_KEY',
'Authorization' => 'Bearer {access-token}'
}
result = RestClient.post 'https://api.devbank.apiture.com/identity/approvals',
params: {
'contactUri' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/hal+json',
'API-Key': 'API_KEY',
'Authorization': 'Bearer {access-token}'
}
r = requests.post('https://api.devbank.apiture.com/identity/approvals', params={
'contactUri': 'string'
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/identity/approvals?contactUri=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/hal+json"},
"API-Key": []string{"API_KEY"},
"Authorization": []string{"Bearer {access-token}"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("POST", "https://api.devbank.apiture.com/identity/approvals", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
Create a new approval resource
POST /approvals
Create a new approval resource for the specified Contact.
The following links may be included in a successful response under the _links property:
self: URI of the created approval resource -/approvals/{approvalId}apiture:contact: If the specified contactUri param refers to a Contact resource a link to it will be present
Parameters
| Parameter | Description |
|---|---|
contactUri (query) |
string (required) The apiture:contact URI. |
type (query) |
string The identity method type. Possible values are fraudRiskReport, quiz or adminApproval. |
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": "https://api.apiture.com/schemas/identity/approval/v2.0.0/profile.json",
"_links": {
"self": {
"href": "/identity/approval/a42234d9-b16a-439d-b464-55296a0b229a"
},
"apiture:contact": {
"href": "/contacts/contacts/6da5ccc7-727a-4256-bdd4-74023ae349c3"
}
},
"_id": "a42234d9-b16a-439d-b464-55296a0b229a",
"type": "adminApproval",
"createdAt": "2018-01-12T10:15:17Z"
}
Responses
| Status | Description |
|---|---|
| 201 | Created |
| Created | |
Schema: approval |
| Status | Description |
|---|---|
| 400 | Bad Request |
Bad Request. The {contactUri} query parameter was not well formed. The _error field in the response will contain details about the request error. | |
Schema: errorResponse |
| Status | Description |
|---|---|
| 422 | Unprocessable Entity |
Unprocessable Entity. The {contactUri} parameter was well formed but otherwise invalid. The _error field in the response will contain details about the request error. | |
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 schema://host |
getApproval
Code samples
# You can also use wget
curl -X GET https://api.devbank.apiture.com/identity/approvals/{approvalId} \
-H 'Accept: application/hal+json' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
GET https://api.devbank.apiture.com/identity/approvals/{approvalId} HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/hal+json
var headers = {
'Accept':'application/hal+json',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: 'https://api.devbank.apiture.com/identity/approvals/{approvalId}',
method: 'get',
headers: headers,
success: function(data) {
console.log(JSON.stringify(data));
}
})
const fetch = require('node-fetch');
const headers = {
'Accept':'application/hal+json',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
fetch('https://api.devbank.apiture.com/identity/approvals/{approvalId}',
{
method: 'GET',
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/hal+json',
'API-Key' => 'API_KEY',
'Authorization' => 'Bearer {access-token}'
}
result = RestClient.get 'https://api.devbank.apiture.com/identity/approvals/{approvalId}',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/hal+json',
'API-Key': 'API_KEY',
'Authorization': 'Bearer {access-token}'
}
r = requests.get('https://api.devbank.apiture.com/identity/approvals/{approvalId}', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/identity/approvals/{approvalId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/hal+json"},
"API-Key": []string{"API_KEY"},
"Authorization": []string{"Bearer {access-token}"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("GET", "https://api.devbank.apiture.com/identity/approvals/{approvalId}", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
Fetch a representation of this approval
GET /approvals/{approvalId}
Return a HAL representation of this approval resource.
The following links will be included in a successful response under the _links property:
self: URI of the this fraud-risk report resource -/approvals/{approvalId}apiture:contact: If the specified contactUri param refers to a Contact resource a link to it will be present
Parameters
| Parameter | Description |
|---|---|
approvalId (path) |
string (required) The unique identifier of this approval. 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": "https://api.apiture.com/schemas/identity/approval/v2.0.0/profile.json",
"_links": {
"self": {
"href": "/identity/approval/a42234d9-b16a-439d-b464-55296a0b229a"
},
"apiture:contact": {
"href": "/contacts/contacts/6da5ccc7-727a-4256-bdd4-74023ae349c3"
}
},
"_id": "a42234d9-b16a-439d-b464-55296a0b229a",
"type": "adminApproval",
"createdAt": "2018-01-12T10:15:17Z"
}
Responses
| Status | Description |
|---|---|
| 200 | OK |
| OK | |
Schema: approval |
| Status | Description |
|---|---|
| 304 | Not Modified |
| Not Modified. The resource has not been modified since it was last fetched. |
| Status | Description |
|---|---|
| 404 | Not Found |
Not Found. There is no such approval at the specified {fraudRiskReportId} The _error field in the response will contain details about the request error. | |
Schema: errorResponse |
Schemas
fraudRiskReports
{
"_profile": "https://api.apiture.com/schemas/identity/fraudRiskReports/v2.0.0/profile.json",
"start": 0,
"limit": 1,
"count": 1,
"name": "fraudRiskReports",
"_links": {
"self": {
"href": "/identity/fraudRiskReports?start=0&limit=1"
},
"first": {
"href": "/identity/fraudRiskReports?start=0&limit=1"
},
"next": {
"href": "/identity/fraudRiskReports?start=1&limit=1"
},
"collection": {
"href": "/identity/fraudRiskReports"
}
},
"_embedded": {
"items": [
{
"_profile": "https://api.apiture.com/schemas/identity/fraudRiskReport/v2.0.0/profile.json",
"_links": {
"self": {
"href": "/identity/fraudRiskReports/c6dbc32f-e0eb-4947-9819-c691bb9164a5"
},
"apiture:contact": {
"href": "/contacts/contacts/6da5ccc7-727a-4256-bdd4-74023ae349c3"
}
},
"_id": "c6dbc32f-e0eb-4947-9819-c691bb9164a5",
"type": "fraudRiskReport",
"inputs": {
"identity": {
"_profile": "https://api.apiture.com/schemas/identity/identity/v2.0.0/profile.json",
"taxId": "555-55-5555",
"firstName": "John",
"lastName": "Smith",
"address1": "1741 Tiburon Dr",
"city": "Wilmington",
"region": "NC",
"postalCode": "28403",
"phone": "555-555-5555",
"birthdate": "1940-10-15",
"email": "api@apiture.com",
"ipAddress": "127.0.0.1"
}
},
"outputs": {
"state": "passedWithRiskFactors",
"providerReportId": 1234,
"fraudRiskCategories": [
{
"type": "personalInfoDoesNotMatch",
"description": "The retrieved identity does not match the provided PII."
},
{
"type": "addressIsPOBoxOrNonApproved",
"description": "The provided address is a PO Box or other non-approved address"
},
{
"type": "identityOnGovernmentWatchlist",
"description": "The provided identity is located on one or more government watchlists"
},
{
"type": "identityOnAlertList",
"description": "The provided identity is located on one or more alert lists"
},
{
"type": "ipRestricted",
"description": "The provided IP address is restricted"
},
{
"type": "emailRestricted",
"description": "The provided email address is restricted"
}
]
}
}
]
}
}
Fraud Risk Reports (Version v2.0.0)
The items in the collection are ordered in the _embedded object with name items. The top-level _links object may contain pagination links (self, next, prev, first, last, collection).
Properties
| Name | Description |
|---|---|
_links | object An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
|
» additionalProperties | link Describes a hypermedia link within a _links object in HAL representations. In Apiture APIs, links are HAL links, but Apiture APIs do not use the name or hreflang properties of HAL. Apiture links may include a method property.
|
_embedded | object Embedded objects. |
» items | [fraudRiskReport] An array containg a page of fraud-risk analysis reports. |
_profile | string(uri) The URI of a resource profile which describes the representation. |
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. |
count | integer The number of items in the collection. This value is optional and my be omitted if the count is not computable efficiently. If a filter is applied to the collection (either implicitly or explicitly), the count, if present, indicates the number of items that satisfy the filter. |
start | integer The start index of this page of items. |
limit | integer The maximum number of items per page. |
name | string The name of the collection. |
fraudRiskReport
{
"_profile": "https://api.apiture.com/schemas/identity/fraudRiskReport/v2.0.0/profile.json",
"_links": {
"self": {
"href": "/identity/fraudRiskReports/c6dbc32f-e0eb-4947-9819-c691bb9164a5"
},
"apiture:contact": {
"href": "/contacts/contacts/6da5ccc7-727a-4256-bdd4-74023ae349c3"
}
},
"_id": "c6dbc32f-e0eb-4947-9819-c691bb9164a5",
"type": "fraudRiskReport",
"inputs": {
"identity": {
"_profile": "https://api.apiture.com/schemas/identity/identity/v2.0.0/profile.json",
"taxId": "555-55-5555",
"firstName": "John",
"lastName": "Smith",
"address1": "1741 Tiburon Dr",
"city": "Wilmington",
"region": "NC",
"postalCode": "28403",
"phone": "555-555-5555",
"birthdate": "1940-10-15",
"email": "api@apiture.com",
"ipAddress": "127.0.0.1"
}
},
"outputs": {
"state": "passedWithRiskFactors",
"fraudRiskCategories": [
{
"type": "personalInfoDoesNotMatch",
"description": "The retrieved identity does not match the provided PII."
},
{
"type": "addressIsHighRisk",
"description": "The provided address is considered high-risk"
},
{
"type": "addressIsPOBoxOrNonApproved",
"description": "The provided address is a PO Box or other non-approved address"
},
{
"type": "identityOnGovernmentWatchlist",
"description": "The provided identity is located on one or more watchlists"
},
{
"type": "ipRestricted",
"description": "The provided IP address is restricted"
},
{
"type": "emailRestricted",
"description": "The provided email address is restricted"
},
{
"type": "nonStandardTaxId",
"description": "The provided taxId is non-standard. Example: The provided SSN is an ITIN (Individual Taxpayer Identification Number)"
},
{
"type": "ageRestricted",
"description": "The provided identity does not meet the required age. Example: US COPPA laws forbid conducting e-commerce with people under 14 years of age."
}
],
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.XbPfbIHMI6arZ3Y922BhjWgQzWXcXNrz0ogtVhfEd2o"
}
}
Fraud-risk Report (Version v2.0.0)
The result of running a fraud-risk analysys.
Properties
| Name | Description |
|---|---|
_links | object An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
|
» additionalProperties | link Describes a hypermedia link within a _links object in HAL representations. In Apiture APIs, links are HAL links, but Apiture APIs do not use the name or hreflang properties of HAL. Apiture links may include a method property.
|
_embedded | object An optional map of nested resources, mapping each nested resource name to a nested resource representation. |
_profile | string(uri) The URI of a resource profile which describes the representation. |
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. |
_id | string A unique identifier for this resource instance. This is is an opaque string. |
type | identityVerificationType Describes how the identity verification was performed. |
createdAt | string(date-time) The date-time when the resource was created. This is an RFC 3066 time stamp in the form YYYY-DD-MMThh:mm:ss.sssZ.
|
expiresAt | string(date-time) The date-time when the resource expires. This is an RFC 3066 time stamp in the form YYYY-DD-MMThh:mm:ss.sssZ.
|
inputs | fraudRiskReportInputs The inputs of a fraud-risk report. |
outputs | fraudRiskReportOutputs The outputs of a fraud-risk report. |
fraudRiskCategory
{
"type": "personalInfoDoesNotMatch",
"description": "The retrieved identity does not match the provided PII.",
"message": "ZIP code located does not match the ZIP code submitted."
}
Fraud-risk Category (Version v1.0.0)
Representation of a fraud-risk category.
Properties
| Name | Description |
|---|---|
type | fraudRiskCategoryType Represents the possible types of fraud-risk. |
description | string The description of the fraud. |
message | string The original result message that was received from the identity verification provider. |
fraudRiskCategoryType
"ipRestricted"
Fraud Risk Category Type (Version v1.0.0)
Represents the possible types of fraud-risk.
Type: string
Enumerated values: ipRestrictedidentityOnGovernmentWatchlistidentityOnAlertListaddressIsPOBoxOrNonApprovedaddressIsHighRiskageRestrictednonStandardTaxIdpersonalInfoDoesNotMatchemailRestricted
createFraudRiskReport
{
"_links": {
"apiture:contact": {
"href": "/contacts/contacts/6da5ccc7-727a-4256-bdd4-74023ae349c3"
}
}
}
Create Fraud Risk Report (Version v2.0.0)
Representation used to create a new fraud-risk analysis report.
Properties
| Name | Description |
|---|---|
_links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
|
_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. |
taxId | string The identity's tax or government ID. minLength: 1
maxLength: 128
|
firstName | string The identity's first name. minLength: 1
maxLength: 128
|
lastName | string The identity's last name. minLength: 1
maxLength: 128
|
address1 | string Line 1 of the identity's street address. minLength: 1
maxLength: 512
|
address2 | string Line 2 of the identity's street address. minLength: 1
maxLength: 512
|
city | string The identity's city. minLength: 1
maxLength: 64
|
region | string The identity's region. minLength: 1
maxLength: 128
|
postalCode | string The identity's postal code. minLength: 1
maxLength: 32
|
phone | string The identity's phone. minLength: 1
maxLength: 32
|
birthdate | string(date) The identity's birth date in yyyy-mm-dd format.
minLength: 10
maxLength: 10
pattern: ^([12]\d{3}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01]))$
|
email | string(email) The identity's email address. maxLength: 256
|
ipAddress | string(ipv4) The identity's IP address. |
createQuiz
{
"_links": {
"apiture:contact": {
"href": "/contacts/contacts/6da5ccc7-727a-4256-bdd4-74023ae349c3"
}
}
}
Create Quiz (Version v2.0.0)
Representation used to create a new quiz.
Properties
| Name | Description |
|---|---|
taxId | string The identity's tax or government ID. minLength: 1
maxLength: 128
|
firstName | string The identity's first name. minLength: 1
maxLength: 128
|
lastName | string The identity's last name. minLength: 1
maxLength: 128
|
address1 | string Line 1 of the identity's street address. minLength: 1
maxLength: 512
|
address2 | string Line 2 of the identity's street address. minLength: 1
maxLength: 512
|
city | string The identity's city. minLength: 1
maxLength: 64
|
region | string The identity's region. minLength: 1
maxLength: 128
|
postalCode | string The identity's postal code. minLength: 1
maxLength: 32
|
phone | string The identity's phone. minLength: 1
maxLength: 32
|
birthdate | string(date) The identity's birth date in yyyy-mm-dd format.
minLength: 10
maxLength: 10
pattern: ^([12]\d{3}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01]))$
|
email | string(email) The identity's email address. maxLength: 256
|
ipAddress | string(ipv4) The identity's IP address. |
_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. |
scoreQuizAnswers
{}
Score Quiz Answers (Version v1.0.0)
Representation used to provide answers to a quiz.
Properties
| Name | Description |
|---|---|
answers | [coreAnswer] The list of answers the contact gave to the quiz questions. |
quizQuestions
{
"_links": {
"up": {
"href": "/identity/quizzes/73be83af-9e64-4214-8e90-76da43610b31"
},
"apiture:score": {
"href": "/identity/quizzes/73be83af-9e64-4214-8e90-76da43610b31/answers"
}
},
"questions": [
{
"id": "1",
"question": "Who have you lived with?",
"choices": [
"Mary",
"Caleb",
"Angela",
"Elliott"
]
},
{
"id": "2",
"question": "What's your mother's maiden name?",
"choices": [
"Clark",
"Morris",
"Niffle",
"Bennett"
]
}
],
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.XbPfbIHMI6arZ3Y922BhjWgQzWXcXNrz0ogtVhfEd2o"
}
Create Questions (Version v2.0.0)
Representation used to create a new set of questions.
Properties
| Name | Description |
|---|---|
_links | object An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
|
» additionalProperties | link Describes a hypermedia link within a _links object in HAL representations. In Apiture APIs, links are HAL links, but Apiture APIs do not use the name or hreflang properties of HAL. Apiture links may include a method property.
|
_embedded | object An optional map of nested resources, mapping each nested resource name to a nested resource representation. |
_profile | string(uri) The URI of a resource profile which describes the representation. |
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. |
questions | [coreQuizQuestion] An array containing a page of quiz question items. |
token | string An opaque string that conveys the state of the contact's identity verification. |
verificationToken
{
"token": "string"
}
Verification Token (Version v1.0.0)
The token used to validate and track a contact for identity verification purposes.
Properties
| Name | Description |
|---|---|
token | string An opaque string that conveys the state of the contact's identity verification. |
contactVerification
{
"_links": {
"apiture:contact": {
"href": "/contacts/contacts/6da5ccc7-727a-4256-bdd4-74023ae349c3"
}
},
"verifications": [
{
"type": "fraudRiskReport",
"_links": {
"self": {
"href": "/identity/fraudRiskReports/c6dbc32f-e0eb-4947-9819-c691bb9164a5"
}
},
"state": "passed",
"createdAt": "2018-01-12T10:15:17Z"
},
{
"type": "quiz",
"_links": {
"self": {
"href": "/identity/quizzes/73be83af-9e64-4214-8e90-76da43610b31"
}
},
"state": "passed",
"createdAt": "2018-01-12T10:19:41Z"
}
]
}
Verification (Version v2.0.0)
The contact's verification history and status.
Properties
| Name | Description |
|---|---|
_links | object An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
|
» additionalProperties | link Describes a hypermedia link within a _links object in HAL representations. In Apiture APIs, links are HAL links, but Apiture APIs do not use the name or hreflang properties of HAL. Apiture links may include a method property.
|
_embedded | object An optional map of nested resources, mapping each nested resource name to a nested resource representation. |
_profile | string(uri) The URI of a resource profile which describes the representation. |
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. |
verifications | [identityHistoryItem] The history of this contact's identity verifications. |
identityVerificationState
"passed"
IdentityVerification Type (Version v1.0.0)
The type of the historical verification.
Type: string
Enumerated values: passedfailedpassedWithRiskFactorspendingaskedidentityServiceFailurescoringexpired
identityHistoryItem
{
"state": "passed",
"createdAt": {},
"type": "quiz",
"_links": {
"apiture:contact": {
"href": "/contacts/contacts/d77bef0b-c75c-4192-ba88-278b9ce4063b"
}
}
}
Identity Verification Item (Version v1.0.0)
One verification record for a contact's history of verifications. This may contain a link to the contact in the link apiture:contact.
Properties
| Name | Description |
|---|---|
_links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
|
state | identityVerificationState (required) The type of the historical verification. |
type | identityVerificationType Describes how the identity verification was performed. |
createdAt | string(date-time) (required) The date-time when the verification occurred or completed. This is an RFC 3066 time stamp in the form YYYY-DD-MMThh:mm:ss.sssZ.
|
expiredAt | string(date-time) The date-time when the verification expired. This is only set if the state is expired. This is an RFC 3066 time stamp in the form YYYY-DD-MMThh:mm:ss.sssZ.
|
identity
{
"taxId": "555-55-5555",
"firstName": "John",
"lastName": "Smith",
"address1": "1741 Tiburon Dr",
"city": "Wilmington",
"region": "NC",
"postalCode": "28403",
"phone": "555-555-5555",
"birthdate": "1940-10-15",
"email": "api@apiture.com",
"ipAddress": "127.0.0.1"
}
Identity (Version v1.0.0)
Information that describes the identity.
Properties
| Name | Description |
|---|---|
taxId | string (required) The identity's tax or government ID. minLength: 1
maxLength: 128
|
firstName | string (required) The identity's first name. minLength: 1
maxLength: 128
|
lastName | string (required) The identity's last name. minLength: 1
maxLength: 128
|
address1 | string (required) Line 1 of the identity's street address. minLength: 1
maxLength: 512
|
address2 | string Line 2 of the identity's street address. minLength: 1
maxLength: 512
|
city | string (required) The identity's city. minLength: 1
maxLength: 64
|
region | string (required) The identity's region. minLength: 1
maxLength: 128
|
postalCode | string (required) The identity's postal code. minLength: 1
maxLength: 32
|
phone | string (required) The identity's phone. minLength: 1
maxLength: 32
|
birthdate | string(date) (required) The identity's birth date in yyyy-mm-dd format.
minLength: 10
maxLength: 10
pattern: ^([12]\d{3}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01]))$
|
email | string(email) The identity's email address. maxLength: 256
|
ipAddress | string(ipv4) The identity's IP address. |
quizzes
{
"_profile": "https://api.apiture.com/schemas/identity/quizzes/v2.0.0/profile.json",
"start": 0,
"limit": 1,
"count": 1,
"name": "quizzes",
"_links": {
"self": {
"href": "/identity/quizzes?start=0&limit=1"
},
"first": {
"href": "/identity/quizzes?start=0&limit=1"
},
"next": {
"href": "/identity/quizzes?start=1&limit=1"
},
"collection": {
"href": "/identity/quizzes"
}
},
"_embedded": {
"items": [
{
"createdAt": "2018-01-12T10:15:17Z",
"expiresAt": "2018-01-12T10:30:17Z",
"_links": {
"self": {
"href": "/identity/quizzes/73be83af-9e64-4214-8e90-76da43610b31"
},
"apiture:score": {
"href": "/identity/quizzes/73be83af-9e64-4214-8e90-76da43610b31/answers"
},
"apiture:contacts": {
"href": "/contacts/contacts/6da5ccc7-727a-4256-bdd4-74023ae349c3"
}
},
"inputs": {
"identity": {
"_profile": "https://api.apiture.com/schemas/identity/identity/v2.0.0/profile.json",
"taxId": "555-55-5555",
"firstName": "John",
"lastName": "Smith",
"address1": "1741 Tiburon Dr",
"city": "Wilmington",
"region": "NC",
"postalCode": "28403",
"phone": "555-555-5555",
"birthdate": "1940-10-15",
"email": "api@apiture.com",
"ipAddress": "127.0.0.1"
}
},
"outputs": {
"state": "failed",
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.XbPfbIHMI6arZ3Y922BhjWgQzWXcXNrz0ogtVhfEd2o"
}
},
{
"createdAt": "2018-01-02T12:11:47Z",
"expiresAt": "2018-01-02T12:26:47Z",
"_links": {
"self": {
"href": "/identity/quizzes/a71c3843-32c2-4054-b7b2-fcf11a84532f"
}
},
"inputs": {
"identity": {
"_profile": "https://api.apiture.com/schemas/identity/identity/v2.0.0/profile.json",
"taxId": "111-11-1111",
"firstName": "Mary",
"lastName": "Williams",
"address1": "1741 Tiburon Dr",
"city": "Wilmington",
"region": "NC",
"postalCode": "28403",
"phone": "555-555-5555",
"birthdate": "1960-03-05",
"email": "api@apiture.com",
"ipAddress": "127.0.0.1"
}
},
"outputs": {
"state": "passed",
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.XbPfbIHMI6arZ3Y922BhjWgQzWXcXNrz0ogtVhfEd2o"
}
}
]
}
}
Quizzes (Version v2.0.0)
Collection of quizzes.
Properties
| Name | Description |
|---|---|
_links | object An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
|
» additionalProperties | link Describes a hypermedia link within a _links object in HAL representations. In Apiture APIs, links are HAL links, but Apiture APIs do not use the name or hreflang properties of HAL. Apiture links may include a method property.
|
_embedded | object Embedded objects. |
» items | [quiz] An array containg a page of quizzes. |
_profile | string(uri) The URI of a resource profile which describes the representation. |
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. |
count | integer The number of items in the collection. This value is optional and my be omitted if the count is not computable efficiently. If a filter is applied to the collection (either implicitly or explicitly), the count, if present, indicates the number of items that satisfy the filter. |
start | integer The start index of this page of items. |
limit | integer The maximum number of items per page. |
name | string The name of the collection. |
quiz
{
"_id": "73be83af-9e64-4214-8e90-76da43610b31",
"type": "quiz",
"createdAt": "2018-01-12T10:15:17Z",
"expiresAt": "2018-01-12T10:30:17Z",
"_profile": "https://api.apiture.com/schemas/identity/quiz/v2.0.0/profile.json",
"_links": {
"self": {
"href": "/identity/quizzes/73be83af-9e64-4214-8e90-76da43610b31"
},
"apiture:score": {
"href": "/identity/quizzes/73be83af-9e64-4214-8e90-76da43610b31/answers"
},
"apiture:getQuestions": {
"href": "/identity/quizzes/73be83af-9e64-4214-8e90-76da43610b31/questions"
},
"apiture:contact": {
"href": "/contacts/contacts/6da5ccc7-727a-4256-bdd4-74023ae349c3"
}
},
"inputs": {
"identity": {
"_profile": "https://api.apiture.com/schemas/identity/identity/v1.0.0/profile.json",
"taxId": "555-55-5555",
"firstName": "John",
"lastName": "Smith",
"address1": "1741 Tiburon Dr",
"city": "Wilmington",
"region": "NC",
"postalCode": "28403",
"phone": "555-555-5555",
"birthdate": "1940-10-15",
"email": "api@apiture.com",
"ipAddress": "127.0.0.1"
}
},
"outputs": {
"state": "passed",
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.XbPfbIHMI6arZ3Y922BhjWgQzWXcXNrz0ogtVhfEd2o"
}
}
Quiz (Version v2.0.0)
A quiz containing a collection of questions and their possible answers. These questions can be used to present a multiple-choice quiz in order to verify the identity.
Properties
| Name | Description |
|---|---|
_links | object An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
|
» additionalProperties | link Describes a hypermedia link within a _links object in HAL representations. In Apiture APIs, links are HAL links, but Apiture APIs do not use the name or hreflang properties of HAL. Apiture links may include a method property.
|
_embedded | object An optional map of nested resources, mapping each nested resource name to a nested resource representation. |
_profile | string(uri) The URI of a resource profile which describes the representation. |
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. |
_id | string A unique identifier for this resource instance. This is is an opaque string. |
type | identityVerificationType Describes how the identity verification was performed. |
createdAt | string(date-time) The date-time when the resource was created. This is an RFC 3066 time stamp in the form YYYY-DD-MMThh:mm:ss.sssZ.
|
expiresAt | string(date-time) The date-time when the resource expires. This is an RFC 3066 time stamp in the form YYYY-DD-MMThh:mm:ss.sssZ.
|
inputs | quizInputs The inputs of a quiz. |
outputs | quizOutputs The outputs of a quiz. Used for workflow. |
coreQuizQuestions
{
"questions": [
{
"id": "1",
"question": "Who have you lived with?",
"choices": [
"Mary",
"Caleb",
"Angela",
"Elliott"
]
},
{
"id": "2",
"question": "What's your mother's maiden name?",
"choices": [
"Clark",
"Morris",
"Niffle",
"Bennett"
]
}
]
}
Quiz Questions (Version v1.0.0)
The questions of a quiz.
Properties
| Name | Description |
|---|---|
questions | [coreQuizQuestion] An array containing a page of quiz question items. |
coreQuizQuestion
{
"id": "1",
"question": "Who have you lived with?",
"choices": [
"Mary",
"Caleb",
"Angela",
"Elliott"
]
}
Quiz Question (Version v1.0.0)
A question of a quiz.
Properties
| Name | Description |
|---|---|
id | string (required) The identifier for this question. A quiz answer is associated with the question via the questionId.
|
question | string (required) The question text. |
choices | [string] An array containing a page of quiz question choice items. |
coreQuizAnswers
{
"answers": [
{
"questionId": "1",
"answer": "Honda Accord"
},
{
"questionId": "2",
"answer": "Missouri"
}
]
}
Quiz Answers (Version v1.0.0)
A collection of answers to a quiz.
Properties
| Name | Description |
|---|---|
answers | [coreAnswer] The list of answers the contact gave to the quiz questions. |
coreAnswer
{
"questionId": "1",
"answer": "Honda Accord"
}
Quiz Answer (Version v1.0.0)
An answer to a quiz question.
Properties
| Name | Description |
|---|---|
questionId | string (required) The ID corresponding to the question in the quiz. minLength: 1
maxLength: 256
|
answer | string (required) The answer to the question. minLength: 1
maxLength: 256
|
outputs
{
"token": "string"
}
Outputs (Version v1.0.0)
Base model schema for identity verification operations outputs.
Properties
| Name | Description |
|---|---|
token | string An opaque string that conveys the state of the contact's identity verification. |
quizOutputs
{
"token": "string",
"state": "passed"
}
Quiz Outputs (Version v1.0.0)
The outputs of a quiz. Used for workflow.
Properties
| Name | Description |
|---|---|
token | string An opaque string that conveys the state of the contact's identity verification. |
state | identityVerificationState The type of the historical verification. |
fraudRiskReportState
"passed"
Fraud Risk Report State (Version v1.0.0)
The state of a fraud report. passed indicates that the provided personally identifiable information (PII) was located and contains no risk factors. passedWithRiskFactors means that the provided PII matches an identity but contains risk factors. failed means that the provided PII does not match any identity records.
Type: string
Enumerated values: passedpassedWithRiskFactorsfailed
fraudRiskReportOutputs
{
"token": "string",
"providerReportId": "string",
"state": "passed",
"fraudRiskCategories": [
{
"type": "personalInfoDoesNotMatch",
"description": "The retrieved identity does not match the provided PII.",
"message": "ZIP code located does not match the ZIP code submitted."
}
]
}
Fraud-risk Report Outputs (Version v1.0.0)
The outputs of a fraud-risk report.
Properties
| Name | Description |
|---|---|
token | string An opaque string that conveys the state of the contact's identity verification. |
providerReportId | string External identity provider report Id. |
state | fraudRiskReportState The state of a fraud report. passed indicates that the provided personally identifiable information (PII) was located and contains no risk factors. passedWithRiskFactors means that the provided PII matches an identity but contains risk factors. failed means that the provided PII does not match any identity records.
|
fraudRiskCategories | [fraudRiskCategory] A list of categories in this report. |
quizInputs
{
"identity": {
"taxId": "555-55-5555",
"firstName": "John",
"lastName": "Smith",
"address1": "1741 Tiburon Dr",
"city": "Wilmington",
"region": "NC",
"postalCode": "28403",
"phone": "555-555-5555",
"birthdate": "1940-10-15",
"email": "api@apiture.com",
"ipAddress": "127.0.0.1"
}
}
Quiz Inputs (Version v1.0.0)
The inputs of a quiz.
Properties
| Name | Description |
|---|---|
identity | identity Information that describes the identity. |
fraudRiskReportInputs
{
"identity": {
"taxId": "555-55-5555",
"firstName": "John",
"lastName": "Smith",
"address1": "1741 Tiburon Dr",
"city": "Wilmington",
"region": "NC",
"postalCode": "28403",
"phone": "555-555-5555",
"birthdate": "1940-10-15",
"email": "api@apiture.com",
"ipAddress": "127.0.0.1"
}
}
Fraud-risk Report Inputs (Version v1.0.0)
The inputs of a fraud-risk report.
Properties
| Name | Description |
|---|---|
identity | identity Information that describes the identity. |
identityVerificationType
"fraudRiskReport"
Identity Verification Type (Version v1.0.0)
Describes how the identity verification was performed.
Type: string
Enumerated values: fraudRiskReportquizadminApproval
approval
{
"_profile": "https://api.apiture.com/schemas/identity/approval/v2.0.0/profile.json",
"_links": {
"self": {
"href": "/identity/approval/a42234d9-b16a-439d-b464-55296a0b229a"
},
"apiture:contact": {
"href": "/contacts/contacts/6da5ccc7-727a-4256-bdd4-74023ae349c3"
}
},
"_id": "a42234d9-b16a-439d-b464-55296a0b229a",
"type": "adminApproval",
"createdAt": "2018-01-12T10:15:17Z"
}
Approval (Version v2.0.0)
The core representation of an Approval resource. This represents a manual approval and would typically be created by an FI admin when a Contact fails one or more steps of the identity verification workflow.
Properties
| Name | Description |
|---|---|
_links | object An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
|
» additionalProperties | link Describes a hypermedia link within a _links object in HAL representations. In Apiture APIs, links are HAL links, but Apiture APIs do not use the name or hreflang properties of HAL. Apiture links may include a method property.
|
_embedded | object An optional map of nested resources, mapping each nested resource name to a nested resource representation. |
_profile | string(uri) The URI of a resource profile which describes the representation. |
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. |
_id | string A unique identifier for this resource instance. This is is an opaque string. |
type | identityVerificationType Describes how the identity verification was performed. |
createdAt | string(date-time) The date-time when the resource was created. This is an RFC 3066 time stamp in the form YYYY-DD-MMThh:mm:ss.sssZ.
|
expiresAt | string(date-time) The date-time when the resource expires. This is an RFC 3066 time stamp in the form YYYY-DD-MMThh:mm:ss.sssZ.
|
attributes
{}
Attributes (Version v1.0.0)
An optional map of name/value pairs which contains additional dynamic data about the resource.
Properties
root
{
"id": "apiName",
"name": "API name",
"apiVersion": "1.0.0",
"_profile": "http://localhost:8080/schemas/common/root/v2.0.0/profile.json",
"_links": {}
}
API Root (Version v2.0.0)
A HAL response, with hypermedia _links for the top-level resources and operations in API.
Properties
| Name | Description |
|---|---|
_links | object An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
|
» additionalProperties | link Describes a hypermedia link within a _links object in HAL representations. In Apiture APIs, links are HAL links, but Apiture APIs do not use the name or hreflang properties of HAL. Apiture links may include a method property.
|
_embedded | object An optional map of nested resources, mapping each nested resource name to a nested resource representation. |
_profile | string(uri) The URI of a resource profile which describes the representation. |
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. |
_id | string This API's unique ID. |
name | string This API's name. |
apiVersion | string This API's version. |
collection
{
"_links": {
"property1": {
"href": "/contacts/contacts/328f6bf6-d762-422f-a077-ab91ca4d0b6f",
"title": "Applicant"
},
"property2": {
"href": "/contacts/contacts/328f6bf6-d762-422f-a077-ab91ca4d0b6f",
"title": "Applicant"
}
},
"_embedded": {},
"_profile": "http://example.com",
"_error": {
"_id": "2eae46e1-575c-4d69-8a8f-0a7b0115a4b3",
"message": "Descriptive message 1.",
"statusCode": 422,
"type": "errorType1",
"remediation": "Remediation string 2...",
"occurredAt": "2018-01-25T05:50:52.375Z",
"errors": [],
"_links": {
"describedby": {
"href": "https://developer.apiture.com/errors/errorType1"
}
}
},
"count": 0,
"start": 0,
"limit": 0,
"name": "string"
}
Collection (Version v2.0.0)
A collection of resources. This is an abstract model schema which is extended to define specific resource collections.
Properties
| Name | Description |
|---|---|
_links | object An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
|
» additionalProperties | link Describes a hypermedia link within a _links object in HAL representations. In Apiture APIs, links are HAL links, but Apiture APIs do not use the name or hreflang properties of HAL. Apiture links may include a method property.
|
_embedded | object An optional map of nested resources, mapping each nested resource name to a nested resource representation. |
_profile | string(uri) The URI of a resource profile which describes the representation. |
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. |
count | integer The number of items in the collection. This value is optional and my be omitted if the count is not computable efficiently. If a filter is applied to the collection (either implicitly or explicitly), the count, if present, indicates the number of items that satisfy the filter. |
start | integer The start index of this page of items. |
limit | integer The maximum number of items per page. |
name | string The name of the collection. |
abstractRequest
{
"_profile": "{uri of resource profile.json}",
"_links": {
"self": {
"href": "{uri of current resource}"
}
}
}
Abstract Request (Version v2.0.0)
An abstract schema used to define other request-only schemas. This is a HAL resource representation, minus the _error defined in abstractResource.
Properties
| Name | Description |
|---|---|
_links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
|
_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. |
links
{
"property1": {
"href": "/contacts/contacts/328f6bf6-d762-422f-a077-ab91ca4d0b6f",
"title": "Applicant"
},
"property2": {
"href": "/contacts/contacts/328f6bf6-d762-422f-a077-ab91ca4d0b6f",
"title": "Applicant"
}
}
Links (Version v1.0.0)
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
Properties
| Name | Description |
|---|---|
additionalProperties | link Describes a hypermedia link within a _links object in HAL representations. In Apiture APIs, links are HAL links, but Apiture APIs do not use the name or hreflang properties of HAL. Apiture links may include a method property.
|
errorResponse
{
"_profile": "https://api.apiture.com/schemas/common/errorResponse/v1.0.0/profile.json",
"_error": {
"_id": "2eae46e1-575c-4d69-8a8f-0a7b0115a4b3",
"message": "The value for deposit must be greater than 0.",
"statusCode": 422,
"type": "positiveNumberRequired",
"attributes": {
"value": -125.5
},
"remediation": "Provide a value which is greater than 0",
"occurredAt": "2018-01-25T05:50:52.375Z",
"_links": {
"describedby": {
"href": "https://api.apiture.com/errors/positiveNumberRequired"
}
},
"_embedded": {
"errors": []
}
}
}
Error Response (Version v1.0.0)
Describes an error response, typically returned on 4xx or 5xx errors from API operations. The _error object contains the error details.
Properties
| Name | Description |
|---|---|
_links | object An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
|
» additionalProperties | link Describes a hypermedia link within a _links object in HAL representations. In Apiture APIs, links are HAL links, but Apiture APIs do not use the name or hreflang properties of HAL. Apiture links may include a method property.
|
_embedded | object An optional map of nested resources, mapping each nested resource name to a nested resource representation. |
_profile | string(uri) The URI of a resource profile which describes the representation. |
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. |
link
{
"href": "/contacts/contacts/328f6bf6-d762-422f-a077-ab91ca4d0b6f",
"title": "Applicant"
}
Link (Version v1.0.0)
Describes a hypermedia link within a _links object in HAL representations. In Apiture APIs, links are HAL links, but Apiture APIs do not use the name or hreflang properties of HAL. Apiture links may include a method property.
Properties
| Name | Description |
|---|---|
href | string(uri) (required) The URI or URI template for the resource/operation this link refers to. |
type | string The media type for the resource. |
templated | boolean If true, the link's href is a URI template. |
title | string An optional human-readable localized title for the link. |
deprecation | string(uri) If present, the containing link is deprecated and the value is a URI which provides human-readable text information about the deprecation. |
profile | string(uri) The URI of a profile document, a JSON document which describes the target resource/operation. |
error
{
"_id": "2eae46e1-575c-4d69-8a8f-0a7b0115a4b3",
"message": "Descriptive message 1.",
"statusCode": 422,
"type": "errorType1",
"remediation": "Remediation string 2...",
"occurredAt": "2018-01-25T05:50:52.375Z",
"errors": [],
"_links": {
"describedby": {
"href": "https://developer.apiture.com/errors/errorType1"
}
}
}
Error (Version v1.0.0)
Describes an error in an API request or in a service called via the API.
Properties
| Name | Description |
|---|---|
message | string (required) A localized message string describing the error condition. |
_id | string A unique identifier for this error instance. This may be used as a correlation ID with the root cause error (i.e. this ID may be logged at the source of the error). This is is an opaque string. |
statusCode | integer The HTTP status code associate with this error. minimum: 100
maximum: 599
|
type | string An error identifier which indicates the category of error and associate it with API support documentation or which the UI tier can use to render an appropriate message or hint. This provides a finer level of granularity than the statusCode. For example, instead of just 400 Bad Request, the type may be much more specific. such as integerValueNotInAllowedRange or numericValueExceedsMaximum or stringValueNotInAllowedSet.
|
occurredAt | string(date-time) An RFC 3339 UTC time stamp indicating when the error occurred. |
attributes | attributes Informative values or constraints which describe the error. For example, for a value out of range error, the attributes may specify the minimum and maximum values. This allows clients to present error messages as they see fit (the API does not assume the client/presentation tier). The set of attributes varies by error type.
|
remediation | string An optional localized string which provides hints for how the user or client can resolve the error. |
errors | [error] An optional array of nested error objects. This property is not always present. |
_links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
|
attributeValue
{}
Attribute Value (Version v2.0.0)
The data associated with this attribute.