Skip to main content

Insurerity API (1.0)

Download OpenAPI specification:Download

Insurerity API Documentation

Insurers

InsurersController_findAll

query Parameters
type
string
Enum: "INSURER" "MICRO_INSURER"
Example: type=INSURER

Filter by insurer type

name
string
Example: name=KEK Brokers

Filter by name of the company

email
string
Example: email=support@kekbrokers.net

Filter by email of the company

country
string
Example: country=Ghana

Filter by country

Responses

Response samples

Content type
application/json
{
  • "statusCode": 200,
  • "success": true,
  • "data": [
    ]
}

Countries

CountriesController_index

query Parameters
include
required
string

Responses

Response samples

Content type
application/json
{
  • "statusCode": 200,
  • "success": true,
  • "data": [
    ],
  • "paginator": {
    }
}

Auth

Login

Authorizations:
bearer
Request Body schema: application/json
username
string

Email or phone number. Required if firebaseToken is not provided

password
string

User password. Required if firebaseToken is not provided

firebaseToken
string

User firebase access token. Required if username and password are not provided

Responses

Request samples

Content type
application/json
{
  • "username": "string",
  • "password": "string",
  • "firebaseToken": "string"
}

Response samples

Content type
application/json
{
  • "id": "619c0911b46b424f5f3e470f",
  • "createdAt": "2020-05-05T00:00:00.000Z",
  • "updatedAt": "2020-05-05T00:00:00.000Z",
  • "companyName": "ABC Company",
  • "email": "user@example.com",
  • "country": "Ghana",
  • "city": "Accra",
  • "region": "Greater Accra",
  • "digitalAddress": "CC-1334-332",
  • "password": "password",
  • "industry": "Agriculture",
  • "address": "Dansoman Street 12, Accra, Ghana",
  • "notes": "lorem ipusom",
  • "dateOfIncorporation": "2006-12-15",
  • "type": "CORPORATE",
  • "groups": [
    ],
  • "contactPersons": [
    ],
  • "firstName": "John",
  • "lastName": "Doe",
  • "otherNames": "Wood",
  • "title": "Mr",
  • "gender": "Male",
  • "age": 25,
  • "fullName": "John Wood Doe",
  • "isActive": true,
  • "deliveryAddresses": [ ],
  • "profileImage": {},
  • "notifications": [ ],
  • "accessToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c",
  • "taxpayerIdentificationNumber": "string",
  • "phoneNumber": "stringstri",
  • "dateOfBirth": "string",
  • "identificationCard": {
    }
}

AuthController_signup

Authorizations:
bearer
Request Body schema: application/json
One of
email
string

Email of the client

country
required
string

Country of the client

city
string

The name of the city where the client (individual/company) is located

region
string

Region/State name

digitalAddress
string

Digital address (Ghana Post GPS address) of the client

password
string >= 5 characters

Account password

industry
string

Industry of the client

address
string

Address of the client

notes
string

Additional notes about the client

type
required
string
Enum: "CORPORATE" "INDIVIDUAL"

The type of client

groups
required
Array of strings
Default: []

List of groups the client belongs to

profileImage
object <binary>

Profile picture

firstName
string

Client first name. Required if client is INDIVIDUAL

lastName
string

Client last name. Required if client is INDIVIDUAL

otherNames
string

Middle or other names (if any)

title
string
gender
string
Enum: "MALE" "FEMALE" "OTHER"
dateOfBirth
string
object (ClientIdentificationCardDto)
taxpayerIdentificationNumber
string
phoneNumber
string [ 10 .. 15 ] characters
isActive
boolean

Responses

Request samples

Content type
application/json
Example
{
  • "email": "user@example.com",
  • "country": "Ghana",
  • "city": "Accra",
  • "region": "Greater Accra",
  • "digitalAddress": "CC-1334-332",
  • "password": "password",
  • "industry": "Agriculture",
  • "address": "Dansoman Street 12, Accra, Ghana",
  • "notes": "lorem ipusom",
  • "type": "CORPORATE",
  • "groups": [
    ],
  • "profileImage": { },
  • "firstName": "John",
  • "lastName": "Doe",
  • "otherNames": "Wood",
  • "title": "Mr",
  • "gender": "Male",
  • "dateOfBirth": "string",
  • "identificationCard": {
    },
  • "taxpayerIdentificationNumber": "string",
  • "phoneNumber": "stringstri",
  • "isActive": true
}

Response samples

Content type
application/json
{
  • "statusCode": 200,
  • "success": true,
  • "data": [
    ]
}

Request Password Reset

Sends a password reset code as email/sms to the user.
If the code is sent successfully, use /auth/password/reset to reset the user's password.

Authorizations:
bearer
Request Body schema: application/json
username
required
string

Email or phone number of the user

Responses

Request samples

Content type
application/json
{
  • "username": "+233123456789"
}

Response samples

Content type
application/json
{ }

Reset Password

Resets the user's password. The user must have received a password reset code via email/sms

Authorizations:
bearer
Request Body schema: application/json
username
required
string

Email or phone number of the user

resetCode
required
string >= 6 characters

Reset code sent via email or sms to the user. Use /auth/password/request-reset to request a reset code.

password
required
string [ 5 .. 30 ] characters

New password of the user

passwordConfirm
required
string [ 5 .. 30 ] characters

Confirm new password of the user. Value must match password

Responses

Request samples

Content type
application/json
{
  • "username": "+233123456789",
  • "resetCode": 123456,
  • "password": "new-password",
  • "passwordConfirm": "new-password"
}

Response samples

Content type
application/json
{ }

Change Password

The endpoint is used to change the user's account password.
NOTE: The user must be currently logged in to change their password.

Authorizations:
bearer
Request Body schema: application/json
oldPassword
required
string

Current user's password

newPassword
required
string [ 5 .. 50 ] characters

New user's password

Responses

Request samples

Content type
application/json
{
  • "oldPassword": "old-password",
  • "newPassword": "new-password"
}

Response samples

Content type
application/json
{ }

Logout

Logs the user out of the application. The user must be currently logged in to logout. The user's access token will no longer be valid after this call.

Authorizations:
bearer

Responses

Response samples

Content type
application/json
{ }

Currencies

CurrenciesController_index

Responses

Response samples

Content type
application/json
{
  • "statusCode": 200,
  • "success": true,
  • "data": [],
  • "paginator": {
    }
}

Companies

CompaniesController_findAll

query Parameters
limit
number >= 1
Default: 100
page
number >= 1
Default: 1
name
string
Example: name=KEK Brokers

Name of the company

type
string
Enum: "INSURER" "BROKER" "MICRO_INSURER" "DIGITAL_AGENT" "AGENT"
email
string

Responses

Response samples

Content type
application/json
{
  • "statusCode": 200,
  • "success": true,
  • "data": [
    ]
}

Delivery Addresses

Add Delivery Address

Request Body schema: application/json
type
required
string
Default: "PRIMARY"
Enum: "PRIMARY" "SECONDARY"

The type of address

name
required
string
region
required
string
city
required
string
phoneNumber
required
string
address
required
string

Responses

Request samples

Content type
application/json
{
  • "type": "PRIMARY",
  • "name": "string",
  • "region": "string",
  • "city": "string",
  • "phoneNumber": "string",
  • "address": "string"
}

Response samples

Content type
application/json
{
  • "type": "PRIMARY",
  • "name": "string",
  • "region": "string",
  • "city": "string",
  • "phoneNumber": "string",
  • "address": "string"
}

All Delivery Address

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get Delivery Address by ID

path Parameters
id
required
string

Responses

Response samples

Content type
application/json
{
  • "type": "PRIMARY",
  • "name": "string",
  • "region": "string",
  • "city": "string",
  • "phoneNumber": "string",
  • "address": "string"
}

Update Delivery Address

path Parameters
id
required
string
Request Body schema: application/json
type
required
string
Default: "PRIMARY"
Enum: "PRIMARY" "SECONDARY"

The type of address

name
required
string
region
required
string
city
required
string
phoneNumber
required
string
address
required
string

Responses

Request samples

Content type
application/json
{
  • "type": "PRIMARY",
  • "name": "string",
  • "region": "string",
  • "city": "string",
  • "phoneNumber": "string",
  • "address": "string"
}

Response samples

Content type
application/json
{
  • "type": "PRIMARY",
  • "name": "string",
  • "region": "string",
  • "city": "string",
  • "phoneNumber": "string",
  • "address": "string"
}

Delete Delivery Address

path Parameters
id
required
string

Responses

Response samples

Content type
application/json
{
  • "type": "PRIMARY",
  • "name": "string",
  • "region": "string",
  • "city": "string",
  • "phoneNumber": "string",
  • "address": "string"
}

Polices

PoliciesController_create

Authorizations:
bearer
Request Body schema: application/json
One of
policyNo
string

Optional policy number

coverageType
string

Optional coverage type for the policy. It is automatically derived from product information (if any)

generateInvoice
boolean
Default: true

Whether the system should auto generate a debit after creating the policy

currency
required
string

Policy currency code. Refer to /currencies for available currencies.

startDate
required
string

Policy start date in iso8601 format

endDate
required
string

Policy end date in iso8601 format

productId
required
string

Product id of the policy

oldPolicyId
string

The id of the old policy, if any.
This is used only if business type of the policy is RENEWAL

clientId
string

Client Id. Optional if policy is created by a client

originatingStaffId
string

The staff who sold the policy to the client. If null, currently logged in staff will be used.
Optional if the policy is created from a client application

notes
string

Additional notes about the policy

premium
required
number >= 1

Policy premium

exchangeRate
number >= 0
Default: 1

Currency exchange rate

businessType
required
string
Enum: "NEW_BUSINESS" "CROSS_SELLING" "RENEWAL" "EXTENSION"

Policy business type

businessCategory
string
Default: "LOCAL"
Enum: "LOCAL" "GLOBAL"

Business category of the policy. Default is LOCAL

coverType
string

Provided coverType if the policy uses one coverType for all assets.
If some assets have different coverTypes, then it must be provided in the assets property

policyType
string
Enum: "AUTO" "BANKERS_INDEMNITY" "BLANKET_BOND" "BONDS" "BOILER_OR_PRESSURE_VESSEL" "BURGLARY" "BUSINESS_INTERRUPTION" "MONEY" "DIRECTORS_OFFICERS_LIABILITY" "ELECTRONIC_EQUIPMENT" "EMPLOYERS_LIABILITY" "ERECTION_ALL_RISKS" "CONTRACTORS_ALL_RISKS" "FIDELITY_GUARANTEE" "GENERAL_LIABILITY" "GOODS_IN_TRANSIT" "GROUP_PERSONAL_ACCIDENT" "HOME" "MARINE" "PERSONAL_ACCIDENT" "PLANT_ALL_RISKS" "PLANT_AND_MACHINERY" "PROFESSIONAL_INDEMNITY" "PROPERTY_DAMAGE" "PUBLIC_LIABILITY" "TRAVEL" "AVIATION" "WORKMENS_COMPENSATION" "FIRE_AND_ALLIED_PERILS" "ASSETS_ALL_RISKS" "AGRICULTURAL" "STOCK_DETERIORATION" "MOTOR_TRADERS" "LIFE" "GROUP_LIFE_PERSONAL_ACCIDENT" "GROUP_LIFE" "GROUP_FUNERAL" "HEALTH" "PENSION"

Type of policy

object

Additional information about the policy

groupId
string

Id of the group which the policy belongs to

required
Array of objects (HomeAssetDto)

Home policy assets details

Responses

Request samples

Content type
application/json
Example
{
  • "policyNo": "POL-0012",
  • "coverageType": "MOTOR_COMPREHENSIVE",
  • "generateInvoice": true,
  • "currency": "GHS",
  • "startDate": "2020-01-01T00:00:00.000Z",
  • "endDate": "2020-12-01T00:00:00.000Z",
  • "productId": "619c0911b46b424f5f3e470f",
  • "oldPolicyId": "619c0911b46b424f5f3e470f",
  • "clientId": "619c0911b46b424f5f3e470f",
  • "originatingStaffId": "619c0911b46b424f5f3e470f",
  • "notes": "This is an auto insurance policy. It covers a car.",
  • "premium": 5000,
  • "exchangeRate": 1,
  • "businessType": "NEW_BUSINESS",
  • "businessCategory": "LOCAL",
  • "coverType": "COMPREHENSIVE",
  • "policyType": "AUTO",
  • "additionalInformation": {
    },
  • "groupId": "63403b8a088f7a3cd5f8e717",
  • "assets": [
    ]
}

Response samples

Content type
application/json
Example
{
  • "policyNo": "POL-0012",
  • "coverageType": "MOTOR_COMPREHENSIVE",
  • "generateInvoice": true,
  • "currency": "GHS",
  • "startDate": "2020-01-01T00:00:00.000Z",
  • "endDate": "2020-12-01T00:00:00.000Z",
  • "oldPolicyId": "619c0911b46b424f5f3e470f",
  • "originatingStaffId": "619c0911b46b424f5f3e470f",
  • "notes": "This is an auto insurance policy. It covers a car.",
  • "premium": 5000,
  • "exchangeRate": 1,
  • "businessType": "NEW_BUSINESS",
  • "businessCategory": "LOCAL",
  • "coverType": "COMPREHENSIVE",
  • "policyType": "AUTO",
  • "additionalInformation": {
    },
  • "groupId": "63403b8a088f7a3cd5f8e717",
  • "description": "This is an auto insurance policy. It covers a car.",
  • "client": {
    },
  • "product": {
    },
  • "createdBy": {
    },
  • "originatingStaff": {
    },
  • "assets": [
    ]
}

PoliciesController_findAll

Authorizations:
bearer
query Parameters
limit
number
Default: 100
Example: limit=50

Number of items to return per page

page
number
Default: 1
Example: page=1

Page number

startDate
Array of strings
Example: startDate=2020-01-01&startDate=2020-01-30

Filter policies by start date

endDate
Array of strings
Example: endDate=2021-01-01&endDate=2020-01-01

Filter policies by end date

clientId
string
Example: clientId=62016d42493e6709f8fcf984

Filter by client id

staffName
string
Example: staffName=Louis M James

Filter by staff name

staffId
string
Example: staffId=62a19cdac10c74fe282dc789

Query by staff Id

policyNo
string
Example: policyNo=POL-0012

Query policies by policy number

clientName
string
Example: clientName=Jane Doe

Query by client name

insurerName
string
Example: insurerName=Star Assurance

Query by insurer name

productName
string
Example: productName=Star Assurance

Query by product name

productId
string
Example: productId=Star Assurance

Query by product id

state
string
Enum: "DRAFT" "PROCESSING" "CANCELLED" "AWAITING_DEBIT" "ACTIVE" "INACTIVE" "UNDER_WRITER" "ACCOUNT_RECEIVABLE" "CREDIT_CONTROL" "COMPLETE" "DECLINED" "EXPIRED" "ARCHIVED"
Example: state=COMPLETE

Query by policy state

format
string
Value: "excel"
Example: format=excel

The file format to use for export.

usePagination
required
boolean
Default: true

If true, only current paginated results will be exported. To export all records, without pagination, set value to false. NOTE: This option does not affect summary reports

assets
required
boolean
Default: true

Whether policy assets should be included in the exported data

Responses

Response samples

Content type
application/json
{
  • "statusCode": 200,
  • "success": true,
  • "data": [
    ],
  • "paginator": {
    }
}

Policy Types

Authorizations:
bearer

Responses

Response samples

Content type
application/json
{ }

Get Policy By ID

Authorizations:
bearer
path Parameters
id
required
string

Responses

Response samples

Content type
application/json
{ }

PoliciesController_update

Authorizations:
bearer
path Parameters
id
required
string
Request Body schema: application/json
One of
policyNo
string

Optional policy number

coverageType
string

Optional coverage type for the policy. It is automatically derived from product information (if any)

generateInvoice
boolean
Default: true

Whether the system should auto generate a debit after creating the policy

currency
required
string

Policy currency code. Refer to /currencies for available currencies.

startDate
required
string

Policy start date in iso8601 format

endDate
required
string

Policy end date in iso8601 format

productId
required
string

Product id of the policy

oldPolicyId
string

The id of the old policy, if any.
This is used only if business type of the policy is RENEWAL

clientId
string

Client Id. Optional if policy is created by a client

originatingStaffId
string

The staff who sold the policy to the client. If null, currently logged in staff will be used.
Optional if the policy is created from a client application

notes
string

Additional notes about the policy

premium
required
number >= 1

Policy premium

exchangeRate
number >= 0
Default: 1

Currency exchange rate

businessType
required
string
Enum: "NEW_BUSINESS" "CROSS_SELLING" "RENEWAL" "EXTENSION"

Policy business type

businessCategory
string
Default: "LOCAL"
Enum: "LOCAL" "GLOBAL"

Business category of the policy. Default is LOCAL

coverType
string

Provided coverType if the policy uses one coverType for all assets.
If some assets have different coverTypes, then it must be provided in the assets property

policyType
string
Enum: "AUTO" "BANKERS_INDEMNITY" "BLANKET_BOND" "BONDS" "BOILER_OR_PRESSURE_VESSEL" "BURGLARY" "BUSINESS_INTERRUPTION" "MONEY" "DIRECTORS_OFFICERS_LIABILITY" "ELECTRONIC_EQUIPMENT" "EMPLOYERS_LIABILITY" "ERECTION_ALL_RISKS" "CONTRACTORS_ALL_RISKS" "FIDELITY_GUARANTEE" "GENERAL_LIABILITY" "GOODS_IN_TRANSIT" "GROUP_PERSONAL_ACCIDENT" "HOME" "MARINE" "PERSONAL_ACCIDENT" "PLANT_ALL_RISKS" "PLANT_AND_MACHINERY" "PROFESSIONAL_INDEMNITY" "PROPERTY_DAMAGE" "PUBLIC_LIABILITY" "TRAVEL" "AVIATION" "WORKMENS_COMPENSATION" "FIRE_AND_ALLIED_PERILS" "ASSETS_ALL_RISKS" "AGRICULTURAL" "STOCK_DETERIORATION" "MOTOR_TRADERS" "LIFE" "GROUP_LIFE_PERSONAL_ACCIDENT" "GROUP_LIFE" "GROUP_FUNERAL" "HEALTH" "PENSION"

Type of policy

object

Additional information about the policy

groupId
string

Id of the group which the policy belongs to

required
Array of objects (HomeAssetDto)

Home policy assets details

Responses

Request samples

Content type
application/json
Example
{
  • "policyNo": "POL-0012",
  • "coverageType": "MOTOR_COMPREHENSIVE",
  • "generateInvoice": true,
  • "currency": "GHS",
  • "startDate": "2020-01-01T00:00:00.000Z",
  • "endDate": "2020-12-01T00:00:00.000Z",
  • "productId": "619c0911b46b424f5f3e470f",
  • "oldPolicyId": "619c0911b46b424f5f3e470f",
  • "clientId": "619c0911b46b424f5f3e470f",
  • "originatingStaffId": "619c0911b46b424f5f3e470f",
  • "notes": "This is an auto insurance policy. It covers a car.",
  • "premium": 5000,
  • "exchangeRate": 1,
  • "businessType": "NEW_BUSINESS",
  • "businessCategory": "LOCAL",
  • "coverType": "COMPREHENSIVE",
  • "policyType": "AUTO",
  • "additionalInformation": {
    },
  • "groupId": "63403b8a088f7a3cd5f8e717",
  • "assets": [
    ]
}

Response samples

Content type
application/json
Example
{
  • "policyNo": "POL-0012",
  • "coverageType": "MOTOR_COMPREHENSIVE",
  • "generateInvoice": true,
  • "currency": "GHS",
  • "startDate": "2020-01-01T00:00:00.000Z",
  • "endDate": "2020-12-01T00:00:00.000Z",
  • "oldPolicyId": "619c0911b46b424f5f3e470f",
  • "originatingStaffId": "619c0911b46b424f5f3e470f",
  • "notes": "This is an auto insurance policy. It covers a car.",
  • "premium": 5000,
  • "exchangeRate": 1,
  • "businessType": "NEW_BUSINESS",
  • "businessCategory": "LOCAL",
  • "coverType": "COMPREHENSIVE",
  • "policyType": "AUTO",
  • "additionalInformation": {
    },
  • "groupId": "63403b8a088f7a3cd5f8e717",
  • "description": "This is an auto insurance policy. It covers a car.",
  • "client": {
    },
  • "product": {
    },
  • "createdBy": {
    },
  • "originatingStaff": {
    },
  • "assets": [
    ]
}

Delete Policy

Policy can only be deleted if no payments has been made for the policy.
If payments has been made, the client must contact customer support for the policy to be deleted.

Authorizations:
bearer
path Parameters
id
required
string

Responses

Response samples

Content type
application/json
{ }

PoliciesController_renewal

Authorizations:
bearer
path Parameters
id
required
string

ID of the policy to be renewed.
If the policy is not already exists on the system, use /policies endpoint to create a new policy, with RENEWAL as the business type.

Request Body schema: application/json
One of
policyNo
string

Optional policy number

coverageType
string

Optional coverage type for the policy. It is automatically derived from product information (if any)

generateInvoice
boolean
Default: true

Whether the system should auto generate a debit after creating the policy

currency
required
string

Policy currency code. Refer to /currencies for available currencies.

startDate
required
string

Policy start date in iso8601 format

endDate
required
string

Policy end date in iso8601 format

productId
required
string

Product id of the policy

oldPolicyId
string

The id of the old policy, if any.
This is used only if business type of the policy is RENEWAL

clientId
string

Client Id. Optional if policy is created by a client

originatingStaffId
string

The staff who sold the policy to the client. If null, currently logged in staff will be used.
Optional if the policy is created from a client application

notes
string

Additional notes about the policy

premium
required
number >= 1

Policy premium

exchangeRate
number >= 0
Default: 1

Currency exchange rate

businessType
required
string
Enum: "NEW_BUSINESS" "CROSS_SELLING" "RENEWAL" "EXTENSION"

Policy business type

businessCategory
string
Default: "LOCAL"
Enum: "LOCAL" "GLOBAL"

Business category of the policy. Default is LOCAL

coverType
string

Provided coverType if the policy uses one coverType for all assets.
If some assets have different coverTypes, then it must be provided in the assets property

policyType
string
Enum: "AUTO" "BANKERS_INDEMNITY" "BLANKET_BOND" "BONDS" "BOILER_OR_PRESSURE_VESSEL" "BURGLARY" "BUSINESS_INTERRUPTION" "MONEY" "DIRECTORS_OFFICERS_LIABILITY" "ELECTRONIC_EQUIPMENT" "EMPLOYERS_LIABILITY" "ERECTION_ALL_RISKS" "CONTRACTORS_ALL_RISKS" "FIDELITY_GUARANTEE" "GENERAL_LIABILITY" "GOODS_IN_TRANSIT" "GROUP_PERSONAL_ACCIDENT" "HOME" "MARINE" "PERSONAL_ACCIDENT" "PLANT_ALL_RISKS" "PLANT_AND_MACHINERY" "PROFESSIONAL_INDEMNITY" "PROPERTY_DAMAGE" "PUBLIC_LIABILITY" "TRAVEL" "AVIATION" "WORKMENS_COMPENSATION" "FIRE_AND_ALLIED_PERILS" "ASSETS_ALL_RISKS" "AGRICULTURAL" "STOCK_DETERIORATION" "MOTOR_TRADERS" "LIFE" "GROUP_LIFE_PERSONAL_ACCIDENT" "GROUP_LIFE" "GROUP_FUNERAL" "HEALTH" "PENSION"

Type of policy

object

Additional information about the policy

groupId
string

Id of the group which the policy belongs to

required
Array of objects (HomeAssetDto)

Home policy assets details

Responses

Request samples

Content type
application/json
Example
{
  • "policyNo": "POL-0012",
  • "coverageType": "MOTOR_COMPREHENSIVE",
  • "generateInvoice": true,
  • "currency": "GHS",
  • "startDate": "2020-01-01T00:00:00.000Z",
  • "endDate": "2020-12-01T00:00:00.000Z",
  • "productId": "619c0911b46b424f5f3e470f",
  • "oldPolicyId": "619c0911b46b424f5f3e470f",
  • "clientId": "619c0911b46b424f5f3e470f",
  • "originatingStaffId": "619c0911b46b424f5f3e470f",
  • "notes": "This is an auto insurance policy. It covers a car.",
  • "premium": 5000,
  • "exchangeRate": 1,
  • "businessType": "NEW_BUSINESS",
  • "businessCategory": "LOCAL",
  • "coverType": "COMPREHENSIVE",
  • "policyType": "AUTO",
  • "additionalInformation": {
    },
  • "groupId": "63403b8a088f7a3cd5f8e717",
  • "assets": [
    ]
}

Response samples

Content type
application/json
Example
{
  • "policyNo": "POL-0012",
  • "coverageType": "MOTOR_COMPREHENSIVE",
  • "generateInvoice": true,
  • "currency": "GHS",
  • "startDate": "2020-01-01T00:00:00.000Z",
  • "endDate": "2020-12-01T00:00:00.000Z",
  • "oldPolicyId": "619c0911b46b424f5f3e470f",
  • "originatingStaffId": "619c0911b46b424f5f3e470f",
  • "notes": "This is an auto insurance policy. It covers a car.",
  • "premium": 5000,
  • "exchangeRate": 1,
  • "businessType": "NEW_BUSINESS",
  • "businessCategory": "LOCAL",
  • "coverType": "COMPREHENSIVE",
  • "policyType": "AUTO",
  • "additionalInformation": {
    },
  • "groupId": "63403b8a088f7a3cd5f8e717",
  • "description": "This is an auto insurance policy. It covers a car.",
  • "client": {
    },
  • "product": {
    },
  • "createdBy": {
    },
  • "originatingStaff": {
    },
  • "assets": [
    ]
}

Products

All Products

query Parameters
limit
number
Default: 100
Example: limit=50

Number of items to return per page

page
number
Default: 1
Example: page=1

Page number

category
string
Example: category=AUTO

Filter products by category name

name
string
Example: name=Motor Comprehensive

Filter products by name

subCategory
string
Example: subCategory=COMPREHENSIVE

Filter products by subcategory name

insurer
string
Example: insurer=Enterprise Insurance Company Limited

Filter products by insurer's name.

assigned
boolean
Default: false

Get only products which have been assigned to brokers or agents

distribution
string
Enum: "ONLINE" "OFFLINE"
Example: distribution=ONLINE

Filter products by distribution

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get Product By ID

path Parameters
id
required
string

Responses

Response samples

Content type
application/json
{
  • "name": "Motor Insurance",
  • "code": "CLAGC",
  • "description": "lorem ipsum dolor sit amet",
  • "premiumRates": { },
  • "category": "AUTO",
  • "subCategory": "COMPREHENSIVE",
  • "benefits": [
    ],
  • "otherCommission": {
    },
  • "status": "ACTIVE",
  • "distribution": "OFFLINE",
  • "id": "619c0911b46b424f5f3e470f",
  • "assignedTo": [
    ],
  • "insurer": {
    },
  • "createdAt": "2020-05-05T00:00:00.000Z",
  • "assignedAt": "2020-05-05T00:00:00.000Z",
  • "updatedAt": "2020-05-05T00:00:00.000Z",
  • "createdBy": {
    },
  • "assignedBy": {
    },
  • "standardCommission": {
    },
  • "overriderCommission": {
    }
}

Vehicles

VehiclesController_vehicles

Responses

Response samples

Content type
application/json
{
  • "statusCode": 200,
  • "success": true,
  • "data": [
    ]
}

Body Types

Responses

Response samples

Content type
application/json
{ }

Schedule Types

Responses

Response samples

Content type
application/json
{ }

Transactions

TransactionsController_create

Authorizations:
bearer
Request Body schema: application/json
dateReceived
string

Date at which payment was received. If not provided, current date is be used

payee
string

Name of the client/person making the payment. The client's name is used if not provided

invoiceId
required
string

Id of the invoice to be paid

transactionType
string
Enum: "RENEWAL" "EXTENSION" "NEW_BUSINESS"

If not provided, policy business type is used

transactionNo
string

Transaction Number is automatically generated if not provided

paymentInstitution
string

If not provided, payment institution is selected based on the payment method

description
string
amount
number >= 0

Amount paid in on the invoice. If 0 or no value is provided, remaining invoice amount is used as the transaction amount

exchangeRate
number
Default: 1

Currency exchange rate. If not provided, invoice exchange rate will be used

currency
string

If not provided, invoice currency will be used

chequeDate
string <date-time>

Required if payment method is cheque

nameOnCheque
string >= 3 characters

Required if payment method is cheque

chequeNo
string >= 3 characters

Required if payment method is cheque

chequeType
string

Required if payment method is cheque

files
Array of objects <binary> [ items <binary > ]

Documents to be attached to the transaction

paymentMethod
required
string
Enum: "ONLINE" "MOBILE_MONEY" "CASH" "CHEQUE" "BANK_TRANSFER" "UNSPECIFIED"

Responses

Request samples

Content type
application/json
{
  • "dateReceived": "string",
  • "payee": "string",
  • "invoiceId": "62a8de63eeba455ddc20dccc",
  • "transactionType": "RENEWAL",
  • "transactionNo": "string",
  • "paymentInstitution": "string",
  • "description": "string",
  • "amount": 0,
  • "exchangeRate": 1,
  • "currency": "string",
  • "chequeDate": "2019-08-24T14:15:22Z",
  • "nameOnCheque": "string",
  • "chequeNo": "string",
  • "chequeType": "string",
  • "files": [
    ],
  • "paymentMethod": "ONLINE"
}

Response samples

Content type
application/json
{
  • "statusCode": 200,
  • "success": true,
  • "data": [
    ]
}

TransactionsController_findAll

Authorizations:
bearer
query Parameters
limit
number
Default: 100
Example: limit=50

Number of items to return per page

page
number
Default: 1
Example: page=1

Page number

invoiceNo
string
invoiceId
string

Filter transactions by invoice

policyId
string
Example: policyId=6183cd2c7c1fbfeffea4b6e0

Filter transactions by policy

clientId
string
policyNo
string
from
string
Default: "Query transactions which were created on this date.<br> Use in combination with <code>to</code> for range filtering"
Example: from=02-03-2021
to
string
Default: "Query transactions which were created on this date. <br> Use in combination with <code>from</code> for range filtering"
Example: to=03-03-2021
date
string
Example: date=03-03-2021

Query for transaction created on this specific date. For date range filtering, use to and from parameters

status
string
Enum: "PENDING_PAYMENT" "PENDING_APPROVAL" "PENDING_VERIFICATION" "VERIFIED" "APPROVED" "CANCELLED" "REJECTED" "ERROR"
Example: status=APPROVED

Query transactions by status

format
string
Value: "excel"
Example: format=excel

The file format to use for export.

usePagination
required
boolean
Default: true

If true, only current paginated results will be exported. To export all records, without pagination, set value to false. NOTE: This option does not affect summary reports

Responses

Response samples

Content type
application/json
{
  • "statusCode": 200,
  • "success": true,
  • "data": [
    ]
}

Download Receipt

Download transaction receipt as PDF

Authorizations:
bearer
path Parameters
id
required
string
Example: 625996fdd9df546e7ff66f53

Transaction's id

Responses

Policies Cart

PoliciesCartController_index

Authorizations:
bearer

Responses

Response samples

Content type
application/json
{
  • "statusCode": 200,
  • "success": true,
  • "data": [
    ]
}

PoliciesCartController_create

Authorizations:
bearer
Request Body schema: application/json
policyNo
string

Optional policy number

coverageType
string

Optional coverage type for the policy. It is automatically derived from product information (if any)

generateInvoice
boolean
Default: true

Whether the system should auto generate a debit after creating the policy

currency
string

Policy currency code. Refer to /currencies for available currencies.

startDate
string

Policy start date in iso8601 format

endDate
string

Policy end date in iso8601 format

productId
string

Product id of the policy

oldPolicyId
string

The id of the old policy, if any.
This is used only if business type of the policy is RENEWAL

clientId
string

Client Id. Optional if policy is created by a client

originatingStaffId
string

The staff who sold the policy to the client. If null, currently logged in staff will be used.
Optional if the policy is created from a client application

notes
string

Additional notes about the policy

premium
number >= 1

Policy premium

exchangeRate
number >= 0
Default: 1

Currency exchange rate

businessType
string
Enum: "NEW_BUSINESS" "CROSS_SELLING" "RENEWAL" "EXTENSION"

Policy business type

businessCategory
string
Default: "LOCAL"
Enum: "LOCAL" "GLOBAL"

Business category of the policy. Default is LOCAL

coverType
string

Provided coverType if the policy uses one coverType for all assets.
If some assets have different coverTypes, then it must be provided in the assets property

policyType
string
Enum: "AUTO" "BANKERS_INDEMNITY" "BLANKET_BOND" "BONDS" "BOILER_OR_PRESSURE_VESSEL" "BURGLARY" "BUSINESS_INTERRUPTION" "MONEY" "DIRECTORS_OFFICERS_LIABILITY" "ELECTRONIC_EQUIPMENT" "EMPLOYERS_LIABILITY" "ERECTION_ALL_RISKS" "CONTRACTORS_ALL_RISKS" "FIDELITY_GUARANTEE" "GENERAL_LIABILITY" "GOODS_IN_TRANSIT" "GROUP_PERSONAL_ACCIDENT" "HOME" "MARINE" "PERSONAL_ACCIDENT" "PLANT_ALL_RISKS" "PLANT_AND_MACHINERY" "PROFESSIONAL_INDEMNITY" "PROPERTY_DAMAGE" "PUBLIC_LIABILITY" "TRAVEL" "AVIATION" "WORKMENS_COMPENSATION" "FIRE_AND_ALLIED_PERILS" "ASSETS_ALL_RISKS" "AGRICULTURAL" "STOCK_DETERIORATION" "MOTOR_TRADERS" "LIFE" "GROUP_LIFE_PERSONAL_ACCIDENT" "GROUP_LIFE" "GROUP_FUNERAL" "HEALTH" "PENSION"

Type of policy

object

Additional information about the policy

groupId
string

Id of the group which the policy belongs to

assets
required
Array of objects
Default: []

Assets information of the policy. Refer to /policies for available assets

Responses

Request samples

Content type
application/json
{
  • "policyNo": "POL-0012",
  • "coverageType": "MOTOR_COMPREHENSIVE",
  • "generateInvoice": true,
  • "currency": "GHS",
  • "startDate": "2020-01-01T00:00:00.000Z",
  • "endDate": "2020-12-01T00:00:00.000Z",
  • "productId": "619c0911b46b424f5f3e470f",
  • "oldPolicyId": "619c0911b46b424f5f3e470f",
  • "clientId": "619c0911b46b424f5f3e470f",
  • "originatingStaffId": "619c0911b46b424f5f3e470f",
  • "notes": "This is an auto insurance policy. It covers a car.",
  • "premium": 5000,
  • "exchangeRate": 1,
  • "businessType": "NEW_BUSINESS",
  • "businessCategory": "LOCAL",
  • "coverType": "COMPREHENSIVE",
  • "policyType": "AUTO",
  • "additionalInformation": {
    },
  • "groupId": "63403b8a088f7a3cd5f8e717",
  • "assets": [ ]
}

Response samples

Content type
application/json
{
  • "statusCode": 200,
  • "success": true,
  • "data": [
    ]
}

PoliciesCartController_findOne

Authorizations:
bearer
path Parameters
id
required
string

Responses

Response samples

Content type
application/json
{
  • "statusCode": 200,
  • "success": true,
  • "data": [
    ]
}

PoliciesCartController_update

Authorizations:
bearer
path Parameters
id
required
string
Request Body schema: application/json
policyNo
string

Optional policy number

coverageType
string

Optional coverage type for the policy. It is automatically derived from product information (if any)

generateInvoice
boolean
Default: true

Whether the system should auto generate a debit after creating the policy

currency
string

Policy currency code. Refer to /currencies for available currencies.

startDate
string

Policy start date in iso8601 format

endDate
string

Policy end date in iso8601 format

productId
string

Product id of the policy

oldPolicyId
string

The id of the old policy, if any.
This is used only if business type of the policy is RENEWAL

clientId
string

Client Id. Optional if policy is created by a client

originatingStaffId
string

The staff who sold the policy to the client. If null, currently logged in staff will be used.
Optional if the policy is created from a client application

notes
string

Additional notes about the policy

premium
number >= 1

Policy premium

exchangeRate
number >= 0
Default: 1

Currency exchange rate

businessType
string
Enum: "NEW_BUSINESS" "CROSS_SELLING" "RENEWAL" "EXTENSION"

Policy business type

businessCategory
string
Default: "LOCAL"
Enum: "LOCAL" "GLOBAL"

Business category of the policy. Default is LOCAL

coverType
string

Provided coverType if the policy uses one coverType for all assets.
If some assets have different coverTypes, then it must be provided in the assets property

policyType
string
Enum: "AUTO" "BANKERS_INDEMNITY" "BLANKET_BOND" "BONDS" "BOILER_OR_PRESSURE_VESSEL" "BURGLARY" "BUSINESS_INTERRUPTION" "MONEY" "DIRECTORS_OFFICERS_LIABILITY" "ELECTRONIC_EQUIPMENT" "EMPLOYERS_LIABILITY" "ERECTION_ALL_RISKS" "CONTRACTORS_ALL_RISKS" "FIDELITY_GUARANTEE" "GENERAL_LIABILITY" "GOODS_IN_TRANSIT" "GROUP_PERSONAL_ACCIDENT" "HOME" "MARINE" "PERSONAL_ACCIDENT" "PLANT_ALL_RISKS" "PLANT_AND_MACHINERY" "PROFESSIONAL_INDEMNITY" "PROPERTY_DAMAGE" "PUBLIC_LIABILITY" "TRAVEL" "AVIATION" "WORKMENS_COMPENSATION" "FIRE_AND_ALLIED_PERILS" "ASSETS_ALL_RISKS" "AGRICULTURAL" "STOCK_DETERIORATION" "MOTOR_TRADERS" "LIFE" "GROUP_LIFE_PERSONAL_ACCIDENT" "GROUP_LIFE" "GROUP_FUNERAL" "HEALTH" "PENSION"

Type of policy

object

Additional information about the policy

groupId
string

Id of the group which the policy belongs to

assets
required
Array of objects
Default: []

Assets information of the policy. Refer to /policies for available assets

Responses

Request samples

Content type
application/json
{
  • "policyNo": "POL-0012",
  • "coverageType": "MOTOR_COMPREHENSIVE",
  • "generateInvoice": true,
  • "currency": "GHS",
  • "startDate": "2020-01-01T00:00:00.000Z",
  • "endDate": "2020-12-01T00:00:00.000Z",
  • "productId": "619c0911b46b424f5f3e470f",
  • "oldPolicyId": "619c0911b46b424f5f3e470f",
  • "clientId": "619c0911b46b424f5f3e470f",
  • "originatingStaffId": "619c0911b46b424f5f3e470f",
  • "notes": "This is an auto insurance policy. It covers a car.",
  • "premium": 5000,
  • "exchangeRate": 1,
  • "businessType": "NEW_BUSINESS",
  • "businessCategory": "LOCAL",
  • "coverType": "COMPREHENSIVE",
  • "policyType": "AUTO",
  • "additionalInformation": {
    },
  • "groupId": "63403b8a088f7a3cd5f8e717",
  • "assets": [ ]
}

Response samples

Content type
application/json
{
  • "statusCode": 200,
  • "success": true,
  • "data": [
    ]
}

PoliciesCartController_remove

Authorizations:
bearer
path Parameters
id
required
string

Responses

Response samples

Content type
application/json
{
  • "statusCode": 200,
  • "success": true,
  • "data": [
    ]
}

PoliciesCartController_clearCart

Authorizations:
bearer

Responses

Response samples

Content type
application/json
{
  • "statusCode": 200,
  • "success": true,
  • "data": [
    ]
}

Account

ClientAccountController_accountInfo

Authorizations:
bearer

Responses

Response samples

Content type
application/json
{
  • "statusCode": 200,
  • "success": true,
  • "data": [
    ]
}

ClientAccountController_update

Authorizations:
bearer
Request Body schema:
One of
email
string

Email of the client

country
required
string

Country of the client

city
string

The name of the city where the client (individual/company) is located

region
string

Region/State name

digitalAddress
string

Digital address (Ghana Post GPS address) of the client

password
string >= 5 characters

Account password

industry
string

Industry of the client

address
string

Address of the client

notes
string

Additional notes about the client

type
required
string
Enum: "CORPORATE" "INDIVIDUAL"

The type of client

groups
required
Array of strings
Default: []

List of groups the client belongs to

profileImage
object <binary>

Profile picture

firstName
string

Client first name. Required if client is INDIVIDUAL

lastName
string

Client last name. Required if client is INDIVIDUAL

otherNames
string

Middle or other names (if any)

title
string
gender
string
Enum: "MALE" "FEMALE" "OTHER"
dateOfBirth
string
object (ClientIdentificationCardDto)
taxpayerIdentificationNumber
string
phoneNumber
string [ 10 .. 15 ] characters
isActive
boolean

Responses

Request samples

Content type
No sample

Response samples

Content type
application/json
{
  • "statusCode": 200,
  • "success": true,
  • "data": [
    ]
}

ClientAccountController_deleteAccount

Authorizations:
bearer
Request Body schema: application/json
password
required
string

Account password of the client

passwordConfirm
required
string

Confirm account password of the user. Value must match password

Responses

Request samples

Content type
application/json
{
  • "password": "new-password",
  • "passwordConfirm": "my-password"
}

Response samples

Content type
application/json
{
  • "statusCode": 200,
  • "success": true,
  • "data": [
    ]
}

Request Verification Code

Sends a verification code to the client's email/phone number

Authorizations:
bearer
Request Body schema: application/json
type
required
object
Enum: "email" "phone"

The type of verification, either email or phone. Verification code will be sent to the user's email or phone number.

Responses

Request samples

Content type
application/json
{
  • "type": "email"
}

Response samples

Content type
application/json
{ }

Verify Account

Verifies client's account using the verification code sent to the client's email/phone number.
Use /account/send-verification-code to request a verification code.

Authorizations:
bearer
Request Body schema: application/json
verificationCode
string

The code sent to the user's email/phone, Use /account/send-verification-code to request a new code.

Responses

Request samples

Content type
application/json
{
  • "verificationCode": 114586
}

Response samples

Content type
application/json
{ }

Change Phone Number

Verifies client's account using the verification code sent to the client's phone number

Authorizations:
bearer
Request Body schema: application/json
oldPhoneNumber
string

The current phone number of the user

newPhoneNumber
required
string

The new phone number of the user

Responses

Request samples

Content type
application/json
{
  • "oldPhoneNumber": "+880345643234",
  • "newPhoneNumber": "+2330245643234"
}

Change Email

Verifies client's account using the verification code sent to the client's email

Authorizations:
bearer
Request Body schema: application/json
oldEmail
string

The current email of the user

newEmail
required
string

The new email of the user

Responses

Request samples

Content type
application/json
{
  • "oldEmail": "oldemail@example.com",
  • "newEmail": "newemail@example.com"
}

ClientAccountController_miniStatement

Authorizations:
bearer

Responses

Response samples

Content type
application/json
{ }

ClientAccountController_allNotifications

Authorizations:
bearer

Responses

Response samples

Content type
application/json
{
  • "statusCode": 200,
  • "success": true,
  • "data": [
    ]
}

ClientAccountController_findNotificationById

Authorizations:
bearer
path Parameters
notificationId
required
string

Responses

Response samples

Content type
application/json
{
  • "statusCode": 200,
  • "success": true,
  • "data": [
    ]
}

ClientAccountController_updateNotificationStatus

Authorizations:
bearer
path Parameters
notificationId
required
string
Request Body schema: application/json
status
required
string
Enum: "read" "unread"

The status of the notification. This can be either 'read' or 'unread'.

readAt
string <date-time>

The date & time at which the notification was read in ISO3601 format. Required if the status is read

Responses

Request samples

Content type
application/json
{
  • "status": "unread",
  • "readAt": "2020-01-01T00:00:00.000Z"
}

Response samples

Content type
application/json
{
  • "statusCode": 200,
  • "success": true,
  • "data": [
    ]
}

ClientAccountController_deleteNotification

Authorizations:
bearer
path Parameters
notificationId
required
string

Responses

Response samples

Content type
application/json
{
  • "statusCode": 200,
  • "success": true,
  • "data": [
    ]
}

Invoices

ClientInvoicesController_findAll

Authorizations:
bearer
query Parameters
limit
number
Default: 100
Example: limit=50

Number of items to return per page

page
number
Default: 1
Example: page=1

Page number

policy
string
Example: policy=622afd13c94e5c2edfaa4674

Filter invoices by policy's id

format
string
Value: "excel"
Example: format=excel

The file format to use for export.

usePagination
required
boolean
Default: true

If true, only current paginated results will be exported. To export all records, without pagination, set value to false. NOTE: This option does not affect summary reports

Responses

Response samples

Content type
application/json
{
  • "statusCode": 200,
  • "success": true,
  • "data": [
    ],
  • "paginator": {
    }
}

Claims

ClaimsController_findAll

Authorizations:
bearer
query Parameters
limit
number
Default: 100
Example: limit=50

Number of items to return per page

page
number
Default: 1
Example: page=1

Page number

include
Array of strings
Items Value: "documents"
Example: include=documents

Extra relations to populate

clientId
string
Example: clientId=626a9b13925a10db2b597420

Filter claims by client id

Responses

Response samples

Content type
application/json
{
  • "statusCode": 200,
  • "success": true,
  • "data": [
    ],
  • "paginator": {
    }
}

ClaimsController_create

Authorizations:
bearer
Request Body schema: application/json
One of
policyId
required
string

Id of policy to be claimed

dateOfLoss
required
string

Date at which loss happened

dateOfNotification
string

Date at which insurer/broker was notified. Current date will be used if not provided

incidentLocation
required
string

location were incident happened

description
string

Any additional description of the losses and what happened.

lossCategory
required
string
Enum: "MEDICALS" "CANCELLATION" "DELAY" "LOSS_OF_BAGGAGE"

Loss item category

estimatedLossAmount
required
number >= 0

Amount estimated to have lost after incident

assets
required
Array of strings
Default: []

List of assets ids on which the claim will be made

PropertyDamage (object) or VehicleDamage (object) or InjuryOrDeath (object)

List of third party losses.
NOTE: Any or all of the following types can be provided as an array.

currency
string

Claim currency code. Refer to /currencies for available currencies. If not provided, policy currency will be used

exchangeRate
number >= 0
Default: 1

Currency exchange rate

Responses

Request samples

Content type
application/json
Example
{
  • "policyId": "098rjp32oepoip0oiekj39839u3",
  • "dateOfLoss": "12-12-12",
  • "dateOfNotification": "2020-12-12",
  • "incidentLocation": "Accra central, Accra",
  • "description": "A boy crossed the road carelessly, I tried to avoid him then my car crashed into a nearby barricade",
  • "lossCategory": "MEDICALS",
  • "estimatedLossAmount": 220000,
  • "assets": [
    ],
  • "thirdPartyLoss": {
    },
  • "currency": "GHS",
  • "exchangeRate": 0.1
}

Response samples

Content type
application/json
{
  • "statusCode": 200,
  • "success": true,
  • "data": [
    ]
}

ClaimsController_findOne

Authorizations:
bearer
path Parameters
id
required
string

Responses

Response samples

Content type
application/json
{
  • "statusCode": 200,
  • "success": true,
  • "data": [
    ]
}

ClaimsController_remove

Authorizations:
bearer
path Parameters
id
required
string

Responses

Response samples

Content type
application/json
{
  • "statusCode": 200,
  • "success": true,
  • "data": [
    ]
}

DirectDebitController_create

Request Body schema: application/json
policyId
required
string

Id of policy

startDate
required
string

Date at which the direct debit should start

endDate
string

Date at which the direct debit should stop

amount
number >= 0

Amount to be debited. If not provided, policy premium will be used

frequency
required
string
Enum: "MONTHLY" "QUARTERLY" "HALF_YEARLY" "YEARLY" "DAILY" "WEEKLY"

The frequency at which the client's account should be debited

description
string

Additional notes about the direct debit

Responses

Request samples

Content type
application/json
{
  • "policyId": "098rjp32oepoip0oiekj39839u3",
  • "startDate": "2020-01-01",
  • "endDate": "2020-12-12",
  • "amount": 4000,
  • "frequency": "WEEKLY",
  • "description": "This is a direct debit on policy #IJ-12345"
}

Response samples

Content type
application/json
{
  • "statusCode": 200,
  • "success": true,
  • "data": [
    ]
}

DirectDebitController_findAll

query Parameters
limit
number
Default: 100
Example: limit=50

Number of items to return per page

page
number
Default: 1
Example: page=1

Page number

policyId
string
Example: policyId=098rjp32oepoip0oiekj39839u3

Filter debits by policy id

Responses

Response samples

Content type
application/json
{
  • "statusCode": 200,
  • "success": true,
  • "data": [
    ]
}

DirectDebitController_findOne

path Parameters
id
required
string

Responses

Response samples

Content type
application/json
{
  • "statusCode": 200,
  • "success": true,
  • "data": [
    ]
}

DirectDebitController_cancel

path Parameters
id
required
string
Request Body schema: application/json
reason
string >= 5 characters

Reason for cancellation

Responses

Request samples

Content type
application/json
{
  • "reason": "Am no longer interested in the policy. I want to cancel it"
}

Response samples

Content type
application/json
{
  • "statusCode": 200,
  • "success": true,
  • "data": [
    ]
}

Policy Closures

PoliciesClosureController_create

Authorizations:
bearer
Request Body schema: application/json
One of
policyNo
string

Optional policy number

coverageType
string

Optional coverage type for the policy. It is automatically derived from product information (if any)

generateInvoice
boolean
Default: true

Whether the system should auto generate a debit after creating the policy

currency
required
string

Policy currency code. Refer to /currencies for available currencies.

startDate
required
string

Policy start date in iso8601 format

endDate
required
string

Policy end date in iso8601 format

productId
required
string

Product id of the policy

oldPolicyId
string

The id of the old policy, if any.
This is used only if business type of the policy is RENEWAL

clientId
string

Client Id. Optional if policy is created by a client

originatingStaffId
string

The staff who sold the policy to the client. If null, currently logged in staff will be used.
Optional if the policy is created from a client application

notes
string

Additional notes about the policy

premium
required
number >= 1

Policy premium

exchangeRate
number >= 0
Default: 1

Currency exchange rate

businessType
required
string
Enum: "NEW_BUSINESS" "CROSS_SELLING" "RENEWAL" "EXTENSION"

Policy business type

businessCategory
string
Default: "LOCAL"
Enum: "LOCAL" "GLOBAL"

Business category of the policy. Default is LOCAL

coverType
string

Provided coverType if the policy uses one coverType for all assets.
If some assets have different coverTypes, then it must be provided in the assets property

policyType
string
Enum: "AUTO" "BANKERS_INDEMNITY" "BLANKET_BOND" "BONDS" "BOILER_OR_PRESSURE_VESSEL" "BURGLARY" "BUSINESS_INTERRUPTION" "MONEY" "DIRECTORS_OFFICERS_LIABILITY" "ELECTRONIC_EQUIPMENT" "EMPLOYERS_LIABILITY" "ERECTION_ALL_RISKS" "CONTRACTORS_ALL_RISKS" "FIDELITY_GUARANTEE" "GENERAL_LIABILITY" "GOODS_IN_TRANSIT" "GROUP_PERSONAL_ACCIDENT" "HOME" "MARINE" "PERSONAL_ACCIDENT" "PLANT_ALL_RISKS" "PLANT_AND_MACHINERY" "PROFESSIONAL_INDEMNITY" "PROPERTY_DAMAGE" "PUBLIC_LIABILITY" "TRAVEL" "AVIATION" "WORKMENS_COMPENSATION" "FIRE_AND_ALLIED_PERILS" "ASSETS_ALL_RISKS" "AGRICULTURAL" "STOCK_DETERIORATION" "MOTOR_TRADERS" "LIFE" "GROUP_LIFE_PERSONAL_ACCIDENT" "GROUP_LIFE" "GROUP_FUNERAL" "HEALTH" "PENSION"

Type of policy

object

Additional information about the policy

groupId
string

Id of the group which the policy belongs to

required
Array of objects (HomeAssetDto)

Home policy assets details

Responses

Request samples

Content type
application/json
Example
{
  • "policyNo": "POL-0012",
  • "coverageType": "MOTOR_COMPREHENSIVE",
  • "generateInvoice": true,
  • "currency": "GHS",
  • "startDate": "2020-01-01T00:00:00.000Z",
  • "endDate": "2020-12-01T00:00:00.000Z",
  • "productId": "619c0911b46b424f5f3e470f",
  • "oldPolicyId": "619c0911b46b424f5f3e470f",
  • "clientId": "619c0911b46b424f5f3e470f",
  • "originatingStaffId": "619c0911b46b424f5f3e470f",
  • "notes": "This is an auto insurance policy. It covers a car.",
  • "premium": 5000,
  • "exchangeRate": 1,
  • "businessType": "NEW_BUSINESS",
  • "businessCategory": "LOCAL",
  • "coverType": "COMPREHENSIVE",
  • "policyType": "AUTO",
  • "additionalInformation": {
    },
  • "groupId": "63403b8a088f7a3cd5f8e717",
  • "assets": [
    ]
}

Response samples

Content type
application/json
Example
{
  • "policyNo": "POL-0012",
  • "coverageType": "MOTOR_COMPREHENSIVE",
  • "generateInvoice": true,
  • "currency": "GHS",
  • "startDate": "2020-01-01T00:00:00.000Z",
  • "endDate": "2020-12-01T00:00:00.000Z",
  • "oldPolicyId": "619c0911b46b424f5f3e470f",
  • "originatingStaffId": "619c0911b46b424f5f3e470f",
  • "notes": "This is an auto insurance policy. It covers a car.",
  • "premium": 5000,
  • "exchangeRate": 1,
  • "businessType": "NEW_BUSINESS",
  • "businessCategory": "LOCAL",
  • "coverType": "COMPREHENSIVE",
  • "policyType": "AUTO",
  • "additionalInformation": {
    },
  • "groupId": "63403b8a088f7a3cd5f8e717",
  • "description": "This is an auto insurance policy. It covers a car.",
  • "client": {
    },
  • "product": {
    },
  • "createdBy": {
    },
  • "originatingStaff": {
    },
  • "assets": [
    ]
}

PoliciesClosureController_findAll

Authorizations:
bearer
query Parameters
status
string
Enum: "APPROVED" "PENDING_REVIEW" "REJECTED"
Example: status=I have sold my car.

Status of Policy closure

policyId
string
Example: policyId=6320460850afe7a37d2db981

Find using policy ID

policyNo
string
Example: policyNo=NY3I830A

find using policy Number

id
string
Example: id=6320460850afe7a37d2db981

search using closure ID

Request Body schema: application/json
One of
policyNo
string

Optional policy number

coverageType
string

Optional coverage type for the policy. It is automatically derived from product information (if any)

generateInvoice
boolean
Default: true

Whether the system should auto generate a debit after creating the policy

currency
required
string

Policy currency code. Refer to /currencies for available currencies.

startDate
required
string

Policy start date in iso8601 format

endDate
required
string

Policy end date in iso8601 format

productId
required
string

Product id of the policy

oldPolicyId
string

The id of the old policy, if any.
This is used only if business type of the policy is RENEWAL

clientId
string

Client Id. Optional if policy is created by a client

originatingStaffId
string

The staff who sold the policy to the client. If null, currently logged in staff will be used.
Optional if the policy is created from a client application

notes
string

Additional notes about the policy

premium
required
number >= 1

Policy premium

exchangeRate
number >= 0
Default: 1

Currency exchange rate

businessType
required
string
Enum: "NEW_BUSINESS" "CROSS_SELLING" "RENEWAL" "EXTENSION"

Policy business type

businessCategory
string
Default: "LOCAL"
Enum: "LOCAL" "GLOBAL"

Business category of the policy. Default is LOCAL

coverType
string

Provided coverType if the policy uses one coverType for all assets.
If some assets have different coverTypes, then it must be provided in the assets property

policyType
string
Enum: "AUTO" "BANKERS_INDEMNITY" "BLANKET_BOND" "BONDS" "BOILER_OR_PRESSURE_VESSEL" "BURGLARY" "BUSINESS_INTERRUPTION" "MONEY" "DIRECTORS_OFFICERS_LIABILITY" "ELECTRONIC_EQUIPMENT" "EMPLOYERS_LIABILITY" "ERECTION_ALL_RISKS" "CONTRACTORS_ALL_RISKS" "FIDELITY_GUARANTEE" "GENERAL_LIABILITY" "GOODS_IN_TRANSIT" "GROUP_PERSONAL_ACCIDENT" "HOME" "MARINE" "PERSONAL_ACCIDENT" "PLANT_ALL_RISKS" "PLANT_AND_MACHINERY" "PROFESSIONAL_INDEMNITY" "PROPERTY_DAMAGE" "PUBLIC_LIABILITY" "TRAVEL" "AVIATION" "WORKMENS_COMPENSATION" "FIRE_AND_ALLIED_PERILS" "ASSETS_ALL_RISKS" "AGRICULTURAL" "STOCK_DETERIORATION" "MOTOR_TRADERS" "LIFE" "GROUP_LIFE_PERSONAL_ACCIDENT" "GROUP_LIFE" "GROUP_FUNERAL" "HEALTH" "PENSION"

Type of policy

object

Additional information about the policy

groupId
string

Id of the group which the policy belongs to

required
Array of objects (HomeAssetDto)

Home policy assets details

Responses

Request samples

Content type
application/json
Example
{
  • "policyNo": "POL-0012",
  • "coverageType": "MOTOR_COMPREHENSIVE",
  • "generateInvoice": true,
  • "currency": "GHS",
  • "startDate": "2020-01-01T00:00:00.000Z",
  • "endDate": "2020-12-01T00:00:00.000Z",
  • "productId": "619c0911b46b424f5f3e470f",
  • "oldPolicyId": "619c0911b46b424f5f3e470f",
  • "clientId": "619c0911b46b424f5f3e470f",
  • "originatingStaffId": "619c0911b46b424f5f3e470f",
  • "notes": "This is an auto insurance policy. It covers a car.",
  • "premium": 5000,
  • "exchangeRate": 1,
  • "businessType": "NEW_BUSINESS",
  • "businessCategory": "LOCAL",
  • "coverType": "COMPREHENSIVE",
  • "policyType": "AUTO",
  • "additionalInformation": {
    },
  • "groupId": "63403b8a088f7a3cd5f8e717",
  • "assets": [
    ]
}

Response samples

Content type
application/json
Example
{
  • "policyNo": "POL-0012",
  • "coverageType": "MOTOR_COMPREHENSIVE",
  • "generateInvoice": true,
  • "currency": "GHS",
  • "startDate": "2020-01-01T00:00:00.000Z",
  • "endDate": "2020-12-01T00:00:00.000Z",
  • "oldPolicyId": "619c0911b46b424f5f3e470f",
  • "originatingStaffId": "619c0911b46b424f5f3e470f",
  • "notes": "This is an auto insurance policy. It covers a car.",
  • "premium": 5000,
  • "exchangeRate": 1,
  • "businessType": "NEW_BUSINESS",
  • "businessCategory": "LOCAL",
  • "coverType": "COMPREHENSIVE",
  • "policyType": "AUTO",
  • "additionalInformation": {
    },
  • "groupId": "63403b8a088f7a3cd5f8e717",
  • "description": "This is an auto insurance policy. It covers a car.",
  • "client": {
    },
  • "product": {
    },
  • "createdBy": {
    },
  • "originatingStaff": {
    },
  • "assets": [
    ]
}

PoliciesClosureController_find

Authorizations:
bearer
path Parameters
id
required
string
Request Body schema: application/json
One of
policyNo
string

Optional policy number

coverageType
string

Optional coverage type for the policy. It is automatically derived from product information (if any)

generateInvoice
boolean
Default: true

Whether the system should auto generate a debit after creating the policy

currency
required
string

Policy currency code. Refer to /currencies for available currencies.

startDate
required
string

Policy start date in iso8601 format

endDate
required
string

Policy end date in iso8601 format

productId
required
string

Product id of the policy

oldPolicyId
string

The id of the old policy, if any.
This is used only if business type of the policy is RENEWAL

clientId
string

Client Id. Optional if policy is created by a client

originatingStaffId
string

The staff who sold the policy to the client. If null, currently logged in staff will be used.
Optional if the policy is created from a client application

notes
string

Additional notes about the policy

premium
required
number >= 1

Policy premium

exchangeRate
number >= 0
Default: 1

Currency exchange rate

businessType
required
string
Enum: "NEW_BUSINESS" "CROSS_SELLING" "RENEWAL" "EXTENSION"

Policy business type

businessCategory
string
Default: "LOCAL"
Enum: "LOCAL" "GLOBAL"

Business category of the policy. Default is LOCAL

coverType
string

Provided coverType if the policy uses one coverType for all assets.
If some assets have different coverTypes, then it must be provided in the assets property

policyType
string
Enum: "AUTO" "BANKERS_INDEMNITY" "BLANKET_BOND" "BONDS" "BOILER_OR_PRESSURE_VESSEL" "BURGLARY" "BUSINESS_INTERRUPTION" "MONEY" "DIRECTORS_OFFICERS_LIABILITY" "ELECTRONIC_EQUIPMENT" "EMPLOYERS_LIABILITY" "ERECTION_ALL_RISKS" "CONTRACTORS_ALL_RISKS" "FIDELITY_GUARANTEE" "GENERAL_LIABILITY" "GOODS_IN_TRANSIT" "GROUP_PERSONAL_ACCIDENT" "HOME" "MARINE" "PERSONAL_ACCIDENT" "PLANT_ALL_RISKS" "PLANT_AND_MACHINERY" "PROFESSIONAL_INDEMNITY" "PROPERTY_DAMAGE" "PUBLIC_LIABILITY" "TRAVEL" "AVIATION" "WORKMENS_COMPENSATION" "FIRE_AND_ALLIED_PERILS" "ASSETS_ALL_RISKS" "AGRICULTURAL" "STOCK_DETERIORATION" "MOTOR_TRADERS" "LIFE" "GROUP_LIFE_PERSONAL_ACCIDENT" "GROUP_LIFE" "GROUP_FUNERAL" "HEALTH" "PENSION"

Type of policy

object

Additional information about the policy

groupId
string

Id of the group which the policy belongs to

required
Array of objects (HomeAssetDto)

Home policy assets details

Responses

Request samples

Content type
application/json
Example
{
  • "policyNo": "POL-0012",
  • "coverageType": "MOTOR_COMPREHENSIVE",
  • "generateInvoice": true,
  • "currency": "GHS",
  • "startDate": "2020-01-01T00:00:00.000Z",
  • "endDate": "2020-12-01T00:00:00.000Z",
  • "productId": "619c0911b46b424f5f3e470f",
  • "oldPolicyId": "619c0911b46b424f5f3e470f",
  • "clientId": "619c0911b46b424f5f3e470f",
  • "originatingStaffId": "619c0911b46b424f5f3e470f",
  • "notes": "This is an auto insurance policy. It covers a car.",
  • "premium": 5000,
  • "exchangeRate": 1,
  • "businessType": "NEW_BUSINESS",
  • "businessCategory": "LOCAL",
  • "coverType": "COMPREHENSIVE",
  • "policyType": "AUTO",
  • "additionalInformation": {
    },
  • "groupId": "63403b8a088f7a3cd5f8e717",
  • "assets": [
    ]
}

Response samples

Content type
application/json
{ }

PoliciesClosureController_update

Authorizations:
bearer
path Parameters
id
required
string
Request Body schema: application/json
One of
policyNo
string

Optional policy number

coverageType
string

Optional coverage type for the policy. It is automatically derived from product information (if any)

generateInvoice
boolean
Default: true

Whether the system should auto generate a debit after creating the policy

currency
required
string

Policy currency code. Refer to /currencies for available currencies.

startDate
required
string

Policy start date in iso8601 format

endDate
required
string

Policy end date in iso8601 format

productId
required
string

Product id of the policy

oldPolicyId
string

The id of the old policy, if any.
This is used only if business type of the policy is RENEWAL

clientId
string

Client Id. Optional if policy is created by a client

originatingStaffId
string

The staff who sold the policy to the client. If null, currently logged in staff will be used.
Optional if the policy is created from a client application

notes
string

Additional notes about the policy

premium
required
number >= 1

Policy premium

exchangeRate
number >= 0
Default: 1

Currency exchange rate

businessType
required
string
Enum: "NEW_BUSINESS" "CROSS_SELLING" "RENEWAL" "EXTENSION"

Policy business type

businessCategory
string
Default: "LOCAL"
Enum: "LOCAL" "GLOBAL"

Business category of the policy. Default is LOCAL

coverType
string

Provided coverType if the policy uses one coverType for all assets.
If some assets have different coverTypes, then it must be provided in the assets property

policyType
string
Enum: "AUTO" "BANKERS_INDEMNITY" "BLANKET_BOND" "BONDS" "BOILER_OR_PRESSURE_VESSEL" "BURGLARY" "BUSINESS_INTERRUPTION" "MONEY" "DIRECTORS_OFFICERS_LIABILITY" "ELECTRONIC_EQUIPMENT" "EMPLOYERS_LIABILITY" "ERECTION_ALL_RISKS" "CONTRACTORS_ALL_RISKS" "FIDELITY_GUARANTEE" "GENERAL_LIABILITY" "GOODS_IN_TRANSIT" "GROUP_PERSONAL_ACCIDENT" "HOME" "MARINE" "PERSONAL_ACCIDENT" "PLANT_ALL_RISKS" "PLANT_AND_MACHINERY" "PROFESSIONAL_INDEMNITY" "PROPERTY_DAMAGE" "PUBLIC_LIABILITY" "TRAVEL" "AVIATION" "WORKMENS_COMPENSATION" "FIRE_AND_ALLIED_PERILS" "ASSETS_ALL_RISKS" "AGRICULTURAL" "STOCK_DETERIORATION" "MOTOR_TRADERS" "LIFE" "GROUP_LIFE_PERSONAL_ACCIDENT" "GROUP_LIFE" "GROUP_FUNERAL" "HEALTH" "PENSION"

Type of policy

object

Additional information about the policy

groupId
string

Id of the group which the policy belongs to

required
Array of objects (HomeAssetDto)

Home policy assets details

Responses

Request samples

Content type
application/json
Example
{
  • "policyNo": "POL-0012",
  • "coverageType": "MOTOR_COMPREHENSIVE",
  • "generateInvoice": true,
  • "currency": "GHS",
  • "startDate": "2020-01-01T00:00:00.000Z",
  • "endDate": "2020-12-01T00:00:00.000Z",
  • "productId": "619c0911b46b424f5f3e470f",
  • "oldPolicyId": "619c0911b46b424f5f3e470f",
  • "clientId": "619c0911b46b424f5f3e470f",
  • "originatingStaffId": "619c0911b46b424f5f3e470f",
  • "notes": "This is an auto insurance policy. It covers a car.",
  • "premium": 5000,
  • "exchangeRate": 1,
  • "businessType": "NEW_BUSINESS",
  • "businessCategory": "LOCAL",
  • "coverType": "COMPREHENSIVE",
  • "policyType": "AUTO",
  • "additionalInformation": {
    },
  • "groupId": "63403b8a088f7a3cd5f8e717",
  • "assets": [
    ]
}

Response samples

Content type
application/json
{ }

Delete Policy closure

Policy Closure can only be deleted if the status of the closure is PENDING_REVIEW

Authorizations:
bearer
path Parameters
id
required
string

Responses

External Integrations

ExternalServicesController_getInvoice

path Parameters
invoiceNoOrId
required
string
Examples:
  • 633712f62c80087e2eaba422 - Get details using invoice id
  • INV2022930-00796 - Get details using invoice number

The value of the invoice id or invoiceNo

Responses

Response samples

Content type
application/json
{
  • "statusCode": 200,
  • "success": true,
  • "data": [
    ]
}