Appearance
Endpoints
Submit Application
POST {environment}/api/inbound-api/v1/SubmitApplicationV1
This method creates, and immediately validates and submits an application for review.
Headers
| Name | Type | Description |
|---|---|---|
| Content-Type | string | application/json |
| X-CloseConnectApiKey | string | See Authentication |
| X-CloseConnectApiSecret | string | See Authentication |
Request Body
INFO
See ApplicationModel for details on how to submit an application.
| Name | Type | Description |
|---|---|---|
| onBehalfOf | string | Email of the Close Connect user who will become the owner of the application. If the current API user should be the owner, this should be left empty. If creating for a user who has not given an API consent, this will fail with error 401. |
| caseId | string | A case identifier. If this is null, a new case will be created with the uploaded data, if this has the identifier of an existing case it will update the case with the uploaded data. |
| borrower | object | The borrower payload to submit. This object is of type BorrowerDetailsModel |
| loandetails | object | The loan details payload to submit. This object is of type LoanDetailsModel |
Response
200 - Success
Application has been created and submitted successfully. CaseId can be used to identify the application in the Close Connect UI, as well as being used in other API requests.
INFO
See SubmitApplicationResponseModel for details on the response model.
javascript
// The application was created and submitted successfully
{
"CaseId": "BL120000015",
"IsSubmitted": true,
"ValidationErrors": []
}
// The application already exists
{
"CaseId": "BL120000015",
"IsSubmitted": true,
"ValidationErrors": [
{
"Model": "",
"Type": "ChangeDenied",
"Message": "Change Denied, Application already submitted"
}
],
}
// The application 'BL120000020' was created, but was not
// submitted for review due to validation errors.
{
"CaseId": "BL120000020",
"IsSubmitted": false,
"ValidationErrors": [
{
"Model": "Applicants[0].DateOfBirth",
"Type": "isAtLeastTimeAgo",
"Message": "Minimum applicant age is 21 years"
},
{
"Model": "Term",
"Type": "termValidationBasedOnCarYear",
"Message": "The minimum term for this loan is 24 months"
}
]
}401 - Unauthorized
If the authentication headers are missing or invalid.
(no response body)WARNING
If there is any quote validation error that prevents successful submission, the application will be created, but will stay in the "Open" status (instead of "Submitted"). This is usually caused by invalid/missing data and a detailed list of validation errors will be returned in the response.
In this case, the quote may be opened in the Close Connect UI application and fixed/submitted manually by a Close Connect User.
Request Body Example
javascript
{
"onBehalfOf":"dealer2@example.com",
"caseId": null,
"borrower": {
"borrowerType": "individual",
"bankDetails": {
"accountType": "individual",
"accountName": "John Account",
"bank": "alliedIrishBanks",
"yearsWithBank": 8
},
"applicants": {
"1": {
"title": "mr",
"firstName": "John",
"lastName": "AACcr",
"dateOfBirth": "1991-12-18",
"gender": "male",
"maritalStatus": "single",
"nationality": "IRL",
"primaryApplicant": true,
"ppsNumber": "5759043U",
"email": "a@co.com",
"mainPhone": "0862504814",
"secondaryPhone": "0862504815",
"addresses": {
"1": {
"line2": "55C",
"currentAddress": true,
"line1": "Dublin Landings Carpark and Estate",
"county": "Co. Dublin",
"country": "Ireland",
"posttown": "Dublin 1",
"eirCode": "D01 V4A3",
"timeAtAddress": "morethan10"
},
"2": {
"line2": "11V",
"currentAddress": false,
"line1": "Sean MacDermott Street Lower",
"county": "Co. Dublin",
"country": "United Kingdom",
"posttown": "Dublin 1",
"eirCode": "D01 VE44",
"timeAtAddress": "1year"
},
"3": {
"line2": "55C",
"currentAddress": false,
"line1": "Dublin Landings Carpark and Estate",
"county": "Co. Dublin",
"country": "Ireland",
"posttown": "Dublin 1",
"eirCode": "D01 V4A3",
"timeAtAddress": "morethan10"
}
},
"residentialStatus": "homeOwner",
"numberOfDependents": 0,
"employment": {
"industry": "Accounting",
"title": "Director",
"employmentType": "fulltime",
"status": "permanent",
"employerName": "CompanyA",
"employerAddress": {
"line2": "55C",
"line1": "Dublin Landings Carpark and Estate",
"county": "Co. Dublin",
"country": "Ireland",
"posttown": "Dublin 1",
"eirCode": "D01 V4A3"
},
"employerContact": {
"email": "testnotifications@bluestone.co.uk",
"mainPhone": "0862504814",
"secondaryPhone": ""
},
"timeInEmployment": "4years"
},
"incomeExpenditure": {
"netSalaryPerMonth": 3000,
"otherIncomePerMonth": 1000,
"mortgageRent": 1200,
"otherIncomeType": "other",
"otherIncomeDescription": "online selling"
}
}
}
},
"loanDetails": {
"term": "60",
"furtherInformation": "No",
"vehicle": {
"isNewCar": false,
"vehicleType": "car",
"registrationNumber": "211D12345",
"odometer": 50000,
"purchasePrice": 30000,
"deposit": 3000,
"tradeIn": 9000,
"tradeInRegistrationNumber": "192D54321"
}
}
}For a list of comprehensive validation rules, please refer to Data Models.
Get Application Status
GET {environment}/api/inbound-api/v1/GetStatusV1/{quoteReference}
Get's the current status of a application that was previously created by a call to the Submit Application Endpoint.
INFO
See StatusResponseModel for details on the response model.
Path Parameters
| Name | Type | Description |
|---|---|---|
| quoteReference | string | The quote reference of an existing application |
Headers
| Name | Type | Description |
|---|---|---|
| Content-Type | string | application/json |
| X-CloseConnectApiKey | string | See Authentication |
| X-CloseConnectApiSecret | string | See Authentication |
Response
200 - Success
The request was successful and the application status was retrieved.
javascript
{
"QuoteReference": "BL10012345",
"Status": "UnderReview",
"Date": "2021-06-04T14:52:56.803+00:00"
}400 - Bad Request
If one or more of the request parameters are missing or invalid.
(no response body)401 - Unauthorized
If the authentication headers are missing or invalid.
(no response body)