API Reference
Overview
The Intercheck API is used to submit background checking requests.
The API is built using RESTful endpoints and standard HTTPS verbs.
Response codes are used to indicate the status of the message and any error codes.
JSON is returned on all our API responses, including errors, with a consistent structure for all messages.
Authentication to the API is performed via Token-based auth.
Requests to our API should be made as JSON, except when uploading documents.
COMMAND | PURPOSE |
POST | Create an object |
GET | Fetch one or more object |
PUT | Update an object |
DELETE | Remove an object |
TYPE OF CHECKS
Deciding which type of check to perform essentially depends on whether your system already has
the applicant’s necessary information to perform the check or whether you need their input to be
collected by us.
Depending on the type of check you wish to perform, different information will be required when you
are creating an applicant. This is detailed under the create applicant endpoint.
Some types of reports are only available within Portal checks, due to the comprehensive data
required from an applicant. Report availability is indicated in the Report Types section.
AUTHENTICATION
The API uses token-based authentication. You will be provided with a token which must be included in the header of all requests made to the API.
All API requests must be made over HTTPS. Any requests made over HTTP will fail.
In addition, to add an extra layer of security, in some cases, Intercheck API uses the Allow and Deny policy to determine the IP request that can access the API.
However, Intercheck provides IP access control therefore, you should provide a specific list of IP addresses.
ERRORS:
Standard API error codes are returned in the case of a failure.
There are 2 types of failure: FALSE or TRUE
If there is any error, the system will send the message to the administrator.
RETRIEVE APPLICANTS API
Purpose
- Getting a report on a single applicant.
- A single applicant can be retrieved by calling this endpoint along with the applicant’s by Email and By Reference Number
1. Get Applicant’s information by Email
GET
|
https://secure.policecheckexpress.com.au/pce/api/policeCheck?token=SECURE_TOKEN&applicant=APPLICANT_EMAIL |
Parameters
Attribute | Type | Description |
id | integer | Application reference number |
firstName | string | Applicant’s first name |
lastName | string | Applicant’s last name |
string | Applicant’s email | |
purpose | string | Applicant’s check purpose |
status | string | Applicant’s status |
error | boolean | error code |
errorMessage | string | error message |
applicant: Applicant Email
Ajax
var url = “https://secure.policecheckexpress.com.au/pce/api/policeCheck”;
var source =
{
datatype: “json”,
datafields: [
{name: ‘id’, type: ‘int’},
{name: ‘firstName’, type: ‘string’},
{name: ‘lastName’, type: ‘string’},
{name: ’email’, type: ‘string’},
{name: ‘purpose’, type: ‘string’},
{name: ‘status’, type: ‘string’},
{name: ‘error’, type: ‘boolean’},
{name: ‘errorMessage’, type: ‘string’}
],
url: url,
data: {
token: xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx,
applicant: APPLICANT_EMAIL
}
};
Results
{
“firstName”: APPLICANT_FIRST_NAME,
“lastName”: APPLICANT_LAST_NAME,
“email”: APPLICANT_EMAIL,
“purpose”: APPLICANT_PURPOSE,
“status”: (YES/NO/PENDING),
“error”: (true/false),
“errorMessage”: (if error = true , it shows error message)
}
2. Get applicant’s information by Reference Number
GET
|
https://secure.policecheckexpress.com.au/pce/api/policeCheck/reference?token=SECURE_TOKEN&refno=REFERENCE_NUMBER |
Parameters
Attribute | Type | Description |
id | integer | Application Reference Number |
firstName | string | Applicant’s first name |
lastName | string | Applicant’s last name |
string | Applicant’s email | |
purpose | string | Applicant’s check purpose |
status | string | Applicant’s status |
error | boolean | Error code |
errorMessage | string | Error message |
Ajax
var url = “https://secure.policecheckexpress.com.au/pce/api/policeCheck/reference”;
var source =
{
datatype: “json”,
datafields: [
{name: ‘id’, type: ‘int’},
{name: ‘firstName’, type: ‘string’},
{name: ‘lastName’, type: ‘string’},
{name: ’email’, type: ‘string’},
{name: ‘purpose’, type: ‘string’},
{name: ‘status’, type: ‘string’},
{name: ‘error’, type: ‘boolean’},
{name: ‘errorMessage’, type: ‘string’}
],
url: url,
data: {
token: xxxx-xxxx-xxxx-xxxx-xxxxxxxxx,
refno: APPLICANT_EMAIL
}
};
Results
“id”: APPLICANT_REFERENCE_NO,
“firstName”: APPLICANT_FIRST_NAME,
“lastName”: APPLICANT_LAST_NAME,
“email”: APPLICANT_EMAIL,
“purpose”: APPLICANT_PURPOSE,
“status”: (YES/NO/PENDING),
“error”: (true/false),
“errorMessage”: (if error = true , it shows error message)
}
Errors
Miss Parameters: When The parameter is incorrect
The Applicant Email is not valid: When The Format of Email is incorrect
The Token is not valid: When The Secure Token is incorrect
IP Restriction: When request sent from an IP that is not included in saved list of safe IP addresses
The Applicant not found: When we cannot find Applicant’s Email you sent or you don’t have access to police check for this applicant
General Exception: When Something wrong happens to the system
CREATE CHECK
Checks are performed on an applicant. Checks can be created and retrieved.
1/ CREATE INVITED CHECK:
Checks are initiated using this endpoint.
POST
|
https://secure.policecheckexpress.com.au/pce/api/policeCheck/invite |
Parameters
Attribute | Type | Description |
checkType | number | (Required) 1 for Standard , 2 for Volunteer |
paidInvite | number | (Required) 1 for prepay, 0 for passpay |
department Optional | string | (Optional)Department name |
string | (Required) Applicant’s email | |
surname | string | (Required) Applicant’s surname |
givenName | string | (Required) Applicant’s first name |
userFullname | string | (Required) Applicant’s full name |
purchaseOrder | string | (optional) Applicant purchase order |
reminderCount | number | (optional) Applicant’s reminder count |
phone Number | number | (optional) Application Phone number |
empId Number | number | (optional) Applicant employee ID |
purpose | string | (Required) Applicant’ purpose |
childVul | boolean | (Required) If applicant have direct contact with any Children, Elderly, Vulnerable or Disable Persons |
Ajax
$.ajax({
type: “POST”,
url: “https://secure.policecheckexpress.com.au/pce/api/policeCheck/invite”,
data: {
token: xxxx-xxxx-xxxx-xxxx-xxxxxxxxx,
checkType: 1,
paidInvite: 1,
department: DEPARTMENT_NAME,
email: APPLICANT_EMAIL,
surname: APPLICANT_SURNAME,
givenName: APPLICANT_GIVEN_NAME,
phone: APPLICANT_PHONE,
empId: APPLICANT_EMPLOYEE_ID,
reminderCount: APPLICANT_REMINDER_COUNT,
purchaseOrder: APPLICANT_PURCHASE_ORDER,
purpose: APPLICANT_PURPOSE,
childVul: true
}
contentType: “application/json; charset=utf-8”,
dataType: “json”,
success: function(data){alert(data);},
failure: function(errMsg) {alert(errMsg);}
});
Result
{
token: xxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx,
checkType: 1,
paidInvite: 1,
department: DEPARTMENT_NAME,
email: APPLICANT_EMAIL,
surname: APPLICANT_SURNAME,
givenName: APPLICANT_GIVEN_NAME,
phone: APPLICANT_PHONE,
empId: APPLICANT_EMPLOYEE_ID,
reminderCount: APPLICANT_REMINDER_COUNT,
purchaseOrder: APPLICANT_PURCHASE_ORDER,
purpose: APPLICANT_PURPOSE,
childVul: true
error: false
message: New Check Created successfully
}
Errors
Miss Parameters: When The parameter is incorrect
The Applicant Email is not valid: When The Format of Email is incorrect
The Token is not valid: When The Secure Token is incorrect
IP Restriction: When request sent from IP that is not defined,
Given Name is required! : When Given Name is Empty
Surname is required! : When Surname is Empty
User FullName is required! : When user full name is missing.
The Applicant Phone is not valid! : When Phone is not valid
CheckType is not valid! : when CheckType is not 1 Or 2
Paid Invite is not valid! : when Paid Invite is not 1 Or 0
The Department is not valid! :when the name of department is not defined in the system
Insufficient credit to do volunteer check : When you have Insufficient credit for volunteer
Insufficient credit to do standard check :When you have Insufficient credit for standard
The Purchase Order is not valid-Max Length Exceed! : When the Purchase Order is more than 100 characters
The Employee ID is not valid-Max Length Exceed! :When the Employee ID is more than 100 characters
2/ CREATE PORTAL CHECK
This is used by Direct Business only.
The business has an option to vet the applicant from their end
POST
|
https://secure.policecheckexpress.com.au/pce/api/portalCheckDirect/new |
Parameters
Attribute | Type | Description |
Check type | Number | (Required) 1 fro Standard, 2 for Volunteer |
employeeId | Number | Applicant employee ID |
purchaseOrder | String | Applicant purchase order |
department | String | Department name |
String | (Required) Applicant’s email | |
names | List | List of names |
gender | (Required) Applicant gender. Valid input: M/F/U | |
dateOfBirth | Number | Applicant date of birth |
birthCountry | String | Country code. Global value |
birthSuburb | String | Suburb of town |
birthState | String | Birth state |
addresses | List | Applicant’s addresses |
homePhone | Number | Applicant’s home phone |
workPhone | Number | Applicant’s work phone |
mobilePhone | Number | Applicant’s mobile phone |
licenseNo | String | Driver’s license number |
licenseIssueBy | String | Issue date |
firearms | String | Fire arm’s license number |
firearmIssueBy | String | Issue date |
purpose | String | (Required) Application’s purpose |
user | String | (Required) User’s full name |
childVul | Boolean | (Required) If applicant has direct access contact with Children, Elderly, Vulnerable or Disable persons |
Names:
Attribute | Type | Description |
surname | String | (Required) Applicant’s surname |
givenName | String | (Required) Applicant’s first name |
otherGivenName | String | Applicants other given name |
singleNameOnly | Boolean | If the declared name is single name |
type | tring | Valid input PRIM/ Alias/ Maiden/ Previous |
SAMPLE CODE
RESPONSE
{
email: APPLICANT_EMAIL
error: false
message: New Check Created successfully
}
ERRORS:
Miss Parameters :When The parameter is incorrect
The Applicant Email is not valid:When The Format of Email is incorrect
The Token is not valid:When The Secure Token is incorrect
IP Restriction :When request sent from IP that is not defined,
Given Name is required! : When Given Name is Empty
Surname is required! : When Surname is Empty
The Applicant Phone is not valid! : When Phone is not valid
CheckType is not valid! : when CheckType is not 1 Or 2
The Department is not valid! :when the name of department is not defined in the system Insufficient credit to do volunteer check : When you have Insufficient credit for volunteer
Insufficient credit to do standard check :When you have Insufficient credit for standard
The Purchase Order is not valid-Max Length Exceed! : When the Purchase Order is more than 100 characters
The Employee ID is not valid-Max Length Exceed! :When the Employee ID is more than 100 characters
The Applicant birthMonth is required: When the birth month is missing
The Applicant birthYear is required: When the birth year is missing
The Applicant Country is required: When the birth country is missing
The Applicant Country is not Valid: When the country is invalid
Addresses Object is required!: Address’s object is missing
The Address Country is required: Address’s Country is missing
The Address Country is not Valid: Address’s Country is invalid
The address Street No is required: The street no is missing
The address Street Name is required: The street name is missing
The address Year From is required: The start year is missing
The address Year To is required: The end year is missing
The ChildVul is required: Children vulnerable option is not selected
The Purpose is required: The purpose of the check is missing
The Applicant birthday is required: The applicant’s birthday is missing
REPORT
The user will need to set up a webhook to listen for the results of the reports.
Please refer to InterCheck’s Client Library in GitHub for further information.
GET
|
https://secure.policecheckexpress.com.au/pce/api/policeCheck/report |
Parameters
Attribute | Type | Description |
ReferenceNo | String | The unique identifier for the report |
name | list | Applicant’s full name |
department | String | Applicant’s department |
statusDescription | String | Status Description |
checkMethodDescription | String | Check method status |
paidInvite | Boolean | True is prepaid. False is passpay |
dco | String | Disclosable court outcome |
resultDestroyed | Boolean | If yes: result has been destroyed |
resultDate | Date | Result Date |
empId | String | Employee’s ID |
purchaseOrder | String | Applicant’s purchase order |
RESPONSE
{
“error”:false,
“errorMessage”:NULL,
“applicants”:[{
“referenceNo”:APPLICANT_REFERENCE_NO,
“name”:APPLICANT_FULL_NAME,
“department”:APPLICANT_DEPARTMENT,
“statusDescription”:APPLICANT_STATUS,
“checkMethodDescription”:CHECK_METHOD_STATUS,
“paidInvite”:(true/false),
“dco”:disclosable court outcomes(“YES”/”NO”/”PENDING”),
“resultDestroyed”:(true/false),
“resultDate”:RESULT_DATE,
“empId”:APPLICANT_EMPLOYEE_ID,
“purchaseOrder”:APPLICANT_PURCHASE_ORDER
},
{…}
]
}
status:
0=ALL
1=Invited
2=Incomplete
3=In progress
4=Attention
8=Result In
24=Application Deleted
Errors
Miss Parameters: When The parameter is incorrect
The Token is not valid: When The Secure Token is incorrect
IP Restriction: When request sent from an IP that is not included in saved list of safe IP addresses
The Status is not found: When The Status is incorrect
General Exception: When Something wrong happens to the system
Create Vevo Check
POST
|
https://secure.policecheckexpress.com.au/pce/api/vevoCheck/invite |
Parameters
Attribute | Type | Description |
token | String | (Required) API secure token |
surname | String | (Required) Applicant’s surname |
givenName | String | (Required) Applicant’s given name |
phoneHome | String | Applicant’s home phone |
phoneWork | String | Applicant’s Work phone |
phoneMobile | String | Applicant’s Mobile Phone |
birthDay | Integer | (Required) Applicant’s day of birth |
birthMonth | Integer | (Required) Applicant’s month of birth |
birthYear | Integer | (Required) Applicant’s year of birth |
passportNo | String | (Required) Applicant’s Passport Number |
passportCountry | String | (Required) Passport Country. Country Code. Global Value |
employerId | String | Employer ID |
RESPONSE
{
email: APPLICANT_EMAIL
error: false
message: New Right to work Created successfully
}
Errors
Miss Parameters: When The parameter is incorrect
The Applicant Email is not valid:When The Format of Email is incorrect
The Token is not valid: When The Secure Token is incorrect
IP Restriction: When request sent from IP that is not defined,
Given Name is required! : When Given Name is Empty
Surname is required! : When Surname is Empty
The Applicant Phone is not valid! : When Phone is not valid
Passport is required! : When Passport is Empty
Passport Country is required! : When Passport Country is Empty
The Applicant birthDay is required: When the birth day is missing
The Applicant birthMonth is required: When the birth month is missing
The Applicant birthYear is required: When the birth year is missing
Get Vevo Check Detail by Applicant Email
GET
|
https://secure.policecheckexpress.com.au/pce/api/vevoCheck?token=SECURE_TOKEN&applicant= APPLICANT_EMAIL |
Parameters
Attribute | Type | Description |
token | String | (Required) API secure token |
applicant | String | (Required) Applicant’s email address |
id | int | (Required) Vevo application ref number |
status | String | Application status |
firstName | String | Applicant’s First Name |
lastname | String | Applicant’s Last Name |
String | Applicant email | |
passport | String | (Required) Applicant’s passport number |
country | String | (Required)Applicant’s passport Country |
resultDate | Date | The date the result returns |
expireDate | Date | The date the visa expired ( if applicable) |
grantDate | Date | Visa grant date |
applicant | String | Primary/Secondary |
classification | String | Visa classification |
workEntitlement | String | Result of the Vevo Check |
error | Boolean | Error code |
errorMessage | String | Error message |
Get Vevo Check Detail by Vevo Ref Number
GET | https://secure.policecheckexpress.com.au/pce/api/vevoCheck/reference?token= SECURE_TOKEN &refno= REFERENCE_NUMBER |
Client Library
To make coding against these APIs easier, Intercheck provides client libraries that can reduce the amount of code you need to write and make your code more robust.