Welcome
This documentation was last updated on Thu Mar 4 09:54:18 GMT 2021 and covers Mambu Version v9.86.1
Welcome to the Mambu API 1.0 documentation. Here you can learn everything you need to know about our API and how to interact with Mambu!
About Mambu API 1.0
Scroll down for operations, schemas, example requests and responses.
For more information about API 2.0 (beta) vs. API 1.0, please see: our User Guide.
Being RESTful
The Mambu API follows the Representational state transfer (REST) architectural style allowing resources (accounts, clients, etc) to be viewed, added and modified by a standard set of HTTP methods; GET, POST, PUT, PATCH and DELETE.
Verb | Function |
---|---|
GET | To retrieve a resource or a collection of resources |
POST | To create a resources |
PATCH | To modify an existing resources |
PUT | To replace an existing resource |
DELETE | To delete a resource |
Communication with Mambu follows the REST architecture constraints including being stateless & cacheable.
All responses are returned as JSON objects .
Base URL
Mambu tenants can exist either in a multi-tenanted environment with all tenants having access at their own sub-domain or within a dedicated environment.
To make a request to a tenant use the pattern https://{tenantId}.mambu.com/api/
.
The tenant id will generally be the same as the one used for accessing the Mambu user interferace and can also be retrieved by visiting MyMambu and opening the Dashboard tab, where you will also find the domain for your sandbox instance, if this has been activated. See here for more information on working with MyMambu.
Authentication
Mambu requires Basic Authentication for authorizing all API calls. A username and password or Authorization
header with base64 encoded username:password
(see this page for more information) is specified with each request and is verified on the server to prevent unauthorized access. To ensure the username and password cannot be intercepted, all requests must use HTTPS.
Pagination
To customize the response, the offset
and limit
parameters can be adjusted from their default values.
limit
The default limit for responses is 50. A value of up to 1,000 can be specified with limit
.
offset
offset
determines how many records will be skipped before being included in the returned results. The default offset value is 0.
Detail Level
Mambu API 1.0 supports two detail levels for responses:
BASIC -- By default, Mambu API will return the BASIC level of detail. This includes all first level elements of an object.
FULL -- This detail level includes everything from BASIC as well as all custom fields, any address or contact information, and any other related objects.
To view a higher level of detail, append ?fullDetails=true
to the end of the resource URI in your request.
Using the API
Requests
Also referred to as "calls", requests to the Mambu API identify who the requester is and exactly what information they wish to retrieve or which action they wish to perform.
To put together an API Request you will need to combine:
- The HTTP method or "verb"
- The full URI to the resource
- HTTP headers
- The JSON-formatted payload (if required)
Responses
Error Response
{
"errorCode":"4",
"errorSource":"Property scheduleSettings.repaymentInstallments may not be null",
"errorReason":"INVALID_PARAMETERS"
}
Single Resource - JSON object
{
"field": "value"
}
Collection of Resources - JSON array
[
{
"field": "value"
},
{
"field": "value"
}
]
The response to a request will always be in JSON format and will contain either:
- An error response consisting of:
Field | Type | Availability | Content |
---|---|---|---|
errorCode | number | Always present | A unique error code. For a full list, please see Mambu Response Codes. |
errorSource | string | Sometimes present | A human-readable message capturing unsatisfied constraints. |
errorReason | string | Always present | A human-readable message stating the general category of the failure. |
or
- A JSON representation of the requested resource(s).
Posting Data
API requests that post data can either use url-encoded query paramters or a json body to enter data. The content-type header must be set to application/json
for the json request.
The following examples show the two methods for posting data. Note that for some requests, much more information can be posted using the json input than is available with query parameters.
Using query parameters
curl -d "type=APPROVAL" https://user:pword@test.mambu.com/api/loans/4028329c3ad6c515013ad6d0f6e40006/transactions
Using JSON:
curl -H "Accept: application/json" -H "Content-type: application/json" -X POST -d '{ "type": "APPROVAL"} https://user:pword@test.mambu.com/api/loans/4028329c3ad6c515013ad6d0f6e40006/transactions`
Example
The following example makes a request using the username user
, the password pword
to the tenant demo
to retrieve all repayments for loan account abc
Request with authorization made ...
https://user:pword@demo.mambu.com/api/loans/abc/repayments
And returns a response such as:
[
{
"encodedKey": "402832b4380a2d8801380a9cac860010",
"parentAccountKey": "402832b4380a2d8801380a9cac41000f",
"dueDate": "2012-07-28T00:00:00+0200",
"principalDue": "190",
"principalPaid": "0",
"interestDue": "25.45",
"interestPaid": "0",
"state": "PENDING"
},
{
"encodedKey": "402832b4380a2d8801380a9cac870011",
"parentAccountKey": "402832b4380a2d8801380a9cac41000f",
"dueDate": "2012-08-28T00:00:00+0200",
"principalDue": "190",
"principalPaid": "0",
"interestDue": "26.29",
"interestPaid": "0",
"state": "PENDING"
}
]
Activities
Allows you to retrieve the activity feed items.
Get all Activities
GET /activities
Get activities
Allows retrieving a list of activities entries within a date range that can be fitered by entity key.
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
from | string | From (start) date to retreive activities from. | query | true |
to | string | To (end) date to retreive the activities from. | query | true |
clientID | string | The client key to filter activities on. | query | false |
groupID | string | The group key to filter activities on. | query | false |
centreID | string | The centre key to filter activities on. | query | false |
branchID | string | The branch key to filter activities on. | query | false |
loanProductID | string | The loan product key to filter activities on. | query | false |
savingsProductID | string | The savings product key to filter activities on. | query | false |
loanAccountID | string | The loan account key to filter activities on. | query | false |
savingsAccountID | string | The savings account key to filter activities on. | query | false |
userID | string | The user key to filter activities on. | query | false |
Example Responses
200 : OK
an array of activities
[
{
"activity": {
"encodedKey": "8a54e5b444441eba014445e18c640021",
"transactionID": 1656,
"timestamp": "2014-02-18T16:43:33+0000",
"type": "TASK_DELETED",
"branchKey": "8a33ae49441c4fe101441c713b36000e",
"userKey": "8a33ae49441c4fe101441c5fe42f0005",
"assignedUserKey": "8a33ae49441c4fe101441c5fe42f0005",
"notes": "Disburse your first loan",
"fieldChanges": []
},
"branchName": "Matola City",
"userName": "Max Power"
},
{
"activity": {
"encodedKey": "8a54e5b444441eba0144477140920028",
"transactionID": 1657,
"timestamp": "2014-02-19T00:00:08+0000",
"type": "LOAN_ACCOUNT_SET_TO_IN_ARREARS",
"clientKey": "8a33ae49441c4fe101441c7149e00102",
"loanProductKey": "8a33ae494420ac160144210c0be50152",
"loanAccountKey": "8a42711a4430587d0144307a352d0001",
"notes": "",
"fieldChanges": []
},
"clientName": "Kwemto Akobundu",
"loanProductName": "dynamic dbei horizontal",
"loanAccountName": "dynamic dbei horizontal"
},
{
"activity": {
"encodedKey": "8a54e5b44449337f014449337f130000",
"transactionID": 1661,
"timestamp": "2014-02-19T08:11:54+0000",
"type": "USER_LOGGED_IN",
"branchKey": "8a33ae49441c4fe101441c713b36000e",
"userKey": "8a33ae49441c4fe101441c5fe42f0005",
"assignedUserKey": "8a33ae49441c4fe101441c5fe42f0005",
"notes": "",
"fieldChanges": []
},
"branchName": "Matola City",
"userName": "Max Power"
},
{
"activity": {
"encodedKey": "8a54e5b44449337f0144498ce4430004",
"transactionID": 1665,
"timestamp": "2014-02-19T09:49:34+0000",
"type": "USER_LOGGED_IN",
"branchKey": "8a33ae49441c4fe101441c713b36000e",
"userKey": "8a33ae49441c4fe101441c5fe42f0005",
"assignedUserKey": "8a33ae49441c4fe101441c5fe42f0005",
"notes": "",
"fieldChanges": []
},
"branchName": "Matola City",
"userName": "Max Power"
},
{
"activity": {
"encodedKey": "8a54e5b44449337f014449a978650005",
"transactionID": 1666,
"timestamp": "2014-02-19T10:20:47+0000",
"type": "CLIENT_EDITED",
"clientKey": "8a33ae49441c4fe101441c71497200e3",
"userKey": "8a33ae49441c4fe101441c5fe42f0005",
"notes": "",
"fieldChanges": [
{
"id": 331,
"fieldChangeName": "NAME",
"originalValue": "Adaoha Samuel",
"newValue": "Adaoha z Samuel"
}
]
},
"clientName": "Adaoha z Samuel",
"userName": "Max Power"
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | Inline |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
anonymous | [activity] | [an activity is an action that has taken place, either initiated by a user or the mambu system] | false | none |
» activity | activity | an activity is an action that has taken place, either initiated by a user or the mambu system | false | none |
»» activity | object | an object containing details about the activity | false | none |
»»» activityChanges | [any] | none | false | none |
»»» assignedCentreKey | string | none | false | none |
»»» assignedUserKey | string | none | false | none |
»»» branchKey | string | none | false | none |
»»» centreKey | string | none | false | none |
»»» clientKey | string | none | false | none |
»»» encodedKey | string | a unique key for this activity | true | none |
»»» fieldChanges | [object] | an array of field changes detailing any fields which were updated or created by this activity | false | none |
»»»» fieldChangeName | string | The name of the field which changed, note that if the field is a custom field this field will indicate CUSTOM_FIELD_VALUE , in this case the name of the field will be given on the fieldDetailName key. | false | none |
»»»» fieldDetailKey | string | the encoded key of the custom field which changed | false | none |
»»»» fieldDetailName | string | the name of the custom field that changed | false | none |
»»»» id | integer | an ID for this change | false | none |
»»»» newValue | string | the new value of the field | false | none |
»»»» originalValue | string | the previous value of the field | false | none |
»»» glAccountKey | string | none | false | none |
»»» glAccountsClosureKey | string | none | false | none |
»»» groupKey | string | none | false | none |
»»» lineOfCreditKey | string | none | false | none |
»»» loanAccountKey | string | none | false | none |
»»» loanProductKey | string | none | false | none |
»»» notes | string | some notes about the activity | false | none |
»»» savingsAccountKey | string | none | false | none |
»»» savingsProductKey | string | none | false | none |
»»» taskKey | string | none | false | none |
»»» timestamp | string(timestamp) | the time at which the activity took place | true | none |
»»» transactionID | integer | an ID for this activity | false | none |
»»» type | activityType | The types of activity which are recorded by the system | true | none |
»»» userKey | string | none | false | none |
»» branchName | string | the name of the branch the activity concerns | false | none |
»» centreName | string | the name of the centre the activity concerns | false | none |
»» clientName | string | the name of the client the activity concerns | false | none |
»» groupName | string | the name of the group the activity concerns | false | none |
»» loanAccountName | string | the name of the loan account the activity concerns | false | none |
»» loanProductName | string | the name of the loan product the activity concerns | false | none |
»» savingsAccountName | string | the name of the savings account the activity concerns | false | none |
»» savingsProductName | string | the name of the savings product the activity concerns | false | none |
»» taskName | string | the name of the task the activity concerns | false | none |
»» userName | string | the name of the user the activity concerns | false | none |
Enumerated Values
Property | Value |
---|---|
type | BRANCH_CREATED |
type | BRANCH_COMMENT_ADDED |
type | BRANCH_COMMENT_EDITED |
type | BRANCH_COMMENT_DELETED |
type | BRANCH_EDITED |
type | BRANCH_DELETED |
type | CENTRE_CREATED |
type | CENTRE_COMMENT_ADDED |
type | CENTRE_COMMENT_EDITED |
type | CENTRE_COMMENT_DELETED |
type | CENTRE_EDITED |
type | CENTRE_DELETED |
type | CLIENT_CREATED |
type | CLIENT_COMMENT_ADDED |
type | CLIENT_COMMENT_EDITED |
type | CLIENT_COMMENT_DELETED |
type | CLIENT_EDITED |
type | CLIENT_DELETED |
type | CLIENT_BRANCH_ASSIGNMENT |
type | CLIENT_BRANCH_UNASSIGNMENT |
type | CLIENT_CENTRE_ASSIGNMENT |
type | CLIENT_CENTRE_UNASSIGNMENT |
type | CLIENT_CREDIT_OFFICER_ASSIGNMENT |
type | CLIENT_CREDIT_OFFICER_UNASSIGNMENT |
type | CLIENT_SET_TO_PENDING |
type | CLIENT_SET_TO_ACTIVE |
type | CLIENT_SET_TO_INACTIVE |
type | CLIENT_SET_TO_BLACKLISTED |
type | CLIENT_SET_TO_REJECTED |
type | CLIENT_SET_TO_EXITED |
type | DATA_IMPORTED |
type | DATA_IMPORT_APPROVED |
type | DATA_IMPORT_REVERTED |
type | DOCUMENT_CREATED |
type | DOCUMENT_EDITED |
type | DOCUMENT_DELETED |
type | PRODUCT_DOCUMENT_TEMPLATE_CREATED |
type | PRODUCT_DOCUMENT_TEMPLATE_DELETED |
type | PRODUCT_DOCUMENT_TEMPLATE_EDITED |
type | FEDERATED_AUTHENTICATION_SETTINGS_EDITED |
type | ENTITY_CREATED |
type | ENTITY_EDITED |
type | ENTITY_DELETED |
type | GLACCOUNT_CREATED |
type | GLACCOUNT_EDITED |
type | GLACCOUNT_DELETED |
type | GLACCOUNTSCLOSURE_EXECUTED |
type | GLACCOUNTSCLOSURE_UNDONE |
type | CLIENT_JOINED_GROUP |
type | CLIENT_LEFT_GROUP |
type | GROUP_CREATED |
type | GROUP_COMMENT_ADDED |
type | GROUP_COMMENT_EDITED |
type | GROUP_COMMENT_DELETED |
type | GROUP_EDITED |
type | GROUP_DELETED |
type | GROUP_BRANCH_ASSIGNMENT |
type | GROUP_BRANCH_UNASSIGNMENT |
type | GROUP_CENTRE_ASSIGNMENT |
type | GROUP_CENTRE_UNASSIGNMENT |
type | GROUP_CREDIT_OFFICER_ASSIGNMENT |
type | GROUP_CREDIT_OFFICER_UNASSIGNMENT |
type | GROUP_SMS_MESSAGE_SENT |
type | GROUP_EMAIL_MESSAGE_SENT |
type | HOLIDAY_SETTINGS_CHANGED |
type | LINE_OF_CREDIT_CREATED |
type | LINE_OF_CREDIT_EDITED |
type | LINE_OF_CREDIT_DELETED |
type | ACCOUNT_ADDED_TO_LINE_OF_CREDIT |
type | ACCOUNT_REMOVED_FROM_LINE_OF_CREDIT |
type | LINE_OF_CREDIT_CLOSED |
type | LINE_OF_CREDIT_REOPENED |
type | LINE_OF_CREDIT_APPROVED |
type | LINE_OF_CREDIT_SET_TO_PENDING_APPROVAL |
type | LINE_OF_CREDIT_WITHDRAW |
type | LINE_OF_CREDIT_REJECT |
type | LOAN_ACCOUNT_CREATED |
type | LOAN_ACCOUNT_COMMENT_ADDED |
type | LOAN_ACCOUNT_COMMENT_EDITED |
type | LOAN_ACCOUNT_COMMENT_DELETED |
type | LOAN_ACCOUNT_EDITED |
type | LOAN_ACCOUNT_SET_TO_PARTIAL |
type | LOAN_ACCOUNT_SET_TO_PENDING_APPROVAL |
type | LOAN_ACCOUNT_SET_TO_APPROVED |
type | LOAN_ACCOUNT_SET_TO_CLOSED_CANCELLED |
type | LOAN_ACCOUNT_SET_TO_CLOSED_REJECTED |
type | LOAN_ACCOUNT_SET_TO_CLOSED_REFINANCED |
type | LOAN_ACCOUNT_SET_TO_CLOSED_RESCHEDULED |
type | LOAN_ACCOUNT_SET_TO_CLOSED_WRITTEN_OFF |
type | LOAN_ACCOUNT_SET_TO_ACTIVE |
type | LOAN_ACCOUNT_DISBURSED |
type | TRANCHE_DISBURSED |
type | TRANCHE_REVERSED |
type | LOAN_ACCOUNT_SET_TO_IN_ARREARS |
type | LOAN_ACCOUNT_DELETED |
type | LOAN_GROUP_DELETED |
type | LINKED_LOAN_ACCOUNT |
type | UNLINKED_LOAN_ACCOUNT |
type | LOAN_ACCOUNT_PAYED_OFF |
type | LOAN_ACCOUNT_LOCKED |
type | LOAN_ACCOUNT_UNLOCKED |
type | LOAN_ACCOUNT_LOCKED_OPERATIONS_EDITED |
type | LOAN_ACCOUNT_LOCKED_CAPPING |
type | LOAN_ACCOUNT_BRANCH_ASSIGNMENT |
type | LOAN_ACCOUNT_BRANCH_UNASSIGNMENT |
type | LOAN_ACCOUNT_CENTRE_ASSIGNMENT |
type | LOAN_ACCOUNT_CENTRE_UNASSIGNMENT |
type | LOAN_ACCOUNT_CREDIT_OFFICER_ASSIGNMENT |
type | LOAN_ACCOUNT_CREDIT_OFFICER_UNASSIGNMENT |
type | LOAN_ACCOUNT_SET_TO_CLOSED_OBLIGATIONS_MET |
type | LOAN_SCHEDULE_EDITED |
type | LOAN_PRODUCT_CREATED |
type | LOAN_PRODUCT_COMMENT_ADDED |
type | LOAN_PRODUCT_COMMENT_EDITED |
type | LOAN_PRODUCT_COMMENT_DELETED |
type | LOAN_PRODUCT_EDITED |
type | LOAN_PRODUCT_DEACTIVATED |
type | LOAN_PRODUCT_ACTIVATED |
type | LOAN_PRODUCT_DELETED |
type | ORGANIZATION_SETTINGS_CHANGED |
type | PORTAL_ACTIVATED |
type | PORTAL_DEACTIVATED |
type | PORTAL_EDITED |
type | SAVINGS_PRODUCT_CREATED |
type | SAVINGS_PRODUCT_COMMENT_ADDED |
type | SAVINGS_PRODUCT_COMMENT_EDITED |
type | SAVINGS_PRODUCT_COMMENT_DELETED |
type | SAVINGS_PRODUCT_EDITED |
type | SAVINGS_PRODUCT_ACTIVATED |
type | SAVINGS_PRODUCT_DEACTIVATED |
type | SAVINGS_PRODUCT_DELETED |
type | SAVING_ACCOUNT_CREATED |
type | SAVINGS_ACCOUNT_COMMENT_ADDED |
type | SAVINGS_ACCOUNT_COMMENT_EDITED |
type | SAVINGS_ACCOUNT_COMMENT_DELETED |
type | SAVING_ACCOUNT_EDITED |
type | SAVINGS_ACCOUNT_APPROVED |
type | SAVINGS_ACCOUNT_ACTIVATED |
type | SAVINGS_ACCOUNT_CLOSED_WITHDRAWN |
type | SAVINGS_ACCOUNT_CLOSED_REJECTED |
type | SAVINGS_ACCOUNT_CLOSED |
type | SAVINGS_ACCOUNT_MATURED |
type | SAVINGS_ACCOUNT_SET_TO_PENDING |
type | SAVINGS_ACCOUNT_MATURITY_SET |
type | SAVINGS_ACCOUNT_MATURITY_UNSET |
type | SAVINGS_ACCOUNT_SET_TO_ARREARS |
type | SAVINGS_ACCOUNT_WRITEN_OFF |
type | SAVINGS_ACCOUNT_SET_TO_LOCKED |
type | SAVINGS_ACCOUNT_DELETED |
type | SAVINGS_ACCOUNT_SET_TO_DORMANT |
type | SAVINGS_ACCOUNT_UNDO_DORMANT |
type | SMS_MESSAGE_SENT |
type | CLIENT_EMAIL_MESSAGE_SENT |
type | TASK_CREATED |
type | TASK_EDITED |
type | TASK_DELETED |
type | TASK_COMPLETED |
type | TASK_UNCOMPLETED |
type | LOAN_TRANSACTION_EDITED |
type | SAVINGS_TRANSACTION_EDITED |
type | USER_CREATED |
type | USER_EDITED |
type | USER_DELETED |
type | USER_COMMENT_ADDED |
type | USER_COMMENT_EDITED |
type | USER_COMMENT_DELETED |
type | USER_LOGGED_IN |
type | USER_BRANCH_ASSIGNMENT |
type | USER_BRANCH_UNASSIGNMENT |
type | USER_LOCKED |
Branches
Allows you to retrieve branches which are being used by an organization. For information about custom fields and custom fields sets in branches see Custom Fields API documentation.
Get all Branches
GET /branches
Get all branches
Allows retrieving branches via a paginated list or by using the branch id/key. While using the branch id/key the full details of the branch can be retreived(address, custom fields, holidays). The custom field values can be changed using patch or delete methods.
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
offset | integer | Start at index x, for example, if limit is set to 10 and offset is set to 10, you will essentially get page 2 of all records. | query | false |
limit | integer | Max number of records to return. | query | false |
fullDetails | boolean | Whether to load all the nested fields for the branch as well. | query | false |
Example Responses
200 : ok
an array of branches with full details
[
{
"encodedKey": "8a193c26722b51b701722d779e7122de",
"id": "demoBranchId",
"creationDate": "2020-05-19T15:05:23+0000",
"lastModifiedDate": "2020-09-07T10:44:32+0000",
"name": "Maputo Downtown",
"state": "ACTIVE",
"phoneNumber": "",
"emailAddress": "",
"notes": "Is located in the surroundings of the local market with a <i>lot of potential</i> to reach new clients.",
"branchHolidays": [
{
"encodedKey": "8a19df6972b787fc0172b8c473c00b9c",
"keyId": 12,
"name": "only maputo holiday day",
"dayOfMonth": 30,
"monthOfYear": 7,
"year": 2020,
"isAnnualyRecurring": true,
"creationDate": "2020-06-15T16:17:01+0000"
}
],
"customFieldValues": [
{
"encodedKey": "8a19cd6f74674df9017467f25aab02c6",
"parentKey": "8a193c26722b51b701722d779e7122de",
"customFieldKey": "8a19cd6f74674df9017467ef8e6802af",
"customField": {
"encodedKey": "8a19cd6f74674df9017467ef8e6802af",
"id": "cf_branch",
"creationDate": "2020-09-07T09:42:33+0000",
"lastModifiedDate": "2020-09-07T09:42:33+0000",
"name": "Example Custom Field",
"type": "BRANCH_INFO",
"dataType": "CHECKBOX",
"valueLength": "SHORT",
"isDefault": false,
"isRequired": false,
"description": "an example custom field of the checkbox type",
"customFieldSet": {
"encodedKey": "8a19cd6f74674df9017467ef8e6802ae",
"id": "_example_branch_custom_field_set",
"name": "example branch custom field set",
"notes": "example custom field set",
"createdDate": "2020-09-07T09:41:50+0000",
"lastModifiedDate": "2020-09-07T09:41:50+0000",
"indexInList": 2,
"type": "BRANCH_INFO",
"usage": "SINGLE"
},
"indexInList": 0,
"state": "NORMAL",
"customFieldSelectionOptions": [],
"viewRights": {
"encodedKey": "8a19cd6f74674df9017467ef8e6802b0",
"isAccessibleByAllUsers": false,
"roles": []
},
"editRights": {
"encodedKey": "8a19cd6f74674df9017467ef8e6802b1",
"isAccessibleByAllUsers": false,
"roles": []
},
"unique": false,
"values": [],
"amounts": {}
},
"value": "TRUE",
"indexInList": -1,
"customFieldID": "cf_branch",
"customFieldSetGroupIndex": -1
},
{
"encodedKey": "8a19cd6f74674df9017468019ac00310",
"parentKey": "8a193c26722b51b701722d779e7122de",
"customFieldKey": "8a19cd6f74674df9017467f25aab02c9",
"customField": {
"encodedKey": "8a19cd6f74674df9017467f25aab02c9",
"id": "cf_group_field_1",
"creationDate": "2020-09-07T09:58:33+0000",
"lastModifiedDate": "2020-09-07T09:58:33+0000",
"name": "cf group field 1",
"type": "BRANCH_INFO",
"dataType": "STRING",
"valueLength": "SHORT",
"isDefault": false,
"isRequired": false,
"description": "",
"customFieldSet": {
"encodedKey": "8a19cd6f74674df9017467f25aab02c8",
"id": "_branches_grouped_cf_set",
"name": "Custom Field Group for Branch",
"notes": "",
"createdDate": "2020-09-07T09:47:03+0000",
"lastModifiedDate": "2020-09-07T09:47:03+0000",
"indexInList": 3,
"type": "BRANCH_INFO",
"usage": "GROUPED"
},
"indexInList": 0,
"state": "NORMAL",
"customFieldSelectionOptions": [],
"viewRights": {
"encodedKey": "8a19cd6f74674df9017467f25aab02ca",
"isAccessibleByAllUsers": true,
"roles": []
},
"editRights": {
"encodedKey": "8a19cd6f74674df901746800bdb10307",
"isAccessibleByAllUsers": true,
"roles": []
},
"unique": false,
"values": [],
"amounts": {}
},
"value": "group field 1",
"indexInList": -1,
"customFieldID": "cf_group_field_1",
"customFieldSetGroupIndex": 0
},
{
"encodedKey": "8a19cd6f74674df90174681f214103cf",
"parentKey": "8a193c26722b51b701722d779e7122de",
"customFieldKey": "8a19cd6f74674df901746800bdb10308",
"customField": {
"encodedKey": "8a19cd6f74674df901746800bdb10308",
"id": "cf_group_field_2",
"creationDate": "2020-09-07T09:59:02+0000",
"lastModifiedDate": "2020-09-07T09:59:02+0000",
"name": "cf group field 2",
"type": "BRANCH_INFO",
"dataType": "NUMBER",
"valueLength": "SHORT",
"isDefault": false,
"isRequired": false,
"description": "",
"customFieldSet": {
"encodedKey": "8a19cd6f74674df9017467f25aab02c8",
"id": "_branches_grouped_cf_set",
"name": "Custom Field Group for Branch",
"notes": "",
"createdDate": "2020-09-07T09:47:03+0000",
"lastModifiedDate": "2020-09-07T09:47:03+0000",
"indexInList": 3,
"type": "BRANCH_INFO",
"usage": "GROUPED"
},
"indexInList": 1,
"state": "NORMAL",
"customFieldSelectionOptions": [],
"viewRights": {
"encodedKey": "8a19cd6f74674df901746800bdb10309",
"isAccessibleByAllUsers": true,
"roles": []
},
"editRights": {
"encodedKey": "8a19cd6f74674df901746800bdb1030a",
"isAccessibleByAllUsers": true,
"roles": []
},
"unique": false,
"values": [],
"amounts": {}
},
"value": "2",
"indexInList": -1,
"customFieldID": "cf_group_field_2",
"customFieldSetGroupIndex": 0
},
{
"encodedKey": "8a19cd6f74674df90174681f214103d1",
"parentKey": "8a193c26722b51b701722d779e7122de",
"customFieldKey": "8a19cd6f74674df901746800bdb10308",
"customField": {
"encodedKey": "8a19cd6f74674df901746800bdb10308",
"id": "cf_group_field_2",
"creationDate": "2020-09-07T09:59:02+0000",
"lastModifiedDate": "2020-09-07T09:59:02+0000",
"name": "cf group field 2",
"type": "BRANCH_INFO",
"dataType": "NUMBER",
"valueLength": "SHORT",
"isDefault": false,
"isRequired": false,
"description": "",
"customFieldSet": {
"encodedKey": "8a19cd6f74674df9017467f25aab02c8",
"id": "_branches_grouped_cf_set",
"name": "Custom Field Group for Branch",
"notes": "",
"createdDate": "2020-09-07T09:47:03+0000",
"lastModifiedDate": "2020-09-07T09:47:03+0000",
"indexInList": 3,
"type": "BRANCH_INFO",
"usage": "GROUPED"
},
"indexInList": 1,
"state": "NORMAL",
"customFieldSelectionOptions": [],
"viewRights": {
"encodedKey": "8a19cd6f74674df901746800bdb10309",
"isAccessibleByAllUsers": true,
"roles": []
},
"editRights": {
"encodedKey": "8a19cd6f74674df901746800bdb1030a",
"isAccessibleByAllUsers": true,
"roles": []
},
"unique": false,
"values": [],
"amounts": {}
},
"value": "500",
"indexInList": -1,
"customFieldID": "cf_group_field_2",
"customFieldSetGroupIndex": 1
}
]
},
{
"encodedKey": "8a193c26722b51b701722d779e7122df",
"id": "2",
"creationDate": "2020-05-19T15:05:23+0000",
"lastModifiedDate": "2020-10-08T09:21:51+0000",
"name": "Matola City",
"state": "ACTIVE",
"phoneNumber": "+7534987676",
"emailAddress": "matola@BofAlg.es",
"notes": "Is currently under construction to add an extra room that can be used for the meetings.<p></p>Have <b>six new computers</b> for their staff.",
"branchHolidays": [
{
"encodedKey": "8a19df6972b787fc0172b8c50bdb0ba1",
"keyId": 13,
"name": "joe matola only day",
"dayOfMonth": 26,
"monthOfYear": 8,
"year": 2020,
"isAnnualyRecurring": true,
"creationDate": "2020-06-15T16:17:19+0000"
}
],
"address": {
"encodedKey": "8a19aa09750726e001750782ef6f017d",
"parentKey": "8a193c26722b51b701722d779e7122df",
"line1": "1 Bank Street",
"line2": "Old Town",
"city": "Matola City",
"region": "Matola",
"postcode": "10775",
"country": "Bankistan",
"indexInList": -1
},
"customFieldValues": []
}
]
200 : ok
an array of branches with basic details
[
{
"encodedKey": "402832b43809601c01380963908b0009",
"id": "2",
"creationDate": "2012-06-20T12:15:16+0200",
"lastModifiedDate": "2012-06-20T12:15:16+0200",
"name": "Matola City"
},
{
"encodedKey": "402832b43809601c01380963907c0008",
"id": "demoBranchId",
"creationDate": "2012-06-20T12:15:16+0200",
"lastModifiedDate": "2012-06-20T12:15:16+0200",
"name": "Maputo Downtown"
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ok | Inline |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
anonymous | [BranchFullDetailsApiV1] | none | false | none |
» address | AddressApiV1 | none | false | none |
»» addressType | string | none | false | none |
»» city | string | none | true | none |
»» country | string | none | true | none |
»» encodedKey | string | none | true | none |
»» indexInList | number | none | true | none |
»» latitude | number | none | false | none |
»» line1 | string | none | true | none |
»» line2 | string | none | false | none |
»» longitude | number | none | false | none |
»» parentKey | string | none | true | none |
»» postcode | string | none | true | none |
»» region | string | none | true | none |
»» toBeDeleted | boolean | none | false | none |
» branchHolidays | [HolidayApiV1] | none | false | none |
»» creationDate | string | none | false | none |
»» dayOfMonth | number | none | false | none |
»» encodedKey | string | none | false | none |
»» isAnnualyRecurring | boolean | none | false | none |
»» keyId | number | none | false | none |
»» monthOfYear | number | none | false | none |
»» name | string | none | false | none |
»» year | number | none | false | none |
» creationDate | string | none | false | none |
» customFieldValues | [CustomFieldValueApiV1] | none | false | none |
»» amount | number | none | false | none |
»» customField | CustomFieldApiV1 | none | false | none |
»»» amounts | object | none | false | none |
»»»» additionalProperties | number | none | false | none |
»»» builtInCustomFieldId | string | none | false | none |
»»» creationDate | string | none | false | none |
»»» customFieldProductSettings | [CustomFieldLinkApiV1] | none | false | none |
»»»» customFieldEncodedKey | string | none | false | none |
»»»» encodedKey | string | none | false | none |
»»»» isDefault | boolean | none | false | none |
»»»» isRequired | boolean | none | false | none |
»»»» linkType | string | none | false | none |
»»»» productKey | string | none | false | none |
»»» customFieldSelectionOptions | [CustomFieldSelectionApiV1] | none | false | none |
»»»» constraint | CustomFilterConstraintApiV1 | none | false | none |
»»»»» customFieldKey | string | none | false | none |
»»»»» dataFieldType | string | none | false | none |
»»»»» dataFieldValue | string | none | false | none |
»»»»» dataItemType | string | none | false | none |
»»»»» dataType | string | none | false | none |
»»»»» encodedKey | string | none | false | none |
»»»»» filterElement | string | none | false | none |
»»»»» groupNumber | number | none | false | none |
»»»»» index | number | none | false | none |
»»»»» linkingOperator | string | none | false | none |
»»»»» secondValue | string | none | false | none |
»»»»» value | string | none | false | none |
»»»» encodedKey | string | none | false | none |
»»»» id | string | none | false | none |
»»»» score | number | none | false | none |
»»»» value | string | none | false | none |
»»» customFieldSet | CustomFieldSetApiV1 | none | false | none |
»»»» builtInType | string | none | false | none |
»»»» createdDate | string | none | false | none |
»»»» customFields | [CustomFieldApiV1] | none | false | none |
»»»» encodedKey | string | none | false | none |
»»»» id | string | none | false | none |
»»»» indexInList | number | none | false | none |
»»»» lastModifiedDate | string | none | false | none |
»»»» name | string | none | false | none |
»»»» notes | string | none | false | none |
»»»» type | string | none | false | none |
»»»» usage | string | none | false | none |
»»» dataType | string | none | false | none |
»»» description | string | none | false | none |
»»» editRights | UsageRightsApiV1 | none | false | none |
»»»» encodedKey | string | none | false | none |
»»»» isAccessibleByAllUsers | boolean | none | false | none |
»»»» roles | [string] | none | false | none |
»»» encodedKey | string | none | false | none |
»»» id | string | none | false | none |
»»» indexInList | number | none | false | none |
»»» isDefault | boolean | none | false | none |
»»» isRequired | boolean | none | false | none |
»»» lastModifiedDate | string | none | false | none |
»»» name | string | none | false | none |
»»» state | string | none | false | none |
»»» type | string | none | false | none |
»»» unique | boolean | none | false | none |
»»» validationPattern | string | none | false | none |
»»» valueLength | string | none | false | none |
»»» values | [string] | none | false | none |
»»» viewRights | UsageRightsApiV1 | none | false | none |
»» customFieldID | string | none | false | none |
»» customFieldKey | string | none | false | none |
»» customFieldSetGroupIndex | number | none | false | none |
»» encodedKey | string | none | false | none |
»» indexInList | number | none | false | none |
»» linkedEntityKeyValue | string | none | false | none |
»» parentKey | string | none | false | none |
»» selectionKey | string | none | false | none |
»» value | string | none | false | none |
» emailAddress | string | none | false | none |
» encodedKey | string | none | false | none |
» id | string | none | false | none |
» lastModifiedDate | string | none | false | none |
» name | string | none | false | none |
» notes | string | none | false | none |
» phoneNumber | string | none | false | none |
» state | string | none | false | none |
Enumerated Values
Property | Value |
---|---|
builtInCustomFieldId | MOBILE_PHONE |
builtInCustomFieldId | EMAIL_ADDRESS |
builtInCustomFieldId | GENDER |
builtInCustomFieldId | MIDDLE_NAME |
builtInCustomFieldId | HOME_PHONE |
builtInCustomFieldId | BIRTHDATE |
builtInCustomFieldId | LAST_NAME |
builtInCustomFieldId | FIRST_NAME |
linkType | CLIENT_ROLE |
linkType | CHANNEL |
linkType | PRODUCT |
dataFieldType | NATIVE |
dataFieldType | CUSTOM |
dataItemType | WRITTEN_OFF_LOANS |
dataItemType | LINE_OF_CREDIT |
dataItemType | INVESTOR_FUND |
dataItemType | TRANSACTION_DETAILS |
dataItemType | DOCUMENT_TEMPLATE |
dataItemType | PRODUCT |
dataItemType | MCC_EXPIRATION |
dataItemType | CENTRE |
dataItemType | REPAYMENT_COLLECTION |
dataItemType | TASK |
dataItemType | OUTSTANDING_PORTFOLIO_AMOUNTS |
dataItemType | REVENUE |
dataItemType | COMPOSED_TRANSACTIONS |
dataItemType | UNION_TRANSACTIONS |
dataItemType | PRINCIPAL_PAYMENT_SETTINGS |
dataItemType | LOANS |
dataItemType | DISBURSEMENT_DETAILS |
dataItemType | SAVINGS_TRANSACTION |
dataItemType | IDENTIFICATION_DOCUMENT |
dataItemType | LOAN_PRODUCT |
dataItemType | DISBURSED_LOANS |
dataItemType | LOAN_GROUP |
dataItemType | TRANSACTION_CHANNEL |
dataItemType | CUSTOM_PREDEFINED_FEE |
dataItemType | JOURNAL_ENTRY |
dataItemType | ATTACHMENT |
dataItemType | PREDEFINED_FEE |
dataItemType | TRANCHE |
dataItemType | TRANSACTION |
dataItemType | INDEX_RATE_SOURCE |
dataItemType | GROUP_ROLE |
dataItemType | LOAN_TRANSACTION |
dataItemType | CLIENT_ROLE |
dataItemType | GROUP |
dataItemType | NOTIFICATION_MESSAGE |
dataItemType | OUTSTANDING_PORTFOLIO_ACCOUNTS |
dataItemType | REPAYMENT |
dataItemType | LOAN_ACCOUNT_GUARANTY |
dataItemType | BRANCH |
dataItemType | CURRENCY |
dataItemType | CARD_TRANSACTION_REVERSAL |
dataItemType | INTEREST_PRODUCT_SETTINGS |
dataItemType | CREATED_ACCOUNTS |
dataItemType | USER |
dataItemType | SAVINGS_PRODUCT |
dataItemType | CLIENT |
dataItemType | PRODUCT_ARREARS_SETTINGS |
dataItemType | SAVINGS |
dataItemType | EXPENSE |
dataItemType | INDEX_RATE |
dataItemType | NOTIFICATION_TEMPLATE |
dataItemType | CUSTOM_FIELD_SELECTION |
dataItemType | ACTIVITY |
dataType | ENUM |
dataType | MONEY |
dataType | NUMBER |
dataType | DATE_UTC |
dataType | JAVA_BLOB |
dataType | OBJECT |
dataType | BOOLEAN |
dataType | DATE |
dataType | PERCENT |
dataType | BIG_DECIMAL |
dataType | STRING |
dataType | KEY |
dataType | LONG |
filterElement | STARTS_WITH_CASE_SENSITIVE |
filterElement | THIS_WEEK |
filterElement | EQUALS |
filterElement | STARTS_WITH |
filterElement | IN |
filterElement | TODAY |
filterElement | THIS_YEAR |
filterElement | BETWEEN |
filterElement | AFTER |
filterElement | LESS_THAN |
filterElement | DIFFERENT_THAN |
filterElement | THIS_MONTH |
filterElement | NOT_EMPTY |
filterElement | BEFORE |
filterElement | EQUALS_CASE_SENSITIVE |
filterElement | LAST_DAYS |
filterElement | MORE_THAN |
filterElement | EMPTY |
filterElement | ON |
linkingOperator | OR |
linkingOperator | AND |
builtInType | DETAILS |
builtInType | GENERAL |
type | USER_INFO |
type | ASSET_INFO |
type | CLIENT_INFO |
type | LINE_OF_CREDIT |
type | GROUP_INFO |
type | TRANSACTION_CHANNEL_INFO |
type | BRANCH_INFO |
type | SAVINGS_ACCOUNT_INFO |
type | LOAN_ACCOUNT_INFO |
type | GUARANTOR_INFO |
type | CENTRE_INFO |
usage | SINGLE |
usage | GROUPED |
dataType | GROUP_LINK |
dataType | DATE |
dataType | NUMBER |
dataType | CHECKBOX |
dataType | CLIENT_LINK |
dataType | STRING |
dataType | USER_LINK |
dataType | SELECTION |
state | DEACTIVATED |
state | NORMAL |
type | USER_INFO |
type | ASSET_INFO |
type | CLIENT_INFO |
type | LINE_OF_CREDIT |
type | GROUP_INFO |
type | TRANSACTION_CHANNEL_INFO |
type | BRANCH_INFO |
type | SAVINGS_ACCOUNT_INFO |
type | LOAN_ACCOUNT_INFO |
type | GUARANTOR_INFO |
type | CENTRE_INFO |
valueLength | SHORT |
valueLength | LONG |
state | ACTIVE |
state | INACTIVE |
Get Branch by ID
GET /branches/{branchId}
Get a branch by ID
Get a specifc branch by its encoded key or ID.
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
branchId | string | none | path | true |
fullDetails | boolean | none | query | false |
Example Responses
200 : ok
Full Details for a single branch
{
"encodedKey": "8a33ae49441c4fe101441c713b36000e",
"id": "2",
"creationDate": "2014-02-10T15:36:26+0000",
"lastModifiedDate": "2014-02-17T11:18:42+0000",
"name": "Matola City",
"phoneNumber": "",
"emailAddress": "",
"branchHolidays": [
{
"encodedKey": "8a54e5b4443e9c9401443fae924b0008",
"keyId": 31,
"name": "branch_holiday",
"dayOfMonth": 17,
"monthOfYear": 2,
"year": 2014,
"isAnnualyRecurring": true
}
],
"address": {
"encodedKey": "8a19aa09750726e001750782ef6f017d",
"parentKey": "8a193c26722b51b701722d779e7122df",
"line1": "1 Bank Street",
"line2": "Old Town",
"city": "Matola City",
"region": "Matola",
"postcode": "10775",
"country": "Bankistan",
"indexInList": -1
},
"customFieldValues": [
{
"encodedKey": "8a42711a4428c1f101442be406d20c24",
"parentKey": "8a33ae49441c4fe101441c713b36000e",
"customFieldKey": "8a33ae49441c4fe101441c7156c20358",
"customField": {
"encodedKey": "8a33ae49441c4fe101441c7156c20358",
"id": "Clients_Branches",
"name": "Clients",
"type": "BRANCH_INFO",
"dataType": "STRING",
"valueLength": "SHORT",
"isDefault": false,
"isRequired": false,
"customFieldSet": {
"encodedKey": "8a33ae49441c4fe101441c71568f034c",
"name": "Branch Organization",
"createdDate": "2014-02-10T15:36:33+0000",
"indexInList": 0,
"type": "BRANCH_INFO"
},
"indexInList": -1,
"state": "NORMAL"
},
"value": "dadsds",
"indexInList": -1
},
{
"encodedKey": "8a54e5b4443e9c9401443f91c7a20003",
"parentKey": "8a33ae49441c4fe101441c713b36000e",
"customFieldKey": "8a33ae49441c4fe101441c7156c5035a",
"customField": {
"encodedKey": "8a33ae49441c4fe101441c7156c5035a",
"id": "Organization_Staff_Branches",
"name": "Organization Staff",
"type": "BRANCH_INFO",
"dataType": "NUMBER",
"valueLength": "SHORT",
"isDefault": false,
"isRequired": false,
"customFieldSet": {
"encodedKey": "8a33ae49441c4fe101441c71568f034c",
"name": "Branch Organization",
"createdDate": "2014-02-10T15:36:33+0000",
"indexInList": 0,
"type": "BRANCH_INFO"
},
"indexInList": -1,
"state": "NORMAL"
},
"value": "4",
"indexInList": -1
},
{
"encodedKey": "8a54e5b4443e9c9401443f91c7b90004",
"parentKey": "8a33ae49441c4fe101441c713b36000e",
"customFieldKey": "8a33ae49441c4fe101441c7156c30359",
"customField": {
"encodedKey": "8a33ae49441c4fe101441c7156c30359",
"id": "Province_Branches",
"name": "Province",
"type": "BRANCH_INFO",
"dataType": "SELECTION",
"valueLength": "SHORT",
"isDefault": false,
"isRequired": false,
"values": [
"Catamarca",
"Chaco",
"Jujuy"
],
"amounts": {
"Jujuy": "10",
"Chaco": "1",
"Catamarca": "0"
},
"customFieldSet": {
"encodedKey": "8a33ae49441c4fe101441c71569a034d",
"name": "Province",
"createdDate": "2014-02-10T15:36:33+0000",
"indexInList": 1,
"type": "BRANCH_INFO"
},
"indexInList": -1,
"state": "NORMAL"
},
"value": "Catamarca",
"amount": "0",
"indexInList": -1
},
{
"encodedKey": "8a54e5b4443e9c9401443f91c7b90005",
"parentKey": "8a33ae49441c4fe101441c713b36000e",
"customFieldKey": "8a33ae49441c4fe101441c7156c7035b",
"customField": {
"encodedKey": "8a33ae49441c4fe101441c7156c7035b",
"id": "Outside_of_province_Branches",
"name": "Outside of province",
"type": "BRANCH_INFO",
"dataType": "CHECKBOX",
"valueLength": "SHORT",
"isDefault": false,
"isRequired": false,
"customFieldSet": {
"encodedKey": "8a33ae49441c4fe101441c71569a034d",
"name": "Province",
"createdDate": "2014-02-10T15:36:33+0000",
"indexInList": 1,
"type": "BRANCH_INFO"
},
"indexInList": -1,
"state": "NORMAL"
},
"value": "FALSE",
"indexInList": -1
}
]
}
200 : ok
A single branch
{
"encodedKey": "402832b43809601c01380963908b0009",
"id": "2",
"creationDate": "2012-06-20T12:15:16+0200",
"lastModifiedDate": "2012-06-20T12:15:16+0200",
"name": "Matola City"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ok | BranchFullDetailsApiV1 |
Update Custom Info for Branch
PATCH /branches/{branchId}/custominformation
Update custom field values
Example Requests
Update a single custom field
{
"customInformation": [
{
"customFieldID": "custom_field_2",
"value": "3"
}
]
}
Update field in a group
{
"customInformation": [
{
"customFieldID": "cf_grouped_field",
"value": "new value",
"customFieldSetGroupIndex": "0"
}
]
}
Update multiple custom fields
{
"customInformation": [
{
"customFieldID": "cf_grouped_field_2",
"value": "3",
"customFieldSetGroupIndex": "0"
},
{
"customFieldID": "field_3",
"value": "divorced"
}
]
}
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
customInformation | [object] | none | body | false |
» customFieldID | string | none | body | true |
» value | string | none | body | true |
» customFieldSetGroupIndex | string | Required if field to update is part of a group, if the Field Set Group Index is not set, a new group will be created with the value provided. | body | false |
branchId | string | The ID of the branch | path | true |
Example Responses
200 : OK
success response
{
"returnCode": 0,
"returnStatus": "SUCCESS"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | Inline |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
Get Custom Info for Branch
GET /branches/{branchId}/custominformation/{customFieldId}
Get a custom field for a Branch
Allows retrieving a custom field value for a given branch directly by the ID/key of the branch and the ID/key of the custom field.
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
branchId | string | The ID of the branch. | path | true |
customFieldId | string | The ID of the custom field. | path | true |
Example Responses
200 : OK
A custom field
[
{
"encodedKey": "8a19cd6f74674df9017467f25aab02c6",
"parentKey": "8a193c26722b51b701722d779e7122de",
"customFieldKey": "8a19cd6f74674df9017467ef8e6802af",
"customField": {
"encodedKey": "8a19cd6f74674df9017467ef8e6802af",
"id": "cf_branch",
"creationDate": "2020-09-07T09:42:33+0000",
"lastModifiedDate": "2020-09-07T09:42:33+0000",
"name": "Example Custom Field",
"type": "BRANCH_INFO",
"dataType": "CHECKBOX",
"valueLength": "SHORT",
"isDefault": false,
"isRequired": false,
"description": "an example custom field of the checkbox type",
"customFieldSet": {
"encodedKey": "8a19cd6f74674df9017467ef8e6802ae",
"id": "_example_branch_custom_field_set",
"name": "example branch custom field set",
"notes": "example custom field set",
"createdDate": "2020-09-07T09:41:50+0000",
"lastModifiedDate": "2020-09-07T09:41:50+0000",
"indexInList": 2,
"type": "BRANCH_INFO",
"usage": "SINGLE"
},
"indexInList": 0,
"state": "NORMAL",
"customFieldSelectionOptions": [],
"viewRights": {
"encodedKey": "8a19cd6f74674df9017467ef8e6802b0",
"isAccessibleByAllUsers": false,
"roles": []
},
"editRights": {
"encodedKey": "8a19cd6f74674df9017467ef8e6802b1",
"isAccessibleByAllUsers": false,
"roles": []
},
"unique": false,
"values": [],
"amounts": {}
},
"value": "TRUE",
"indexInList": -1,
"customFieldID": "cf_branch",
"customFieldSetGroupIndex": -1
}
]
404 : Not Found
not found
{
"returnCode": 903,
"returnStatus": "INVALID_CUSTOM_FIELD_ID"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | CustomFieldApiV1 |
404 | Not Found | Not Found | Inline |
Response Schema
Status Code 404
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
Update Custom Field for Branch
PATCH /branches/{branchId}/custominformation/{customFieldId}
Update a custom field for a Branch
Update a custom field value for a branch custom field
Example Requests
A new value for a custom field
{
"value": "New value for custom field"
}
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
value | string | none | body | false |
branchId | string | The ID of the branch. | path | true |
customFieldId | string | The ID of the custom field. | path | true |
Example Responses
200 : OK
Success Response
{
"returnCode": 0,
"returnStatus": "string"
}
400 : Bad Request
field is part of a group
{
"returnCode": 916,
"returnStatus": "INVALID_CUSTOM_FIELD_GROUP_INDEX",
"errorSource": "cf_group_field_2"
}
404 : Not Found
not found
{
"returnCode": 903,
"returnStatus": "INVALID_CUSTOM_FIELD_ID"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | Inline |
400 | Bad Request | Bad Request | Inline |
404 | Not Found | Not Found | Inline |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
Status Code 400
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
» errorSource | string | none | false | none |
Status Code 404
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
Delete Custom Info for Branch
DELETE /branches/{branchId}/custominformation/{customFieldId}
Delete a single custom field
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
branchId | string | The ID of the branch. | path | true |
customFieldId | string | The ID of the custom field. | path | true |
Example Responses
200 : OK
success response
{
"returnCode": 0,
"returnStatus": "SUCCESS"
}
400 : Bad Request
field is part of a group
{
"returnCode": 916,
"returnStatus": "INVALID_CUSTOM_FIELD_GROUP_INDEX",
"errorSource": "cf_group_field_2"
}
404 : Not Found
not found
{
"returnCode": 903,
"returnStatus": "INVALID_CUSTOM_FIELD_ID"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | Inline |
400 | Bad Request | Bad Request | Inline |
404 | Not Found | Not Found | Inline |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
Status Code 400
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
» errorSource | string | none | false | none |
Status Code 404
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
Update Custom Info (grouped) for Branch
PATCH /branches/{branchId}/custominformation/{customFieldId}/{customFieldGroupSetIndex}
Update grouped custom field
Update custom field which is part of a group
Example requests
Provide a new value for a custom field
{
"value": "Some updated information"
}
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
value | string | none | body | false |
branchId | string | The ID of the branch | path | true |
customFieldId | string | The ID of the custom field | path | true |
customFieldGroupSetIndex | string | none | path | true |
Example Responses
200 : OK
success response
{
"returnCode": 0,
"returnStatus": "SUCCESS"
}
400 : Bad Request
wrong group index provided
{
"returnCode": 916,
"returnStatus": "INVALID_CUSTOM_FIELD_GROUP_INDEX",
"errorSource": "cf_group_field_2"
}
404 : Not Found
field not found
{
"returnCode": 903,
"returnStatus": "INVALID_CUSTOM_FIELD_ID"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | Inline |
400 | Bad Request | Bad Request | Inline |
404 | Not Found | Not Found | Inline |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
Status Code 400
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
» errorSource | string | none | false | none |
Status Code 404
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
Delete Custom Info (grouped) for Branch
DELETE /branches/{branchId}/custominformation/{customFieldId}/{customFieldGroupSetIndex}
Delete grouped custom field
Delete a custom field which is part of a group
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
branchId | string | The ID of the branch | path | true |
customFieldId | string | The ID of the custom field | path | true |
customFieldGroupSetIndex | string | none | path | true |
Example Responses
200 : OK
Success Response
{
"returnCode": 0,
"returnStatus": "SUCCESS"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | Inline |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
Get Branch Comments
GET /branches/{branchId}/comments
Get all branch comments
get all comments for a branch
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
limit | string | none | query | false |
offset | string | none | query | false |
branchId | string | the ID of the branch | path | true |
Example Responses
200 : OK
an array of comments
[
{
"encodedKey": "8a19b7057471f4af017472dc0fd80470",
"parentKey": "8a193c26722b51b701722d77c5e423b7",
"userKey": "8a194075720ece2c017226fced6f005e",
"creationDate": "2020-09-09T14:24:42+0000",
"lastModifiedDate": "2020-09-09T14:24:42+0000",
"text": "aanother afmaefomaef<div><br /></div><div>aefaefaf</div><div><br /></div><div>afaef</div>"
},
{
"encodedKey": "8a193c26722b51b701722d77c8bf25ab",
"parentKey": "8a193c26722b51b701722d77c5e423b7",
"creationDate": "2020-05-19T15:05:24+0000",
"lastModifiedDate": "2020-05-19T15:05:24+0000",
"text": "Should suggest she apply for the agriculture loan given the nature of their business"
}
]
400 : Bad Request
bad branch ID
{
"returnCode": 149,
"returnStatus": "INVALID_ID"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | Inline |
400 | Bad Request | Bad Request | ExecutionStatusApiV1 |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
anonymous | [CommentApiV1] | none | false | none |
» creationDate | string(date-time) | the date and time at which this comment was added | false | none |
» encodedKey | string | a unique key for this comment | false | none |
» lastModifiedDate | string(date-time) | the date and time at which this comment was last modified | false | none |
» parentKey | string | the unique key of the parent object for this comment, for example, the client or loan account to which it relates | false | none |
» text | string | the text of the comment as a string, must be properly JSON escpaped if it contains special characters | false | none |
» userKey | string | the unique key of the user who created the comment | false | none |
Create Branch Comment
POST /branches/{branchId}/comments
Create a branch Comment
create new comment for a branch
Example Requests
A comment
{
"comment": "A long text field containing the comment to post. this is a comment with \" \" all kinds of : \\ / non compliant characters & = which have \n been JSON escaped"
}
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
comment | string | the comment to be added. if adding complex content make sure it is properly JSON encoded before making your request | body | false |
branchId | string | the ID of the branch | path | true |
Example Responses
200 : OK
a comment
{
"encodedKey": "8a19c34574720f9e0174734a039f06e2",
"parentKey": "8a193c26722b51b701722d77c5e423b7",
"userKey": "8a194075720ece2c017226fced6f005e",
"creationDate": "2020-09-09T14:39:36+0000",
"lastModifiedDate": "2020-09-09T14:39:36+0000",
"text": "this is a comment with \" \" all kinds of : \\ / non compliant stuff & = which has been JSON escaped"
}
400 : Bad Request
extra parameters in the request
{
"returnCode": 27,
"returnStatus": "PARAMETER_NOT_ALLOWED"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | CommentApiV1 |
400 | Bad Request | Bad Request | Inline |
Response Schema
Status Code 400
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
Get Branch Documents
GET /branches/{branchId}/documents
Get documents for Branch
Get all documents for a given branch
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
offset | integer | offset results. use with limit parameter to achieve paging | query | false |
limit | integer | max number of records to return | query | false |
branchId | string | the ID of the branch | path | true |
Example Responses
200 : ok
an array of documents
[
{
"encodedKey": "8a19c035747bf5b901747c5bfb04014b",
"id": 51,
"creationDate": "2020-09-11T08:52:48+0000",
"lastModifiedDate": "2020-09-11T08:52:48+0000",
"documentHolderKey": "8a193c26722b51b701722d779e7122df",
"documentHolderType": "BRANCH",
"name": "covid rules",
"type": "png",
"fileSize": 8258,
"originalFilename": "Screenshot_2020-04-22_at_14.31.29.png",
"location": "BRSIDSLFBOGAYZKUUKCOGGQEDOSEOD",
"description": "some guidelines for bank employees regarding covid",
"createdByUserKey": "8a194075720ece2c017226fced6f005e",
"userName": "Adrian Doonan"
},
{
"encodedKey": "8a19a3337476f2d00174775b6a3001ae",
"id": 43,
"creationDate": "2020-09-10T09:31:54+0000",
"lastModifiedDate": "2020-09-10T09:31:54+0000",
"documentHolderKey": "8a193c26722b51b701722d779e7122df",
"documentHolderType": "BRANCH",
"name": "bnranch doc",
"type": "png",
"fileSize": 32109,
"originalFilename": "clients_duplicate_id.png",
"location": "JRTBQGGVXFQRQRBDGBRWQCTXJNRWXP",
"description": "branch doc desc",
"createdByUserKey": "8a194075720ece2c017226fced6f005e",
"userName": "Adrian Doonan"
}
]
400 : Bad Request
bad branch ID
{
"returnCode": 4,
"returnStatus": "INVALID_PARAMETERS",
"errorSource": "wrong owner id"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ok | Inline |
400 | Bad Request | Bad Request | ExecutionStatusApiV1 |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
anonymous | [DocumentApiV1] | none | false | none |
» createdByUserKey | string | none | false | none |
» creationDate | string | none | false | none |
» description | string | none | false | none |
» documentHolderKey | string | none | false | none |
» documentHolderType | string | none | false | none |
» encodedKey | string | none | false | none |
» fileSize | number | none | false | none |
» id | number | none | false | none |
» lastModifiedDate | string | none | false | none |
» location | string | none | false | none |
» name | string | none | false | none |
» originalFilename | string | none | false | none |
» type | string | none | false | none |
» userName | string | none | false | none |
Enumerated Values
Property | Value |
---|---|
documentHolderType | BRANCH |
documentHolderType | LOAN_ACCOUNT |
documentHolderType | GROUP |
documentHolderType | DEPOSIT_ACCOUNT |
documentHolderType | LINE_OF_CREDIT |
documentHolderType | LOAN_PRODUCT |
documentHolderType | GL_JOURNAL_ENTRY |
documentHolderType | SAVINGS_PRODUCT |
documentHolderType | USER |
documentHolderType | CLIENT |
documentHolderType | CENTRE |
documentHolderType | ID_DOCUMENT |
Create Branch Document
POST /branches/{branchId}/documents
Attach new Document to a Branch
Attach a new document to a branch
Example Requests
a document to uplaod
{
"document": {
"documentHolderKey": "8a193c26722b51b701722d779e7122df",
"documentHolderType": "BRANCH",
"name": "some image",
"type": "PNG",
"description": "this is an image file"
},
"documentContent": "iVBORw0KGgoAAAANSUhEUgAAAnYAAAF0CAYAAACudHRvAAABQGlDQ1BJQ0MgUHJvZmlsZQAAKJFjYGASS=="
}
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
body | CreateDocumentApiV1 | a new document to be attached to an entity | body | false |
branchId | string | the ID of the branch | path | true |
Example Responses
201 : Created
uploaded document details
{
"encodedKey": "8a19c035747bf5b901747c5bfb04014d",
"id": 52,
"creationDate": "2020-09-11T08:54:53+0000",
"lastModifiedDate": "2020-09-11T08:54:53+0000",
"documentHolderKey": "8a193c26722b51b701722d779e7122df",
"documentHolderType": "BRANCH",
"name": "some image",
"type": "png",
"fileSize": 32109,
"originalFilename": "some_image.png",
"location": "RCPOUIUHJFBYDRURQNNHMOGBEFIOQF",
"description": "this is an image file",
"createdByUserKey": "8a194075720ece2c017226fced6f005e"
}
400 : Bad Request
filetype provided does not match actual file type
{
"returnCode": 973,
"returnStatus": "INCONSISTENT_EXTENSION_WITH_FILE_CONTENT",
"errorSource": "Invalid extension with file content"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
201 | Created | Created | DocumentApiV1 |
400 | Bad Request | Bad Request | ExecutionStatusApiV1 |
Get Branch Document by ID
GET /branches/{branchId}/documents/{documentId}
Get a Branch Document
Get a specific document attached to a branch
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
branchId | string | the ID of the branch | path | true |
documentId | string | the ID of the document | path | true |
Example Responses
200 : OK
base64 encoded document
"iVBORw0KGgoAAAANSUhEUgAAAEAAAAA9CAYAAAAd1W/BAAAMY2lDQ1BJQ0MgUHJvZmlsZQAASImVVwdck0cbv3dkkrACEZAR9hJFZgAZIawIAjIFUQlJIGHEmBBE3NRSBesWUZxoVUTRagWkDkSssyhu6yiKqFRqsYoLle8yoNZ+4/c9v9+993+fe+7/jNzlvQNAr5Mvk+Wj+gAUSAvlCZGhrElp6SzSI4ABU0ADtsCTL1DIOPHxMQDKUP93eX0DIKr+qpuK65/j/1UMhSKFAAAkA=="
400 : Bad Request
bad Document ID
{
"returnCode": 970,
"returnStatus": "INVALID_DOCUMENT_ID"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | string |
400 | Bad Request | Bad Request | ExecutionStatusApiV1 |
Delete Branch Document
DELETE /branches/{branchId}/documents/{documentId}
Delete a Branch Document
Delete a document attached to a branch
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
branchId | string | the ID of the branch | path | true |
documentId | string | the ID of the document | path | true |
Example Responses
200 : OK
success response
{
"returnCode": 0,
"returnStatus": "SUCCESS"
}
400 : Bad Request
bad Document ID
{
"returnCode": 970,
"returnStatus": "INVALID_DOCUMENT_ID"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | ExecutionStatusApiV1 |
400 | Bad Request | Bad Request | ExecutionStatusApiV1 |
Centres
Allows the retrieval of centres which are being used by an organisation. For information about custom fields and custom field sets see Custom Fields API documentation.
Get all Centres
GET /centres
Get all centres
Allows retrieving centres via a paginated list.
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
branchID | string | none | query | false |
offset | integer | none | query | false |
limit | integer | none | query | false |
fullDetails | boolean | none | query | false |
Example Responses
200 : ok
an array of centres with basic details
[
{
"encodedKey": "8a193c26722b51b701722d779e7122e0",
"id": "DT1",
"creationDate": "2020-05-19T15:05:23+0000",
"lastModifiedDate": "2020-09-23T14:38:14+0000",
"name": "Down Town",
"state": "ACTIVE",
"meetingDay": "FRIDAY",
"assignedBranchKey": "8a193c26722b51b701722d779e7122de"
},
{
"encodedKey": "8a193c26722b51b701722d779e7122e1",
"id": "MP1",
"creationDate": "2020-05-19T15:05:23+0000",
"lastModifiedDate": "2020-05-19T15:05:23+0000",
"name": "Market Place",
"state": "ACTIVE",
"assignedBranchKey": "8a193c26722b51b701722d779e7122df"
}
]
200 : ok
an array of centres with full details
[
{
"encodedKey": "8a193c26722b51b701722d779e7122e0",
"id": "DT1",
"creationDate": "2020-05-19T15:05:23+0000",
"lastModifiedDate": "2020-09-23T14:38:14+0000",
"name": "Down Town",
"state": "ACTIVE",
"notes": "some rich text notes about this centre",
"meetingDay": "FRIDAY",
"assignedBranchKey": "8a193c26722b51b701722d779e7122de",
"address": {
"encodedKey": "8a19b63f74b9d6b10174bb3fea5b09b3",
"parentKey": "8a193c26722b51b701722d779e7122e0",
"line1": "Chuffington House",
"line2": "123 Main High Road",
"city": "Big Town",
"region": "Big Conglomeration",
"postcode": "123 456",
"country": "Countrystan",
"indexInList": -1
},
"customFieldValues": [
{
"encodedKey": "8a19b63f74b9d6b10174bb3f856b09a6",
"parentKey": "8a193c26722b51b701722d779e7122e0",
"customFieldKey": "8a19b63f74b9d6b10174bb3d56f20974",
"customField": {
"encodedKey": "8a19b63f74b9d6b10174bb3d56f20974",
"id": "centre_cf_1",
"creationDate": "2020-09-23T13:53:13+0000",
"lastModifiedDate": "2020-09-23T14:27:10+0000",
"name": "cf 1",
"type": "CENTRE_INFO",
"dataType": "STRING",
"valueLength": "LONG",
"isDefault": false,
"isRequired": false,
"description": "a text custom field for a centre",
"customFieldSet": {
"encodedKey": "8a19b63f74b9d6b10174bad54f21066c",
"id": "_centres_custom_field_set",
"name": "custom field set",
"notes": "custom fields for centre",
"createdDate": "2020-09-23T13:52:45+0000",
"lastModifiedDate": "2020-09-23T13:52:45+0000",
"indexInList": 0,
"type": "CENTRE_INFO",
"usage": "SINGLE"
},
"indexInList": 0,
"state": "NORMAL",
"customFieldSelectionOptions": [],
"validationPattern": "@#$",
"viewRights": {
"encodedKey": "8a19b63f74b9d6b10174bb3d56f20975",
"isAccessibleByAllUsers": true,
"roles": []
},
"editRights": {
"encodedKey": "8a19b63f74b9d6b10174bb3d56f20976",
"isAccessibleByAllUsers": false,
"roles": []
},
"unique": true,
"values": [],
"amounts": {}
},
"value": "custom field value for cf 1",
"indexInList": -1,
"customFieldID": "centre_cf_1",
"customFieldSetGroupIndex": -1
},
{
"encodedKey": "8a19b63f74b9d6b10174bb3f856b09a8",
"parentKey": "8a193c26722b51b701722d779e7122e0",
"customFieldKey": "8a19b63f74b9d6b10174bb3d56f20977",
"customField": {
"encodedKey": "8a19b63f74b9d6b10174bb3d56f20977",
"id": "cntr_cf_2",
"creationDate": "2020-09-23T13:53:41+0000",
"lastModifiedDate": "2020-09-23T13:53:41+0000",
"name": "centre cf 2",
"type": "CENTRE_INFO",
"dataType": "CHECKBOX",
"valueLength": "SHORT",
"isDefault": false,
"isRequired": false,
"description": "a checkbox custom field for a centre",
"customFieldSet": {
"encodedKey": "8a19b63f74b9d6b10174bad54f21066c",
"id": "_centres_custom_field_set",
"name": "custom field set",
"notes": "custom fields for centre",
"createdDate": "2020-09-23T13:52:45+0000",
"lastModifiedDate": "2020-09-23T13:52:45+0000",
"indexInList": 0,
"type": "CENTRE_INFO",
"usage": "SINGLE"
},
"indexInList": 1,
"state": "NORMAL",
"customFieldSelectionOptions": [],
"viewRights": {
"encodedKey": "8a19b63f74b9d6b10174bb3d56f20978",
"isAccessibleByAllUsers": false,
"roles": []
},
"editRights": {
"encodedKey": "8a19b63f74b9d6b10174bb3dc2b70979",
"isAccessibleByAllUsers": false,
"roles": []
},
"unique": false,
"values": [],
"amounts": {}
},
"value": "FALSE",
"indexInList": -1,
"customFieldID": "cntr_cf_2",
"customFieldSetGroupIndex": -1
},
{
"encodedKey": "8a19b63f74b9d6b10174bb3f856b09aa",
"parentKey": "8a193c26722b51b701722d779e7122e0",
"customFieldKey": "8a19b63f74b9d6b10174bb3dc2b7097b",
"customField": {
"encodedKey": "8a19b63f74b9d6b10174bb3dc2b7097b",
"id": "cntr_cf_Grp_1",
"creationDate": "2020-09-23T13:54:31+0000",
"lastModifiedDate": "2020-09-23T13:54:31+0000",
"name": "cf grp 1",
"type": "CENTRE_INFO",
"dataType": "NUMBER",
"valueLength": "SHORT",
"isDefault": false,
"isRequired": false,
"description": "a number custom field",
"customFieldSet": {
"encodedKey": "8a19b63f74b9d6b10174bb3dc2b7097a",
"id": "_cntr_cf_grp",
"name": "cf grouped",
"notes": "grouped centre custom fields",
"createdDate": "2020-09-23T13:54:05+0000",
"lastModifiedDate": "2020-09-23T13:54:05+0000",
"indexInList": 1,
"type": "CENTRE_INFO",
"usage": "GROUPED"
},
"indexInList": 0,
"state": "NORMAL",
"customFieldSelectionOptions": [],
"viewRights": {
"encodedKey": "8a19b63f74b9d6b10174bb3dc2b7097c",
"isAccessibleByAllUsers": false,
"roles": []
},
"editRights": {
"encodedKey": "8a19b63f74b9d6b10174bb3dc2b7097d",
"isAccessibleByAllUsers": false,
"roles": []
},
"unique": false,
"values": [],
"amounts": {}
},
"value": "12",
"indexInList": -1,
"customFieldID": "cntr_cf_Grp_1",
"customFieldSetGroupIndex": 0
},
{
"encodedKey": "8a19b63f74b9d6b10174bb3fea5b09b1",
"parentKey": "8a193c26722b51b701722d779e7122e0",
"customFieldKey": "8a19b63f74b9d6b10174bb3f17d10992",
"customField": {
"encodedKey": "8a19b63f74b9d6b10174bb3f17d10992",
"id": "cntr_cf_grp_2",
"creationDate": "2020-09-23T13:55:08+0000",
"lastModifiedDate": "2020-09-23T13:57:45+0000",
"name": "centre cf grp 2",
"type": "CENTRE_INFO",
"dataType": "SELECTION",
"valueLength": "SHORT",
"isDefault": false,
"isRequired": false,
"description": "a selection custom field for centres",
"customFieldSet": {
"encodedKey": "8a19b63f74b9d6b10174bb3dc2b7097a",
"id": "_cntr_cf_grp",
"name": "cf grouped",
"notes": "grouped centre custom fields",
"createdDate": "2020-09-23T13:54:05+0000",
"lastModifiedDate": "2020-09-23T13:54:05+0000",
"indexInList": 1,
"type": "CENTRE_INFO",
"usage": "GROUPED"
},
"indexInList": 1,
"state": "NORMAL",
"customFieldSelectionOptions": [
{
"encodedKey": "8a19b63f74b9d6b10174bb3f17d10995",
"id": "1341939373",
"value": "option 1",
"score": "10"
},
{
"encodedKey": "8a19b63f74b9d6b10174bb3f17d10996",
"id": "414828471",
"value": "option 2",
"score": "-15"
}
],
"viewRights": {
"encodedKey": "8a19b63f74b9d6b10174bb3f17d10993",
"isAccessibleByAllUsers": true,
"roles": []
},
"editRights": {
"encodedKey": "8a19b63f74b9d6b10174bb3f17d10994",
"isAccessibleByAllUsers": true,
"roles": []
},
"unique": false,
"values": [
"option 1",
"option 2"
],
"amounts": {
"option 1": "10",
"option 2": "-15"
}
},
"value": "option 2",
"amount": "-15",
"indexInList": -1,
"customFieldID": "cntr_cf_grp_2",
"customFieldSetGroupIndex": 0
},
{
"encodedKey": "8a19b63f74b9d6b10174bb5405830a67",
"parentKey": "8a193c26722b51b701722d779e7122e0",
"customFieldKey": "8a19b63f74b9d6b10174bb5405830a64",
"customField": {
"encodedKey": "8a19b63f74b9d6b10174bb5405830a64",
"id": "cntr_cf_usr_lnk",
"creationDate": "2020-09-23T14:18:00+0000",
"lastModifiedDate": "2020-09-23T14:18:00+0000",
"name": "user link for centre",
"type": "CENTRE_INFO",
"dataType": "USER_LINK",
"valueLength": "SHORT",
"isDefault": false,
"isRequired": false,
"description": "a custom field linking to a specific user",
"customFieldSet": {
"encodedKey": "8a19b63f74b9d6b10174bad54f21066c",
"id": "_centres_custom_field_set",
"name": "custom field set",
"notes": "custom fields for centre",
"createdDate": "2020-09-23T13:52:45+0000",
"lastModifiedDate": "2020-09-23T13:52:45+0000",
"indexInList": 0,
"type": "CENTRE_INFO",
"usage": "SINGLE"
},
"indexInList": 2,
"state": "NORMAL",
"customFieldSelectionOptions": [],
"viewRights": {
"encodedKey": "8a19b63f74b9d6b10174bb5405830a65",
"isAccessibleByAllUsers": true,
"roles": []
},
"editRights": {
"encodedKey": "8a19b63f74b9d6b10174bb5405830a66",
"isAccessibleByAllUsers": false,
"roles": []
},
"unique": false,
"values": [],
"amounts": {}
},
"linkedEntityKeyValue": "8a19df0e730ee86f01730f4c3cf2074a",
"indexInList": -1,
"customFieldID": "cntr_cf_usr_lnk",
"customFieldSetGroupIndex": -1
},
{
"encodedKey": "8a19b63f74b9d6b10174bb66462a0a7e",
"parentKey": "8a193c26722b51b701722d779e7122e0",
"customFieldKey": "8a19b63f74b9d6b10174bb6646250a73",
"customField": {
"encodedKey": "8a19b63f74b9d6b10174bb6646250a73",
"id": "cntr_cf_slct_2",
"creationDate": "2020-09-23T14:37:56+0000",
"lastModifiedDate": "2020-09-23T14:37:56+0000",
"name": "centre cf select 2",
"type": "CENTRE_INFO",
"dataType": "SELECTION",
"valueLength": "LONG",
"isDefault": false,
"isRequired": false,
"description": "a custom field in which the options available are dependent on another field",
"customFieldSet": {
"encodedKey": "8a19b63f74b9d6b10174bb3dc2b7097a",
"id": "_cntr_cf_grp",
"name": "cf grouped",
"notes": "grouped centre custom fields",
"createdDate": "2020-09-23T13:54:05+0000",
"lastModifiedDate": "2020-09-23T13:54:05+0000",
"indexInList": 1,
"type": "CENTRE_INFO",
"usage": "GROUPED"
},
"indexInList": 2,
"state": "NORMAL",
"customFieldSelectionOptions": [
{
"encodedKey": "8a19b63f74b9d6b10174bb6646250a76",
"id": "996554077",
"value": "dep 1 a",
"score": "12",
"constraint": {
"encodedKey": "8a19b63f74b9d6b10174bb6646250a77",
"dataFieldType": "CUSTOM",
"dataItemType": "CENTRE",
"dataType": "STRING",
"customFieldKey": "8a19b63f74b9d6b10174bb3f17d10992",
"filterElement": "EQUALS",
"value": "8a19b63f74b9d6b10174bb3f17d10995",
"linkingOperator": "AND",
"groupNumber": 0
}
},
{
"encodedKey": "8a19b63f74b9d6b10174bb6646280a78",
"id": "656383934",
"value": "dep 1 b",
"score": "-3",
"constraint": {
"encodedKey": "8a19b63f74b9d6b10174bb6646280a79",
"dataFieldType": "CUSTOM",
"dataItemType": "CENTRE",
"dataType": "STRING",
"customFieldKey": "8a19b63f74b9d6b10174bb3f17d10992",
"filterElement": "EQUALS",
"value": "8a19b63f74b9d6b10174bb3f17d10995",
"linkingOperator": "AND",
"groupNumber": 0
}
},
{
"encodedKey": "8a19b63f74b9d6b10174bb6646280a7a",
"id": "745255722",
"value": "dep 2 a",
"score": "10",
"constraint": {
"encodedKey": "8a19b63f74b9d6b10174bb6646280a7b",
"dataFieldType": "CUSTOM",
"dataItemType": "CENTRE",
"dataType": "STRING",
"customFieldKey": "8a19b63f74b9d6b10174bb3f17d10992",
"filterElement": "EQUALS",
"value": "8a19b63f74b9d6b10174bb3f17d10996",
"linkingOperator": "AND",
"groupNumber": 0
}
},
{
"encodedKey": "8a19b63f74b9d6b10174bb6646280a7c",
"id": "2093285980",
"value": "dep 2 b",
"score": "-5",
"constraint": {
"encodedKey": "8a19b63f74b9d6b10174bb66462a0a7d",
"dataFieldType": "CUSTOM",
"dataItemType": "CENTRE",
"dataType": "STRING",
"customFieldKey": "8a19b63f74b9d6b10174bb3f17d10992",
"filterElement": "EQUALS",
"value": "8a19b63f74b9d6b10174bb3f17d10996",
"linkingOperator": "AND",
"groupNumber": 0
}
}
],
"viewRights": {
"encodedKey": "8a19b63f74b9d6b10174bb6646250a74",
"isAccessibleByAllUsers": true,
"roles": []
},
"editRights": {
"encodedKey": "8a19b63f74b9d6b10174bb6646250a75",
"isAccessibleByAllUsers": false,
"roles": []
},
"unique": false
},
"value": "dep 2 a",
"amount": "10",
"indexInList": -1,
"customFieldID": "cntr_cf_slct_2",
"customFieldSetGroupIndex": 0
}
]
},
{
"encodedKey": "8a193c26722b51b701722d779e7122e1",
"id": "MP1",
"creationDate": "2020-05-19T15:05:23+0000",
"lastModifiedDate": "2020-05-19T15:05:23+0000",
"name": "Market Place",
"state": "ACTIVE",
"notes": "All clients and officers gather in the market to discuss loans and savings situation.",
"assignedBranchKey": "8a193c26722b51b701722d779e7122df",
"address": {
"encodedKey": "8a193c26722b51b701722d77c25e22e3",
"parentKey": "8a193c26722b51b701722d779e7122e1",
"line1": "Hegyalja út 95.",
"city": "Debrecen",
"postcode": "4032",
"indexInList": -1
},
"customFieldValues": []
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ok | Inline |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
anonymous | [CentreApiV1] | none | false | none |
» address | AddressApiV1 | none | false | none |
»» addressType | string | none | false | none |
»» city | string | none | true | none |
»» country | string | none | true | none |
»» encodedKey | string | none | true | none |
»» indexInList | number | none | true | none |
»» latitude | number | none | false | none |
»» line1 | string | none | true | none |
»» line2 | string | none | false | none |
»» longitude | number | none | false | none |
»» parentKey | string | none | true | none |
»» postcode | string | none | true | none |
»» region | string | none | true | none |
»» toBeDeleted | boolean | none | false | none |
» assignedBranchKey | string | none | false | none |
» creationDate | string | none | false | none |
» customFieldValues | [CustomFieldValueApiV1] | none | false | none |
»» amount | number | none | false | none |
»» customField | CustomFieldApiV1 | none | false | none |
»»» amounts | object | none | false | none |
»»»» additionalProperties | number | none | false | none |
»»» builtInCustomFieldId | string | none | false | none |
»»» creationDate | string | none | false | none |
»»» customFieldProductSettings | [CustomFieldLinkApiV1] | none | false | none |
»»»» customFieldEncodedKey | string | none | false | none |
»»»» encodedKey | string | none | false | none |
»»»» isDefault | boolean | none | false | none |
»»»» isRequired | boolean | none | false | none |
»»»» linkType | string | none | false | none |
»»»» productKey | string | none | false | none |
»»» customFieldSelectionOptions | [CustomFieldSelectionApiV1] | none | false | none |
»»»» constraint | CustomFilterConstraintApiV1 | none | false | none |
»»»»» customFieldKey | string | none | false | none |
»»»»» dataFieldType | string | none | false | none |
»»»»» dataFieldValue | string | none | false | none |
»»»»» dataItemType | string | none | false | none |
»»»»» dataType | string | none | false | none |
»»»»» encodedKey | string | none | false | none |
»»»»» filterElement | string | none | false | none |
»»»»» groupNumber | number | none | false | none |
»»»»» index | number | none | false | none |
»»»»» linkingOperator | string | none | false | none |
»»»»» secondValue | string | none | false | none |
»»»»» value | string | none | false | none |
»»»» encodedKey | string | none | false | none |
»»»» id | string | none | false | none |
»»»» score | number | none | false | none |
»»»» value | string | none | false | none |
»»» customFieldSet | CustomFieldSetApiV1 | none | false | none |
»»»» builtInType | string | none | false | none |
»»»» createdDate | string | none | false | none |
»»»» customFields | [CustomFieldApiV1] | none | false | none |
»»»» encodedKey | string | none | false | none |
»»»» id | string | none | false | none |
»»»» indexInList | number | none | false | none |
»»»» lastModifiedDate | string | none | false | none |
»»»» name | string | none | false | none |
»»»» notes | string | none | false | none |
»»»» type | string | none | false | none |
»»»» usage | string | none | false | none |
»»» dataType | string | none | false | none |
»»» description | string | none | false | none |
»»» editRights | UsageRightsApiV1 | none | false | none |
»»»» encodedKey | string | none | false | none |
»»»» isAccessibleByAllUsers | boolean | none | false | none |
»»»» roles | [string] | none | false | none |
»»» encodedKey | string | none | false | none |
»»» id | string | none | false | none |
»»» indexInList | number | none | false | none |
»»» isDefault | boolean | none | false | none |
»»» isRequired | boolean | none | false | none |
»»» lastModifiedDate | string | none | false | none |
»»» name | string | none | false | none |
»»» state | string | none | false | none |
»»» type | string | none | false | none |
»»» unique | boolean | none | false | none |
»»» validationPattern | string | none | false | none |
»»» valueLength | string | none | false | none |
»»» values | [string] | none | false | none |
»»» viewRights | UsageRightsApiV1 | none | false | none |
»» customFieldID | string | none | false | none |
»» customFieldKey | string | none | false | none |
»» customFieldSetGroupIndex | number | none | false | none |
»» encodedKey | string | none | false | none |
»» indexInList | number | none | false | none |
»» linkedEntityKeyValue | string | none | false | none |
»» parentKey | string | none | false | none |
»» selectionKey | string | none | false | none |
»» value | string | none | false | none |
» encodedKey | string | none | false | none |
» id | string | none | false | none |
» lastModifiedDate | string | none | false | none |
» meetingDay | string | none | false | none |
» name | string | none | false | none |
» notes | string | none | false | none |
» state | string | none | false | none |
Enumerated Values
Property | Value |
---|---|
builtInCustomFieldId | MOBILE_PHONE |
builtInCustomFieldId | EMAIL_ADDRESS |
builtInCustomFieldId | GENDER |
builtInCustomFieldId | MIDDLE_NAME |
builtInCustomFieldId | HOME_PHONE |
builtInCustomFieldId | BIRTHDATE |
builtInCustomFieldId | LAST_NAME |
builtInCustomFieldId | FIRST_NAME |
linkType | CLIENT_ROLE |
linkType | CHANNEL |
linkType | PRODUCT |
dataFieldType | NATIVE |
dataFieldType | CUSTOM |
dataItemType | WRITTEN_OFF_LOANS |
dataItemType | LINE_OF_CREDIT |
dataItemType | INVESTOR_FUND |
dataItemType | TRANSACTION_DETAILS |
dataItemType | DOCUMENT_TEMPLATE |
dataItemType | PRODUCT |
dataItemType | MCC_EXPIRATION |
dataItemType | CENTRE |
dataItemType | REPAYMENT_COLLECTION |
dataItemType | TASK |
dataItemType | OUTSTANDING_PORTFOLIO_AMOUNTS |
dataItemType | REVENUE |
dataItemType | COMPOSED_TRANSACTIONS |
dataItemType | UNION_TRANSACTIONS |
dataItemType | PRINCIPAL_PAYMENT_SETTINGS |
dataItemType | LOANS |
dataItemType | DISBURSEMENT_DETAILS |
dataItemType | SAVINGS_TRANSACTION |
dataItemType | IDENTIFICATION_DOCUMENT |
dataItemType | LOAN_PRODUCT |
dataItemType | DISBURSED_LOANS |
dataItemType | LOAN_GROUP |
dataItemType | TRANSACTION_CHANNEL |
dataItemType | CUSTOM_PREDEFINED_FEE |
dataItemType | JOURNAL_ENTRY |
dataItemType | ATTACHMENT |
dataItemType | PREDEFINED_FEE |
dataItemType | TRANCHE |
dataItemType | TRANSACTION |
dataItemType | INDEX_RATE_SOURCE |
dataItemType | GROUP_ROLE |
dataItemType | LOAN_TRANSACTION |
dataItemType | CLIENT_ROLE |
dataItemType | GROUP |
dataItemType | NOTIFICATION_MESSAGE |
dataItemType | OUTSTANDING_PORTFOLIO_ACCOUNTS |
dataItemType | REPAYMENT |
dataItemType | LOAN_ACCOUNT_GUARANTY |
dataItemType | BRANCH |
dataItemType | CURRENCY |
dataItemType | CARD_TRANSACTION_REVERSAL |
dataItemType | INTEREST_PRODUCT_SETTINGS |
dataItemType | CREATED_ACCOUNTS |
dataItemType | USER |
dataItemType | SAVINGS_PRODUCT |
dataItemType | CLIENT |
dataItemType | PRODUCT_ARREARS_SETTINGS |
dataItemType | SAVINGS |
dataItemType | EXPENSE |
dataItemType | INDEX_RATE |
dataItemType | NOTIFICATION_TEMPLATE |
dataItemType | CUSTOM_FIELD_SELECTION |
dataItemType | ACTIVITY |
dataType | ENUM |
dataType | MONEY |
dataType | NUMBER |
dataType | DATE_UTC |
dataType | JAVA_BLOB |
dataType | OBJECT |
dataType | BOOLEAN |
dataType | DATE |
dataType | PERCENT |
dataType | BIG_DECIMAL |
dataType | STRING |
dataType | KEY |
dataType | LONG |
filterElement | STARTS_WITH_CASE_SENSITIVE |
filterElement | THIS_WEEK |
filterElement | EQUALS |
filterElement | STARTS_WITH |
filterElement | IN |
filterElement | TODAY |
filterElement | THIS_YEAR |
filterElement | BETWEEN |
filterElement | AFTER |
filterElement | LESS_THAN |
filterElement | DIFFERENT_THAN |
filterElement | THIS_MONTH |
filterElement | NOT_EMPTY |
filterElement | BEFORE |
filterElement | EQUALS_CASE_SENSITIVE |
filterElement | LAST_DAYS |
filterElement | MORE_THAN |
filterElement | EMPTY |
filterElement | ON |
linkingOperator | OR |
linkingOperator | AND |
builtInType | DETAILS |
builtInType | GENERAL |
type | USER_INFO |
type | ASSET_INFO |
type | CLIENT_INFO |
type | LINE_OF_CREDIT |
type | GROUP_INFO |
type | TRANSACTION_CHANNEL_INFO |
type | BRANCH_INFO |
type | SAVINGS_ACCOUNT_INFO |
type | LOAN_ACCOUNT_INFO |
type | GUARANTOR_INFO |
type | CENTRE_INFO |
usage | SINGLE |
usage | GROUPED |
dataType | GROUP_LINK |
dataType | DATE |
dataType | NUMBER |
dataType | CHECKBOX |
dataType | CLIENT_LINK |
dataType | STRING |
dataType | USER_LINK |
dataType | SELECTION |
state | DEACTIVATED |
state | NORMAL |
type | USER_INFO |
type | ASSET_INFO |
type | CLIENT_INFO |
type | LINE_OF_CREDIT |
type | GROUP_INFO |
type | TRANSACTION_CHANNEL_INFO |
type | BRANCH_INFO |
type | SAVINGS_ACCOUNT_INFO |
type | LOAN_ACCOUNT_INFO |
type | GUARANTOR_INFO |
type | CENTRE_INFO |
valueLength | SHORT |
valueLength | LONG |
meetingDay | WEDNESDAY |
meetingDay | MONDAY |
meetingDay | THURSDAY |
meetingDay | SUNDAY |
meetingDay | TUESDAY |
meetingDay | FRIDAY |
meetingDay | SATURDAY |
state | ACTIVE |
state | INACTIVE |
Get Centre by ID
GET /centres/{centreId}
Get a centre
get details on a specific centre by ID
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
centreId | string | none | path | true |
fullDetails | boolean | none | query | false |
Example Responses
200 : ok
a centre with basic details
{
"encodedKey": "8a193c26722b51b701722d779e7122e1",
"id": "MP1",
"creationDate": "2020-05-19T15:05:23+0000",
"lastModifiedDate": "2020-05-19T15:05:23+0000",
"name": "Market Place",
"state": "ACTIVE",
"assignedBranchKey": "8a193c26722b51b701722d779e7122df"
}
200 : ok
a centre with full details
{
"encodedKey": "8a193c26722b51b701722d779e7122e0",
"id": "DT1",
"creationDate": "2020-05-19T15:05:23+0000",
"lastModifiedDate": "2020-09-23T14:38:14+0000",
"name": "Down Town",
"state": "ACTIVE",
"notes": "some rich text notes about this centre",
"meetingDay": "FRIDAY",
"assignedBranchKey": "8a193c26722b51b701722d779e7122de",
"address": {
"encodedKey": "8a19b63f74b9d6b10174bb3fea5b09b3",
"parentKey": "8a193c26722b51b701722d779e7122e0",
"line1": "Chuffington House",
"line2": "123 Main High Road",
"city": "Big Town",
"region": "Big Conglomeration",
"postcode": "123 456",
"country": "Countrystan",
"indexInList": -1
},
"customFieldValues": [
{
"encodedKey": "8a19b63f74b9d6b10174bb3f856b09a6",
"parentKey": "8a193c26722b51b701722d779e7122e0",
"customFieldKey": "8a19b63f74b9d6b10174bb3d56f20974",
"customField": {
"encodedKey": "8a19b63f74b9d6b10174bb3d56f20974",
"id": "centre_cf_1",
"creationDate": "2020-09-23T13:53:13+0000",
"lastModifiedDate": "2020-09-23T14:27:10+0000",
"name": "cf 1",
"type": "CENTRE_INFO",
"dataType": "STRING",
"valueLength": "LONG",
"isDefault": false,
"isRequired": false,
"description": "a text custom field for a centre",
"customFieldSet": {
"encodedKey": "8a19b63f74b9d6b10174bad54f21066c",
"id": "_centres_custom_field_set",
"name": "custom field set",
"notes": "custom fields for centre",
"createdDate": "2020-09-23T13:52:45+0000",
"lastModifiedDate": "2020-09-23T13:52:45+0000",
"indexInList": 0,
"type": "CENTRE_INFO",
"usage": "SINGLE"
},
"indexInList": 0,
"state": "NORMAL",
"customFieldSelectionOptions": [],
"validationPattern": "@#$",
"viewRights": {
"encodedKey": "8a19b63f74b9d6b10174bb3d56f20975",
"isAccessibleByAllUsers": true,
"roles": []
},
"editRights": {
"encodedKey": "8a19b63f74b9d6b10174bb3d56f20976",
"isAccessibleByAllUsers": false,
"roles": []
},
"unique": true,
"values": [],
"amounts": {}
},
"value": "custom field value for cf 1",
"indexInList": -1,
"customFieldID": "centre_cf_1",
"customFieldSetGroupIndex": -1
},
{
"encodedKey": "8a19b63f74b9d6b10174bb3f856b09a8",
"parentKey": "8a193c26722b51b701722d779e7122e0",
"customFieldKey": "8a19b63f74b9d6b10174bb3d56f20977",
"customField": {
"encodedKey": "8a19b63f74b9d6b10174bb3d56f20977",
"id": "cntr_cf_2",
"creationDate": "2020-09-23T13:53:41+0000",
"lastModifiedDate": "2020-09-23T13:53:41+0000",
"name": "centre cf 2",
"type": "CENTRE_INFO",
"dataType": "CHECKBOX",
"valueLength": "SHORT",
"isDefault": false,
"isRequired": false,
"description": "a checkbox custom field for a centre",
"customFieldSet": {
"encodedKey": "8a19b63f74b9d6b10174bad54f21066c",
"id": "_centres_custom_field_set",
"name": "custom field set",
"notes": "custom fields for centre",
"createdDate": "2020-09-23T13:52:45+0000",
"lastModifiedDate": "2020-09-23T13:52:45+0000",
"indexInList": 0,
"type": "CENTRE_INFO",
"usage": "SINGLE"
},
"indexInList": 1,
"state": "NORMAL",
"customFieldSelectionOptions": [],
"viewRights": {
"encodedKey": "8a19b63f74b9d6b10174bb3d56f20978",
"isAccessibleByAllUsers": false,
"roles": []
},
"editRights": {
"encodedKey": "8a19b63f74b9d6b10174bb3dc2b70979",
"isAccessibleByAllUsers": false,
"roles": []
},
"unique": false,
"values": [],
"amounts": {}
},
"value": "FALSE",
"indexInList": -1,
"customFieldID": "cntr_cf_2",
"customFieldSetGroupIndex": -1
},
{
"encodedKey": "8a19b63f74b9d6b10174bb3f856b09aa",
"parentKey": "8a193c26722b51b701722d779e7122e0",
"customFieldKey": "8a19b63f74b9d6b10174bb3dc2b7097b",
"customField": {
"encodedKey": "8a19b63f74b9d6b10174bb3dc2b7097b",
"id": "cntr_cf_Grp_1",
"creationDate": "2020-09-23T13:54:31+0000",
"lastModifiedDate": "2020-09-23T13:54:31+0000",
"name": "cf grp 1",
"type": "CENTRE_INFO",
"dataType": "NUMBER",
"valueLength": "SHORT",
"isDefault": false,
"isRequired": false,
"description": "a number custom field",
"customFieldSet": {
"encodedKey": "8a19b63f74b9d6b10174bb3dc2b7097a",
"id": "_cntr_cf_grp",
"name": "cf grouped",
"notes": "grouped centre custom fields",
"createdDate": "2020-09-23T13:54:05+0000",
"lastModifiedDate": "2020-09-23T13:54:05+0000",
"indexInList": 1,
"type": "CENTRE_INFO",
"usage": "GROUPED"
},
"indexInList": 0,
"state": "NORMAL",
"customFieldSelectionOptions": [],
"viewRights": {
"encodedKey": "8a19b63f74b9d6b10174bb3dc2b7097c",
"isAccessibleByAllUsers": false,
"roles": []
},
"editRights": {
"encodedKey": "8a19b63f74b9d6b10174bb3dc2b7097d",
"isAccessibleByAllUsers": false,
"roles": []
},
"unique": false,
"values": [],
"amounts": {}
},
"value": "12",
"indexInList": -1,
"customFieldID": "cntr_cf_Grp_1",
"customFieldSetGroupIndex": 0
},
{
"encodedKey": "8a19b63f74b9d6b10174bb3fea5b09b1",
"parentKey": "8a193c26722b51b701722d779e7122e0",
"customFieldKey": "8a19b63f74b9d6b10174bb3f17d10992",
"customField": {
"encodedKey": "8a19b63f74b9d6b10174bb3f17d10992",
"id": "cntr_cf_grp_2",
"creationDate": "2020-09-23T13:55:08+0000",
"lastModifiedDate": "2020-09-23T13:57:45+0000",
"name": "centre cf grp 2",
"type": "CENTRE_INFO",
"dataType": "SELECTION",
"valueLength": "SHORT",
"isDefault": false,
"isRequired": false,
"description": "a selection custom field for centres",
"customFieldSet": {
"encodedKey": "8a19b63f74b9d6b10174bb3dc2b7097a",
"id": "_cntr_cf_grp",
"name": "cf grouped",
"notes": "grouped centre custom fields",
"createdDate": "2020-09-23T13:54:05+0000",
"lastModifiedDate": "2020-09-23T13:54:05+0000",
"indexInList": 1,
"type": "CENTRE_INFO",
"usage": "GROUPED"
},
"indexInList": 1,
"state": "NORMAL",
"customFieldSelectionOptions": [
{
"encodedKey": "8a19b63f74b9d6b10174bb3f17d10995",
"id": "1341939373",
"value": "option 1",
"score": "10"
},
{
"encodedKey": "8a19b63f74b9d6b10174bb3f17d10996",
"id": "414828471",
"value": "option 2",
"score": "-15"
}
],
"viewRights": {
"encodedKey": "8a19b63f74b9d6b10174bb3f17d10993",
"isAccessibleByAllUsers": true,
"roles": []
},
"editRights": {
"encodedKey": "8a19b63f74b9d6b10174bb3f17d10994",
"isAccessibleByAllUsers": true,
"roles": []
},
"unique": false,
"values": [
"option 1",
"option 2"
],
"amounts": {
"option 1": "10",
"option 2": "-15"
}
},
"value": "option 2",
"amount": "-15",
"indexInList": -1,
"customFieldID": "cntr_cf_grp_2",
"customFieldSetGroupIndex": 0
},
{
"encodedKey": "8a19b63f74b9d6b10174bb5405830a67",
"parentKey": "8a193c26722b51b701722d779e7122e0",
"customFieldKey": "8a19b63f74b9d6b10174bb5405830a64",
"customField": {
"encodedKey": "8a19b63f74b9d6b10174bb5405830a64",
"id": "cntr_cf_usr_lnk",
"creationDate": "2020-09-23T14:18:00+0000",
"lastModifiedDate": "2020-09-23T14:18:00+0000",
"name": "user link for centre",
"type": "CENTRE_INFO",
"dataType": "USER_LINK",
"valueLength": "SHORT",
"isDefault": false,
"isRequired": false,
"description": "a custom field linking to a specific user",
"customFieldSet": {
"encodedKey": "8a19b63f74b9d6b10174bad54f21066c",
"id": "_centres_custom_field_set",
"name": "custom field set",
"notes": "custom fields for centre",
"createdDate": "2020-09-23T13:52:45+0000",
"lastModifiedDate": "2020-09-23T13:52:45+0000",
"indexInList": 0,
"type": "CENTRE_INFO",
"usage": "SINGLE"
},
"indexInList": 2,
"state": "NORMAL",
"customFieldSelectionOptions": [],
"viewRights": {
"encodedKey": "8a19b63f74b9d6b10174bb5405830a65",
"isAccessibleByAllUsers": true,
"roles": []
},
"editRights": {
"encodedKey": "8a19b63f74b9d6b10174bb5405830a66",
"isAccessibleByAllUsers": false,
"roles": []
},
"unique": false,
"values": [],
"amounts": {}
},
"linkedEntityKeyValue": "8a19df0e730ee86f01730f4c3cf2074a",
"indexInList": -1,
"customFieldID": "cntr_cf_usr_lnk",
"customFieldSetGroupIndex": -1
},
{
"encodedKey": "8a19b63f74b9d6b10174bb66462a0a7e",
"parentKey": "8a193c26722b51b701722d779e7122e0",
"customFieldKey": "8a19b63f74b9d6b10174bb6646250a73",
"customField": {
"encodedKey": "8a19b63f74b9d6b10174bb6646250a73",
"id": "cntr_cf_slct_2",
"creationDate": "2020-09-23T14:37:56+0000",
"lastModifiedDate": "2020-09-23T14:37:56+0000",
"name": "centre cf select 2",
"type": "CENTRE_INFO",
"dataType": "SELECTION",
"valueLength": "LONG",
"isDefault": false,
"isRequired": false,
"description": "a custom field in which the options available are dependent on another field",
"customFieldSet": {
"encodedKey": "8a19b63f74b9d6b10174bb3dc2b7097a",
"id": "_cntr_cf_grp",
"name": "cf grouped",
"notes": "grouped centre custom fields",
"createdDate": "2020-09-23T13:54:05+0000",
"lastModifiedDate": "2020-09-23T13:54:05+0000",
"indexInList": 1,
"type": "CENTRE_INFO",
"usage": "GROUPED"
},
"indexInList": 2,
"state": "NORMAL",
"customFieldSelectionOptions": [
{
"encodedKey": "8a19b63f74b9d6b10174bb6646250a76",
"id": "996554077",
"value": "dep 1 a",
"score": "12",
"constraint": {
"encodedKey": "8a19b63f74b9d6b10174bb6646250a77",
"dataFieldType": "CUSTOM",
"dataItemType": "CENTRE",
"dataType": "STRING",
"customFieldKey": "8a19b63f74b9d6b10174bb3f17d10992",
"filterElement": "EQUALS",
"value": "8a19b63f74b9d6b10174bb3f17d10995",
"linkingOperator": "AND",
"groupNumber": 0
}
},
{
"encodedKey": "8a19b63f74b9d6b10174bb6646280a78",
"id": "656383934",
"value": "dep 1 b",
"score": "-3",
"constraint": {
"encodedKey": "8a19b63f74b9d6b10174bb6646280a79",
"dataFieldType": "CUSTOM",
"dataItemType": "CENTRE",
"dataType": "STRING",
"customFieldKey": "8a19b63f74b9d6b10174bb3f17d10992",
"filterElement": "EQUALS",
"value": "8a19b63f74b9d6b10174bb3f17d10995",
"linkingOperator": "AND",
"groupNumber": 0
}
},
{
"encodedKey": "8a19b63f74b9d6b10174bb6646280a7a",
"id": "745255722",
"value": "dep 2 a",
"score": "10",
"constraint": {
"encodedKey": "8a19b63f74b9d6b10174bb6646280a7b",
"dataFieldType": "CUSTOM",
"dataItemType": "CENTRE",
"dataType": "STRING",
"customFieldKey": "8a19b63f74b9d6b10174bb3f17d10992",
"filterElement": "EQUALS",
"value": "8a19b63f74b9d6b10174bb3f17d10996",
"linkingOperator": "AND",
"groupNumber": 0
}
},
{
"encodedKey": "8a19b63f74b9d6b10174bb6646280a7c",
"id": "2093285980",
"value": "dep 2 b",
"score": "-5",
"constraint": {
"encodedKey": "8a19b63f74b9d6b10174bb66462a0a7d",
"dataFieldType": "CUSTOM",
"dataItemType": "CENTRE",
"dataType": "STRING",
"customFieldKey": "8a19b63f74b9d6b10174bb3f17d10992",
"filterElement": "EQUALS",
"value": "8a19b63f74b9d6b10174bb3f17d10996",
"linkingOperator": "AND",
"groupNumber": 0
}
}
],
"viewRights": {
"encodedKey": "8a19b63f74b9d6b10174bb6646250a74",
"isAccessibleByAllUsers": true,
"roles": []
},
"editRights": {
"encodedKey": "8a19b63f74b9d6b10174bb6646250a75",
"isAccessibleByAllUsers": false,
"roles": []
},
"unique": false
},
"value": "dep 2 a",
"amount": "10",
"indexInList": -1,
"customFieldID": "cntr_cf_slct_2",
"customFieldSetGroupIndex": 0
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ok | CentreApiV1 |
Update Custom Info for Centre
PATCH /centres/{centreId}/custominformation
Update custom field values
Update custom field values
Example requests
Update a single custom field
{
"customInformation": [
{
"customFieldID": "custom_field_2",
"value": "3"
}
]
}
Update a field in a group
{
"customInformation": [
{
"customFieldID": "cf_grouped_field",
"value": "new value",
"customFieldSetGroupIndex": "0"
}
]
}
update multiple custom fields
{
"customInformation": [
{
"customFieldID": "cf_grouped_field_2",
"value": "3",
"customFieldSetGroupIndex": "0"
},
{
"customFieldID": "field_3",
"value": "divorced"
}
]
}
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
customInformation | [object] | none | body | false |
» customFieldID | string | none | body | true |
» value | string | none | body | true |
» customFieldSetGroupIndex | string | Required if field to update is part of a group, if the Field Set Group Index is not set, a new group will be created with the value provided. | body | false |
centreId | string | The ID of the centre | path | true |
Example Responses
200 : OK
Success Response
{
"returnCode": 0,
"returnStatus": "SUCCESS"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | Inline |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
Get Custom Info for Centre
GET /centres/{centreId}/custominformation/{customFieldId}
Get a custom field for a centre
Allows retrieving a custom field value for a given centre directly by the ID/key of the centre and the ID/key of the custom field.
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
centreId | string | The ID of the centre. | path | true |
customFieldId | string | The ID of the custom field. | path | true |
Example Responses
200 : OK
A custom field
[
{
"encodedKey": "8a19cd6f74674df9017467f25aab02c6",
"parentKey": "8a193c26722b51b701722d779e7122de",
"customFieldKey": "8a19cd6f74674df9017467ef8e6802af",
"customField": {
"encodedKey": "8a19cd6f74674df9017467ef8e6802af",
"id": "cf_centre",
"creationDate": "2020-09-07T09:42:33+0000",
"lastModifiedDate": "2020-09-07T09:42:33+0000",
"name": "Example Custom Field",
"type": "BRANCH_INFO",
"dataType": "CHECKBOX",
"valueLength": "SHORT",
"isDefault": false,
"isRequired": false,
"description": "an example custom field of the checkbox type",
"customFieldSet": {
"encodedKey": "8a19cd6f74674df9017467ef8e6802ae",
"id": "_example_centre_custom_field_set",
"name": "example centre custom field set",
"notes": "example custom field set",
"createdDate": "2020-09-07T09:41:50+0000",
"lastModifiedDate": "2020-09-07T09:41:50+0000",
"indexInList": 2,
"type": "BRANCH_INFO",
"usage": "SINGLE"
},
"indexInList": 0,
"state": "NORMAL",
"customFieldSelectionOptions": [],
"viewRights": {
"encodedKey": "8a19cd6f74674df9017467ef8e6802b0",
"isAccessibleByAllUsers": false,
"roles": []
},
"editRights": {
"encodedKey": "8a19cd6f74674df9017467ef8e6802b1",
"isAccessibleByAllUsers": false,
"roles": []
},
"unique": false,
"values": [],
"amounts": {}
},
"value": "TRUE",
"indexInList": -1,
"customFieldID": "cf_centre",
"customFieldSetGroupIndex": -1
}
]
404 : Not Found
not found
{
"returnCode": 903,
"returnStatus": "INVALID_CUSTOM_FIELD_ID"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | CustomFieldApiV1 |
404 | Not Found | Not Found | Inline |
Response Schema
Status Code 404
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
Update Custom Field for Centre
PATCH /centres/{centreId}/custominformation/{customFieldId}
Update a custom field for a centre
Update a custom field value for a centre custom field
Example Requests
Update the value of a custom field
{
"value": "New custom field value"
}
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
value | string | none | body | false |
centreId | string | The ID of the centre. | path | true |
customFieldId | string | The ID of the custom field. | path | true |
Example Responses
200 : OK
Success Response
{
"returnCode": 0,
"returnStatus": "SUCCESS"
}
400 : Bad Request
field is part of a group
{
"returnCode": 916,
"returnStatus": "INVALID_CUSTOM_FIELD_GROUP_INDEX",
"errorSource": "cf_group_field_2"
}
404 : Not Found
not found
{
"returnCode": 903,
"returnStatus": "INVALID_CUSTOM_FIELD_ID"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | Inline |
400 | Bad Request | Bad Request | Inline |
404 | Not Found | Not Found | Inline |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
Status Code 400
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
» errorSource | string | none | false | none |
Status Code 404
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
Delete Custom Field for Centre
DELETE /centres/{centreId}/custominformation/{customFieldId}
Delete Custom Field
Delete a single custom field
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
centreId | string | The ID of the centre. | path | true |
customFieldId | string | The ID of the custom field. | path | true |
Example Responses
200 : OK
Success Response
{
"returnCode": 0,
"returnStatus": "SUCCESS"
}
400 : Bad Request
field is part of a group
{
"returnCode": 916,
"returnStatus": "INVALID_CUSTOM_FIELD_GROUP_INDEX",
"errorSource": "cf_group_field_2"
}
404 : Not Found
not found
{
"returnCode": 903,
"returnStatus": "INVALID_CUSTOM_FIELD_ID"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | Inline |
400 | Bad Request | Bad Request | Inline |
404 | Not Found | Not Found | Inline |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
Status Code 400
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
» errorSource | string | none | false | none |
Status Code 404
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
Update Custom Info (grouped) for Centre
PATCH /centres/{centreId}/custominformation/{customFieldId}/{customFieldGroupSetIndex}
Update grouped custom field
Update custom field which is part of a group
Example Requests
Update custom field value
{
"value": "New value for grouped custom field"
}
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
value | string | none | body | false |
centreId | string | The ID of the centre | path | true |
customFieldId | string | The ID of the custom field | path | true |
customFieldGroupSetIndex | string | none | path | true |
Example Responses
200 : OK
Success Response
{
"returnCode": 0,
"returnStatus": "SUCCESS"
}
400 : Bad Request
wrong group index provided
{
"returnCode": 916,
"returnStatus": "INVALID_CUSTOM_FIELD_GROUP_INDEX",
"errorSource": "cf_group_field_2"
}
404 : Not Found
field not found
{
"returnCode": 903,
"returnStatus": "INVALID_CUSTOM_FIELD_ID"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | Inline |
400 | Bad Request | Bad Request | Inline |
404 | Not Found | Not Found | Inline |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
Status Code 400
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
» errorSource | string | none | false | none |
Status Code 404
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
Delete Custom Info (grouped) for Centre
DELETE /centres/{centreId}/custominformation/{customFieldId}/{customFieldGroupSetIndex}
Delete grouped custom field
Delete a custom field which is part of a group
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
centreId | string | The ID of the centre | path | true |
customFieldId | string | The ID of the custom field | path | true |
customFieldGroupSetIndex | string | none | path | true |
Example Responses
200 : OK
Success Response
{
"returnCode": 0,
"returnStatus": "SUCCESS"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | Inline |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
Get Comments for Centre
GET /centres/{centreId}/comments
Get all centre comments
get all comments for a centre
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
limit | string | none | query | false |
offset | string | none | query | false |
centreId | string | the ID of the centre | path | true |
Example Responses
200 : OK
an array of comments
[
{
"encodedKey": "8a19b7057471f4af017472dc0fd80470",
"parentKey": "8a193c26722b51b701722d77c5e423b7",
"userKey": "8a194075720ece2c017226fced6f005e",
"creationDate": "2020-09-09T14:24:42+0000",
"lastModifiedDate": "2020-09-09T14:24:42+0000",
"text": "aanother afmaefomaef<div><br /></div><div>aefaefaf</div><div><br /></div><div>afaef</div>"
},
{
"encodedKey": "8a193c26722b51b701722d77c8bf25ab",
"parentKey": "8a193c26722b51b701722d77c5e423b7",
"creationDate": "2020-05-19T15:05:24+0000",
"lastModifiedDate": "2020-05-19T15:05:24+0000",
"text": "Should suggest she apply for the agriculture loan given the nature of their business"
}
]
400 : Bad Request
bad centre ID
{
"returnCode": 149,
"returnStatus": "INVALID_ID"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | Inline |
400 | Bad Request | Bad Request | ExecutionStatusApiV1 |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
anonymous | [CommentApiV1] | none | false | none |
» creationDate | string(date-time) | the date and time at which this comment was added | false | none |
» encodedKey | string | a unique key for this comment | false | none |
» lastModifiedDate | string(date-time) | the date and time at which this comment was last modified | false | none |
» parentKey | string | the unique key of the parent object for this comment, for example, the client or loan account to which it relates | false | none |
» text | string | the text of the comment as a string, must be properly JSON escpaped if it contains special characters | false | none |
» userKey | string | the unique key of the user who created the comment | false | none |
Create Comment for Centre
POST /centres/{centreId}/comments
Create a centre Comment
create new comment for a centre
Example Requests
a comment
{
"comment": {
"text": "this is a comment with \" \" all kinds of : \\ / \"non compliant\" stuff & = which has been JSON escaped"
}
}
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
comment | object | an object contining the comment | body | false |
» text | string | text of the comment to be added. if adding complex content make sure it is properly JSON encoded before making your request | body | false |
centreId | string | the ID of the centre | path | true |
Example Responses
200 : OK
a comment
{
"encodedKey": "8a19c34574720f9e0174734a039f06e2",
"parentKey": "8a193c26722b51b701722d77c5e423b7",
"userKey": "8a194075720ece2c017226fced6f005e",
"creationDate": "2020-09-09T14:39:36+0000",
"lastModifiedDate": "2020-09-09T14:39:36+0000",
"text": "this is a comment with \" \" all kinds of : \\ / non compliant stuff & = which has been JSON escaped"
}
400 : Bad Request
extra parameters in the request
{
"returnCode": 27,
"returnStatus": "PARAMETER_NOT_ALLOWED"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | CommentApiV1 |
400 | Bad Request | Bad Request | Inline |
Response Schema
Status Code 400
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
Get Documents for Centre
GET /centres/{centreId}/documents
Get documents for centre
Get all documents for a given centre
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
offset | integer | offset results. use with limit parameter to achieve paging | query | false |
limit | integer | max number of records to return | query | false |
centreId | string | The Id of the centre | path | true |
Example Responses
200 : ok
an array of documents
[
{
"encodedKey": "8a19c035747bf5b901747c5bfb04014b",
"id": 51,
"creationDate": "2020-09-11T08:52:48+0000",
"lastModifiedDate": "2020-09-11T08:52:48+0000",
"documentHolderKey": "8a193c26722b51b701722d779e7122df",
"documentHolderType": "CENTRE",
"name": "covid rules",
"type": "png",
"fileSize": 8258,
"originalFilename": "Screenshot_2020-04-22_at_14.31.29.png",
"location": "BRSIDSLFBOGAYZKUUKCOGGQEDOSEOD",
"description": "some guidelines regarding covid",
"createdByUserKey": "8a194075720ece2c017226fced6f005e",
"userName": "big chief"
},
{
"encodedKey": "8a19a3337476f2d00174775b6a3001ae",
"id": 43,
"creationDate": "2020-09-10T09:31:54+0000",
"lastModifiedDate": "2020-09-10T09:31:54+0000",
"documentHolderKey": "8a193c26722b51b701722d779e7122df",
"documentHolderType": "CENTRE",
"name": "centre doc",
"type": "png",
"fileSize": 32109,
"originalFilename": "clients_duplicate_id.png",
"location": "JRTBQGGVXFQRQRBDGBRWQCTXJNRWXP",
"description": "centre doc desc",
"createdByUserKey": "8a194075720ece2c017226fced6f005e",
"userName": "big chief"
}
]
400 : Bad Request
bad centre ID
{
"returnCode": 4,
"returnStatus": "INVALID_PARAMETERS",
"errorSource": "wrong owner id"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ok | Inline |
400 | Bad Request | Bad Request | ExecutionStatusApiV1 |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
anonymous | [DocumentApiV1] | none | false | none |
» createdByUserKey | string | none | false | none |
» creationDate | string | none | false | none |
» description | string | none | false | none |
» documentHolderKey | string | none | false | none |
» documentHolderType | string | none | false | none |
» encodedKey | string | none | false | none |
» fileSize | number | none | false | none |
» id | number | none | false | none |
» lastModifiedDate | string | none | false | none |
» location | string | none | false | none |
» name | string | none | false | none |
» originalFilename | string | none | false | none |
» type | string | none | false | none |
» userName | string | none | false | none |
Enumerated Values
Property | Value |
---|---|
documentHolderType | BRANCH |
documentHolderType | LOAN_ACCOUNT |
documentHolderType | GROUP |
documentHolderType | DEPOSIT_ACCOUNT |
documentHolderType | LINE_OF_CREDIT |
documentHolderType | LOAN_PRODUCT |
documentHolderType | GL_JOURNAL_ENTRY |
documentHolderType | SAVINGS_PRODUCT |
documentHolderType | USER |
documentHolderType | CLIENT |
documentHolderType | CENTRE |
documentHolderType | ID_DOCUMENT |
Create Document for Centre
POST /centres/{centreId}/documents
Attach new Document to a centre
Attach a new document to a centre
Example Requests
a document to uplaod
{
"document": {
"documentHolderKey": "8a193c26722b51b701722d779e7122df",
"documentHolderType": "CENTRE",
"name": "some image",
"type": "png",
"description": "this is an image file"
},
"documentContent": "iVBORw0KGgoAAAANSUhEUgAAAnYAAAF0CAYAAACudHRvAAABQGlDQ1BJQ0MgUHJvZmlsZQAAKJFjYGASS=="
}
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
body | CreateDocumentApiV1 | a new document to be attached to an entity | body | false |
centreId | string | The Id of the centre | path | true |
Example Responses
201 : Created
uploaded document details
{
"encodedKey": "8a19c035747bf5b901747c5bfb04014d",
"id": 52,
"creationDate": "2020-09-11T08:54:53+0000",
"lastModifiedDate": "2020-09-11T08:54:53+0000",
"documentHolderKey": "8a193c26722b51b701722d779e7122df",
"documentHolderType": "CENTRE",
"name": "some image",
"type": "png",
"fileSize": 32109,
"originalFilename": "some_image.png",
"location": "RCPOUIUHJFBYDRURQNNHMOGBEFIOQF",
"description": "this is an image file",
"createdByUserKey": "8a194075720ece2c017226fced6f005e"
}
400 : Bad Request
filetype provided does not match actual file type
{
"returnCode": 973,
"returnStatus": "INCONSISTENT_EXTENSION_WITH_FILE_CONTENT",
"errorSource": "Invalid extension with file content"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
201 | Created | Created | DocumentApiV1 |
400 | Bad Request | Bad Request | ExecutionStatusApiV1 |
Get Document for Centre by ID
GET /centres/{centreId}/documents/{documentId}
Get a centre Document
Get a specific document attached to a centre
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
centreId | string | the ID of the centre | path | true |
documentId | string | the ID of the document | path | true |
Example Responses
200 : OK
base64 encoded document
"iVBORw0KGgoAAAANSUhEUgAAAEAAAAA9CAYAAAAd1W/BAAAMY2lDQ1BJQ0MgUHJvZmlsZQAASImVVwdck0cbv3dkkrACEZAR9hJFZgAZIawIAjIFUQlJIGHEmBBE3NRSBesWUZxoVUTRagWkDkSssyhu6yiKqFRqsYoLle8yoNZ+4/c9v9+993+fe+7/jNzlvQNAr5Mvk+Wj+gAUSAvlCZGhrElp6SzSI4ABU0ADtsCTL1DIOPHxMQDKUP93eX0DIKr+qpuK65/j/1UMhSKFAAAkA=="
400 : Bad Request
bad Document ID
{
"returnCode": 970,
"returnStatus": "INVALID_DOCUMENT_ID"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | string |
400 | Bad Request | Bad Request | ExecutionStatusApiV1 |
Delete Document for Centre
DELETE /centres/{centreId}/documents/{documentId}
Delete a centre Document
Delete a document attached to a centre
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
centreId | string | the ID of the centre | path | true |
documentId | string | the ID of the document | path | true |
Example Responses
200 : OK
Success Response
{
"returnCode": 0,
"returnStatus": "SUCCESS"
}
400 : Bad Request
bad Document ID
{
"returnCode": 970,
"returnStatus": "INVALID_DOCUMENT_ID"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | ExecutionStatusApiV1 |
400 | Bad Request | Bad Request | ExecutionStatusApiV1 |
Client Types
Retrieves all the client types in the organization.
Get Client Types
GET /clienttypes
List client types
Get a list of client types in JSON format.
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
for | string | Filters client types. | query | false |
Enumerated Values
Parameter | Value |
---|---|
for | CLIENTS |
for | GROUPS |
Example Responses
200 : ok
a list of client types
[
{
"encodedKey": "8a3e435149cd61eb0149cd74b1cb003b",
"name": "Client",
"id": "client",
"clientType": "CLIENT",
"creationDate": "2014-11-20T13:46:57+0000",
"canOpenAccounts": true,
"canGuarantee": true,
"requireID": false,
"index": -1
},
{
"encodedKey": "8a0ca02a4ba46b0d014ba74fc5a30c00",
"name": "Power of Attorney holders",
"id": "Power",
"clientType": "CLIENT",
"creationDate": "2015-02-20T14:06:38+0000",
"createdByUserKey": "8a8603b4497abb2101497b6c59cc0b33",
"canOpenAccounts": false,
"canGuarantee": false,
"requireID": false,
"index": 2147483647
},
{
"encodedKey": "8a3edf494b25cedc014b2661f6d300b9",
"name": "Guarantor",
"id": "Guarantor",
"clientType": "CLIENT",
"creationDate": "2015-01-26T13:15:29+0000",
"createdByUserKey": "8a8603b4497abb2101497b6c59cc0b33",
"canOpenAccounts": false,
"canGuarantee": true,
"requireID": true,
"index": 2147483647
},
{
"encodedKey": "8a3e435149cd61eb0149cd74b9560044",
"name": "Group",
"id": "group",
"clientType": "GROUP",
"creationDate": "2014-11-20T13:46:59+0000",
"canOpenAccounts": true,
"canGuarantee": false,
"requireID": false,
"index": -1
}
]
400 : Bad Request
bad filter value
{
"returnCode": 4,
"returnStatus": "INVALID_PARAMETERS",
"errorSource": "invalid for parameter"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ok | Inline |
400 | Bad Request | Bad Request | Inline |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
anonymous | [ClientRoleFullApiV1] | none | false | none |
» canGuarantee | boolean | whether this client type can guarantee loans | true | none |
» canOpenAccounts | boolean | whether this client type can open accounts | true | none |
» clientType | string | which entity this type is valid for, either CLIENT or GROUP | true | none |
» createdByUserKey | string | if this client type was not one of the defaults provided by Mambu the encoded key of the user who created it will be displayed here | false | none |
» creationDate | string(date-time) | timestamp of when this group was created | true | none |
» description | string | description of this client type as provided through the Mambu UI | false | none |
» encodedKey | string | a unique ID for this client type | true | none |
» id | string | the machine-readable ID for this client type | true | none |
» idPattern | string | the pattern used to generate IDs for clients of this type, @ represents a random letter, # indicates a random number, $ represents a random letter or number | false | none |
» index | number | none | true | none |
» name | string | the human-readable name of this client type | true | none |
» requireID | boolean | whether ID is required for this client type | true | none |
» useDefaultAddress | boolean | whether an address can be associated with clients of this type | true | none |
Enumerated Values
Property | Value |
---|---|
clientType | GROUP |
clientType | CLIENT |
Status Code 400
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | string | none | false | none |
» returnStatus | string | none | false | none |
» errorSource | string | none | false | none |
Clients
Allows you to view, create and update clients. Clients may have associated information such as their address, custom fields or identification documents. It's also possible to search for clients using information such as as their names or identification documents.
Get all Clients
GET /clients
List clients
Allows retrieving clients. When retrieving a client, all their associated information such as custom fields, addresses and identification documents may also be returned if requested. An empty list is returned if no clients are found.
Any combinations can be used but note that an AND search will be performed.
Please Note! Lookups by names are case sensitive. If an insensitive lookup is required please use the Objects Search API.
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
centreId | string | Looking up clients assigned to a centre using centre id/key | query | false |
branchId | string | Looking up clients assigned to a branch using branch id/key | query | false |
lastName | string | Used for looking up a client by their last name | query | false |
firstName | string | Used for looking up a client by their first name | query | false |
birthdate | string(date) | Looking up a client by their birthdate (format: YYYY-MM-DD) | query | false |
idDocument | string | Looking up a client by their id document number | query | false |
state | string | Looking up a client by their current state | query | false |
creditOfficerUsername | string | Looking up a client by the assigned credit officer username (required if the user making the call has the "Credit Officer" role and the option "Can access other credit officers clients" is not activated) | query | false |
Example Responses
200 : ok
a list of clients
[
{
"encodedKey": "8a193c26722b51b701722d77c69e2406",
"state": "INACTIVE",
"id": "80",
"creationDate": "2020-05-19T15:05:24+0000",
"lastModifiedDate": "2020-05-19T15:05:24+0000",
"firstName": "Hyiab",
"lastName": "Longoria",
"homePhone": "3788731",
"birthDate": "1972-10-07T15:05:24+0000",
"gender": "MALE",
"notes": "The neighbors mentioned that he is an <b>honest and hard working man.</b>",
"loanCycle": 0,
"groupLoanCycle": 0,
"preferredLanguage": "ENGLISH",
"clientRole": {
"encodedKey": "8a194075720ece2c017226fcf55e0068"
}
},
{
"encodedKey": "8a193c26722b51b701722d77c69e2405",
"state": "INACTIVE",
"id": "79",
"creationDate": "2020-05-19T15:05:24+0000",
"lastModifiedDate": "2020-05-19T15:05:24+0000",
"firstName": "Buthayna",
"lastName": "Simon",
"homePhone": "2379200",
"birthDate": "1990-08-17T15:05:24+0000",
"gender": "FEMALE",
"notes": "Lives with three daughters and old father. The daughters are learning how to paint so that they can sell the paintings and start helping their mother repaying the loan. ",
"loanCycle": 0,
"groupLoanCycle": 0,
"preferredLanguage": "ENGLISH",
"clientRole": {
"encodedKey": "8a194075720ece2c017226fcf55e0068"
}
},
{
"encodedKey": "8a193c26722b51b701722d77c69e2404",
"state": "INACTIVE",
"id": "78",
"creationDate": "2020-05-19T15:05:24+0000",
"lastModifiedDate": "2020-05-19T15:05:24+0000",
"firstName": "Uros",
"lastName": "Kamińska",
"homePhone": "(73) 161-529",
"birthDate": "1989-04-03T15:05:24+0000",
"gender": "FEMALE",
"notes": "Lives with three daughters and old father. The daughters are learning how to paint so that they can sell the paintings and start helping their mother repaying the loan. ",
"loanCycle": 0,
"groupLoanCycle": 0,
"preferredLanguage": "ENGLISH",
"clientRole": {
"encodedKey": "8a194075720ece2c017226fcf55e0068"
}
},
{
"encodedKey": "8a193c26722b51b701722d77c69b2403",
"state": "INACTIVE",
"id": "77",
"creationDate": "2020-05-19T15:05:24+0000",
"lastModifiedDate": "2020-05-19T15:05:24+0000",
"firstName": "اسفندیار",
"lastName": "Czarnecki",
"homePhone": "051-043-414",
"birthDate": "1984-10-27T15:05:24+0000",
"gender": "FEMALE",
"notes": "Her business is the only source of income of the household of 4.",
"loanCycle": 0,
"groupLoanCycle": 0,
"preferredLanguage": "ENGLISH",
"clientRole": {
"encodedKey": "8a194075720ece2c017226fcf55e0068"
}
},
{
"encodedKey": "8a193c26722b51b701722d77c69b2402",
"state": "INACTIVE",
"id": "76",
"creationDate": "2020-05-19T15:05:24+0000",
"lastModifiedDate": "2020-05-19T15:05:24+0000",
"firstName": "Gilda",
"lastName": "Nwankwo",
"homePhone": "(94) 524-867",
"birthDate": "1974-04-26T15:05:24+0000",
"gender": "MALE",
"notes": "Lives with three daughters and old father. The daughters are learning how to paint so that they can sell the paintings and start helping their mother repaying the loan. ",
"loanCycle": 0,
"groupLoanCycle": 0,
"preferredLanguage": "ENGLISH",
"clientRole": {
"encodedKey": "8a194075720ece2c017226fcf55e0068"
}
},
{
"encodedKey": "8a193c26722b51b701722d77c69b2401",
"state": "INACTIVE",
"id": "75",
"creationDate": "2020-05-19T15:05:24+0000",
"lastModifiedDate": "2020-05-19T15:05:24+0000",
"firstName": "Marcelina",
"lastName": "Sawicka",
"homePhone": "041-831-623",
"birthDate": "1970-02-02T15:05:24+0000",
"gender": "FEMALE",
"notes": "Her business is the only source of income of the household of 4.",
"loanCycle": 0,
"groupLoanCycle": 0,
"preferredLanguage": "ENGLISH",
"clientRole": {
"encodedKey": "8a194075720ece2c017226fcf55e0068"
}
},
{
"encodedKey": "8a193c26722b51b701722d77c69b2400",
"state": "INACTIVE",
"id": "74",
"creationDate": "2020-05-19T15:05:24+0000",
"lastModifiedDate": "2020-05-19T15:05:24+0000",
"firstName": "Šimica",
"lastName": "Tomaszewska",
"homePhone": "2102191",
"birthDate": "1963-05-21T15:05:24+0000",
"gender": "FEMALE",
"notes": "The neighbors mentioned that he is an <b>honest and hard working man.</b>",
"loanCycle": 0,
"groupLoanCycle": 0,
"preferredLanguage": "ENGLISH",
"clientRole": {
"encodedKey": "8a194075720ece2c017226fcf55e0068"
}
},
{
"encodedKey": "8a193c26722b51b701722d77c69b23ff",
"state": "INACTIVE",
"id": "73",
"creationDate": "2020-05-19T15:05:24+0000",
"lastModifiedDate": "2020-05-19T15:05:24+0000",
"firstName": "Carina",
"lastName": "Jaworski",
"homePhone": "(20) 318-317",
"birthDate": "1976-04-20T15:05:24+0000",
"gender": "MALE",
"notes": "Her business is the only source of income of the household of 4.",
"loanCycle": 0,
"groupLoanCycle": 0,
"preferredLanguage": "ENGLISH",
"clientRole": {
"encodedKey": "8a194075720ece2c017226fcf55e0068"
}
},
{
"encodedKey": "8a193c26722b51b701722d77c69723fe",
"state": "INACTIVE",
"id": "72",
"creationDate": "2020-05-19T15:05:24+0000",
"lastModifiedDate": "2020-05-19T15:05:24+0000",
"firstName": "Sobiesław",
"lastName": "Medhane",
"homePhone": "2352426",
"birthDate": "1961-01-26T15:05:24+0000",
"gender": "FEMALE",
"notes": "Lives with three daughters and old father. The daughters are learning how to paint so that they can sell the paintings and start helping their mother repaying the loan. ",
"loanCycle": 0,
"groupLoanCycle": 0,
"preferredLanguage": "ENGLISH",
"clientRole": {
"encodedKey": "8a194075720ece2c017226fcf55e0068"
}
},
{
"encodedKey": "8a193c26722b51b701722d77c69723fd",
"state": "INACTIVE",
"id": "71",
"creationDate": "2020-05-19T15:05:24+0000",
"lastModifiedDate": "2020-05-19T15:05:24+0000",
"firstName": "Mara",
"lastName": "Duvnjak",
"homePhone": "051-625-096",
"birthDate": "1974-01-01T15:05:24+0000",
"gender": "FEMALE",
"notes": "Generally a very honest, open individual who exudes warmth and trust.",
"loanCycle": 0,
"groupLoanCycle": 0,
"preferredLanguage": "ENGLISH",
"clientRole": {
"encodedKey": "8a194075720ece2c017226fcf55e0068"
}
},
{
"encodedKey": "8a193c26722b51b701722d77c69723fc",
"state": "INACTIVE",
"id": "70",
"creationDate": "2020-05-19T15:05:24+0000",
"lastModifiedDate": "2020-05-19T15:05:24+0000",
"firstName": "Mãnh",
"lastName": "Baba",
"homePhone": "5438282",
"birthDate": "1976-08-18T15:05:24+0000",
"gender": "FEMALE",
"notes": "The neighbors mentioned that he is an <b>honest and hard working man.</b>",
"loanCycle": 0,
"groupLoanCycle": 0,
"preferredLanguage": "ENGLISH",
"clientRole": {
"encodedKey": "8a194075720ece2c017226fcf55e0068"
}
},
{
"encodedKey": "8a193c26722b51b701722d77c69723fb",
"state": "INACTIVE",
"id": "69",
"creationDate": "2020-05-19T15:05:24+0000",
"lastModifiedDate": "2020-05-19T15:05:24+0000",
"firstName": "Asztrik",
"lastName": "Kasza",
"homePhone": "2179544",
"birthDate": "1965-06-10T15:05:24+0000",
"gender": "MALE",
"notes": "Lives with three daughters and old father. The daughters are learning how to paint so that they can sell the paintings and start helping their mother repaying the loan. ",
"loanCycle": 0,
"groupLoanCycle": 0,
"preferredLanguage": "ENGLISH",
"clientRole": {
"encodedKey": "8a194075720ece2c017226fcf55e0068"
}
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ok | Inline |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
anonymous | [ClientApiV1] | none | false | none |
» activationDate | string | none | false | none |
» approvedDate | string | none | false | none |
» assignedBranchKey | string | none | false | none |
» assignedCentreKey | string | none | false | none |
» assignedUserKey | string | none | false | none |
» birthDate | string | none | false | none |
» clientRole | ClientRoleBasicApiV1 | none | false | none |
»» encodedKey | string | none | false | none |
» closedDate | string | none | false | none |
» creationDate | string | none | false | none |
» emailAddress | string | none | false | none |
» encodedKey | string | none | false | none |
» firstName | string | none | false | none |
» gender | string | none | false | none |
» groupLoanCycle | number | none | false | none |
» homePhone | string | none | false | none |
» id | string | none | false | none |
» idPattern | string | none | false | none |
» lastModifiedDate | string | none | false | none |
» lastName | string | none | false | none |
» loanCycle | number | none | false | none |
» middleName | string | none | false | none |
» migrationEvent | DataMigrationEventApiV1 | none | false | none |
»» creationDate | string | none | false | none |
»» encodedKey | string | none | false | none |
»» numCentresImported | number | none | false | none |
»» numClientsImported | number | none | false | none |
»» numGLAccountsImported | number | none | false | none |
»» numGroupsImported | number | none | false | none |
»» numLoanRepaymentsImported | number | none | false | none |
»» numLoanTransactionsImported | number | none | false | none |
»» numLoansImported | number | none | false | none |
»» numSavingsImported | number | none | false | none |
»» state | string | none | false | none |
»» type | string | none | false | none |
» mobilePhone1 | string | none | false | none |
» mobilePhone2 | string | none | false | none |
» notes | string | none | false | none |
» portalPreferences | PortalPreferencesApiV1 | none | false | none |
»» encodedKey | string | none | false | none |
»» lastLoggedInDate | string | none | false | none |
»» password | string | none | false | none |
»» portalState | string | none | false | none |
» preferredLanguage | string | none | false | none |
» profilePictureKey | string | none | false | none |
» profileSignatureKey | string | none | false | none |
» state | string | none | false | none |
Enumerated Values
Property | Value |
---|---|
gender | MALE |
gender | FEMALE |
state | REVERTED |
state | DRAFT |
state | APPROVED |
type | IMPORT |
type | EXPORT |
portalState | DISABLED |
portalState | ENABLED |
preferredLanguage | PORTUGESE |
preferredLanguage | RUSSIAN |
preferredLanguage | ROMANIAN |
preferredLanguage | ENGLISH |
preferredLanguage | SPANISH |
preferredLanguage | GEORGIAN |
preferredLanguage | BURMESE |
preferredLanguage | PHRASE |
preferredLanguage | CHINESE |
preferredLanguage | FRENCH |
preferredLanguage | INDONESIAN |
state | PENDING_APPROVAL |
state | ACTIVE |
state | INACTIVE |
state | EXITED |
state | BLACKLISTED |
state | REJECTED |
Create or Update Client
POST /clients
Create or update a client
Mambu allows for creation and updating of client information. This includes client's personal and contact information, custom fields, identification documents and the address. The client is returned as a response.
You can provide some basic information as a request with query parameters and no body, however, if you need to create a client with more complex information, such as custom fields, we recommend posting with a JSON body.
- If the "idDocuments":[],"addresses":[], or "customInformation":[] arrays are not provided, only the client information will be updated/stored
- For JSON update, the developer must specify the client ID in the path ({/api/clients/{id}} and also provide the encodedKey in the JSON body
{
client: {
encodedKey:"someKey"
}
}
If the encoded key/identifier is invalid, an exception code will be returned
In order to remove all custom fields, identification documents or addresses, you can send an empty array:
{
"client": {
"encodedKey":"abc",
//other client information
},
"idDocuments":[],
"addresses":[],
"customInformation":[]
}
- If you are updating only one entry in an array (ID document, Custom Information, Addresses) you must also provide the information for the other members of the array otherwise these will be deleted
- For example :if there are 3 custom fields in database and only one provided in the "customInformation" array for update, the other 2 from the database will get deleted and only the one from the POST request will get stored/updated
- For custom fields - the matching to determine the difference between an updated and a new field is done using customFieldID
- For custom fields - if the custom field ID is invalid or the value is invalid an exception code will be returned
- For custom fields - Date custom fields are currently date only, not date-time. Please follow CIF-22 for updates on the development of this functionality.
- See Custom Fields API for more information about custom fields and custom fields sets
- For identification documents and addresses the encoded key is used for matching
- Only one address can be stored/updated in database, if the addresses array contains more than one address, only the first address will get stored/updated
- Notifications should be sent when a client is created via APIs (If there are templates added for client creation and the client has email address / mobile phone number)
Example Requests
Create a client with minimal data using query parameters
POST /api/clients?firstName=Trevor&lastName=Linden&emailAddress=trevor.linden%40mambu.com
Create a client with minimal data using JSON
{
"client":{
"firstName":"Trevor",
"lastName":"Linden",
"middleName":"Good",
"homePhone":"7899221665",
"emailAddress":"trevor.linden@mambu.com",
"mobilePhone1":"211111111",
"mobilePhone2":"122222222",
"gender":"MALE",
"clientRole": {"encodedKey":"d9df8bc78a0234ccc934a845c"}
}
}
Create a new client with id documents, an address and custom fields
{
"client": {
"firstName": "Max",
"lastName": "Alexander",
"middleName": "Frank",
"homePhone": "56611235498",
"emailAddress": "max.alexander@mambu.com",
"mobilePhone1": "211111111",
"gender": "MALE"
},
"idDocuments": [
{
"documentType": "CI",
"documentId": "23453",
"issuingAuthority": "Police",
"validUntil": "2014-09-30T00:00:00+0000",
"identificationDocumentTemplateKey": "9b0a97094b4cd73f014b5f5ef0e811d2"
},
{
"documentType": "Passport",
"documentId": "sss332",
"issuingAuthority": "Passport Agency",
"validUntil": "2014-09-30T00:00:00+0000",
"identificationDocumentTemplateKey": "2a0a00a24b4ce72a025c4afefce821e9"
}
],
"addresses": [
{
"line1": "8 Howling Lane",
"line2": "Hackney",
"city": "London",
"region": "London",
"postcode": "EC1 FB12",
"country": "United Kingdom"
}
],
"customInformation": [
{
"value": "1",
"customFieldID": "Family_Members"
},
{
"value": "TRUE",
"customFieldID": "Has_children"
},
{
"value": "Some Studies",
"customFieldID": "Studies"
}
]
}
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
firstName | string | Client's first name. | query | true |
lastName | string | Client's last name. | query | true |
birthDate | string | none | query | false |
gender | string | none | query | false |
homephone | string | none | query | false |
mobilephone | string | none | query | false |
string | none | query | false | |
notes | string | Any additional rich text html notes about the clients * | query | false |
clientRole | string | none | query | false |
assignedUserKey | string | none | query | false |
body | CreateOrUpdateClientRequest | none | body | false |
Detailed descriptions
notes: Any additional rich text html notes about the clients *
Example Responses
200 Response
{
"addresses": [
{
"addressType": "string",
"city": "string",
"country": "string",
"encodedKey": "string",
"indexInList": 0,
"latitude": 0,
"line1": "string",
"line2": "string",
"longitude": 0,
"parentKey": "string",
"postcode": "string",
"region": "string",
"toBeDeleted": true
}
],
"client": {
"activationDate": "string",
"approvedDate": "string",
"assignedBranchKey": "string",
"assignedCentreKey": "string",
"assignedUserKey": "string",
"birthDate": "string",
"clientRole": {
"encodedKey": "string"
},
"closedDate": "string",
"creationDate": "string",
"emailAddress": "string",
"encodedKey": "string",
"firstName": "string",
"gender": "MALE",
"groupLoanCycle": 0,
"homePhone": "string",
"id": "string",
"idPattern": "string",
"lastModifiedDate": "string",
"lastName": "string",
"loanCycle": 0,
"middleName": "string",
"migrationEvent": {
"creationDate": "string",
"encodedKey": "string",
"numCentresImported": 0,
"numClientsImported": 0,
"numGLAccountsImported": 0,
"numGroupsImported": 0,
"numLoanRepaymentsImported": 0,
"numLoanTransactionsImported": 0,
"numLoansImported": 0,
"numSavingsImported": 0,
"state": "REVERTED",
"type": "IMPORT"
},
"mobilePhone1": "string",
"mobilePhone2": "string",
"notes": "string",
"portalPreferences": {
"encodedKey": "string",
"lastLoggedInDate": "string",
"password": "string",
"portalState": "DISABLED"
},
"preferredLanguage": "PORTUGESE",
"profilePictureKey": "string",
"profileSignatureKey": "string",
"state": "PENDING_APPROVAL"
},
"customInformation": [
{
"amount": 0,
"customField": {
"amounts": {
"property1": 0,
"property2": 0
},
"builtInCustomFieldId": "MOBILE_PHONE",
"creationDate": "string",
"customFieldProductSettings": [
{
"customFieldEncodedKey": "string",
"encodedKey": "string",
"isDefault": true,
"isRequired": true,
"linkType": "CLIENT_ROLE",
"productKey": "string"
}
],
"customFieldSelectionOptions": [
{
"constraint": {
"customFieldKey": "string",
"dataFieldType": "NATIVE",
"dataFieldValue": "string",
"dataItemType": "WRITTEN_OFF_LOANS",
"dataType": "ENUM",
"encodedKey": "string",
"filterElement": "STARTS_WITH_CASE_SENSITIVE",
"groupNumber": 0,
"index": 0,
"linkingOperator": "OR",
"secondValue": "string",
"value": "string"
},
"encodedKey": "string",
"id": "string",
"score": 0,
"value": "string"
}
],
"customFieldSet": {
"builtInType": "DETAILS",
"createdDate": "string",
"customFields": [
{}
],
"encodedKey": "string",
"id": "string",
"indexInList": 0,
"lastModifiedDate": "string",
"name": "string",
"notes": "string",
"type": "USER_INFO",
"usage": "SINGLE"
},
"dataType": "GROUP_LINK",
"description": "string",
"editRights": {
"encodedKey": "string",
"isAccessibleByAllUsers": true,
"roles": [
"string"
]
},
"encodedKey": "string",
"id": "string",
"indexInList": 0,
"isDefault": true,
"isRequired": true,
"lastModifiedDate": "string",
"name": "string",
"state": "DEACTIVATED",
"type": "USER_INFO",
"unique": true,
"validationPattern": "string",
"valueLength": "SHORT",
"values": [
"string"
],
"viewRights": {
"encodedKey": "string",
"isAccessibleByAllUsers": true,
"roles": [
"string"
]
}
},
"customFieldID": "string",
"customFieldKey": "string",
"customFieldSetGroupIndex": 0,
"encodedKey": "string",
"indexInList": 0,
"linkedEntityKeyValue": "string",
"parentKey": "string",
"selectionKey": "string",
"value": "string"
}
],
"groupKeys": [
"string"
],
"idDocuments": [
{
"clientKey": "string",
"documentId": "string",
"documentType": "string",
"encodedKey": "string",
"identificationDocumentTemplateKey": "string",
"indexInList": 0,
"issuingAuthority": "string",
"toBeDeleted": true,
"validUntil": "string",
"validUntilDTOdate": {
"dayOfMonth": 0,
"monthOfYear": 0,
"year": 0
}
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ok | CreateOrUpdateClientResponse |
Get Lines of Credit for Client
GET /clients/{clientId}/linesofcredit
Get lines of credit for a Client
Retrieve the associated lines of credit for a client.
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
clientId | string | none | path | true |
fullDetails | boolean | Get full object including all nested fields | query | false |
Example Responses
200 : ok
Lines of Credit with basic details
[
{
"encodedKey": "8a19b6e4746cc6ed01746cf1436c00c3",
"id": "JRW117",
"clientKey": "8a193c26722b51b701722d77c5e423b7",
"startDate": "2020-09-01T00:00:00+0000",
"expireDate": "2020-12-31T00:00:00+0000",
"creationDate": "2020-09-08T08:59:45+0000",
"approvedDate": "2020-09-08T10:59:45+0000",
"lastModifiedDate": "2020-09-08T08:59:45+0000",
"state": "APPROVED",
"amount": "100",
"exposureLimitType": "APPROVED_AMOUNT",
"notes": "adf",
"availableCreditAmount": "100"
},
{
"encodedKey": "8a19c162746ce3b201746cf0ce24007a",
"id": "FEP015",
"clientKey": "8a193c26722b51b701722d77c5e423b7",
"startDate": "2020-09-01T00:00:00+0000",
"expireDate": "2020-12-31T00:00:00+0000",
"creationDate": "2020-09-08T09:00:48+0000",
"approvedDate": "2020-09-08T11:00:48+0000",
"lastModifiedDate": "2020-09-08T09:00:48+0000",
"state": "APPROVED",
"amount": "10000",
"exposureLimitType": "OUTSTANDING_AMOUNT",
"notes": "some fascinating line of credit notes",
"availableCreditAmount": "10000"
},
{
"encodedKey": "8a19c162746ce3b201746cf0ce24007c",
"id": "FEP007",
"clientKey": "8a193c26722b51b701722d77c5e423b7",
"startDate": "2020-09-01T00:00:00+0000",
"expireDate": "2021-12-31T00:00:00+0000",
"creationDate": "2020-09-08T09:01:46+0000",
"approvedDate": "2020-09-08T11:01:46+0000",
"lastModifiedDate": "2020-09-08T09:19:41+0000",
"state": "APPROVED",
"amount": "10000",
"exposureLimitType": "OUTSTANDING_AMOUNT",
"notes": "some fascinating line of credit notes",
"availableCreditAmount": "10000"
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ok | LineOfCreditFullApiV1 |
Search for Clients
POST /clients/search
Search for Clients
search for clients based on some criteria
Example Requests
Get all clients identifying as male and sort by birthdate
{
"filterConstraints":[
{
"filterSelection":"GENDER",
"filterElement":"EQUALS",
"value":"MALE"
}
],
"sortDetails": {
"sortingColumn": "BIRTHDATE",
"sortingOrder": "DESC"
}
}
Get all clients added this month
{
"filterConstraints":[
{
"filterSelection":"CREATION_DATE",
"filterElement":"THIS_MONTH"
}
]
}
Get all clients with a birth date between a given range
{
"filterConstraints": [
{
"filterSelection": "BIRTHDATE",
"filterElement": "BETWEEN",
"value": "1957-01-01",
"secondValue": "1965-06-20"
}
]
}
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
offset | integer | none | query | false |
limit | integer | none | query | false |
fullDetails | boolean | none | query | false |
body | FilterApiV1 | none | body | false |
Example Responses
200 Response
[
{
"activationDate": "string",
"approvedDate": "string",
"assignedBranchKey": "string",
"assignedCentreKey": "string",
"assignedUserKey": "string",
"birthDate": "string",
"clientRole": {
"encodedKey": "string"
},
"closedDate": "string",
"creationDate": "string",
"emailAddress": "string",
"encodedKey": "string",
"firstName": "string",
"gender": "MALE",
"groupLoanCycle": 0,
"homePhone": "string",
"id": "string",
"idPattern": "string",
"lastModifiedDate": "string",
"lastName": "string",
"loanCycle": 0,
"middleName": "string",
"migrationEvent": {
"creationDate": "string",
"encodedKey": "string",
"numCentresImported": 0,
"numClientsImported": 0,
"numGLAccountsImported": 0,
"numGroupsImported": 0,
"numLoanRepaymentsImported": 0,
"numLoanTransactionsImported": 0,
"numLoansImported": 0,
"numSavingsImported": 0,
"state": "REVERTED",
"type": "IMPORT"
},
"mobilePhone1": "string",
"mobilePhone2": "string",
"notes": "string",
"portalPreferences": {
"encodedKey": "string",
"lastLoggedInDate": "string",
"password": "string",
"portalState": "DISABLED"
},
"preferredLanguage": "PORTUGESE",
"profilePictureKey": "string",
"profileSignatureKey": "string",
"state": "PENDING_APPROVAL"
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ok | Inline |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
anonymous | [ClientApiV1] | none | false | none |
» activationDate | string | none | false | none |
» approvedDate | string | none | false | none |
» assignedBranchKey | string | none | false | none |
» assignedCentreKey | string | none | false | none |
» assignedUserKey | string | none | false | none |
» birthDate | string | none | false | none |
» clientRole | ClientRoleBasicApiV1 | none | false | none |
»» encodedKey | string | none | false | none |
» closedDate | string | none | false | none |
» creationDate | string | none | false | none |
» emailAddress | string | none | false | none |
» encodedKey | string | none | false | none |
» firstName | string | none | false | none |
» gender | string | none | false | none |
» groupLoanCycle | number | none | false | none |
» homePhone | string | none | false | none |
» id | string | none | false | none |
» idPattern | string | none | false | none |
» lastModifiedDate | string | none | false | none |
» lastName | string | none | false | none |
» loanCycle | number | none | false | none |
» middleName | string | none | false | none |
» migrationEvent | DataMigrationEventApiV1 | none | false | none |
»» creationDate | string | none | false | none |
»» encodedKey | string | none | false | none |
»» numCentresImported | number | none | false | none |
»» numClientsImported | number | none | false | none |
»» numGLAccountsImported | number | none | false | none |
»» numGroupsImported | number | none | false | none |
»» numLoanRepaymentsImported | number | none | false | none |
»» numLoanTransactionsImported | number | none | false | none |
»» numLoansImported | number | none | false | none |
»» numSavingsImported | number | none | false | none |
»» state | string | none | false | none |
»» type | string | none | false | none |
» mobilePhone1 | string | none | false | none |
» mobilePhone2 | string | none | false | none |
» notes | string | none | false | none |
» portalPreferences | PortalPreferencesApiV1 | none | false | none |
»» encodedKey | string | none | false | none |
»» lastLoggedInDate | string | none | false | none |
»» password | string | none | false | none |
»» portalState | string | none | false | none |
» preferredLanguage | string | none | false | none |
» profilePictureKey | string | none | false | none |
» profileSignatureKey | string | none | false | none |
» state | string | none | false | none |
Enumerated Values
Property | Value |
---|---|
gender | MALE |
gender | FEMALE |
state | REVERTED |
state | DRAFT |
state | APPROVED |
type | IMPORT |
type | EXPORT |
portalState | DISABLED |
portalState | ENABLED |
preferredLanguage | PORTUGESE |
preferredLanguage | RUSSIAN |
preferredLanguage | ROMANIAN |
preferredLanguage | ENGLISH |
preferredLanguage | SPANISH |
preferredLanguage | GEORGIAN |
preferredLanguage | BURMESE |
preferredLanguage | PHRASE |
preferredLanguage | CHINESE |
preferredLanguage | FRENCH |
preferredLanguage | INDONESIAN |
state | PENDING_APPROVAL |
state | ACTIVE |
state | INACTIVE |
state | EXITED |
state | BLACKLISTED |
state | REJECTED |
Get Client by ID
GET /clients/{clientId}
Get Client by ID
get a client by ID or encoded key
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
fullDetails | boolean | Whether to also include custom fields | query | false |
clientId | string | The ID or encoded key of a client | path | true |
Example Responses
200 Response
{
"addresses": [
{
"addressType": "string",
"city": "string",
"country": "string",
"encodedKey": "string",
"indexInList": 0,
"latitude": 0,
"line1": "string",
"line2": "string",
"longitude": 0,
"parentKey": "string",
"postcode": "string",
"region": "string",
"toBeDeleted": true
}
],
"centreId": "string",
"client": {
"activationDate": "string",
"approvedDate": "string",
"assignedBranchKey": "string",
"assignedCentreKey": "string",
"assignedUserKey": "string",
"birthDate": "string",
"clientRole": {
"encodedKey": "string"
},
"closedDate": "string",
"creationDate": "string",
"emailAddress": "string",
"encodedKey": "string",
"firstName": "string",
"gender": "MALE",
"groupLoanCycle": 0,
"homePhone": "string",
"id": "string",
"idPattern": "string",
"lastModifiedDate": "string",
"lastName": "string",
"loanCycle": 0,
"middleName": "string",
"migrationEvent": {
"creationDate": "string",
"encodedKey": "string",
"numCentresImported": 0,
"numClientsImported": 0,
"numGLAccountsImported": 0,
"numGroupsImported": 0,
"numLoanRepaymentsImported": 0,
"numLoanTransactionsImported": 0,
"numLoansImported": 0,
"numSavingsImported": 0,
"state": "REVERTED",
"type": "IMPORT"
},
"mobilePhone1": "string",
"mobilePhone2": "string",
"notes": "string",
"portalPreferences": {
"encodedKey": "string",
"lastLoggedInDate": "string",
"password": "string",
"portalState": "DISABLED"
},
"preferredLanguage": "PORTUGESE",
"profilePictureKey": "string",
"profileSignatureKey": "string",
"state": "PENDING_APPROVAL"
},
"clientTypeId": "string",
"customInformation": [
{
"amount": 0,
"customField": {
"amounts": {
"property1": 0,
"property2": 0
},
"builtInCustomFieldId": "MOBILE_PHONE",
"creationDate": "string",
"customFieldProductSettings": [
{
"customFieldEncodedKey": "string",
"encodedKey": "string",
"isDefault": true,
"isRequired": true,
"linkType": "CLIENT_ROLE",
"productKey": "string"
}
],
"customFieldSelectionOptions": [
{
"constraint": {
"customFieldKey": "string",
"dataFieldType": "NATIVE",
"dataFieldValue": "string",
"dataItemType": "WRITTEN_OFF_LOANS",
"dataType": "ENUM",
"encodedKey": "string",
"filterElement": "STARTS_WITH_CASE_SENSITIVE",
"groupNumber": 0,
"index": 0,
"linkingOperator": "OR",
"secondValue": "string",
"value": "string"
},
"encodedKey": "string",
"id": "string",
"score": 0,
"value": "string"
}
],
"customFieldSet": {
"builtInType": "DETAILS",
"createdDate": "string",
"customFields": [
{}
],
"encodedKey": "string",
"id": "string",
"indexInList": 0,
"lastModifiedDate": "string",
"name": "string",
"notes": "string",
"type": "USER_INFO",
"usage": "SINGLE"
},
"dataType": "GROUP_LINK",
"description": "string",
"editRights": {
"encodedKey": "string",
"isAccessibleByAllUsers": true,
"roles": [
"string"
]
},
"encodedKey": "string",
"id": "string",
"indexInList": 0,
"isDefault": true,
"isRequired": true,
"lastModifiedDate": "string",
"name": "string",
"state": "DEACTIVATED",
"type": "USER_INFO",
"unique": true,
"validationPattern": "string",
"valueLength": "SHORT",
"values": [
"string"
],
"viewRights": {
"encodedKey": "string",
"isAccessibleByAllUsers": true,
"roles": [
"string"
]
}
},
"customFieldID": "string",
"customFieldKey": "string",
"customFieldSetGroupIndex": 0,
"encodedKey": "string",
"indexInList": 0,
"linkedEntityKeyValue": "string",
"parentKey": "string",
"selectionKey": "string",
"value": "string"
}
],
"groupKeys": [
"string"
],
"idDocuments": [
{
"clientKey": "string",
"documentId": "string",
"documentType": "string",
"encodedKey": "string",
"identificationDocumentTemplateKey": "string",
"indexInList": 0,
"issuingAuthority": "string",
"toBeDeleted": true,
"validUntil": "string",
"validUntilDTOdate": {
"dayOfMonth": 0,
"monthOfYear": 0,
"year": 0
}
}
],
"notificationTemplates": [
{
"activated": true,
"authorization": "NO_AUTHORIZATION",
"contentType": "PLAIN_TEXT",
"creationDate": "string",
"customFilter": {
"customConfigurationInfo": {
"creationDate": "string",
"dataViewType": "PORTAL_ACCOUNT_TRANSACTION",
"encodedKey": "string",
"indexInList": 0,
"lastModifiedDate": "string",
"name": "string",
"shared": true,
"userKey": "string"
},
"encodedKey": "string",
"filterConstraints": [
{
"customFieldKey": "string",
"dataFieldType": "NATIVE",
"dataFieldValue": "string",
"dataItemType": "WRITTEN_OFF_LOANS",
"dataType": "ENUM",
"encodedKey": "string",
"filterElement": "STARTS_WITH_CASE_SENSITIVE",
"groupNumber": 0,
"index": 0,
"linkingOperator": "OR",
"secondValue": "string",
"value": "string"
}
]
},
"encodedKey": "string",
"event": "LOAN_CREATED",
"isInUse": true,
"lastModifiedDate": "string",
"name": "string",
"option": "OPT_IN",
"recipient": {
"customField": {
"amounts": {
"property1": 0,
"property2": 0
},
"builtInCustomFieldId": "MOBILE_PHONE",
"creationDate": "string",
"customFieldProductSettings": [
{
"customFieldEncodedKey": "string",
"encodedKey": "string",
"isDefault": true,
"isRequired": true,
"linkType": "CLIENT_ROLE",
"productKey": "string"
}
],
"customFieldSelectionOptions": [
{
"constraint": {
"customFieldKey": "string",
"dataFieldType": "NATIVE",
"dataFieldValue": "string",
"dataItemType": "WRITTEN_OFF_LOANS",
"dataType": "ENUM",
"encodedKey": "string",
"filterElement": "STARTS_WITH_CASE_SENSITIVE",
"groupNumber": 0,
"index": 0,
"linkingOperator": "OR",
"secondValue": "string",
"value": "string"
},
"encodedKey": "string",
"id": "string",
"score": 0,
"value": "string"
}
],
"customFieldSet": {
"builtInType": "DETAILS",
"createdDate": "string",
"customFields": [
{}
],
"encodedKey": "string",
"id": "string",
"indexInList": 0,
"lastModifiedDate": "string",
"name": "string",
"notes": "string",
"type": "USER_INFO",
"usage": "SINGLE"
},
"dataType": "GROUP_LINK",
"description": "string",
"editRights": {
"encodedKey": "string",
"isAccessibleByAllUsers": true,
"roles": [
"string"
]
},
"encodedKey": "string",
"id": "string",
"indexInList": 0,
"isDefault": true,
"isRequired": true,
"lastModifiedDate": "string",
"name": "string",
"state": "DEACTIVATED",
"type": "USER_INFO",
"unique": true,
"validationPattern": "string",
"valueLength": "SHORT",
"values": [
"string"
],
"viewRights": {
"encodedKey": "string",
"isAccessibleByAllUsers": true,
"roles": [
"string"
]
}
},
"encodedKey": "string",
"groupRole": {
"encodedKey": "string",
"name": "string"
},
"recipientType": "CREDIT_OFFICER"
},
"requestType": "HEAD",
"subject": "string",
"targetType": "LOANS",
"template": "string",
"topic": "string",
"trigger": "AUTOMATIC",
"triggerDays": 0,
"type": "EVENT_STREAM",
"url": "string",
"username": "string"
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ok | ClientExpandedApiV1 |
Patch Client Record
PATCH /clients/{clientId}
Patch Client
update an existing client
Example Requests
Change a client's state to blacklisted
{
"client": {
"state": "BLACKLISTED"
}
}
update a client with additional profile and contact information
{
"client": {
"middleName": "Meri",
"clientRoleId": "client",
"homePhone": "(77) 159-443",
"mobilePhone1": "604-271-7041",
"birthDate": "1987-07-08",
"gender": null,
"emailAddress": "test@mambu.com",
"preferredLanguage": "ENGLISH",
"notes": "Powered by Mambu"
}
}
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
body | UpdateClientRequest | none | body | false |
clientId | string | The ID or encoded key of a client | path | true |
Example Responses
200 Response
{
"errorSource": "string",
"returnCode": 0,
"returnStatus": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ok | ExecutionStatusApiV1 |
Update Client
POST /clients/{clientId}
Update a Client
update a client record
Example Requests
Add details to an existing client
{
"client":{
"firstName":"Max",
"lastName":"Alexander",
"middleName":"Frank",
"homePhone":"56611235498",
"emailAddress":"max.alexander@mambu.com",
"mobilePhone1":"211111111",
"gender":"MALE"
}
}
Update client with encodedKey
8a512236413395270141356dbc9f0025
using JSON and remove all custom fields, addresses and ID Documents
{
"client":{
"firstName":"Max",
"lastName":"Alexander",
"middleName":"Frank",
"homePhone":"56611235498",
"emailAddress":"max.alexander@mambu.com",
"mobilePhone1":"211111111",
"gender":"MALE"
},
"idDocuments":[ ],
"addresses":[ ],
"customInformation":[ ]
}
Update a client using JSON and update custom fields, addresses and ID Documents
{
"client": {
"firstName": "Max",
"lastName": "Alexander",
"middleName": "Frank",
"homePhone": "56611235498",
"emailAddress": "max.alexander@mambu.com",
"mobilePhone1": "211111111",
"gender": "MALE"
},
"idDocuments": [
{
"documentType": "CI",
"documentId": "23453",
"issuingAuthority": "Police",
"validUntil": "2014-09-30T00:00:00+0000",
"identificationDocumentTemplateKey": "9b0a97094b4cd73f014b5f5ef0e811d2"
},
{
"documentType": "Passport",
"documentId": "sss332",
"issuingAuthority": "Passport Agency",
"validUntil": "2014-09-30T00:00:00+0000",
"identificationDocumentTemplateKey": "2a0a00a24b4ce72a025c4afefce821e9"
}
],
"addresses": [
{
"line1": "8 Howling Lane",
"line2": "Hackney",
"city": "London",
"region": "London",
"postcode": "1234554321",
"country": "United Kingdom"
}
],
"customInformation": [
{
"value": "1",
"customFieldID": "Family_Members"
},
{
"value": "TRUE",
"customFieldID": "Has_children"
},
{
"value": "Some Studies",
"customFieldID": "Studies"
}
]
}
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
body | CreateOrUpdateClientRequest | updated client data | body | false |
clientId | string | The ID or encoded key of a client | path | true |
Example Responses
200 Response
{
"addresses": [
{
"addressType": "string",
"city": "string",
"country": "string",
"encodedKey": "string",
"indexInList": 0,
"latitude": 0,
"line1": "string",
"line2": "string",
"longitude": 0,
"parentKey": "string",
"postcode": "string",
"region": "string",
"toBeDeleted": true
}
],
"client": {
"activationDate": "string",
"approvedDate": "string",
"assignedBranchKey": "string",
"assignedCentreKey": "string",
"assignedUserKey": "string",
"birthDate": "string",
"clientRole": {
"encodedKey": "string"
},
"closedDate": "string",
"creationDate": "string",
"emailAddress": "string",
"encodedKey": "string",
"firstName": "string",
"gender": "MALE",
"groupLoanCycle": 0,
"homePhone": "string",
"id": "string",
"idPattern": "string",
"lastModifiedDate": "string",
"lastName": "string",
"loanCycle": 0,
"middleName": "string",
"migrationEvent": {
"creationDate": "string",
"encodedKey": "string",
"numCentresImported": 0,
"numClientsImported": 0,
"numGLAccountsImported": 0,
"numGroupsImported": 0,
"numLoanRepaymentsImported": 0,
"numLoanTransactionsImported": 0,
"numLoansImported": 0,
"numSavingsImported": 0,
"state": "REVERTED",
"type": "IMPORT"
},
"mobilePhone1": "string",
"mobilePhone2": "string",
"notes": "string",
"portalPreferences": {
"encodedKey": "string",
"lastLoggedInDate": "string",
"password": "string",
"portalState": "DISABLED"
},
"preferredLanguage": "PORTUGESE",
"profilePictureKey": "string",
"profileSignatureKey": "string",
"state": "PENDING_APPROVAL"
},
"customInformation": [
{
"amount": 0,
"customField": {
"amounts": {
"property1": 0,
"property2": 0
},
"builtInCustomFieldId": "MOBILE_PHONE",
"creationDate": "string",
"customFieldProductSettings": [
{
"customFieldEncodedKey": "string",
"encodedKey": "string",
"isDefault": true,
"isRequired": true,
"linkType": "CLIENT_ROLE",
"productKey": "string"
}
],
"customFieldSelectionOptions": [
{
"constraint": {
"customFieldKey": "string",
"dataFieldType": "NATIVE",
"dataFieldValue": "string",
"dataItemType": "WRITTEN_OFF_LOANS",
"dataType": "ENUM",
"encodedKey": "string",
"filterElement": "STARTS_WITH_CASE_SENSITIVE",
"groupNumber": 0,
"index": 0,
"linkingOperator": "OR",
"secondValue": "string",
"value": "string"
},
"encodedKey": "string",
"id": "string",
"score": 0,
"value": "string"
}
],
"customFieldSet": {
"builtInType": "DETAILS",
"createdDate": "string",
"customFields": [
{}
],
"encodedKey": "string",
"id": "string",
"indexInList": 0,
"lastModifiedDate": "string",
"name": "string",
"notes": "string",
"type": "USER_INFO",
"usage": "SINGLE"
},
"dataType": "GROUP_LINK",
"description": "string",
"editRights": {
"encodedKey": "string",
"isAccessibleByAllUsers": true,
"roles": [
"string"
]
},
"encodedKey": "string",
"id": "string",
"indexInList": 0,
"isDefault": true,
"isRequired": true,
"lastModifiedDate": "string",
"name": "string",
"state": "DEACTIVATED",
"type": "USER_INFO",
"unique": true,
"validationPattern": "string",
"valueLength": "SHORT",
"values": [
"string"
],
"viewRights": {
"encodedKey": "string",
"isAccessibleByAllUsers": true,
"roles": [
"string"
]
}
},
"customFieldID": "string",
"customFieldKey": "string",
"customFieldSetGroupIndex": 0,
"encodedKey": "string",
"indexInList": 0,
"linkedEntityKeyValue": "string",
"parentKey": "string",
"selectionKey": "string",
"value": "string"
}
],
"groupKeys": [
"string"
],
"idDocuments": [
{
"clientKey": "string",
"documentId": "string",
"documentType": "string",
"encodedKey": "string",
"identificationDocumentTemplateKey": "string",
"indexInList": 0,
"issuingAuthority": "string",
"toBeDeleted": true,
"validUntil": "string",
"validUntilDTOdate": {
"dayOfMonth": 0,
"monthOfYear": 0,
"year": 0
}
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ok | CreateOrUpdateClientResponse |
Anonymize Client Data
POST /clients/{clientId}/action
Anonymize client
In the context of the GDPR, we wanted to provide an option to easily anonymize a client's identifiable data upon request, as an exited client must now have the 'Right to be forgotten'. To learn more about the legal aspects of this, please see Art. 17 GDPR. For information on cloning your production tenant to sandbox with anonymized client data, please see Sandbox.
This gives clients in the exited state, the right to request that all identifiable records are removed (or, more precisely, anonymized up to the point where the client is no longer traceable, but the information that the company needs to keep its systems stable can be kept within some legal standards).
Please be aware This action may only be performed on clients in the exited state. Otherwise, Mambu will return error 3760 "CLIENT_DOES_NOT_HAVE_EXITED_STATE"
A user has the permission to run the above call only via API 1.0 only if he has the 'Anonymize Client Data' permission, which can be granted by an Administrator (in User Permissions > Clients), only to users that have API access.
Please note After the anonymization call is run, a new client ID will be generated and the old client ID will be overwritten. As a consequence, calling the API twice with the same client ID will result in the second call returning a Resource Not Found (INVALID_CLIENT_ID) error.
Affected areas
Initially the client is unsubscribed from notifications (client notification requests are deleted). Afterwards the following data is affected:
Client fields:
- Obfuscated:
- first name
- last name
- Deleted:
- middle name, gender, notes, email address, birth date, home phone, mobile phones, address, assigned branch key, assigned centre key, assigned credit officer key.
- client Identification documents (also corresponding attachments from remote file storage)
- client profile picture and signature picture (from images table)
- client attachments (from remote file storage and documents table)
- client custom field values
- portal preferences
- client comments
- client activities (activities, sub-activities and field change items)
Client loan accounts:
Obfuscated:
- loan name
Deleted:
- notes
- custom fields for client loan accounts
- attachments for client loan accounts (from remote file storage and documents table)
- Client loan accounts transactions
Deleted:
- transaction comments
- transactions custom fields
Client loan accounts gurantees:
- Obfuscated:
- asset name
- Deleted:
- guarantees custom field values
Client loan repayments:
- Deleted:
- repayments notes
- comments for client loan accounts
- client loan accounts activities (activities, sub-activities and field change items)
Client deposit accounts:
- Obfuscated:
- account name
- Deleted:
- notes
- custom fields for client savings accounts
- attachments for client savings accounts (from remote file storage and documents table)
Client savings accounts transactions:
- Deleted:
- transaction comments
- transactions custom fields
- comments for client savings accounts
- client savings accounts activities (activities, sub-activities and field change items)
Client lines of credit:
- Deleted:
- notes
- custom fields for client lines of credit
- attachments for client lines of credit (from remote file storage and documents table)
- lines of credit activities (activities, sub-activities and field change items)
Client guarantees (guarantees in which the client is guarantor):
- Obfuscated:
- asset name
- Deleted:
- guarantees custom field values
Notification messages associated with a client:
- Deleted:
- notification messages associated with the client
- notification messages associated with client loan accounts
- notification messages associated with client savings accounts
- Client tasks
- Deleted:
- tasks associated with the client
Client ID
A new client ID will be generated and the old client ID will be overwritten (as a consequence, calling the API twice with the same client ID will result in the second call returning Resource Not Found (INVALID_CLIENT_ID
error).
Example Requests
ANONYMIZE client
{
"action": "ANONYMIZE"
}
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
clientId | string | The ID of the client | path | true |
action | string | the action to perform | body | true |
Enumerated Values
Parameter | Value |
---|---|
action | ANONYMIZE |
Example Responses
200 : ok
Sucess Response
{
"returnCode": 0,
"returnStatus": "SUCCESS"
}
400 : Bad Request
client in wrong state
{
"returnCode": 3760,
"returnStatus": "CLIENT_DOES_NOT_HAVE_EXITED_STATE"
}
404 : Not Found
client not found
{
"returnCode": 301,
"returnStatus": "INVALID_CLIENT_ID"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ok | ExecutionStatusApiV1 |
400 | Bad Request | Bad Request | ExecutionStatusApiV1 |
404 | Not Found | Not Found | ExecutionStatusApiV1 |
Update Client Custom Field Values
PATCH /clients/{clientId}/custominformation
Update custom field values
Example Requests
Update a single custom field
{
"customInformation": [
{
"customFieldID": "custom_field_2",
"value": "3"
}
]
}
Update a field in a group
{
"customInformation": [
{
"customFieldID": "cf_grouped_field",
"value": "new value",
"customFieldSetGroupIndex": "0"
}
]
}
update multiple custom fields
{
"customInformation": [
{
"customFieldID": "cf_grouped_field_2",
"value": "3",
"customFieldSetGroupIndex": "0"
},
{
"customFieldID": "field_3",
"value": "divorced"
}
]
}
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
customInformation | [object] | none | body | false |
» customFieldID | string | none | body | true |
» value | string | none | body | true |
» customFieldSetGroupIndex | string | Required if field to update is part of a group, if the Field Set Group Index is not set, a new group will be created with the value provided. | body | false |
clientId | string | The ID of the client | path | true |
Example Responses
200 : OK
Success Response
{
"returnCode": 0,
"returnStatus": "SUCCESS"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | Inline |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
Get Client Custom Field Values
GET /clients/{clientId}/custominformation/{customFieldId}
Get a custom field for a client
Allows retrieving a custom field value for a given client directly by the ID/key of the client and the ID/key of the custom field.
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
clientId | string | The ID of the client. | path | true |
customFieldId | string | The ID of the custom field. | path | true |
Example Responses
200 : OK
A custom field
[
{
"encodedKey": "8a19cd6f74674df9017467f25aab02c6",
"parentKey": "8a193c26722b51b701722d779e7122de",
"customFieldKey": "8a19cd6f74674df9017467ef8e6802af",
"customField": {
"encodedKey": "8a19cd6f74674df9017467ef8e6802af",
"id": "cf_client",
"creationDate": "2020-09-07T09:42:33+0000",
"lastModifiedDate": "2020-09-07T09:42:33+0000",
"name": "Example Custom Field",
"type": "BRANCH_INFO",
"dataType": "CHECKBOX",
"valueLength": "SHORT",
"isDefault": false,
"isRequired": false,
"description": "an example custom field of the checkbox type",
"customFieldSet": {
"encodedKey": "8a19cd6f74674df9017467ef8e6802ae",
"id": "_example_client_custom_field_set",
"name": "example client custom field set",
"notes": "example custom field set",
"createdDate": "2020-09-07T09:41:50+0000",
"lastModifiedDate": "2020-09-07T09:41:50+0000",
"indexInList": 2,
"type": "BRANCH_INFO",
"usage": "SINGLE"
},
"indexInList": 0,
"state": "NORMAL",
"customFieldSelectionOptions": [],
"viewRights": {
"encodedKey": "8a19cd6f74674df9017467ef8e6802b0",
"isAccessibleByAllUsers": false,
"roles": []
},
"editRights": {
"encodedKey": "8a19cd6f74674df9017467ef8e6802b1",
"isAccessibleByAllUsers": false,
"roles": []
},
"unique": false,
"values": [],
"amounts": {}
},
"value": "TRUE",
"indexInList": -1,
"customFieldID": "cf_client",
"customFieldSetGroupIndex": -1
}
]
404 : Not Found
not found
{
"returnCode": 903,
"returnStatus": "INVALID_CUSTOM_FIELD_ID"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | CustomFieldApiV1 |
404 | Not Found | Not Found | Inline |
Response Schema
Status Code 404
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
Update Client Custom Field
PATCH /clients/{clientId}/custominformation/{customFieldId}
Update a custom field for a client
Update a custom field value for a client custom field
Example requests
{
"value": "string"
}
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
value | string | none | body | false |
clientId | string | The ID of the client. | path | true |
customFieldId | string | The ID of the custom field. | path | true |
Example Responses
200 : OK
Sucess response
{
"returnCode": 0,
"returnStatus": "SUCCESS"
}
400 : Bad Request
field is part of a group
{
"returnCode": 916,
"returnStatus": "INVALID_CUSTOM_FIELD_GROUP_INDEX",
"errorSource": "cf_group_field_2"
}
404 : Not Found
not found
{
"returnCode": 903,
"returnStatus": "INVALID_CUSTOM_FIELD_ID"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | Inline |
400 | Bad Request | Bad Request | Inline |
404 | Not Found | Not Found | Inline |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
Status Code 400
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
» errorSource | string | none | false | none |
Status Code 404
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
Delete Client Custom Field
DELETE /clients/{clientId}/custominformation/{customFieldId}
Delete Client Custom Field
Delete a single custom field
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
clientId | string | The ID of the client. | path | true |
customFieldId | string | The ID of the custom field. | path | true |
Example Responses
200 : OK
Success Response
{
"returnCode": 0,
"returnStatus": "SUCCESS"
}
400 : Bad Request
field is part of a group
{
"returnCode": 916,
"returnStatus": "INVALID_CUSTOM_FIELD_GROUP_INDEX",
"errorSource": "cf_group_field_2"
}
404 : Not Found
not found
{
"returnCode": 903,
"returnStatus": "INVALID_CUSTOM_FIELD_ID"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | Inline |
400 | Bad Request | Bad Request | Inline |
404 | Not Found | Not Found | Inline |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
Status Code 400
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
» errorSource | string | none | false | none |
Status Code 404
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
Update Grouped Client Custom Fields
PATCH /clients/{clientId}/custominformation/{customFieldId}/{customFieldGroupSetIndex}
Update grouped custom field
Update custom field which is part of a group
Example requests
{
"value": "string"
}
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
value | string | none | body | false |
clientId | string | The ID of the client | path | true |
customFieldId | string | The ID of the custom field | path | true |
customFieldGroupSetIndex | string | none | path | true |
Example Responses
200 : OK
Success Response
{
"returnCode": 0,
"returnStatus": "SUCCESS"
}
400 : Bad Request
wrong group index provided
{
"returnCode": 916,
"returnStatus": "INVALID_CUSTOM_FIELD_GROUP_INDEX",
"errorSource": "cf_group_field_2"
}
404 : Not Found
field not found
{
"returnCode": 903,
"returnStatus": "INVALID_CUSTOM_FIELD_ID"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | Inline |
400 | Bad Request | Bad Request | Inline |
404 | Not Found | Not Found | Inline |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
Status Code 400
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
» errorSource | string | none | false | none |
Status Code 404
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
Delete Grouped Client Custom Fields
DELETE /clients/{clientId}/custominformation/{customFieldId}/{customFieldGroupSetIndex}
Delete grouped custom field
Delete a custom field which is part of a group
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
clientId | string | The ID of the client | path | true |
customFieldId | string | The ID of the custom field | path | true |
customFieldGroupSetIndex | string | none | path | true |
Example Responses
200 : OK
Success Response
{
"returnCode": 0,
"returnStatus": "SUCCESS"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | Inline |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
Get Client Comments
GET /clients/{clientId}/comments
Get all client comments
get all comments for a client
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
limit | string | none | query | false |
offset | string | none | query | false |
clientId | string | the ID of the client | path | true |
Example Responses
200 : OK
an array of comments
[
{
"encodedKey": "8a19b7057471f4af017472dc0fd80470",
"parentKey": "8a193c26722b51b701722d77c5e423b7",
"userKey": "8a194075720ece2c017226fced6f005e",
"creationDate": "2020-09-09T14:24:42+0000",
"lastModifiedDate": "2020-09-09T14:24:42+0000",
"text": "aanother afmaefomaef<div><br /></div><div>aefaefaf</div><div><br /></div><div>afaef</div>"
},
{
"encodedKey": "8a193c26722b51b701722d77c8bf25ab",
"parentKey": "8a193c26722b51b701722d77c5e423b7",
"creationDate": "2020-05-19T15:05:24+0000",
"lastModifiedDate": "2020-05-19T15:05:24+0000",
"text": "Should suggest she apply for the agriculture loan given the nature of their business"
}
]
400 : Bad Request
bad client ID
{
"returnCode": 149,
"returnStatus": "INVALID_ID"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | Inline |
400 | Bad Request | Bad Request | ExecutionStatusApiV1 |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
anonymous | [CommentApiV1] | none | false | none |
» creationDate | string(date-time) | the date and time at which this comment was added | false | none |
» encodedKey | string | a unique key for this comment | false | none |
» lastModifiedDate | string(date-time) | the date and time at which this comment was last modified | false | none |
» parentKey | string | the unique key of the parent object for this comment, for example, the client or loan account to which it relates | false | none |
» text | string | the text of the comment as a string, must be properly JSON escpaped if it contains special characters | false | none |
» userKey | string | the unique key of the user who created the comment | false | none |
Create Client Comment
POST /clients/{clientId}/comments
Create a Client Comment
create new comment for a client
Example requests
a comment
{
"comment": {
"text": "this is a comment with \" \" all kinds of : \\ / \"non compliant\" stuff & = which has been JSON escaped"
}
}
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
comment | object | an object contining the comment | body | false |
» text | string | text of the comment to be added. if adding complex content make sure it is properly JSON encoded before making your request | body | false |
clientId | string | the ID of the client | path | true |
Example Responses
200 : OK
a comment
{
"encodedKey": "8a19c34574720f9e0174734a039f06e2",
"parentKey": "8a193c26722b51b701722d77c5e423b7",
"userKey": "8a194075720ece2c017226fced6f005e",
"creationDate": "2020-09-09T14:39:36+0000",
"lastModifiedDate": "2020-09-09T14:39:36+0000",
"text": "this is a comment with \" \" all kinds of : \\ / non compliant stuff & = which has been JSON escaped"
}
400 : Bad Request
extra parameters in the request
{
"returnCode": 27,
"returnStatus": "PARAMETER_NOT_ALLOWED"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | CommentApiV1 |
400 | Bad Request | Bad Request | Inline |
Response Schema
Status Code 400
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
Get Client Documents
GET /clients/{clientId}/documents
Get Client Documents
get documents for a given client
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
clientId | string | the ID of the client | path | true |
offset | integer | none | query | false |
limit | integer | none | query | false |
Example Responses
200 Response
[
{
"createdByUserKey": "string",
"creationDate": "string",
"description": "string",
"documentHolderKey": "string",
"documentHolderType": "BRANCH",
"encodedKey": "string",
"fileSize": 0,
"id": 0,
"lastModifiedDate": "string",
"location": "string",
"name": "string",
"originalFilename": "string",
"type": "string",
"userName": "string"
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ok | Inline |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
anonymous | [DocumentApiV1] | none | false | none |
» createdByUserKey | string | none | false | none |
» creationDate | string | none | false | none |
» description | string | none | false | none |
» documentHolderKey | string | none | false | none |
» documentHolderType | string | none | false | none |
» encodedKey | string | none | false | none |
» fileSize | number | none | false | none |
» id | number | none | false | none |
» lastModifiedDate | string | none | false | none |
» location | string | none | false | none |
» name | string | none | false | none |
» originalFilename | string | none | false | none |
» type | string | none | false | none |
» userName | string | none | false | none |
Enumerated Values
Property | Value |
---|---|
documentHolderType | BRANCH |
documentHolderType | LOAN_ACCOUNT |
documentHolderType | GROUP |
documentHolderType | DEPOSIT_ACCOUNT |
documentHolderType | LINE_OF_CREDIT |
documentHolderType | LOAN_PRODUCT |
documentHolderType | GL_JOURNAL_ENTRY |
documentHolderType | SAVINGS_PRODUCT |
documentHolderType | USER |
documentHolderType | CLIENT |
documentHolderType | CENTRE |
documentHolderType | ID_DOCUMENT |
Add Client Document
POST /clients/{clientId}/documents
Add new Document
create documents for a given client
Example requests
{
"document": {
"description": "string",
"documentHolderKey": "string",
"documentHolderType": "CLIENT",
"name": "string",
"type": "PDF"
},
"documentContent": "string"
}
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
clientId | string | the ID of the client | path | true |
body | CreateDocumentApiV1 | a new document to be attached to an entity | body | false |
Example Responses
201 Response
{
"createdByUserKey": "string",
"creationDate": "string",
"description": "string",
"documentHolderKey": "string",
"documentHolderType": "BRANCH",
"encodedKey": "string",
"fileSize": 0,
"id": 0,
"lastModifiedDate": "string",
"location": "string",
"name": "string",
"originalFilename": "string",
"type": "string",
"userName": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
201 | Created | ok | DocumentApiV1 |
Delete Client Asset
DELETE /clients/{clientID}/documents/PROFILE_PICTURE
delete profile picture on file for a given client
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
clientID | string | the ID of the client | path | true |
Example Responses
200 Response
{
"errorSource": "string",
"returnCode": 0,
"returnStatus": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ok | ExecutionStatusApiV1 |
Get Client Profile Picture
GET /clients/{clientID}/documents/PROFILE_PICTURE
Get Client Asset
Get the profile picture for a given client. Images for the profile picture and signature are encoded in base 64. This should be read and decoded in order to generate a binary file representing the image. The format of the image is specified at the beginning of the response.
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
clientID | string | the ID of the client | path | true |
Example Responses
200 : OK
a base 64 encoded profile picture
"iVBORw0KGgoAAAANSUh=="
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | string |
Add Client Asset
POST /clients/{clientID}/documents/PROFILE_PICTURE
Update Client Asset
add or update the profile picture on file for a given client
Example requests
client profile picture
{
"document": {
"documentHolderKey": "88af35b9ca0933ec72",
"documentHolderType": "CLIENT",
"name": "picture",
"type": "JPG"
},
"documentContent": "d2h5IGRpZCB5b3UgYm90aGVyIHRvIGRlY29kZSB0aGlzPw=="
}
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
body | CreateDocumentApiV1 | a new document to be attached to an entity | body | false |
clientID | string | the ID of the client | path | true |
Example Responses
201 : ok
Success Response
{
"returnCode": 0,
"returnStatus": "SUCCESS"
}
400 : Bad Request
missing required parameter
{
"returnCode": 4,
"returnStatus": "INVALID_PARAMETERS",
"errorSource": "document name is required"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
201 | Created | ok | ExecutionStatusApiV1 |
400 | Bad Request | Bad Request | ExecutionStatusApiV1 |
Delete Client Signature
DELETE /clients/{clientID}/documents/SIGNATURE
delete signature on file for a given client
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
clientID | string | the ID of the client | path | true |
Example Responses
200 Response
{
"errorSource": "string",
"returnCode": 0,
"returnStatus": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ok | ExecutionStatusApiV1 |
Get Client Signature
GET /clients/{clientID}/documents/SIGNATURE
Get Client Signature
get the signaturee for a given client
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
clientID | string | the ID of the client | path | true |
Example Responses
200 Response
"\"iVBORw0KGgoAAAANSUh==\""
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | string |
Add Client Signature
POST /clients/{clientID}/documents/SIGNATURE
Update Client Signature
add or update the signature on file for a given client
Example requests
a client signature
{
"document": {
"documentHolderKey": "88af35b9ca0933ec72",
"documentHolderType": "CLIENT",
"name": "signature",
"type": "PNG"
},
"documentContent": "d2h5IGRpZCB5b3UgYm90aGVyIHRvIGRlY29kZSB0aGlzPyBub3RoaW5nIGJldHRlciB0byBkbz8="
}
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
body | CreateDocumentApiV1 | a new document to be attached to an entity | body | false |
clientID | string | the ID of the client | path | true |
Example Responses
201 : ok
Success Response
{
"returnCode": 0,
"returnStatus": "SUCCESS"
}
400 : Bad Request
missing required parameter
{
"returnCode": 4,
"returnStatus": "INVALID_PARAMETERS",
"errorSource": "document name is required"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
201 | Created | ok | ExecutionStatusApiV1 |
400 | Bad Request | Bad Request | ExecutionStatusApiV1 |
Delete Client Document
DELETE /clients/{clientId}/documents/{documentId}
Delete Client Documents
delete a client document by ID
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
clientId | string | the id of the client | path | true |
documentId | string | none | path | true |
Example Responses
200 : ok
Success Response
{
"returnCode": 0,
"returnStatus": "SUCCESS"
}
400 : Bad Request
bad Document ID
{
"returnCode": 970,
"returnStatus": "INVALID_DOCUMENT_ID"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ok | ExecutionStatusApiV1 |
400 | Bad Request | Bad Request | ExecutionStatusApiV1 |
Get Client Document by ID
GET /clients/{clientId}/documents/{documentId}
Get a Client Document by ID
get a client document by its ID
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
clientId | string | the id of the client | path | true |
documentId | string | none | path | true |
Example Responses
200 Response
"string"
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ok | string |
Get Client's Custom Views with basic details
GET /clients?resultType=BASIC&viewfilter={viewfilter}
Get Client's Custom Views with basic details
get view filters for a client with basic details
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
branchId | string | none | query | false |
offset | string | none | query | false |
limit | string | none | query | false |
resultType | string | none | query | false |
viewfilter | string | none | path | true |
Example Responses
200 Response
[
{
"activationDate": "string",
"approvedDate": "string",
"assignedBranchKey": "string",
"assignedCentreKey": "string",
"assignedUserKey": "string",
"birthDate": "string",
"clientRole": {
"encodedKey": "string"
},
"closedDate": "string",
"creationDate": "string",
"emailAddress": "string",
"encodedKey": "string",
"firstName": "string",
"gender": "MALE",
"groupLoanCycle": 0,
"homePhone": "string",
"id": "string",
"idPattern": "string",
"lastModifiedDate": "string",
"lastName": "string",
"loanCycle": 0,
"middleName": "string",
"migrationEvent": {
"creationDate": "string",
"encodedKey": "string",
"numCentresImported": 0,
"numClientsImported": 0,
"numGLAccountsImported": 0,
"numGroupsImported": 0,
"numLoanRepaymentsImported": 0,
"numLoanTransactionsImported": 0,
"numLoansImported": 0,
"numSavingsImported": 0,
"state": "REVERTED",
"type": "IMPORT"
},
"mobilePhone1": "string",
"mobilePhone2": "string",
"notes": "string",
"portalPreferences": {
"encodedKey": "string",
"lastLoggedInDate": "string",
"password": "string",
"portalState": "DISABLED"
},
"preferredLanguage": "PORTUGESE",
"profilePictureKey": "string",
"profileSignatureKey": "string",
"state": "PENDING_APPROVAL"
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ok | Inline |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
anonymous | [ClientApiV1] | none | false | none |
» activationDate | string | none | false | none |
» approvedDate | string | none | false | none |
» assignedBranchKey | string | none | false | none |
» assignedCentreKey | string | none | false | none |
» assignedUserKey | string | none | false | none |
» birthDate | string | none | false | none |
» clientRole | ClientRoleBasicApiV1 | none | false | none |
»» encodedKey | string | none | false | none |
» closedDate | string | none | false | none |
» creationDate | string | none | false | none |
» emailAddress | string | none | false | none |
» encodedKey | string | none | false | none |
» firstName | string | none | false | none |
» gender | string | none | false | none |
» groupLoanCycle | number | none | false | none |
» homePhone | string | none | false | none |
» id | string | none | false | none |
» idPattern | string | none | false | none |
» lastModifiedDate | string | none | false | none |
» lastName | string | none | false | none |
» loanCycle | number | none | false | none |
» middleName | string | none | false | none |
» migrationEvent | DataMigrationEventApiV1 | none | false | none |
»» creationDate | string | none | false | none |
»» encodedKey | string | none | false | none |
»» numCentresImported | number | none | false | none |
»» numClientsImported | number | none | false | none |
»» numGLAccountsImported | number | none | false | none |
»» numGroupsImported | number | none | false | none |
»» numLoanRepaymentsImported | number | none | false | none |
»» numLoanTransactionsImported | number | none | false | none |
»» numLoansImported | number | none | false | none |
»» numSavingsImported | number | none | false | none |
»» state | string | none | false | none |
»» type | string | none | false | none |
» mobilePhone1 | string | none | false | none |
» mobilePhone2 | string | none | false | none |
» notes | string | none | false | none |
» portalPreferences | PortalPreferencesApiV1 | none | false | none |
»» encodedKey | string | none | false | none |
»» lastLoggedInDate | string | none | false | none |
»» password | string | none | false | none |
»» portalState | string | none | false | none |
» preferredLanguage | string | none | false | none |
» profilePictureKey | string | none | false | none |
» profileSignatureKey | string | none | false | none |
» state | string | none | false | none |
Enumerated Values
Property | Value |
---|---|
gender | MALE |
gender | FEMALE |
state | REVERTED |
state | DRAFT |
state | APPROVED |
type | IMPORT |
type | EXPORT |
portalState | DISABLED |
portalState | ENABLED |
preferredLanguage | PORTUGESE |
preferredLanguage | RUSSIAN |
preferredLanguage | ROMANIAN |
preferredLanguage | ENGLISH |
preferredLanguage | SPANISH |
preferredLanguage | GEORGIAN |
preferredLanguage | BURMESE |
preferredLanguage | PHRASE |
preferredLanguage | CHINESE |
preferredLanguage | FRENCH |
preferredLanguage | INDONESIAN |
state | PENDING_APPROVAL |
state | ACTIVE |
state | INACTIVE |
state | EXITED |
state | BLACKLISTED |
state | REJECTED |
Get Client's Custom Views
GET /clients?resultType=FULL_DETAILS&viewfilter={viewfilter}
Get Client's Custom Views
get view filters for a client with full details
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
branchId | string | none | query | false |
offset | string | none | query | false |
limit | string | none | query | false |
resultType | string | none | query | false |
viewfilter | string | none | path | true |
Example Responses
200 Response
[
{
"addresses": [
{
"addressType": "string",
"city": "string",
"country": "string",
"encodedKey": "string",
"indexInList": 0,
"latitude": 0,
"line1": "string",
"line2": "string",
"longitude": 0,
"parentKey": "string",
"postcode": "string",
"region": "string",
"toBeDeleted": true
}
],
"centreId": "string",
"client": {
"activationDate": "string",
"approvedDate": "string",
"assignedBranchKey": "string",
"assignedCentreKey": "string",
"assignedUserKey": "string",
"birthDate": "string",
"clientRole": {
"encodedKey": "string"
},
"closedDate": "string",
"creationDate": "string",
"emailAddress": "string",
"encodedKey": "string",
"firstName": "string",
"gender": "MALE",
"groupLoanCycle": 0,
"homePhone": "string",
"id": "string",
"idPattern": "string",
"lastModifiedDate": "string",
"lastName": "string",
"loanCycle": 0,
"middleName": "string",
"migrationEvent": {
"creationDate": "string",
"encodedKey": "string",
"numCentresImported": 0,
"numClientsImported": 0,
"numGLAccountsImported": 0,
"numGroupsImported": 0,
"numLoanRepaymentsImported": 0,
"numLoanTransactionsImported": 0,
"numLoansImported": 0,
"numSavingsImported": 0,
"state": "REVERTED",
"type": "IMPORT"
},
"mobilePhone1": "string",
"mobilePhone2": "string",
"notes": "string",
"portalPreferences": {
"encodedKey": "string",
"lastLoggedInDate": "string",
"password": "string",
"portalState": "DISABLED"
},
"preferredLanguage": "PORTUGESE",
"profilePictureKey": "string",
"profileSignatureKey": "string",
"state": "PENDING_APPROVAL"
},
"clientTypeId": "string",
"customInformation": [
{
"amount": 0,
"customField": {
"amounts": {
"property1": 0,
"property2": 0
},
"builtInCustomFieldId": "MOBILE_PHONE",
"creationDate": "string",
"customFieldProductSettings": [
{
"customFieldEncodedKey": "string",
"encodedKey": "string",
"isDefault": true,
"isRequired": true,
"linkType": "CLIENT_ROLE",
"productKey": "string"
}
],
"customFieldSelectionOptions": [
{
"constraint": {
"customFieldKey": "string",
"dataFieldType": "NATIVE",
"dataFieldValue": "string",
"dataItemType": "WRITTEN_OFF_LOANS",
"dataType": "ENUM",
"encodedKey": "string",
"filterElement": "STARTS_WITH_CASE_SENSITIVE",
"groupNumber": 0,
"index": 0,
"linkingOperator": "OR",
"secondValue": "string",
"value": "string"
},
"encodedKey": "string",
"id": "string",
"score": 0,
"value": "string"
}
],
"customFieldSet": {
"builtInType": "DETAILS",
"createdDate": "string",
"customFields": [
{}
],
"encodedKey": "string",
"id": "string",
"indexInList": 0,
"lastModifiedDate": "string",
"name": "string",
"notes": "string",
"type": "USER_INFO",
"usage": "SINGLE"
},
"dataType": "GROUP_LINK",
"description": "string",
"editRights": {
"encodedKey": "string",
"isAccessibleByAllUsers": true,
"roles": [
"string"
]
},
"encodedKey": "string",
"id": "string",
"indexInList": 0,
"isDefault": true,
"isRequired": true,
"lastModifiedDate": "string",
"name": "string",
"state": "DEACTIVATED",
"type": "USER_INFO",
"unique": true,
"validationPattern": "string",
"valueLength": "SHORT",
"values": [
"string"
],
"viewRights": {
"encodedKey": "string",
"isAccessibleByAllUsers": true,
"roles": [
"string"
]
}
},
"customFieldID": "string",
"customFieldKey": "string",
"customFieldSetGroupIndex": 0,
"encodedKey": "string",
"indexInList": 0,
"linkedEntityKeyValue": "string",
"parentKey": "string",
"selectionKey": "string",
"value": "string"
}
],
"groupKeys": [
"string"
],
"idDocuments": [
{
"clientKey": "string",
"documentId": "string",
"documentType": "string",
"encodedKey": "string",
"identificationDocumentTemplateKey": "string",
"indexInList": 0,
"issuingAuthority": "string",
"toBeDeleted": true,
"validUntil": "string",
"validUntilDTOdate": {
"dayOfMonth": 0,
"monthOfYear": 0,
"year": 0
}
}
],
"notificationTemplates": [
{
"activated": true,
"authorization": "NO_AUTHORIZATION",
"contentType": "PLAIN_TEXT",
"creationDate": "string",
"customFilter": {
"customConfigurationInfo": {
"creationDate": "string",
"dataViewType": "PORTAL_ACCOUNT_TRANSACTION",
"encodedKey": "string",
"indexInList": 0,
"lastModifiedDate": "string",
"name": "string",
"shared": true,
"userKey": "string"
},
"encodedKey": "string",
"filterConstraints": [
{
"customFieldKey": "string",
"dataFieldType": "NATIVE",
"dataFieldValue": "string",
"dataItemType": "WRITTEN_OFF_LOANS",
"dataType": "ENUM",
"encodedKey": "string",
"filterElement": "STARTS_WITH_CASE_SENSITIVE",
"groupNumber": 0,
"index": 0,
"linkingOperator": "OR",
"secondValue": "string",
"value": "string"
}
]
},
"encodedKey": "string",
"event": "LOAN_CREATED",
"isInUse": true,
"lastModifiedDate": "string",
"name": "string",
"option": "OPT_IN",
"recipient": {
"customField": {
"amounts": {
"property1": 0,
"property2": 0
},
"builtInCustomFieldId": "MOBILE_PHONE",
"creationDate": "string",
"customFieldProductSettings": [
{
"customFieldEncodedKey": "string",
"encodedKey": "string",
"isDefault": true,
"isRequired": true,
"linkType": "CLIENT_ROLE",
"productKey": "string"
}
],
"customFieldSelectionOptions": [
{
"constraint": {
"customFieldKey": "string",
"dataFieldType": "NATIVE",
"dataFieldValue": "string",
"dataItemType": "WRITTEN_OFF_LOANS",
"dataType": "ENUM",
"encodedKey": "string",
"filterElement": "STARTS_WITH_CASE_SENSITIVE",
"groupNumber": 0,
"index": 0,
"linkingOperator": "OR",
"secondValue": "string",
"value": "string"
},
"encodedKey": "string",
"id": "string",
"score": 0,
"value": "string"
}
],
"customFieldSet": {
"builtInType": "DETAILS",
"createdDate": "string",
"customFields": [
{}
],
"encodedKey": "string",
"id": "string",
"indexInList": 0,
"lastModifiedDate": "string",
"name": "string",
"notes": "string",
"type": "USER_INFO",
"usage": "SINGLE"
},
"dataType": "GROUP_LINK",
"description": "string",
"editRights": {
"encodedKey": "string",
"isAccessibleByAllUsers": true,
"roles": [
"string"
]
},
"encodedKey": "string",
"id": "string",
"indexInList": 0,
"isDefault": true,
"isRequired": true,
"lastModifiedDate": "string",
"name": "string",
"state": "DEACTIVATED",
"type": "USER_INFO",
"unique": true,
"validationPattern": "string",
"valueLength": "SHORT",
"values": [
"string"
],
"viewRights": {
"encodedKey": "string",
"isAccessibleByAllUsers": true,
"roles": [
"string"
]
}
},
"encodedKey": "string",
"groupRole": {
"encodedKey": "string",
"name": "string"
},
"recipientType": "CREDIT_OFFICER"
},
"requestType": "HEAD",
"subject": "string",
"targetType": "LOANS",
"template": "string",
"topic": "string",
"trigger": "AUTOMATIC",
"triggerDays": 0,
"type": "EVENT_STREAM",
"url": "string",
"username": "string"
}
]
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ok | Inline |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
anonymous | [ClientExpandedApiV1] | none | false | none |
» addresses | [AddressApiV1] | none | false | none |
»» addressType | string | none | false | none |
»» city | string | none | true | none |
»» country | string | none | true | none |
»» encodedKey | string | none | true | none |
»» indexInList | number | none | true | none |
»» latitude | number | none | false | none |
»» line1 | string | none | true | none |
»» line2 | string | none | false | none |
»» longitude | number | none | false | none |
»» parentKey | string | none | true | none |
»» postcode | string | none | true | none |
»» region | string | none | true | none |
»» toBeDeleted | boolean | none | false | none |
» centreId | string | none | false | none |
» client | ClientApiV1 | none | false | none |
»» activationDate | string | none | false | none |
»» approvedDate | string | none | false | none |
»» assignedBranchKey | string | none | false | none |
»» assignedCentreKey | string | none | false | none |
»» assignedUserKey | string | none | false | none |
»» birthDate | string | none | false | none |
»» clientRole | ClientRoleBasicApiV1 | none | false | none |
»»» encodedKey | string | none | false | none |
»» closedDate | string | none | false | none |
»» creationDate | string | none | false | none |
»» emailAddress | string | none | false | none |
»» encodedKey | string | none | false | none |
»» firstName | string | none | false | none |
»» gender | string | none | false | none |
»» groupLoanCycle | number | none | false | none |
»» homePhone | string | none | false | none |
»» id | string | none | false | none |
»» idPattern | string | none | false | none |
»» lastModifiedDate | string | none | false | none |
»» lastName | string | none | false | none |
»» loanCycle | number | none | false | none |
»» middleName | string | none | false | none |
»» migrationEvent | DataMigrationEventApiV1 | none | false | none |
»»» creationDate | string | none | false | none |
»»» encodedKey | string | none | false | none |
»»» numCentresImported | number | none | false | none |
»»» numClientsImported | number | none | false | none |
»»» numGLAccountsImported | number | none | false | none |
»»» numGroupsImported | number | none | false | none |
»»» numLoanRepaymentsImported | number | none | false | none |
»»» numLoanTransactionsImported | number | none | false | none |
»»» numLoansImported | number | none | false | none |
»»» numSavingsImported | number | none | false | none |
»»» state | string | none | false | none |
»»» type | string | none | false | none |
»» mobilePhone1 | string | none | false | none |
»» mobilePhone2 | string | none | false | none |
»» notes | string | none | false | none |
»» portalPreferences | PortalPreferencesApiV1 | none | false | none |
»»» encodedKey | string | none | false | none |
»»» lastLoggedInDate | string | none | false | none |
»»» password | string | none | false | none |
»»» portalState | string | none | false | none |
»» preferredLanguage | string | none | false | none |
»» profilePictureKey | string | none | false | none |
»» profileSignatureKey | string | none | false | none |
»» state | string | none | false | none |
» clientTypeId | string | none | false | none |
» customInformation | [CustomFieldValueApiV1] | none | false | none |
»» amount | number | none | false | none |
»» customField | CustomFieldApiV1 | none | false | none |
»»» amounts | object | none | false | none |
»»»» additionalProperties | number | none | false | none |
»»» builtInCustomFieldId | string | none | false | none |
»»» creationDate | string | none | false | none |
»»» customFieldProductSettings | [CustomFieldLinkApiV1] | none | false | none |
»»»» customFieldEncodedKey | string | none | false | none |
»»»» encodedKey | string | none | false | none |
»»»» isDefault | boolean | none | false | none |
»»»» isRequired | boolean | none | false | none |
»»»» linkType | string | none | false | none |
»»»» productKey | string | none | false | none |
»»» customFieldSelectionOptions | [CustomFieldSelectionApiV1] | none | false | none |
»»»» constraint | CustomFilterConstraintApiV1 | none | false | none |
»»»»» customFieldKey | string | none | false | none |
»»»»» dataFieldType | string | none | false | none |
»»»»» dataFieldValue | string | none | false | none |
»»»»» dataItemType | string | none | false | none |
»»»»» dataType | string | none | false | none |
»»»»» encodedKey | string | none | false | none |
»»»»» filterElement | string | none | false | none |
»»»»» groupNumber | number | none | false | none |
»»»»» index | number | none | false | none |
»»»»» linkingOperator | string | none | false | none |
»»»»» secondValue | string | none | false | none |
»»»»» value | string | none | false | none |
»»»» encodedKey | string | none | false | none |
»»»» id | string | none | false | none |
»»»» score | number | none | false | none |
»»»» value | string | none | false | none |
»»» customFieldSet | CustomFieldSetApiV1 | none | false | none |
»»»» builtInType | string | none | false | none |
»»»» createdDate | string | none | false | none |
»»»» customFields | [CustomFieldApiV1] | none | false | none |
»»»» encodedKey | string | none | false | none |
»»»» id | string | none | false | none |
»»»» indexInList | number | none | false | none |
»»»» lastModifiedDate | string | none | false | none |
»»»» name | string | none | false | none |
»»»» notes | string | none | false | none |
»»»» type | string | none | false | none |
»»»» usage | string | none | false | none |
»»» dataType | string | none | false | none |
»»» description | string | none | false | none |
»»» editRights | UsageRightsApiV1 | none | false | none |
»»»» encodedKey | string | none | false | none |
»»»» isAccessibleByAllUsers | boolean | none | false | none |
»»»» roles | [string] | none | false | none |
»»» encodedKey | string | none | false | none |
»»» id | string | none | false | none |
»»» indexInList | number | none | false | none |
»»» isDefault | boolean | none | false | none |
»»» isRequired | boolean | none | false | none |
»»» lastModifiedDate | string | none | false | none |
»»» name | string | none | false | none |
»»» state | string | none | false | none |
»»» type | string | none | false | none |
»»» unique | boolean | none | false | none |
»»» validationPattern | string | none | false | none |
»»» valueLength | string | none | false | none |
»»» values | [string] | none | false | none |
»»» viewRights | UsageRightsApiV1 | none | false | none |
»» customFieldID | string | none | false | none |
»» customFieldKey | string | none | false | none |
»» customFieldSetGroupIndex | number | none | false | none |
»» encodedKey | string | none | false | none |
»» indexInList | number | none | false | none |
»» linkedEntityKeyValue | string | none | false | none |
»» parentKey | string | none | false | none |
»» selectionKey | string | none | false | none |
»» value | string | none | false | none |
» groupKeys | [string] | none | false | none |
» idDocuments | [IdentificationDocumentApiV1] | none | false | none |
»» clientKey | string | none | false | none |
»» documentId | string | none | false | none |
»» documentType | string | none | false | none |
»» encodedKey | string | none | false | none |
»» identificationDocumentTemplateKey | string | none | false | none |
»» indexInList | number | none | false | none |
»» issuingAuthority | string | none | false | none |
»» toBeDeleted | boolean | none | false | none |
»» validUntil | string | none | false | none |
»» validUntilDTOdate | DateDTOApiV1 | none | false | none |
»»» dayOfMonth | number | none | false | none |
»»» monthOfYear | number | none | false | none |
»»» year | number | none | false | none |
» notificationTemplates | [MessageTemplateApiV1] | none | false | none |
»» activated | boolean | none | false | none |
»» authorization | string | none | false | none |
»» contentType | string | none | false | none |
»» creationDate | string | none | false | none |
»» customFilter | CustomFilterApiV1 | none | false | none |
»»» customConfigurationInfo | CustomConfigurationInfoApiV1 | none | false | none |
»»»» creationDate | string | none | false | none |
»»»» dataViewType | string | none | false | none |
»»»» encodedKey | string | none | false | none |
»»»» indexInList | number | none | false | none |
»»»» lastModifiedDate | string | none | false | none |
»»»» name | string | none | false | none |
»»»» shared | boolean | none | false | none |
»»»» userKey | string | none | false | none |
»»» encodedKey | string | none | false | none |
»»» filterConstraints | [CustomFilterConstraintApiV1] | none | false | none |
»» encodedKey | string | none | false | none |
»» event | string | none | false | none |
»» isInUse | boolean | none | false | none |
»» lastModifiedDate | string | none | false | none |
»» name | string | none | false | none |
»» option | string | none | false | none |
»» recipient | MessageTemplateRecipientApiV1 | none | false | none |
»»» customField | CustomFieldApiV1 | none | false | none |
»»» encodedKey | string | none | false | none |
»»» groupRole | GroupRoleNameApiV1 | none | false | none |
»»»» encodedKey | string | none | false | none |
»»»» name | string | none | false | none |
»»» recipientType | string | none | false | none |
»» requestType | string | none | false | none |
»» subject | string | none | false | none |
»» targetType | string | none | false | none |
»» template | string | none | false | none |
»» topic | string | none | false | none |
»» trigger | string | none | false | none |
»» triggerDays | number | none | false | none |
»» type | string | none | false | none |
»» url | string | none | false | none |
»» username | string | none | false | none |
Enumerated Values
Property | Value |
---|---|
gender | MALE |
gender | FEMALE |
state | REVERTED |
state | DRAFT |
state | APPROVED |
type | IMPORT |
type | EXPORT |
portalState | DISABLED |
portalState | ENABLED |
preferredLanguage | PORTUGESE |
preferredLanguage | RUSSIAN |
preferredLanguage | ROMANIAN |
preferredLanguage | ENGLISH |
preferredLanguage | SPANISH |
preferredLanguage | GEORGIAN |
preferredLanguage | BURMESE |
preferredLanguage | PHRASE |
preferredLanguage | CHINESE |
preferredLanguage | FRENCH |
preferredLanguage | INDONESIAN |
state | PENDING_APPROVAL |
state | ACTIVE |
state | INACTIVE |
state | EXITED |
state | BLACKLISTED |
state | REJECTED |
builtInCustomFieldId | MOBILE_PHONE |
builtInCustomFieldId | EMAIL_ADDRESS |
builtInCustomFieldId | GENDER |
builtInCustomFieldId | MIDDLE_NAME |
builtInCustomFieldId | HOME_PHONE |
builtInCustomFieldId | BIRTHDATE |
builtInCustomFieldId | LAST_NAME |
builtInCustomFieldId | FIRST_NAME |
linkType | CLIENT_ROLE |
linkType | CHANNEL |
linkType | PRODUCT |
dataFieldType | NATIVE |
dataFieldType | CUSTOM |
dataItemType | WRITTEN_OFF_LOANS |
dataItemType | LINE_OF_CREDIT |
dataItemType | INVESTOR_FUND |
dataItemType | TRANSACTION_DETAILS |
dataItemType | DOCUMENT_TEMPLATE |
dataItemType | PRODUCT |
dataItemType | MCC_EXPIRATION |
dataItemType | CENTRE |
dataItemType | REPAYMENT_COLLECTION |
dataItemType | TASK |
dataItemType | OUTSTANDING_PORTFOLIO_AMOUNTS |
dataItemType | REVENUE |
dataItemType | COMPOSED_TRANSACTIONS |
dataItemType | UNION_TRANSACTIONS |
dataItemType | PRINCIPAL_PAYMENT_SETTINGS |
dataItemType | LOANS |
dataItemType | DISBURSEMENT_DETAILS |
dataItemType | SAVINGS_TRANSACTION |
dataItemType | IDENTIFICATION_DOCUMENT |
dataItemType | LOAN_PRODUCT |
dataItemType | DISBURSED_LOANS |
dataItemType | LOAN_GROUP |
dataItemType | TRANSACTION_CHANNEL |
dataItemType | CUSTOM_PREDEFINED_FEE |
dataItemType | JOURNAL_ENTRY |
dataItemType | ATTACHMENT |
dataItemType | PREDEFINED_FEE |
dataItemType | TRANCHE |
dataItemType | TRANSACTION |
dataItemType | INDEX_RATE_SOURCE |
dataItemType | GROUP_ROLE |
dataItemType | LOAN_TRANSACTION |
dataItemType | CLIENT_ROLE |
dataItemType | GROUP |
dataItemType | NOTIFICATION_MESSAGE |
dataItemType | OUTSTANDING_PORTFOLIO_ACCOUNTS |
dataItemType | REPAYMENT |
dataItemType | LOAN_ACCOUNT_GUARANTY |
dataItemType | BRANCH |
dataItemType | CURRENCY |
dataItemType | CARD_TRANSACTION_REVERSAL |
dataItemType | INTEREST_PRODUCT_SETTINGS |
dataItemType | CREATED_ACCOUNTS |
dataItemType | USER |
dataItemType | SAVINGS_PRODUCT |
dataItemType | CLIENT |
dataItemType | PRODUCT_ARREARS_SETTINGS |
dataItemType | SAVINGS |
dataItemType | EXPENSE |
dataItemType | INDEX_RATE |
dataItemType | NOTIFICATION_TEMPLATE |
dataItemType | CUSTOM_FIELD_SELECTION |
dataItemType | ACTIVITY |
dataType | ENUM |
dataType | MONEY |
dataType | NUMBER |
dataType | DATE_UTC |
dataType | JAVA_BLOB |
dataType | OBJECT |
dataType | BOOLEAN |
dataType | DATE |
dataType | PERCENT |
dataType | BIG_DECIMAL |
dataType | STRING |
dataType | KEY |
dataType | LONG |
filterElement | STARTS_WITH_CASE_SENSITIVE |
filterElement | THIS_WEEK |
filterElement | EQUALS |
filterElement | STARTS_WITH |
filterElement | IN |
filterElement | TODAY |
filterElement | THIS_YEAR |
filterElement | BETWEEN |
filterElement | AFTER |
filterElement | LESS_THAN |
filterElement | DIFFERENT_THAN |
filterElement | THIS_MONTH |
filterElement | NOT_EMPTY |
filterElement | BEFORE |
filterElement | EQUALS_CASE_SENSITIVE |
filterElement | LAST_DAYS |
filterElement | MORE_THAN |
filterElement | EMPTY |
filterElement | ON |
linkingOperator | OR |
linkingOperator | AND |
builtInType | DETAILS |
builtInType | GENERAL |
type | USER_INFO |
type | ASSET_INFO |
type | CLIENT_INFO |
type | LINE_OF_CREDIT |
type | GROUP_INFO |
type | TRANSACTION_CHANNEL_INFO |
type | BRANCH_INFO |
type | SAVINGS_ACCOUNT_INFO |
type | LOAN_ACCOUNT_INFO |
type | GUARANTOR_INFO |
type | CENTRE_INFO |
usage | SINGLE |
usage | GROUPED |
dataType | GROUP_LINK |
dataType | DATE |
dataType | NUMBER |
dataType | CHECKBOX |
dataType | CLIENT_LINK |
dataType | STRING |
dataType | USER_LINK |
dataType | SELECTION |
state | DEACTIVATED |
state | NORMAL |
type | USER_INFO |
type | ASSET_INFO |
type | CLIENT_INFO |
type | LINE_OF_CREDIT |
type | GROUP_INFO |
type | TRANSACTION_CHANNEL_INFO |
type | BRANCH_INFO |
type | SAVINGS_ACCOUNT_INFO |
type | LOAN_ACCOUNT_INFO |
type | GUARANTOR_INFO |
type | CENTRE_INFO |
valueLength | SHORT |
valueLength | LONG |
authorization | NO_AUTHORIZATION |
authorization | BASIC_AUTHORIZATION |
contentType | PLAIN_TEXT |
contentType | APPLICATION_JSON |
contentType | APPLICATION_XML |
dataViewType | PORTAL_ACCOUNT_TRANSACTION |
dataViewType | LOANS_AGING_ANALYSIS |
dataViewType | CLOSED_ACCOUNTS |
dataViewType | CLIENT_OVERVIEW |
dataViewType | ADMIN_CENTRES |
dataViewType | USER_NOTIFICATION_MESSAGES |
dataViewType | LINE_OF_CREDIT |
dataViewType | USER_OVERVIEW |
dataViewType | CENTRE_OVERVIEW |
dataViewType | REPAYMENT_REPAYMENTS_COLLECTION |
dataViewType | GROUP_OVERVIEW |
dataViewType | ACTIVITIES_LOOKUP |
dataViewType | TRANSACTION |
dataViewType | ADMIN_BRANCHES |
dataViewType | GROUP |
dataViewType | BRANCH_OVERVIEW |
dataViewType | NOTIFICATION_MESSAGE |
dataViewType | PORTFOLIO_REPORTS |
dataViewType | GROUP_NOTIFICATION_MESSAGES |
dataViewType | LOAN_ACCOUNT_SECURITIES_OVERVIEW |
dataViewType | LINE_OF_CREDIT_OVERVIEW |
dataViewType | CURRENCIES |
dataViewType | REPAYMENT |
dataViewType | TILL_TRANSACTIONS |
dataViewType | ALL_TASKS |
dataViewType | CENTRE |
dataViewType | BRANCH |
dataViewType | INDEX_RATES_LIST |
dataViewType | USER_TASKS |
dataViewType | DOCUMENT_TEMPLATES |
dataViewType | SAVINGS_TRANSACTIONS_LOOKUP |
dataViewType | LOAN_ACCOUNT_OVERVIEW |
dataViewType | DEPOSITS_COLLECTION |
dataViewType | USER |
dataViewType | ADMIN_USERS |
dataViewType | GROUP_TASKS |
dataViewType | CLIENT |
dataViewType | LOAN_TRANSACTIONS_LOOKUP |
dataViewType | LOANS |
dataViewType | LOANS_REPAYMENTS_COLLECTION |
dataViewType | CLIENT_TASKS |
dataViewType | OVERDRAFTS_AGING_ANALYSIS |
dataViewType | LOAN_ACCOUNT_FUNDING_OVERVIEW |
dataViewType | SAVINGS |
dataViewType | SAVINGS_OVERVIEW |
dataViewType | JOURNAL_ENTRY |
dataViewType | CLIENT_NOTIFICATION_MESSAGES |
event | LOAN_CREATED |
event | SAVINGS_ACCOUNT_REJECTION |
event | SAVINGS_ACCOUNT_ACTIVATED |
event | DATA_ACCESS_STATE_CHANGED |
event | REPAYMENT_REMINDER |
event | LOAN_ANTICIPATED_DISBURSEMENT |
event | CREDIT_ARRANGEMENT_deleteD |
event | SAVINGS_APPROVAL |
event | PORTAL_ACTIVATED |
event | SAVINGS_DEPOSIT |
event | PORTAL_PASSWORD_RESET |
event | CREDIT_ARRANGEMENT_REJECTED |
event | LOAN_REPAYMENT_REVERSAL |
event | SAVINGS_ACCOUNT_CLOSURE |
event | LOAN_ACCOUNT_REJECTION |
event | LOAN_ACCOUNT_RESCHEDULED |
event | ACCOUNT_IN_ARREARS |
event | LOAN_DISBURSEMENT_REVERSAL |
event | SAVINGS_DEPOSIT_REVERSAL |
event | CLIENT_APPROVED |
event | LOAN_REPAYMENT |
event | LOAN_ACCOUNT_ACTIVITY |
event | GROUP_CREATED |
event | LOAN_DISBURSEMENT |
event | CREDIT_ARRANGEMENT_APPROVED |
event | MANUAL |
event | END_OF_DAY_PROCESSING_COMPLETED |
event | CREDIT_ARRANGEMENT_ACCOUNT_ADDED |
event | CLIENT_REJECTED |
event | CLIENT_ACTIVITY |
event | LOAN_ACCOUNT_REFINANCED |
event | SAVINGS_CREATED |
event | CLIENT_CREATED |
event | LOAN_APPROVAL |
event | GROUP_ACTIVITY |
event | LOAN_ACCOUNT_CLOSURE |
event | SAVINGS_WITHDRAWAL_REVERSAL |
event | CREDIT_ARRANGEMENT_WITHDRAWN |
event | CREDIT_ARRANGEMENT_CREATED |
event | SAVINGS_WITHDRAWAL |
event | SAVINGS_ACCOUNT_ACTIVITY |
event | LOAN_ACCOUNT_WRITE_OFF |
event | CREDIT_ARRANGEMENT_ACCOUNT_REMOVED |
event | CREDIT_ARRANGEMENT_CLOSED |
option | OPT_IN |
option | OPT_OUT |
recipientType | CREDIT_OFFICER |
recipientType | CUSTOM_FIELD |
recipientType | GROUP_ROLE |
recipientType | CLIENT |
requestType | HEAD |
requestType | delete |
requestType | post |
requestType | get |
requestType | put |
requestType | patch |
targetType | LOANS |
targetType | GROUP |
targetType | SAVINGS |
targetType | DATA_ACCESS |
targetType | BACKGROUND_PROCESS |
targetType | CLIENT |
trigger | AUTOMATIC |
trigger | MANUAL |
type | EVENT_STREAM |
type | TASK |
type | SMS |
type | EMAIL |
type | WEB_HOOK |
Get Client's Custom Views Summary
GET /clients?resultType=SUMMARY&viewfilter={viewfilter}
Get Client's Custom Views Summary
get view filters for a client with a summary
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
branchId | string | none | query | false |
offset | string | none | query | false |
limit | string | none | query | false |
resultType | string | none | query | false |
viewfilter | string | none | path | true |
Example Responses
200 Response
{
"summary": {
"count": "string",
"totals": [
{
"customFieldValues": {
"property1": {},
"property2": {}
},
"dataItemType": "WRITTEN_OFF_LOANS",
"values": {
"property1": {},
"property2": {}
}
}
]
}
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ok | JsonCustomViewEntitiesSummaryWrapperApiV1 |
Get all Loan Accounts for a Client
GET /clients/{clientId}/loans/{loanAccountId}
Get all Loan Accounts for a Client
Get details on a specific Loan Account for a specific client.
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
fullDetails | boolean | none | query | false |
clientId | string | The ID of the client. The format is determined by your organization. | path | true |
loanAccountId | string | The ID or encoded key of the loan account. The format is determined by your organization. | path | true |
Example Responses
200 : ok
a loan account with full details
{
"encodedKey": "8a8086c46f7a3258016f7b4d25f50126",
"id": "XNZR612",
"accountHolderKey": "8a80877d6f65da00016f6670eb950022",
"accountHolderType": "CLIENT",
"creationDate": "2020-01-06T14:43:36+0000",
"approvedDate": "2020-01-06T15:43:46+0000",
"lastModifiedDate": "2020-02-06T12:49:13+0000",
"activationTransactionKey": "8a8086c46f7a3258016f7b4facdb0139",
"lastAccountAppraisalDate": "2020-02-06T00:00:06+0000",
"accountState": "ACTIVE",
"productTypeKey": "8a8086c46f7a3258016f7b4d25d60118",
"loanName": "review frequency daily",
"loanAmount": "2500",
"periodicPayment": "0",
"tranches": [],
"principalDue": "207.49",
"principalPaid": "207.31",
"principalBalance": "2292.69",
"redrawBalance": "0",
"interestDue": "1.97",
"interestPaid": "2.15",
"interestFromArrearsBalance": "0",
"interestFromArrearsDue": "0",
"interestFromArrearsPaid": "0",
"interestBalance": "1.97",
"feesDue": "0",
"feesPaid": "0",
"feesBalance": "0",
"penaltyDue": "0",
"penaltyPaid": "0",
"penaltyBalance": "0",
"scheduleDueDatesMethod": "INTERVAL",
"prepaymentAcceptance": "ACCEPT_PREPAYMENTS",
"futurePaymentsAcceptance": "NO_FUTURE_PAYMENTS",
"hasCustomSchedule": false,
"repaymentPeriodCount": 1,
"repaymentPeriodUnit": "MONTHS",
"repaymentInstallments": 12,
"gracePeriod": 0,
"gracePeriodType": "NONE",
"interestRate": "1",
"customFieldValues": [
{
"encodedKey": "8a8086567019cc6c01701a8b30596da2",
"parentKey": "8a8086c46f7a3258016f7b4d25f50126",
"customFieldKey": "8a8086567019cc6c01701a869a4a6d81",
"customField": {
"encodedKey": "8a8086567019cc6c01701a869a4a6d81",
"id": "sclt_1",
"creationDate": "2020-02-06T12:47:32+0000",
"lastModifiedDate": "2020-02-06T12:47:32+0000",
"name": "selection 1",
"type": "LOAN_ACCOUNT_INFO",
"dataType": "SELECTION",
"valueLength": "SHORT",
"isDefault": false,
"isRequired": false,
"description": "",
"customFieldSet": {
"encodedKey": "8a8086567019cc6c01701a869a4a6d80",
"id": "_loans_cf_set",
"name": "loans cf set",
"notes": "",
"createdDate": "2020-02-06T12:46:55+0000",
"lastModifiedDate": "2020-02-06T12:46:55+0000",
"indexInList": 0,
"type": "LOAN_ACCOUNT_INFO",
"usage": "SINGLE"
},
"indexInList": 0,
"state": "NORMAL",
"customFieldSelectionOptions": [
{
"encodedKey": "8a8086567019cc6c01701a8a8c136d91",
"id": "783728922",
"value": "option 1",
"score": "10"
},
{
"encodedKey": "8a8086567019cc6c01701a8a8c1a6d92",
"id": "672532084",
"value": "option 2",
"score": "5"
},
{
"encodedKey": "8a8086567019cc6c01701a8a8c1a6d93",
"id": "403063097",
"value": "option 3",
"score": "1"
}
],
"viewRights": {
"encodedKey": "8a8086567019cc6c01701a869a4a6d82",
"isAccessibleByAllUsers": true,
"roles": []
},
"editRights": {
"encodedKey": "8a8086567019cc6c01701a8a8c066d88",
"isAccessibleByAllUsers": false,
"roles": []
},
"unique": false,
"values": [
"option 1",
"option 2",
"option 3"
],
"amounts": {
"option 3": "1",
"option 1": "10",
"option 2": "5"
}
},
"value": "option 2",
"amount": "5",
"indexInList": -1,
"customFieldID": "sclt_1",
"customFieldSetGroupIndex": -1
},
{
"encodedKey": "8a8086567019cc6c01701a8b30596da4",
"parentKey": "8a8086c46f7a3258016f7b4d25f50126",
"customFieldKey": "8a8086567019cc6c01701a8a8c1a6d94",
"customField": {
"encodedKey": "8a8086567019cc6c01701a8a8c1a6d94",
"id": "slct_2",
"creationDate": "2020-02-06T12:48:14+0000",
"lastModifiedDate": "2020-02-06T12:48:14+0000",
"name": "selection 2",
"type": "LOAN_ACCOUNT_INFO",
"dataType": "SELECTION",
"valueLength": "SHORT",
"isDefault": false,
"isRequired": false,
"description": "",
"customFieldSet": {
"encodedKey": "8a8086567019cc6c01701a869a4a6d80",
"id": "_loans_cf_set",
"name": "loans cf set",
"notes": "",
"createdDate": "2020-02-06T12:46:55+0000",
"lastModifiedDate": "2020-02-06T12:46:55+0000",
"indexInList": 0,
"type": "LOAN_ACCOUNT_INFO",
"usage": "SINGLE"
},
"indexInList": 1,
"state": "NORMAL",
"customFieldSelectionOptions": [
{
"encodedKey": "8a8086567019cc6c01701a8b30526d9f",
"id": "789812737",
"value": "option a",
"score": "1"
},
{
"encodedKey": "8a8086567019cc6c01701a8b30526da0",
"id": "000604002",
"value": "option b",
"score": "5"
},
{
"encodedKey": "8a8086567019cc6c01701a8b30596da1",
"id": "343885651",
"value": "option c",
"score": "10"
}
],
"viewRights": {
"encodedKey": "8a8086567019cc6c01701a8a8c1a6d95",
"isAccessibleByAllUsers": true,
"roles": []
},
"editRights": {
"encodedKey": "8a8086567019cc6c01701a8a8c1a6d96",
"isAccessibleByAllUsers": false,
"roles": []
},
"unique": false,
"values": [
"option a",
"option b",
"option c"
],
"amounts": {
"option c": "10",
"option a": "1",
"option b": "5"
}
},
"value": "option c",
"amount": "10",
"indexInList": -1,
"customFieldID": "slct_2",
"customFieldSetGroupIndex": -1
}
],
"interestChargeFrequency": "ANNUALIZED",
"interestCalculationMethod": "DECLINING_BALANCE_DISCOUNTED",
"interestType": "SIMPLE_INTEREST",
"interestBalanceCalculationMethod": "PRINCIPAL_ONLY",
"repaymentScheduleMethod": "DYNAMIC",
"paymentMethod": "HORIZONTAL",
"interestApplicationMethod": "ON_REPAYMENT",
"accrueInterestAfterMaturity": false,
"assignedBranchKey": "8a8086e96f61bf2c016f65f5192a0271",
"notes": "",
"principalRepaymentInterval": 1,
"interestRateSource": "INDEX_INTEREST_RATE",
"interestRateReviewUnit": "DAYS",
"interestRateReviewCount": 1,
"interestSpread": "1",
"lastInterestReviewDate": "2020-02-06T00:00:00+0000",
"accruedInterest": "0.19",
"interestFromArrearsAccrued": "0.02",
"lastInterestAppliedDate": "2020-02-03T00:00:00+0000",
"funds": [],
"guarantees": [],
"accruedPenalty": "0",
"loanPenaltyCalculationMethod": "NONE",
"disbursementDetails": {
"encodedKey": "8a8086c46f7a3258016f7b4fac3b0127",
"expectedDisbursementDate": "2019-12-01T00:00:00+0000",
"disbursementDate": "2019-12-01T00:00:00+0000",
"firstRepaymentDate": "2020-01-01T00:00:00+0000",
"transactionDetails": {
"encodedKey": "8a8086c46f7a3258016f7b4fac3b0128",
"transactionChannelKey": "8a80877d6f451a5c016f466bdd120049",
"internalTransfer": false,
"transactionChannel": {
"encodedKey": "8a80877d6f451a5c016f466bdd120049",
"id": "cash",
"name": "Cash",
"creationDate": "2019-12-27T09:14:35+0000",
"index": 0,
"activated": true,
"savingsConstraintsUsage": "UNCONSTRAINED_USAGE",
"savingsConstraints": {
"encodedKey": "8a80877d6f451a5c016f466bea33004b",
"filterConstraints": []
},
"usageRights": {
"encodedKey": "8a80877d6f451a5c016f466bdd12004a",
"isAccessibleByAllUsers": true,
"roles": []
}
}
},
"fees": [],
"customInformation": []
},
"arrearsTolerancePeriod": 3,
"accountArrearsSettings": {
"tolerancePeriod": 3,
"encodedKey": "8a8086c46f7a3258016f7b4fac3b0129",
"toleranceCalculationMethod": "ARREARS_TOLERANCE_PERIOD",
"dateCalculationMethod": "DATE_ACCOUNT_FIRST_WENT_TO_ARREARS",
"nonWorkingDaysMethod": "EXCLUDED"
},
"paymentPlan": [],
"interestRoundingVersion": "VERSION_2",
"prepaymentRecalculationMethod": "NO_RECALCULATION",
"principalPaidInstallmentStatus": "PARTIALLY_PAID",
"latePaymentsRecalculationMethod": "INCREASE_OVERDUE_INSTALLMENTS",
"applyInterestOnPrepaymentMethod": "AUTOMATIC",
"allowOffset": false,
"accrueLateInterest": true,
"holdBalance": "0",
"fees": [
{
"fee": {
"encodedKey": "8a8080855283305201528369d0d3001c"
}
},
{
"fee": {
"encodedKey": "8a8080855283305201528369d0d3001b"
},
"amount": "10"
},
{
"fee": {
"encodedKey": "8a808085528330520152836c5950002a"
},
"amount": "55"
}
]
}
400 : Bad Request
bad loan accont ID
{
"returnCode": 100,
"returnStatus": "INVALID_LOAN_ACCOUNT_ID"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ok | LoanAccountFullDetailsApiV1 |
400 | Bad Request | Bad Request | Inline |
Response Schema
Status Code 400
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | true | none |
» returnStatus | string | none | true | none |
» errorSource | string | none | false | none |
Get Savings Accounts for a Client
GET /clients/{clientId}/savings
Get Savings Accounts for a Client
Get all savings accounts for a client by client id
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
clientId | string | none | path | true |
offset | integer | none | query | false |
limit | integer | none | query | false |
fullDetails | boolean | none | query | false |
savingsId | string | none | path | true |
Example Responses
200 Response
[
{
"accountHolderKey": "string",
"accountHolderType": "GROUP",
"accountState": "WITHDRAWN",
"accountType": "CURRENT_ACCOUNT",
"accruedInterest": 0,
"activationDate": "string",
"allowOverdraft": true,
"approvedDate": "string",
"assignedBranchKey": "string",
"assignedCentreKey": "string",
"assignedUserKey": "string",
"availableBalance": 0,
"balance": 0,
"closedDate": "string",
"creationDate": "string",
"currency": {
"code": "string",
"creationDate": "string",
"currencySymbolPosition": "AFTER_NUMBER",
"digitsAfterDecimal": 0,
"isBaseCurrency": true,
"lastModifiedDate": "string",
"name": "string",
"symbol": "string"
},
"currencyCode": "string",
"customFieldValues": [
{
"amount": 0,
"customField": {
"amounts": {
"property1": 0,
"property2": 0
},
"builtInCustomFieldId": "MOBILE_PHONE",
"creationDate": "string",
"customFieldProductSettings": [
{
"customFieldEncodedKey": "string",
"encodedKey": "string",
"isDefault": true,
"isRequired": true,
"linkType": "CLIENT_ROLE",
"productKey": "string"
}
],
"customFieldSelectionOptions": [
{
"constraint": {
"customFieldKey": "string",
"dataFieldType": "NATIVE",
"dataFieldValue": "string",
"dataItemType": "WRITTEN_OFF_LOANS",
"dataType": "ENUM",
"encodedKey": "string",
"filterElement": "STARTS_WITH_CASE_SENSITIVE",
"groupNumber": 0,
"index": 0,
"linkingOperator": "OR",
"secondValue": "string",
"value": "string"
},
"encodedKey": "string",
"id": "string",
"score": 0,
"value": "string"
}
],
"customFieldSet": {
"builtInType": "DETAILS",
"createdDate": "string",
"customFields": [
{}
],
"encodedKey": "string",
"id": "string",
"indexInList": 0,
"lastModifiedDate": "string",
"name": "string",
"notes": "string",
"type": "USER_INFO",
"usage": "SINGLE"
},
"dataType": "GROUP_LINK",
"description": "string",
"editRights": {
"encodedKey": "string",
"isAccessibleByAllUsers": true,
"roles": [
"string"
]
},
"encodedKey": "string",
"id": "string",
"indexInList": 0,
"isDefault": true,
"isRequired": true,
"lastModifiedDate": "string",
"name": "string",
"state": "DEACTIVATED",
"type": "USER_INFO",
"unique": true,
"validationPattern": "string",
"valueLength": "SHORT",
"values": [
"string"
],
"viewRights": {
"encodedKey": "string",
"isAccessibleByAllUsers": true,
"roles": [
"string"
]
}
},
"customFieldID": "string",
"customFieldKey": "string",
"customFieldSetGroupIndex": 0,
"encodedKey": "string",
"indexInList": 0,
"linkedEntityKeyValue": "string",
"parentKey": "string",
"selectionKey": "string",
"value": "string"
}
],
"encodedKey": "string",
"feesDue": 0,
"holdBalance": 0,
"id": "string",
"interestDue": 0,
"interestPaymentDates": [
{
"dayOfMonth": 0,
"monthOfYear": 0,
"year": 0
}
],
"interestPaymentPoint": "EVERY_WEEK",
"interestSettings": {
"accrueInterestAfterMaturity": true,
"encodedKey": "string",
"interestChargeFrequency": "EVERY_WEEK",
"interestChargeFrequencyCount": 0,
"interestRate": 0,
"interestRateReviewCount": 0,
"interestRateReviewUnit": "MONTHS",
"interestRateSource": "FIXED_INTEREST_RATE",
"interestRateTerms": "TIERED_PERIOD",
"interestRateTiers": [
{
"encodedKey": "string",
"endingBalance": 0,
"endingDay": 0,
"index": 0,
"interestRate": 0
}
],
"interestSpread": 0
},
"lastAccountAppraisalDate": "string",
"lastInterestCalculationDate": "string",
"lastInterestStoredDate": "string",
"lastModifiedDate": "string",
"lastOverdraftInterestReviewDate": "string",
"lastSetToArrearsDate": "string",
"lineOfCreditKey": "string",
"lockedBalance": 0,
"lockedDate": "string",
"maturityDate": "string",
"maxWidthdrawlAmount": 0,
"migrationEvent": {
"creationDate": "string",
"encodedKey": "string",
"numCentresImported": 0,
"numClientsImported": 0,
"numGLAccountsImported": 0,
"numGroupsImported": 0,
"numLoanRepaymentsImported": 0,
"numLoanTransactionsImported": 0,
"numLoansImported": 0,
"numSavingsImported": 0,
"state": "REVERTED",
"type": "IMPORT"
},
"name": "string",
"notes": "string",
"overdraftAmount": 0,
"overdraftExpiryDate": "string",
"overdraftExpiryDateDTO": {
"dayOfMonth": 0,
"monthOfYear": 0,
"year": 0
},
"overdraftInterestAccrued": 0,
"overdraftInterestSettings": {
"accrueInterestAfterMaturity": true,
"encodedKey": "string",
"interestChargeFrequency": "EVERY_WEEK",
"interestChargeFrequencyCount": 0,
"interestRate": 0,
"interestRateReviewCount": 0,
"interestRateReviewUnit": "MONTHS",
"interestRateSource": "FIXED_INTEREST_RATE",
"interestRateTerms": "TIERED_PERIOD",
"interestRateTiers": [
{
"encodedKey": "string",
"endingBalance": 0,
"endingDay": 0,
"index": 0,
"interestRate": 0
}
],
"interestSpread": 0
},
"overdraftLimit": 0,
"productTypeKey": "string",
"recommendedDepositAmount": 0,
"targetAmount": 0,
"technicalInterestDue": 0,
"technicalOverdraftAmount": 0,
"technicalOverdraftInterestAccrued": 0,
"withholdingTaxSourceKey": "string"
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ok | Inline |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
anonymous | [SavingsAccountApiV1] | none | false | none |
» accountHolderKey | string | none | false | none |
» accountHolderType | string | none | false | none |
» accountState | string | none | false | none |
» accountType | string | none | false | none |
» accruedInterest | number | none | false | none |
» activationDate | string | none | false | none |
» allowOverdraft | boolean | none | false | none |
» approvedDate | string | none | false | none |
» assignedBranchKey | string | none | false | none |
» assignedCentreKey | string | none | false | none |
» assignedUserKey | string | none | false | none |
» availableBalance | number | none | false | none |
» balance | number | none | false | none |
» closedDate | string | none | false | none |
» creationDate | string | none | false | none |
» currency | CurrencyApiV1 | none | false | none |
»» code | string | none | false | none |
»» creationDate | string | none | false | none |
»» currencySymbolPosition | string | none | false | none |
»» digitsAfterDecimal | number | none | false | none |
»» isBaseCurrency | boolean | none | false | none |
»» lastModifiedDate | string | none | false | none |
»» name | string | none | false | none |
»» symbol | string | none | false | none |
» currencyCode | string | none | false | none |
» customFieldValues | [CustomFieldValueApiV1] | none | false | none |
»» amount | number | none | false | none |
»» customField | CustomFieldApiV1 | none | false | none |
»»» amounts | object | none | false | none |
»»»» additionalProperties | number | none | false | none |
»»» builtInCustomFieldId | string | none | false | none |
»»» creationDate | string | none | false | none |
»»» customFieldProductSettings | [CustomFieldLinkApiV1] | none | false | none |
»»»» customFieldEncodedKey | string | none | false | none |
»»»» encodedKey | string | none | false | none |
»»»» isDefault | boolean | none | false | none |
»»»» isRequired | boolean | none | false | none |
»»»» linkType | string | none | false | none |
»»»» productKey | string | none | false | none |
»»» customFieldSelectionOptions | [CustomFieldSelectionApiV1] | none | false | none |
»»»» constraint | CustomFilterConstraintApiV1 | none | false | none |
»»»»» customFieldKey | string | none | false | none |
»»»»» dataFieldType | string | none | false | none |
»»»»» dataFieldValue | string | none | false | none |
»»»»» dataItemType | string | none | false | none |
»»»»» dataType | string | none | false | none |
»»»»» encodedKey | string | none | false | none |
»»»»» filterElement | string | none | false | none |
»»»»» groupNumber | number | none | false | none |
»»»»» index | number | none | false | none |
»»»»» linkingOperator | string | none | false | none |
»»»»» secondValue | string | none | false | none |
»»»»» value | string | none | false | none |
»»»» encodedKey | string | none | false | none |
»»»» id | string | none | false | none |
»»»» score | number | none | false | none |
»»»» value | string | none | false | none |
»»» customFieldSet | CustomFieldSetApiV1 | none | false | none |
»»»» builtInType | string | none | false | none |
»»»» createdDate | string | none | false | none |
»»»» customFields | [CustomFieldApiV1] | none | false | none |
»»»» encodedKey | string | none | false | none |
»»»» id | string | none | false | none |
»»»» indexInList | number | none | false | none |
»»»» lastModifiedDate | string | none | false | none |
»»»» name | string | none | false | none |
»»»» notes | string | none | false | none |
»»»» type | string | none | false | none |
»»»» usage | string | none | false | none |
»»» dataType | string | none | false | none |
»»» description | string | none | false | none |
»»» editRights | UsageRightsApiV1 | none | false | none |
»»»» encodedKey | string | none | false | none |
»»»» isAccessibleByAllUsers | boolean | none | false | none |
»»»» roles | [string] | none | false | none |
»»» encodedKey | string | none | false | none |
»»» id | string | none | false | none |
»»» indexInList | number | none | false | none |
»»» isDefault | boolean | none | false | none |
»»» isRequired | boolean | none | false | none |
»»» lastModifiedDate | string | none | false | none |
»»» name | string | none | false | none |
»»» state | string | none | false | none |
»»» type | string | none | false | none |
»»» unique | boolean | none | false | none |
»»» validationPattern | string | none | false | none |
»»» valueLength | string | none | false | none |
»»» values | [string] | none | false | none |
»»» viewRights | UsageRightsApiV1 | none | false | none |
»» customFieldID | string | none | false | none |
»» customFieldKey | string | none | false | none |
»» customFieldSetGroupIndex | number | none | false | none |
»» encodedKey | string | none | false | none |
»» indexInList | number | none | false | none |
»» linkedEntityKeyValue | string | none | false | none |
»» parentKey | string | none | false | none |
»» selectionKey | string | none | false | none |
»» value | string | none | false | none |
» encodedKey | string | none | false | none |
» feesDue | number | none | false | none |
» holdBalance | number | none | false | none |
» id | string | none | false | none |
» interestDue | number | none | false | none |
» interestPaymentDates | [DateDTOApiV1] | none | false | none |
»» dayOfMonth | number | none | false | none |
»» monthOfYear | number | none | false | none |
»» year | number | none | false | none |
» interestPaymentPoint | string | none | false | none |
» interestSettings | InterestAccountSettingsApiV1 | none | false | none |
»» accrueInterestAfterMaturity | boolean | none | false | none |
»» encodedKey | string | none | false | none |
»» interestChargeFrequency | string | none | false | none |
»» interestChargeFrequencyCount | number | none | false | none |
»» interestRate | number | none | false | none |
»» interestRateReviewCount | number | none | false | none |
»» interestRateReviewUnit | string | none | false | none |
»» interestRateSource | string | none | false | none |
»» interestRateTerms | string | none | false | none |
»» interestRateTiers | [InterestRateTierApiV1] | none | false | none |
»»» encodedKey | string | none | false | none |
»»» endingBalance | number | none | false | none |
»»» endingDay | number | none | false | none |
»»» index | number | none | false | none |
»»» interestRate | number | none | false | none |
»» interestSpread | number | none | false | none |
» lastAccountAppraisalDate | string | none | false | none |
» lastInterestCalculationDate | string | none | false | none |
» lastInterestStoredDate | string | none | false | none |
» lastModifiedDate | string | none | false | none |
» lastOverdraftInterestReviewDate | string | none | false | none |
» lastSetToArrearsDate | string | none | false | none |
» lineOfCreditKey | string | none | false | none |
» lockedBalance | number | none | false | none |
» lockedDate | string | none | false | none |
» maturityDate | string | none | false | none |
» maxWidthdrawlAmount | number | none | false | none |
» migrationEvent | DataMigrationEventApiV1 | none | false | none |
»» creationDate | string | none | false | none |
»» encodedKey | string | none | false | none |
»» numCentresImported | number | none | false | none |
»» numClientsImported | number | none | false | none |
»» numGLAccountsImported | number | none | false | none |
»» numGroupsImported | number | none | false | none |
»» numLoanRepaymentsImported | number | none | false | none |
»» numLoanTransactionsImported | number | none | false | none |
»» numLoansImported | number | none | false | none |
»» numSavingsImported | number | none | false | none |
»» state | string | none | false | none |
»» type | string | none | false | none |
» name | string | none | false | none |
» notes | string | none | false | none |
» overdraftAmount | number | none | false | none |
» overdraftExpiryDate | string | none | false | none |
» overdraftExpiryDateDTO | DateDTOApiV1 | none | false | none |
» overdraftInterestAccrued | number | none | false | none |
» overdraftInterestSettings | InterestAccountSettingsApiV1 | none | false | none |
» overdraftLimit | number | none | false | none |
» productTypeKey | string | none | false | none |
» recommendedDepositAmount | number | none | false | none |
» targetAmount | number | none | false | none |
» technicalInterestDue | number | none | false | none |
» technicalOverdraftAmount | number | none | false | none |
» technicalOverdraftInterestAccrued | number | none | false | none |
» withholdingTaxSourceKey | string | none | false | none |
Enumerated Values
Property | Value |
---|---|
accountHolderType | GROUP |
accountHolderType | CLIENT |
accountState | WITHDRAWN |
accountState | PARTIALLY_DISBURSED |
accountState | LOCKED |
accountState | ACTIVE |
accountState | CLOSED |
accountState | PARTIAL_APPLICATION |
accountState | LOCKED_CAPPING |
accountState | CLOSED_REJECTED |
accountState | RESCHEDULED |
accountState | ACTIVE_IN_ARREARS |
accountState | MATURED |
accountState | CLOSED_RESCHEDULED |
accountState | CLOSED_WITHDRAWN |
accountState | PENDING_APPROVAL |
accountState | APPROVED |
accountState | REFINANCED |
accountState | DORMANT |
accountState | CLOSED_WRITTEN_OFF |
accountType | CURRENT_ACCOUNT |
accountType | REGULAR_SAVINGS |
accountType | FIXED_DEPOSIT |
accountType | INVESTOR_ACCOUNT |
accountType | SAVINGS_PLAN |
currencySymbolPosition | AFTER_NUMBER |
currencySymbolPosition | BEFORE_NUMBER |
builtInCustomFieldId | MOBILE_PHONE |
builtInCustomFieldId | EMAIL_ADDRESS |
builtInCustomFieldId | GENDER |
builtInCustomFieldId | MIDDLE_NAME |
builtInCustomFieldId | HOME_PHONE |
builtInCustomFieldId | BIRTHDATE |
builtInCustomFieldId | LAST_NAME |
builtInCustomFieldId | FIRST_NAME |
linkType | CLIENT_ROLE |
linkType | CHANNEL |
linkType | PRODUCT |
dataFieldType | NATIVE |
dataFieldType | CUSTOM |
dataItemType | WRITTEN_OFF_LOANS |
dataItemType | LINE_OF_CREDIT |
dataItemType | INVESTOR_FUND |
dataItemType | TRANSACTION_DETAILS |
dataItemType | DOCUMENT_TEMPLATE |
dataItemType | PRODUCT |
dataItemType | MCC_EXPIRATION |
dataItemType | CENTRE |
dataItemType | REPAYMENT_COLLECTION |
dataItemType | TASK |
dataItemType | OUTSTANDING_PORTFOLIO_AMOUNTS |
dataItemType | REVENUE |
dataItemType | COMPOSED_TRANSACTIONS |
dataItemType | UNION_TRANSACTIONS |
dataItemType | PRINCIPAL_PAYMENT_SETTINGS |
dataItemType | LOANS |
dataItemType | DISBURSEMENT_DETAILS |
dataItemType | SAVINGS_TRANSACTION |
dataItemType | IDENTIFICATION_DOCUMENT |
dataItemType | LOAN_PRODUCT |
dataItemType | DISBURSED_LOANS |
dataItemType | LOAN_GROUP |
dataItemType | TRANSACTION_CHANNEL |
dataItemType | CUSTOM_PREDEFINED_FEE |
dataItemType | JOURNAL_ENTRY |
dataItemType | ATTACHMENT |
dataItemType | PREDEFINED_FEE |
dataItemType | TRANCHE |
dataItemType | TRANSACTION |
dataItemType | INDEX_RATE_SOURCE |
dataItemType | GROUP_ROLE |
dataItemType | LOAN_TRANSACTION |
dataItemType | CLIENT_ROLE |
dataItemType | GROUP |
dataItemType | NOTIFICATION_MESSAGE |
dataItemType | OUTSTANDING_PORTFOLIO_ACCOUNTS |
dataItemType | REPAYMENT |
dataItemType | LOAN_ACCOUNT_GUARANTY |
dataItemType | BRANCH |
dataItemType | CURRENCY |
dataItemType | CARD_TRANSACTION_REVERSAL |
dataItemType | INTEREST_PRODUCT_SETTINGS |
dataItemType | CREATED_ACCOUNTS |
dataItemType | USER |
dataItemType | SAVINGS_PRODUCT |
dataItemType | CLIENT |
dataItemType | PRODUCT_ARREARS_SETTINGS |
dataItemType | SAVINGS |
dataItemType | EXPENSE |
dataItemType | INDEX_RATE |
dataItemType | NOTIFICATION_TEMPLATE |
dataItemType | CUSTOM_FIELD_SELECTION |
dataItemType | ACTIVITY |
dataType | ENUM |
dataType | MONEY |
dataType | NUMBER |
dataType | DATE_UTC |
dataType | JAVA_BLOB |
dataType | OBJECT |
dataType | BOOLEAN |
dataType | DATE |
dataType | PERCENT |
dataType | BIG_DECIMAL |
dataType | STRING |
dataType | KEY |
dataType | LONG |
filterElement | STARTS_WITH_CASE_SENSITIVE |
filterElement | THIS_WEEK |
filterElement | EQUALS |
filterElement | STARTS_WITH |
filterElement | IN |
filterElement | TODAY |
filterElement | THIS_YEAR |
filterElement | BETWEEN |
filterElement | AFTER |
filterElement | LESS_THAN |
filterElement | DIFFERENT_THAN |
filterElement | THIS_MONTH |
filterElement | NOT_EMPTY |
filterElement | BEFORE |
filterElement | EQUALS_CASE_SENSITIVE |
filterElement | LAST_DAYS |
filterElement | MORE_THAN |
filterElement | EMPTY |
filterElement | ON |
linkingOperator | OR |
linkingOperator | AND |
builtInType | DETAILS |
builtInType | GENERAL |
type | USER_INFO |
type | ASSET_INFO |
type | CLIENT_INFO |
type | LINE_OF_CREDIT |
type | GROUP_INFO |
type | TRANSACTION_CHANNEL_INFO |
type | BRANCH_INFO |
type | SAVINGS_ACCOUNT_INFO |
type | LOAN_ACCOUNT_INFO |
type | GUARANTOR_INFO |
type | CENTRE_INFO |
usage | SINGLE |
usage | GROUPED |
dataType | GROUP_LINK |
dataType | DATE |
dataType | NUMBER |
dataType | CHECKBOX |
dataType | CLIENT_LINK |
dataType | STRING |
dataType | USER_LINK |
dataType | SELECTION |
state | DEACTIVATED |
state | NORMAL |
type | USER_INFO |
type | ASSET_INFO |
type | CLIENT_INFO |
type | LINE_OF_CREDIT |
type | GROUP_INFO |
type | TRANSACTION_CHANNEL_INFO |
type | BRANCH_INFO |
type | SAVINGS_ACCOUNT_INFO |
type | LOAN_ACCOUNT_INFO |
type | GUARANTOR_INFO |
type | CENTRE_INFO |
valueLength | SHORT |
valueLength | LONG |
interestPaymentPoint | EVERY_WEEK |
interestPaymentPoint | ON_FIXED_DATES |
interestPaymentPoint | EVERY_MONTH |
interestPaymentPoint | ON_ACCOUNT_MATURITY |
interestPaymentPoint | EVERY_3_MONTHS |
interestPaymentPoint | FIRST_DAY_OF_MONTH |
interestPaymentPoint | EVERY_OTHER_WEEK |
interestChargeFrequency | EVERY_WEEK |
interestChargeFrequency | ANNUALIZED |
interestChargeFrequency | EVERY_MONTH |
interestChargeFrequency | EVERY_X_DAYS |
interestChargeFrequency | EVERY_FOUR_WEEKS |
interestChargeFrequency | EVERY_DAY |
interestRateReviewUnit | MONTHS |
interestRateReviewUnit | WEEKS |
interestRateReviewUnit | DAYS |
interestRateSource | FIXED_INTEREST_RATE |
interestRateSource | INDEX_INTEREST_RATE |
interestRateTerms | TIERED_PERIOD |
interestRateTerms | FIXED |
interestRateTerms | TIERED |
state | REVERTED |
state | DRAFT |
state | APPROVED |
type | IMPORT |
type | EXPORT |
Get a Savings Account for a Client
GET /clients/{clientId}/savings/{savingsAccountId}
Get a Savings Account for a Client
Get a specific savings account for a given client by savings account ID
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
clientId | string | none | path | true |
fullDetails | boolean | none | query | false |
savingsId | string | none | path | true |
savingsAccountId | string | none | path | true |
Example Responses
200 Response
{
"accountHolderKey": "string",
"accountHolderType": "GROUP",
"accountState": "WITHDRAWN",
"accountType": "CURRENT_ACCOUNT",
"accruedInterest": 0,
"activationDate": "string",
"allowOverdraft": true,
"approvedDate": "string",
"assignedBranchKey": "string",
"assignedCentreKey": "string",
"assignedUserKey": "string",
"availableBalance": 0,
"balance": 0,
"closedDate": "string",
"creationDate": "string",
"currency": {
"code": "string",
"creationDate": "string",
"currencySymbolPosition": "AFTER_NUMBER",
"digitsAfterDecimal": 0,
"isBaseCurrency": true,
"lastModifiedDate": "string",
"name": "string",
"symbol": "string"
},
"currencyCode": "string",
"customFieldValues": [
{
"amount": 0,
"customField": {
"amounts": {
"property1": 0,
"property2": 0
},
"builtInCustomFieldId": "MOBILE_PHONE",
"creationDate": "string",
"customFieldProductSettings": [
{
"customFieldEncodedKey": "string",
"encodedKey": "string",
"isDefault": true,
"isRequired": true,
"linkType": "CLIENT_ROLE",
"productKey": "string"
}
],
"customFieldSelectionOptions": [
{
"constraint": {
"customFieldKey": "string",
"dataFieldType": "NATIVE",
"dataFieldValue": "string",
"dataItemType": "WRITTEN_OFF_LOANS",
"dataType": "ENUM",
"encodedKey": "string",
"filterElement": "STARTS_WITH_CASE_SENSITIVE",
"groupNumber": 0,
"index": 0,
"linkingOperator": "OR",
"secondValue": "string",
"value": "string"
},
"encodedKey": "string",
"id": "string",
"score": 0,
"value": "string"
}
],
"customFieldSet": {
"builtInType": "DETAILS",
"createdDate": "string",
"customFields": [
{}
],
"encodedKey": "string",
"id": "string",
"indexInList": 0,
"lastModifiedDate": "string",
"name": "string",
"notes": "string",
"type": "USER_INFO",
"usage": "SINGLE"
},
"dataType": "GROUP_LINK",
"description": "string",
"editRights": {
"encodedKey": "string",
"isAccessibleByAllUsers": true,
"roles": [
"string"
]
},
"encodedKey": "string",
"id": "string",
"indexInList": 0,
"isDefault": true,
"isRequired": true,
"lastModifiedDate": "string",
"name": "string",
"state": "DEACTIVATED",
"type": "USER_INFO",
"unique": true,
"validationPattern": "string",
"valueLength": "SHORT",
"values": [
"string"
],
"viewRights": {
"encodedKey": "string",
"isAccessibleByAllUsers": true,
"roles": [
"string"
]
}
},
"customFieldID": "string",
"customFieldKey": "string",
"customFieldSetGroupIndex": 0,
"encodedKey": "string",
"indexInList": 0,
"linkedEntityKeyValue": "string",
"parentKey": "string",
"selectionKey": "string",
"value": "string"
}
],
"encodedKey": "string",
"feesDue": 0,
"holdBalance": 0,
"id": "string",
"interestDue": 0,
"interestPaymentDates": [
{
"dayOfMonth": 0,
"monthOfYear": 0,
"year": 0
}
],
"interestPaymentPoint": "EVERY_WEEK",
"interestSettings": {
"accrueInterestAfterMaturity": true,
"encodedKey": "string",
"interestChargeFrequency": "EVERY_WEEK",
"interestChargeFrequencyCount": 0,
"interestRate": 0,
"interestRateReviewCount": 0,
"interestRateReviewUnit": "MONTHS",
"interestRateSource": "FIXED_INTEREST_RATE",
"interestRateTerms": "TIERED_PERIOD",
"interestRateTiers": [
{
"encodedKey": "string",
"endingBalance": 0,
"endingDay": 0,
"index": 0,
"interestRate": 0
}
],
"interestSpread": 0
},
"lastAccountAppraisalDate": "string",
"lastInterestCalculationDate": "string",
"lastInterestStoredDate": "string",
"lastModifiedDate": "string",
"lastOverdraftInterestReviewDate": "string",
"lastSetToArrearsDate": "string",
"lineOfCreditKey": "string",
"lockedBalance": 0,
"lockedDate": "string",
"maturityDate": "string",
"maxWidthdrawlAmount": 0,
"migrationEvent": {
"creationDate": "string",
"encodedKey": "string",
"numCentresImported": 0,
"numClientsImported": 0,
"numGLAccountsImported": 0,
"numGroupsImported": 0,
"numLoanRepaymentsImported": 0,
"numLoanTransactionsImported": 0,
"numLoansImported": 0,
"numSavingsImported": 0,
"state": "REVERTED",
"type": "IMPORT"
},
"name": "string",
"notes": "string",
"overdraftAmount": 0,
"overdraftExpiryDate": "string",
"overdraftExpiryDateDTO": {
"dayOfMonth": 0,
"monthOfYear": 0,
"year": 0
},
"overdraftInterestAccrued": 0,
"overdraftInterestSettings": {
"accrueInterestAfterMaturity": true,
"encodedKey": "string",
"interestChargeFrequency": "EVERY_WEEK",
"interestChargeFrequencyCount": 0,
"interestRate": 0,
"interestRateReviewCount": 0,
"interestRateReviewUnit": "MONTHS",
"interestRateSource": "FIXED_INTEREST_RATE",
"interestRateTerms": "TIERED_PERIOD",
"interestRateTiers": [
{
"encodedKey": "string",
"endingBalance": 0,
"endingDay": 0,
"index": 0,
"interestRate": 0
}
],
"interestSpread": 0
},
"overdraftLimit": 0,
"productTypeKey": "string",
"recommendedDepositAmount": 0,
"targetAmount": 0,
"technicalInterestDue": 0,
"technicalOverdraftAmount": 0,
"technicalOverdraftInterestAccrued": 0,
"withholdingTaxSourceKey": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ok | SavingsAccountApiV1 |
Currencies
Retrieve currency information which the organization is using for its accounts. Can retrieve a list of currencies or a specific one by code.
Get all Currencies
GET /currencies
List all currencies
Retrieves currencies used by the organization. By default only base currencies will be returned.
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
includeForeign | boolean | Whether to include foreign currencies supported by the organization | query | false |
Example Responses
200 : ok
a list of currencies including non-base currencies
[
{
"code": "USD",
"name": "United States dollar",
"symbol": "$",
"digitsAfterDecimal": 2,
"currencySymbolPosition": "BEFORE_NUMBER",
"isBaseCurrency": true,
"creationDate": "2016-05-24T16:51:12+0000",
"lastModifiedDate": "2016-05-24T16:51:12+0000"
},
{
"code": "RON",
"name": "Romanian new leu",
"symbol": "lei",
"digitsAfterDecimal": 2,
"currencySymbolPosition": "BEFORE_NUMBER",
"isBaseCurrency": false,
"creationDate": "2016-05-24T14:20:41+0000",
"lastModifiedDate": "2016-05-24T14:20:41+0000"
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ok | Inline |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
anonymous | [CurrencyApiV1] | none | false | none |
» code | string | none | false | none |
» creationDate | string | none | false | none |
» currencySymbolPosition | string | none | false | none |
» digitsAfterDecimal | number | none | false | none |
» isBaseCurrency | boolean | none | false | none |
» lastModifiedDate | string | none | false | none |
» name | string | none | false | none |
» symbol | string | none | false | none |
Enumerated Values
Property | Value |
---|---|
currencySymbolPosition | AFTER_NUMBER |
currencySymbolPosition | BEFORE_NUMBER |
Get Currency by ISO Code
GET /currencies/{currencyCode}
Get a single currency
get a currency by id
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
currencyCode | string | none | path | true |
Example Responses
200 Response
{
"code": "string",
"creationDate": "string",
"currencySymbolPosition": "AFTER_NUMBER",
"digitsAfterDecimal": 0,
"isBaseCurrency": true,
"lastModifiedDate": "string",
"name": "string",
"symbol": "string"
}
404 : Not Found
bad currency code
{
"returnCode": 650,
"returnStatus": "INVALID_CURRENCY_CODE"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ok | CurrencyApiV1 |
404 | Not Found | Not Found | Inline |
Response Schema
Status Code 404
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | string | none | false | none |
» returnStatus | string | none | false | none |
Get Currency Exchange Rates
GET /currencies/{currencyCode}/rates
List Currency Rates
Retrieves currency's exchange rates. If both from and to parameters are specified, it returns the list of exchange rates that start in/after from date or before(exclusive) to date.
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
offset | integer | The start index of the returned exchange rates list. | query | false |
limit | integer | The number of elements to be returned. | query | false |
from | string(date) | From (start) date to retrieve the exchange rates. | query | false |
to | string(date) | To (end) date to retrieve the exchange rates. | query | false |
currencyCode | string | the three letter ISO code of the currency for | path | true |
Example Responses
200 : ok
EUR/ARS exchange rate
[
{
"encodedKey": "8a19cd6f74674df90174681f214103d3",
"userKey": "8a194075720ece2c017226fced6f005e",
"fromCurrencyCode": "EUR",
"toCurrencyCode": "ARS",
"buyRate": "0.0113653",
"sellRate": "87.9872",
"startDate": "2020-09-07T15:24:11+0000"
}
]
400 : Bad Request
buy and sell rate values switched
{
"returnCode": 656,
"returnStatus": "BUY_RATE_GREATER_THAN_SELL_RATE"
}
404 : Not Found
bad currency code
{
"returnCode": 650,
"returnStatus": "INVALID_CURRENCY_CODE"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ok | Inline |
400 | Bad Request | Bad Request | Inline |
404 | Not Found | Not Found | Inline |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
anonymous | [ExchangeRateApiV1] | none | false | none |
» buyRate | number | The amount the currency will be bought from base currency. | true | none |
» encodedKey | string | a unique key for this exchange rate | false | none |
» endDate | string(date-time) | the date and time at which this rate was replaced by a newer one | false | none |
» fromCurrencyCode | string | the currency code from which the currency will be exchanged | false | none |
» sellRate | number | The amount the currency will be sold to base currency. | true | none |
» startDate | string(date-time) | The date from which the exchange rate will be valid. Must not be in the future or before the latest exchange rate's (for that currency) start date. If not provided, the organization current date and time will be used. | true | none |
» toCurrencyCode | string | the currency code into which the currency will be exchanged | false | none |
» userKey | string | the encoded key of the user who created the exchange rate | false | none |
Status Code 400
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | string | none | false | none |
» returnStatus | string | none | false | none |
Status Code 404
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | string | none | false | none |
» returnStatus | string | none | false | none |
Update Currency Exchange Rate
POST /currencies/{currencyCode}/rates
Set or update exchange rate
Stores a new exchange rate for a given currency.
Example requests
exchange rate
{
"buyRate": "0.0113420",
"sellRate": "86.0342"
}
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
body | CreateExchangeRateApiV1 | Post new currency exchange rate with optional validity start date | body | false |
currencyCode | string | the three letter ISO code of the currency for | path | true |
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | None |
Custom Field Sets
Allows you to retrieve the defined custom field sets.
Get Custom Field Sets
GET /customfieldsets
List Custom Field Sets
Allows retrieving of a list custom field sets that can be optionaly filtered by type. If a given type has no fields, an empty array will be returned.
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
type | string | Filter by entity type | query | false |
Enumerated Values
Parameter | Value |
---|---|
type | USER_INFO |
type | ASSET_INFO |
type | CLIENT_INFO |
type | LINE_OF_CREDIT |
type | GROUP_INFO |
type | TRANSACTION_CHANNEL_INFO |
type | BRANCH_INFO |
type | SAVINGS_ACCOUNT_INFO |
type | LOAN_ACCOUNT_INFO |
type | GUARANTOR_INFO |
type | CENTRE_INFO |
Example Responses
200 Response
[
{
"builtInType": "DETAILS",
"createdDate": "string",
"customFields": [
{
"amounts": {
"property1": 0,
"property2": 0
},
"builtInCustomFieldId": "MOBILE_PHONE",
"creationDate": "string",
"customFieldProductSettings": [
{
"customFieldEncodedKey": "string",
"encodedKey": "string",
"isDefault": true,
"isRequired": true,
"linkType": "CLIENT_ROLE",
"productKey": "string"
}
],
"customFieldSelectionOptions": [
{
"constraint": {
"customFieldKey": "string",
"dataFieldType": "NATIVE",
"dataFieldValue": "string",
"dataItemType": "WRITTEN_OFF_LOANS",
"dataType": "ENUM",
"encodedKey": "string",
"filterElement": "STARTS_WITH_CASE_SENSITIVE",
"groupNumber": 0,
"index": 0,
"linkingOperator": "OR",
"secondValue": "string",
"value": "string"
},
"encodedKey": "string",
"id": "string",
"score": 0,
"value": "string"
}
],
"customFieldSet": {},
"dataType": "GROUP_LINK",
"description": "string",
"editRights": {
"encodedKey": "string",
"isAccessibleByAllUsers": true,
"roles": [
"string"
]
},
"encodedKey": "string",
"id": "string",
"indexInList": 0,
"isDefault": true,
"isRequired": true,
"lastModifiedDate": "string",
"name": "string",
"state": "DEACTIVATED",
"type": "USER_INFO",
"unique": true,
"validationPattern": "string",
"valueLength": "SHORT",
"values": [
"string"
],
"viewRights": {
"encodedKey": "string",
"isAccessibleByAllUsers": true,
"roles": [
"string"
]
}
}
],
"encodedKey": "string",
"id": "string",
"indexInList": 0,
"lastModifiedDate": "string",
"name": "string",
"notes": "string",
"type": "USER_INFO",
"usage": "SINGLE"
}
]
400 : Bad Request
bad type filter
{
"returnCode": 4,
"returnStatus": "INVALID_PARAMETERS",
"errorSource": "there is a problem with the input parameters"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ok | Inline |
400 | Bad Request | Bad Request | Inline |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
anonymous | [CustomFieldSetApiV1] | none | false | none |
» builtInType | string | none | false | none |
» createdDate | string | none | false | none |
» customFields | [CustomFieldApiV1] | none | false | none |
»» amounts | object | none | false | none |
»»» additionalProperties | number | none | false | none |
»» builtInCustomFieldId | string | none | false | none |
»» creationDate | string | none | false | none |
»» customFieldProductSettings | [CustomFieldLinkApiV1] | none | false | none |
»»» customFieldEncodedKey | string | none | false | none |
»»» encodedKey | string | none | false | none |
»»» isDefault | boolean | none | false | none |
»»» isRequired | boolean | none | false | none |
»»» linkType | string | none | false | none |
»»» productKey | string | none | false | none |
»» customFieldSelectionOptions | [CustomFieldSelectionApiV1] | none | false | none |
»»» constraint | CustomFilterConstraintApiV1 | none | false | none |
»»»» customFieldKey | string | none | false | none |
»»»» dataFieldType | string | none | false | none |
»»»» dataFieldValue | string | none | false | none |
»»»» dataItemType | string | none | false | none |
»»»» dataType | string | none | false | none |
»»»» encodedKey | string | none | false | none |
»»»» filterElement | string | none | false | none |
»»»» groupNumber | number | none | false | none |
»»»» index | number | none | false | none |
»»»» linkingOperator | string | none | false | none |
»»»» secondValue | string | none | false | none |
»»»» value | string | none | false | none |
»»» encodedKey | string | none | false | none |
»»» id | string | none | false | none |
»»» score | number | none | false | none |
»»» value | string | none | false | none |
»» customFieldSet | CustomFieldSetApiV1 | none | false | none |
»» dataType | string | none | false | none |
»» description | string | none | false | none |
»» editRights | UsageRightsApiV1 | none | false | none |
»»» encodedKey | string | none | false | none |
»»» isAccessibleByAllUsers | boolean | none | false | none |
»»» roles | [string] | none | false | none |
»» encodedKey | string | none | false | none |
»» id | string | none | false | none |
»» indexInList | number | none | false | none |
»» isDefault | boolean | none | false | none |
»» isRequired | boolean | none | false | none |
»» lastModifiedDate | string | none | false | none |
»» name | string | none | false | none |
»» state | string | none | false | none |
»» type | string | none | false | none |
»» unique | boolean | none | false | none |
»» validationPattern | string | none | false | none |
»» valueLength | string | none | false | none |
»» values | [string] | none | false | none |
»» viewRights | UsageRightsApiV1 | none | false | none |
» encodedKey | string | none | false | none |
» id | string | none | false | none |
» indexInList | number | none | false | none |
» lastModifiedDate | string | none | false | none |
» name | string | none | false | none |
» notes | string | none | false | none |
» type | string | none | false | none |
» usage | string | none | false | none |
Enumerated Values
Property | Value |
---|---|
builtInType | DETAILS |
builtInType | GENERAL |
builtInCustomFieldId | MOBILE_PHONE |
builtInCustomFieldId | EMAIL_ADDRESS |
builtInCustomFieldId | GENDER |
builtInCustomFieldId | MIDDLE_NAME |
builtInCustomFieldId | HOME_PHONE |
builtInCustomFieldId | BIRTHDATE |
builtInCustomFieldId | LAST_NAME |
builtInCustomFieldId | FIRST_NAME |
linkType | CLIENT_ROLE |
linkType | CHANNEL |
linkType | PRODUCT |
dataFieldType | NATIVE |
dataFieldType | CUSTOM |
dataItemType | WRITTEN_OFF_LOANS |
dataItemType | LINE_OF_CREDIT |
dataItemType | INVESTOR_FUND |
dataItemType | TRANSACTION_DETAILS |
dataItemType | DOCUMENT_TEMPLATE |
dataItemType | PRODUCT |
dataItemType | MCC_EXPIRATION |
dataItemType | CENTRE |
dataItemType | REPAYMENT_COLLECTION |
dataItemType | TASK |
dataItemType | OUTSTANDING_PORTFOLIO_AMOUNTS |
dataItemType | REVENUE |
dataItemType | COMPOSED_TRANSACTIONS |
dataItemType | UNION_TRANSACTIONS |
dataItemType | PRINCIPAL_PAYMENT_SETTINGS |
dataItemType | LOANS |
dataItemType | DISBURSEMENT_DETAILS |
dataItemType | SAVINGS_TRANSACTION |
dataItemType | IDENTIFICATION_DOCUMENT |
dataItemType | LOAN_PRODUCT |
dataItemType | DISBURSED_LOANS |
dataItemType | LOAN_GROUP |
dataItemType | TRANSACTION_CHANNEL |
dataItemType | CUSTOM_PREDEFINED_FEE |
dataItemType | JOURNAL_ENTRY |
dataItemType | ATTACHMENT |
dataItemType | PREDEFINED_FEE |
dataItemType | TRANCHE |
dataItemType | TRANSACTION |
dataItemType | INDEX_RATE_SOURCE |
dataItemType | GROUP_ROLE |
dataItemType | LOAN_TRANSACTION |
dataItemType | CLIENT_ROLE |
dataItemType | GROUP |
dataItemType | NOTIFICATION_MESSAGE |
dataItemType | OUTSTANDING_PORTFOLIO_ACCOUNTS |
dataItemType | REPAYMENT |
dataItemType | LOAN_ACCOUNT_GUARANTY |
dataItemType | BRANCH |
dataItemType | CURRENCY |
dataItemType | CARD_TRANSACTION_REVERSAL |
dataItemType | INTEREST_PRODUCT_SETTINGS |
dataItemType | CREATED_ACCOUNTS |
dataItemType | USER |
dataItemType | SAVINGS_PRODUCT |
dataItemType | CLIENT |
dataItemType | PRODUCT_ARREARS_SETTINGS |
dataItemType | SAVINGS |
dataItemType | EXPENSE |
dataItemType | INDEX_RATE |
dataItemType | NOTIFICATION_TEMPLATE |
dataItemType | CUSTOM_FIELD_SELECTION |
dataItemType | ACTIVITY |
dataType | ENUM |
dataType | MONEY |
dataType | NUMBER |
dataType | DATE_UTC |
dataType | JAVA_BLOB |
dataType | OBJECT |
dataType | BOOLEAN |
dataType | DATE |
dataType | PERCENT |
dataType | BIG_DECIMAL |
dataType | STRING |
dataType | KEY |
dataType | LONG |
filterElement | STARTS_WITH_CASE_SENSITIVE |
filterElement | THIS_WEEK |
filterElement | EQUALS |
filterElement | STARTS_WITH |
filterElement | IN |
filterElement | TODAY |
filterElement | THIS_YEAR |
filterElement | BETWEEN |
filterElement | AFTER |
filterElement | LESS_THAN |
filterElement | DIFFERENT_THAN |
filterElement | THIS_MONTH |
filterElement | NOT_EMPTY |
filterElement | BEFORE |
filterElement | EQUALS_CASE_SENSITIVE |
filterElement | LAST_DAYS |
filterElement | MORE_THAN |
filterElement | EMPTY |
filterElement | ON |
linkingOperator | OR |
linkingOperator | AND |
dataType | GROUP_LINK |
dataType | DATE |
dataType | NUMBER |
dataType | CHECKBOX |
dataType | CLIENT_LINK |
dataType | STRING |
dataType | USER_LINK |
dataType | SELECTION |
state | DEACTIVATED |
state | NORMAL |
type | USER_INFO |
type | ASSET_INFO |
type | CLIENT_INFO |
type | LINE_OF_CREDIT |
type | GROUP_INFO |
type | TRANSACTION_CHANNEL_INFO |
type | BRANCH_INFO |
type | SAVINGS_ACCOUNT_INFO |
type | LOAN_ACCOUNT_INFO |
type | GUARANTOR_INFO |
type | CENTRE_INFO |
valueLength | SHORT |
valueLength | LONG |
type | USER_INFO |
type | ASSET_INFO |
type | CLIENT_INFO |
type | LINE_OF_CREDIT |
type | GROUP_INFO |
type | TRANSACTION_CHANNEL_INFO |
type | BRANCH_INFO |
type | SAVINGS_ACCOUNT_INFO |
type | LOAN_ACCOUNT_INFO |
type | GUARANTOR_INFO |
type | CENTRE_INFO |
usage | SINGLE |
usage | GROUPED |
Status Code 400
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | string | none | false | none |
» returnStatus | string | none | false | none |
» errorSource | string | none | false | none |
Custom Fields
Allows you to retrieve the defined custom fields. A custom field can be a member of a set.
Get Custom Field Details
GET /customfields/{customFieldId}
Get details on a Custom Field
Allows retrieving of a custom field based on id/key. The custom field can be fetched only based on id/key.
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
customFieldId | string | none | path | true |
Example Responses
200 : ok
Response containing the custom field withJOB_TITLE
id
{
"encodedKey": "8a54e5b44449337f01444a6db5d40006",
"id": "JOB_TITLE",
"name": "Current Job Title",
"type": "CLIENT_INFO",
"dataType": "STRING",
"valueLength": "LONG",
"isDefault": true,
"isRequired": true,
"description": "The current job title for the client.",
"indexInList": 8,
"state": "NORMAL"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ok | CustomFieldApiV1 |
Database Backups
Allows API users to trigger Mambu database backups and download them once they are ready.
Execution flow example
- Use POST call to request the database backup to be generated and register/define the callback endpoint.
- This call triggers the database copy creation, which is a prerequisite to download a backup
- The callback parameter is not required but recommended
- If a callback parameter is defined, a callback will be sent to the endpoint, confirming that step 1 has been completed and that the database backup can be downloaded.
- The response to this callback should be OK (200)
- The endpoint is useful to ensure that the creation process has finished and step 3 can be performed
- Use a GET call to request the download of the database backup.
- If an endpoint is defined, it can be triggered immediately after the callback (step 2) is received
- If there is no endpoint defined, please wait several minutes, up to one hour (depending on the size of your database), to allow Mambu some time to finish the creation of the database from step 1.
Required permissions:
- Download Backups for triggering and downloading a database backup
Initiate Database Backup
POST /database/backup
Initiate database backup
Allow the trigger of database backups. The developer can be notified via a callback defined in the POST call when the backup is ready.
You can provide the callback either in the json body or as a query parameter.
After the database backup process is completed, the following payload will be sent to the callback url provided:
{
"tenantId":"demo",
"result":"COMPLETE",
"domain":"demo.mambu.com",
"fileName":"demo-MANUAL-DATABASE-BACKUP"
}
Required permissions:
- Download Backups for triggering and downloading a database backup
Please Note:
While a backup is in progress, Mambu will not allow starting another one. If you need to create backups after Mambu's nightly processing, you can setup the "End of Day Processing" / "Accounts Updated" WebHook in Mambu to get notified and then trigger the backup request with this API.
Example requests
example callback to php script
{
"callback": "https://path.to/myserver?callback.php"
}
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
callback | string | URL encoded callback | query | false |
callback | string(uri) | A valid URL. It will receive a WebHook call from Mambu once the backup is available (Optional). | body | false |
Example Responses
200 : OK
Success reponse
{
"returnCode": 0,
"returnStatus": "SUCCESS"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | Inline |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | string | none | false | none |
» returnStatus | string | none | false | none |
Get Latest Database Backup
GET /database/backup/LATEST
Download latest backup
Download the latest database backup that was triggered via the POST call.
The response headers will contain more information about the backup:
- Content-Type: application/zip
- Content-Disposition: attachment; filename="demo_tenantMANUALDATABASEBACKUP.zip"
- LastModified: the date when the database backup execution finished
Required permissions:
- Download Backups for triggering and downloading a database backup
Example Responses
400 : No current backup
no current backup
400 Response
{}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | None |
400 | Bad Request | No current backup | Inline |
Response Schema
Status Code 400
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | string | none | false | none |
» returnStatus | string | none | false | none |
» errorSource | string | none | false | none |
Response Headers
Status | Header | Type | Format | Description |
---|---|---|---|---|
200 | Content-Disposition | string | none | |
200 | Content-Type | string | none | |
200 | Last Modified | string | the date when the database backup execution finished |
Documents
Allows you to get, post or delete attachments.
Attach new Document
POST /documents
Add attachment to entity
Allow for adding attachments to a client or account. The request should include a JSON encoding of the data being pushed including the documentHolderType
(e.g. CLIENT
) and documentHolderKey
as well as the base64 encoded document body.
Example requests
a user photo
{
"document": {
"documentHolderKey": "40288a0c3e3cfb4e013e3d00bbzxcvs",
"documentHolderType": "USER",
"name": "john_photo",
"type": "jpg"
},
"documentContent": "[base64encodedString]"
}
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
body | CreateDocumentApiV1 | a new document | body | false |
Example Responses
200 : OK
Details on an uploaded attachment
{
"encodedKey": "8aa0f78f444f763601444f7fb89e0001",
"id": 1,
"creationDate": "2014-02-20T13:32:54+0000",
"lastModifiedDate": "2014-02-20T13:32:54+0000",
"documentHolderKey": "8a33ae49441c4fe101441c7149cb00fe",
"documentHolderType": "CLIENT",
"name": "document",
"type": "doc",
"fileSize": 14,
"originalFilename": "document",
"location": "8aa0f78f444f763601444f7fb89e0001",
"createdByUserKey": "8a33ae49441c4fe101441c5fe42f0005"
}
400 : Bad Request
wrong content type specified
{
"returnCode": 973,
"returnStatus": "INCONSISTENT_EXTENSION_WITH_FILE_CONTENT",
"errorSource": "Invalid extension with file content"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | DocumentApiV1 |
400 | Bad Request | Bad Request | Inline |
Response Schema
Status Code 400
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | string | none | false | none |
» returnStatus | string | none | false | none |
» errorSource | string | none | false | none |
Get Documents
GET /documents
Get documents
Allows retrieving a list of documents descriptions based on the owner id/key or type. Documents will be returned as with base64 encoded string. The list of document descriptions can be paginated.
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
ownerType | string | The type of entity holding the documents | query | true |
ownerId | string | the ID or encoded key of the entity | query | true |
Enumerated Values
Parameter | Value |
---|---|
ownerType | CLIENT |
ownerType | GROUP |
ownerType | LOAN_ACCOUNT |
ownerType | SAVINGS_ACCOUNT |
ownerType | LOAN_PRODUCT |
ownerType | SAVINGS_PRODUCT |
ownerType | USER |
ownerType | CENTRE |
ownerType | BRANCH |
Example Responses
200 : OK
an array of documents for a loan account
[
{
"encodedKey": "8a19c035747bf5b901747d09c578035e",
"id": 57,
"creationDate": "2020-09-11T12:30:13+0000",
"lastModifiedDate": "2020-09-11T12:30:13+0000",
"documentHolderKey": "8a19b6e4746cc6ed01746cf1436c00c5",
"documentHolderType": "LOAN_ACCOUNT",
"name": "texx",
"type": "txt",
"fileSize": 14,
"originalFilename": "test.txt",
"location": "OZAYCTQRLNPDSDWKMPARVPHLFYHVFO",
"description": "a text file",
"createdByUserKey": "8a194075720ece2c017226fced6f005e",
"userName": "Happy Go Lucky",
"documentHolder": {
"type": "LOAN",
"holderKey": "8a193c26722b51b701722d77c5e423b7",
"accountHolderType": "CLIENT",
"encodedKey": "8a19b6e4746cc6ed01746cf1436c00c5",
"displayName": "BLBE564"
}
},
{
"encodedKey": "8a19c035747bf5b901747c77d78e01c6",
"id": 54,
"creationDate": "2020-09-11T11:51:22+0000",
"lastModifiedDate": "2020-09-11T11:51:22+0000",
"documentHolderKey": "8a19b6e4746cc6ed01746cf1436c00c5",
"documentHolderType": "LOAN_ACCOUNT",
"name": "some other image",
"type": "png",
"fileSize": 32109,
"originalFilename": "some_other_image.png",
"location": "NCYBXXEJCZBQVHAEAJTPITEGUBVXRO",
"description": "this is another image file",
"createdByUserKey": "8a194075720ece2c017226fced6f005e",
"userName": "Holly Go Lightly",
"documentHolder": {
"type": "LOAN",
"holderKey": "8a193c26722b51b701722d77c5e423b7",
"accountHolderType": "CLIENT",
"encodedKey": "8a19b6e4746cc6ed01746cf1436c00c5",
"displayName": "BLBE564"
}
},
{
"encodedKey": "8a19c035747bf5b901747c77d78e01c4",
"id": 53,
"creationDate": "2020-09-11T11:39:33+0000",
"lastModifiedDate": "2020-09-11T11:39:33+0000",
"documentHolderKey": "8a19b6e4746cc6ed01746cf1436c00c5",
"documentHolderType": "LOAN_ACCOUNT",
"name": "file for loan account",
"type": "png",
"fileSize": 8258,
"originalFilename": "Screenshot_2020-04-22_at_14.31.29.png",
"location": "FCLRPXHUTCXURCALXAIFESFUURNUBR",
"description": "a file attached to a loan account",
"createdByUserKey": "8a194075720ece2c017226fced6f005e",
"userName": "Go Go Gadget",
"documentHolder": {
"type": "LOAN",
"holderKey": "8a193c26722b51b701722d77c5e423b7",
"accountHolderType": "CLIENT",
"encodedKey": "8a19b6e4746cc6ed01746cf1436c00c5",
"displayName": "BLBE564"
}
},
{
"encodedKey": "8a19a3337476f2d00174775b6a3001b0",
"id": 44,
"creationDate": "2020-09-10T09:34:51+0000",
"lastModifiedDate": "2020-09-10T09:34:51+0000",
"documentHolderKey": "8a19b6e4746cc6ed01746cf1436c00c5",
"documentHolderType": "LOAN_ACCOUNT",
"name": "loan acc doc",
"type": "png",
"fileSize": 15028,
"originalFilename": "additional_reading_callout.png",
"location": "UTOLWAEQURRYFNBIPNUXXFEXBCPKQR",
"description": "desc loan acc doc",
"createdByUserKey": "8a194075720ece2c017226fced6f005e",
"userName": "Train Go Choo Choo",
"documentHolder": {
"type": "LOAN",
"holderKey": "8a193c26722b51b701722d77c5e423b7",
"accountHolderType": "CLIENT",
"encodedKey": "8a19b6e4746cc6ed01746cf1436c00c5",
"displayName": "BLBE564"
}
}
]
400 : Bad Request
bad ID
{
"returnCode": 4,
"returnStatus": "INVALID_PARAMETERS",
"errorSource": "wrong owner id"
}
500 : Internal Server Error
bad value for ownerType parameter
{
"returnCode": 6,
"returnStatus": "INTERNAL_ERROR"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | DocumentForAccountApiV1 |
400 | Bad Request | Bad Request | ExecutionStatusApiV1 |
500 | Internal Server Error | Internal Server Error | ExecutionStatusApiV1 |
Get Document by ID
GET /documents/{documentId}
Get Document by ID
Allows retrieving the content of a document encoded with base64 based on the document id/key.
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
documentId | string | the ID (encoded key) of the document | path | true |
Example Responses
200 : OK
example base64 encoded document
"dGhhbmtzIGZvciBjaGVja2luZywgd2UncmUgYWxsIGZpbmUgaGVyZQ"
400 : Bad Request
bad Document ID
{
"returnCode": 970,
"returnStatus": "INVALID_DOCUMENT_ID"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | string |
400 | Bad Request | Bad Request | ExecutionStatusApiV1 |
Delete Document
DELETE /documents/{documentId}
Delete a Document
Allows the deletion of attachments based on id/encoded key.
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
documentId | string | the ID (encoded key) of the document | path | true |
Example Responses
200 : OK
Success Response
{
"returnCode": 0,
"returnStatus": "SUCCESS"
}
403 : Forbidden
account lacks required permissions
{
"returnCode": 2,
"returnStatus": "INVALID_CREDENTIALS"
}
404 : Not Found
bad Document ID
{
"returnCode": 970,
"returnStatus": "INVALID_DOCUMENT_ID"
}
503 : Service Unavailable
account is blocked
{
"returnCode": 24,
"returnStatus": "EXCESSIVE_INVALID_REQUESTS"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | ExecutionStatusApiV1 |
403 | Forbidden | Forbidden | ExecutionStatusApiV1 |
404 | Not Found | Not Found | ExecutionStatusApiV1 |
503 | Service Unavailable | Service Unavailable | ExecutionStatusApiV1 |
GL Journal Entries
Allows you to retrieve or post gl journal entries in the Mambu accounting system.
Create new GL Journal Entry
POST /gljournalentries
Create new GL Journal Entries
Manually post GL journal entries to any number of debit and credit accounts. Any number of journal entries may be posted with a given date and branch as long as the standard accounting rules apply.
Any number of paramaters may be specified in the syntax of debitAccountX & debitAmountX and creditAccountX & creditAmountX where X is the posting account index. At least one debit and credit account must be specified.
Example requests
POST /api/gljournalentries?branchId=2&date=2010-02-03&debitAccount1=100001&debitAmount1=30&creditAccount1=100002&creditAmount1=30
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
date | string(date) | The date of the posting of the journal entry. | query | true |
branchID | string | The branch ID to post the journal entries to. | query | false |
notes | string | Any optional GL Journal entries notes. | query | false |
debitAmount{x} | string | The amount of the posting debit entry. | query | true |
creditAmount{x} | string | The amount of the posting credit entry. | query | true |
bookingDate | string(date) | The date on which the Journal Entry should be recorded. | query | false |
debitAccount{x} | string | The code of the GL Account to post debit entry to. | query | true |
transactionID | string | The unique transaction identifier. Will be auto generated if not provided. | query | false |
creditAccount{x} | string | The code of the GL Account to post debit entry to. | query | true |
Example Responses
201 : ok
Newly created GL Journal Entries
[
{
"encodedKey": "8a19b592746765a5017468fb932f0732",
"entryID": 101,
"creationDate": "2020-09-07T15:06:18+0000",
"entryDate": "2020-09-05T00:00:00+0000",
"transactionID": "773DJI15WD318",
"amount": 30,
"glAccount": {
"encodedKey": "8a193c26722b51b701722d77cdaa26c6",
"creationDate": "2020-05-19T15:05:26+0000",
"lastModifiedDate": "2020-05-19T15:05:26+0000",
"glCode": "52100",
"type": "INCOME",
"usage": "DETAIL",
"name": "Penalties & Fines",
"activated": true,
"allowManualJournalEntries": true,
"stripTrailingZeros": true,
"currency": {
"code": "EUR",
"name": "Euro",
"symbol": "€",
"digitsAfterDecimal": 2,
"currencySymbolPosition": "BEFORE_NUMBER",
"isBaseCurrency": true,
"creationDate": "2020-05-18T08:53:31+0000",
"lastModifiedDate": "2020-05-18T08:53:31+0000"
}
},
"type": "DEBIT",
"userKey": "8a194075720ece2c017226fced6f005e",
"bookingDate": "2020-09-05T00:00:00+0000"
},
{
"encodedKey": "8a19b592746765a5017468fb932f0733",
"entryID": 102,
"creationDate": "2020-09-07T15:06:18+0000",
"entryDate": "2020-09-05T00:00:00+0000",
"transactionID": "773DJI15WD318",
"amount": 5,
"glAccount": {
"encodedKey": "8a193c26722b51b701722d77cd9e26c2",
"creationDate": "2020-05-19T15:05:26+0000",
"lastModifiedDate": "2020-05-19T15:05:26+0000",
"glCode": "51100",
"type": "INCOME",
"usage": "DETAIL",
"name": "Interest from Loans",
"activated": true,
"allowManualJournalEntries": true,
"stripTrailingZeros": true,
"currency": {
"code": "EUR",
"name": "Euro",
"symbol": "€",
"digitsAfterDecimal": 2,
"currencySymbolPosition": "BEFORE_NUMBER",
"isBaseCurrency": true,
"creationDate": "2020-05-18T08:53:31+0000",
"lastModifiedDate": "2020-05-18T08:53:31+0000"
}
},
"type": "CREDIT",
"userKey": "8a194075720ece2c017226fced6f005e",
"bookingDate": "2020-09-05T00:00:00+0000"
},
{
"encodedKey": "8a19b592746765a5017468fb932f0734",
"entryID": 103,
"creationDate": "2020-09-07T15:06:18+0000",
"entryDate": "2020-09-05T00:00:00+0000",
"transactionID": "773DJI15WD318",
"amount": 25,
"glAccount": {
"encodedKey": "8a193c26722b51b701722d77cdc826d4",
"creationDate": "2020-05-19T15:05:26+0000",
"lastModifiedDate": "2020-05-19T15:05:26+0000",
"glCode": "22000",
"type": "LIABILITY",
"usage": "DETAIL",
"name": "Client Savings",
"activated": true,
"allowManualJournalEntries": true,
"stripTrailingZeros": true,
"currency": {
"code": "EUR",
"name": "Euro",
"symbol": "€",
"digitsAfterDecimal": 2,
"currencySymbolPosition": "BEFORE_NUMBER",
"isBaseCurrency": true,
"creationDate": "2020-05-18T08:53:31+0000",
"lastModifiedDate": "2020-05-18T08:53:31+0000"
}
},
"type": "CREDIT",
"userKey": "8a194075720ece2c017226fced6f005e",
"bookingDate": "2020-09-05T00:00:00+0000"
}
]
400 : Bad Request
invalid GL Account ID
{
"returnCode": "600",
"returnStatus": "INVALID_GL_ACCOUNT_ID"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
201 | Created | ok | Inline |
400 | Bad Request | Bad Request | Inline |
Response Schema
Status Code 201
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
anonymous | [GLJournalEntryApiV1] | none | false | none |
» accountKey | string | none | false | none |
» amount | number | none | false | none |
» assignedBranchKey | string | none | false | none |
» bookingDate | string | none | false | none |
» creationDate | string | none | false | none |
» encodedKey | string | none | false | none |
» entryDate | string | none | false | none |
» entryID | number | none | false | none |
» glAccount | GLAccountApiV1 | none | false | none |
»» activated | boolean | none | false | none |
»» allowManualJournalEntries | boolean | none | false | none |
»» balance | number | none | false | none |
»» creationDate | string | none | false | none |
»» currency | CurrencyApiV1 | none | false | none |
»»» code | string | none | false | none |
»»» creationDate | string | none | false | none |
»»» currencySymbolPosition | string | none | false | none |
»»» digitsAfterDecimal | number | none | false | none |
»»» isBaseCurrency | boolean | none | false | none |
»»» lastModifiedDate | string | none | false | none |
»»» name | string | none | false | none |
»»» symbol | string | none | false | none |
»» description | string | none | false | none |
»» encodedKey | string | none | false | none |
»» glCode | string | none | false | none |
»» lastModifiedDate | string | none | false | none |
»» migrationEvent | DataMigrationEventApiV1 | none | false | none |
»»» creationDate | string | none | false | none |
»»» encodedKey | string | none | false | none |
»»» numCentresImported | number | none | false | none |
»»» numClientsImported | number | none | false | none |
»»» numGLAccountsImported | number | none | false | none |
»»» numGroupsImported | number | none | false | none |
»»» numLoanRepaymentsImported | number | none | false | none |
»»» numLoanTransactionsImported | number | none | false | none |
»»» numLoansImported | number | none | false | none |
»»» numSavingsImported | number | none | false | none |
»»» state | string | none | false | none |
»»» type | string | none | false | none |
»» name | string | none | false | none |
»» stripTrailingZeros | boolean | none | false | none |
»» type | string | none | false | none |
»» usage | string | none | false | none |
» notes | string | none | false | none |
» productKey | string | none | false | none |
» productType | string | none | false | none |
» reversalEntryKey | string | none | false | none |
» transactionID | string | none | false | none |
» type | string | none | false | none |
» userKey | string | none | false | none |
Enumerated Values
Property | Value |
---|---|
currencySymbolPosition | AFTER_NUMBER |
currencySymbolPosition | BEFORE_NUMBER |
state | REVERTED |
state | DRAFT |
state | APPROVED |
type | IMPORT |
type | EXPORT |
type | INCOME |
type | EXPENSE |
type | LIABILITY |
type | ASSET |
type | EQUITY |
usage | HEADER |
usage | DETAIL |
productType | LOAN |
productType | SAVINGS |
type | CREDIT |
type | DEBIT |
Status Code 400
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | string | none | false | none |
» returnStatus | string | none | false | none |
Get all GL Journal Entries
GET /gljournalentries
List GL Journal Entries
Retrieve a list of GL journal entries filtered by branch and within a given date range.
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
from | string(date) | Start date - The first booking date you want to retrieve journal entries from. | query | true |
to | string(date) | End date - The last booking date you want to retrieve journal entries from. | query | true |
branchID | string | The branch ID to filter accounts on. | query | false |
Example Responses
200 : OK
a list of GL Journal Entries
[
{
"encodedKey": "8a42711a4428c1f101442ab778ff0add",
"entryID": 3021,
"creationDate": "2014-02-13T10:07:51+0000",
"entryDate": "2014-02-13T00:00:00+0000",
"transactionID": "281BUM86WV376",
"accountKey": "8a17d0d84dbd8a73014dbdd9b7cf0420",
"productKey": "8a6c37aa4c20087a014c224058580465",
"productType": "LOAN",
"amount": "3",
"glAccount": {
"encodedKey": "8a33ae49441c4fe101441c7157630374",
"creationDate": "2014-02-10T15:36:33+0000",
"lastModifiedDate": "2014-02-10T15:36:33+0000",
"glCode": "11700",
"type": "ASSET",
"usage": "DETAIL",
"name": "Interest Receivable",
"activated": true,
"allowManualJournalEntries": true
},
"type": "DEBIT",
"userKey": "8a42711a4428c1f101442a50ba9807e4"
},
{
"encodedKey": "8a42711a4428c1f101442ab778fe0adc",
"entryID": 3020,
"creationDate": "2014-02-13T10:07:51+0000",
"entryDate": "2014-02-13T00:00:00+0000",
"transactionID": "281BUM86WV376",
"amount": "3",
"glAccount": {
"encodedKey": "8a33ae49441c4fe101441c715743036a",
"creationDate": "2014-02-10T15:36:33+0000",
"lastModifiedDate": "2014-02-10T15:36:33+0000",
"glCode": "11100",
"type": "ASSET",
"usage": "DETAIL",
"name": "Cash on Hand",
"activated": true,
"allowManualJournalEntries": true
},
"type": "CREDIT",
"userKey": "8a42711a4428c1f101442a50ba9807e4"
},
{
"encodedKey": "8a42711a4428c1f101442ab6cb0e0ad9",
"entryID": 3019,
"creationDate": "2014-02-13T10:07:06+0000",
"entryDate": "2014-02-13T00:00:00+0000",
"transactionID": "912RCS00HU811",
"amount": "3",
"glAccount": {
"encodedKey": "8a33ae49441c4fe101441c7157630374",
"creationDate": "2014-02-10T15:36:33+0000",
"lastModifiedDate": "2014-02-10T15:36:33+0000",
"glCode": "11700",
"type": "ASSET",
"usage": "DETAIL",
"name": "Interest Receivable",
"activated": true,
"allowManualJournalEntries": true
},
"type": "CREDIT",
"userKey": "8a42711a4428c1f101442a50ba9807e4",
"reversalEntryKey": "8a42711a4428c1f101442ab778ff0add"
},
{
"encodedKey": "8a42711a4428c1f101442ab6cb0c0ad8",
"entryID": 3018,
"creationDate": "2014-02-13T10:07:06+0000",
"entryDate": "2014-02-13T00:00:00+0000",
"transactionID": "912RCS00HU811",
"amount": "3",
"glAccount": {
"encodedKey": "8a33ae49441c4fe101441c715743036a",
"creationDate": "2014-02-10T15:36:33+0000",
"lastModifiedDate": "2014-02-10T15:36:33+0000",
"glCode": "11100",
"type": "ASSET",
"usage": "DETAIL",
"name": "Cash on Hand",
"activated": true,
"allowManualJournalEntries": true
},
"type": "DEBIT",
"userKey": "8a42711a4428c1f101442a50ba9807e4",
"reversalEntryKey": "8a42711a4428c1f101442ab778fe0adc"
}
]
400 : Bad Request
bad branch ID
{
"returnCode": "800",
"returnStatus": "INVALID_BRANCH_ID"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | Inline |
400 | Bad Request | Bad Request | Inline |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
anonymous | [glJournalEntry] | none | false | none |
» glJournalEntry | glJournalEntry | none | false | none |
»» notes | string | none | false | none |
»» amount | string | none | false | none |
»» bookingDate | string(date-time) | none | false | none |
»» creationDate | string(date-time) | none | false | none |
»» encodedKey | string | none | false | none |
»» entryDate | string(date-time) | none | false | none |
»» entryID | integer | none | false | none |
»» glAccount | glAccountMinimal | none | false | none |
»»» activated | boolean | none | false | none |
»»» allowManualJournalEntries | boolean | none | false | none |
»»» creationDate | string(date-time) | none | false | none |
»»» encodedKey | string | none | false | none |
»»» glCode | string | none | false | none |
»»» lastModifiedDate | string(date-time) | none | false | none |
»»» name | string | none | false | none |
»»» stripTrailingZeroes | boolean | none | false | none |
»»» type | string | none | false | none |
»»» usage | string | none | false | none |
»» transactionID | string | none | false | none |
»» type | string | none | false | none |
»» userKey | string | none | false | none |
Enumerated Values
Property | Value |
---|---|
type | ASSET |
type | LIABILITY |
type | EQUITY |
type | INCOME |
type | EXPENSE |
usage | DETAIL |
usage | HEADER |
type | DEBIT |
type | CREDIT |
Status Code 400
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | string | none | false | none |
» returnStatus | string | none | false | none |
Search for GL Journal Entries
POST /gljournalentries/search
Search for GL Journal Entries
Retrieve GL journal entries using dynamic custom filters.
Available filter values
Filter Selection Parameter | Data Type |
PRODUCT_TYPE | ENUM |
GL_ACCOUNT_KEY | KEY |
USER_KEY | KEY |
ENCODED_KEY | STRING |
ENTRY_ID | NUMBER |
DATE | DATE |
CREATION_DATE | DATE |
TRANSACTION_ID | STRING |
GL_ACCOUNT_ID | STRING |
GL_ACCOUNT_TYPE | ENUM |
SOURCE | ENUM |
DEBIT | MONEY |
CREDIT | MONEY |
Available filter elements
Filter Element | Number Of affected values | Available for |
EQUALS | ONE_VALUE | BIG_DECIMAL,BOOLEAN,LONG,MONEY,NUMBER,PERCENT,STRING,ENUM,KEY |
MORE_THAN | ONE_VALUE | BIG_DECIMAL,NUMBER,MONEY |
LESS_THAN | ONE_VALUE | BIG_DECIMAL,NUMBER,MONEY |
BETWEEN | TWO_VALUES | BIG_DECIMAL,NUMBER,MONEY,DATE,DATE_UTC |
ON | ONE_VALUE | DATE,DATE_UTC |
AFTER | ONE_VALUE | DATE,DATE_UTC |
BEFORE | ONE_VALUE | DATE,DATE_UTC |
STARTS_WITH | ONE_VALUE | STRING |
IN | LIST | ENUM,KEY |
TODAY | NO_VALUE | DATE,DATE_UTC |
THIS_WEEK | NO_VALUE | DATE,DATE_UTC |
THIS_MONTH | NO_VALUE | DATE,DATE_UTC |
THIS_YEAR | NO_VALUE | DATE,DATE_UTC |
LAST_DAYS | ONE_VALUE | DATE,DATE_UTC |
EMPTY | NO_VALUE | BIG_DECIMAL,LONG,MONEY,NUMBER,PERCENT,STRING,ENUM,KEY,DATE,DATE_UTC |
NOT_EMPTY | NO_VALUE | BIG_DECIMAL,LONG,MONEY,NUMBER,PERCENT,STRING,ENUM,KEY,DATE,DATE_UTC |
Example requests
a search
{
"filterConstraints": [
{
"dataFieldType": "string",
"dataItemType": "string",
"filterElement": "string",
"filterSelection": "string",
"secondValue": "string",
"value": "string",
"values": [
"string"
]
}
],
"sortDetails": {
"dataFieldType": "string",
"dataItemType": "string",
"sortingColumn": "string",
"sortingOrder": "string"
}
}
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
offset | integer | none | query | false |
limit | integer | none | query | false |
body | FilterApiV1 | none | body | false |
Example Responses
200 Response
[
{
"accountKey": "string",
"amount": 0,
"assignedBranchKey": "string",
"bookingDate": "string",
"creationDate": "string",
"encodedKey": "string",
"entryDate": "string",
"entryID": 0,
"glAccount": {
"activated": true,
"allowManualJournalEntries": true,
"balance": 0,
"creationDate": "string",
"currency": {
"code": "string",
"creationDate": "string",
"currencySymbolPosition": "AFTER_NUMBER",
"digitsAfterDecimal": 0,
"isBaseCurrency": true,
"lastModifiedDate": "string",
"name": "string",
"symbol": "string"
},
"description": "string",
"encodedKey": "string",
"glCode": "string",
"lastModifiedDate": "string",
"migrationEvent": {
"creationDate": "string",
"encodedKey": "string",
"numCentresImported": 0,
"numClientsImported": 0,
"numGLAccountsImported": 0,
"numGroupsImported": 0,
"numLoanRepaymentsImported": 0,
"numLoanTransactionsImported": 0,
"numLoansImported": 0,
"numSavingsImported": 0,
"state": "REVERTED",
"type": "IMPORT"
},
"name": "string",
"stripTrailingZeros": true,
"type": "INCOME",
"usage": "HEADER"
},
"notes": "string",
"productKey": "string",
"productType": "LOAN",
"reversalEntryKey": "string",
"transactionID": "string",
"type": "CREDIT",
"userKey": "string"
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ok | Inline |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
anonymous | [GLJournalEntryApiV1] | none | false | none |
» accountKey | string | none | false | none |
» amount | number | none | false | none |
» assignedBranchKey | string | none | false | none |
» bookingDate | string | none | false | none |
» creationDate | string | none | false | none |
» encodedKey | string | none | false | none |
» entryDate | string | none | false | none |
» entryID | number | none | false | none |
» glAccount | GLAccountApiV1 | none | false | none |
»» activated | boolean | none | false | none |
»» allowManualJournalEntries | boolean | none | false | none |
»» balance | number | none | false | none |
»» creationDate | string | none | false | none |
»» currency | CurrencyApiV1 | none | false | none |
»»» code | string | none | false | none |
»»» creationDate | string | none | false | none |
»»» currencySymbolPosition | string | none | false | none |
»»» digitsAfterDecimal | number | none | false | none |
»»» isBaseCurrency | boolean | none | false | none |
»»» lastModifiedDate | string | none | false | none |
»»» name | string | none | false | none |
»»» symbol | string | none | false | none |
»» description | string | none | false | none |
»» encodedKey | string | none | false | none |
»» glCode | string | none | false | none |
»» lastModifiedDate | string | none | false | none |
»» migrationEvent | DataMigrationEventApiV1 | none | false | none |
»»» creationDate | string | none | false | none |
»»» encodedKey | string | none | false | none |
»»» numCentresImported | number | none | false | none |
»»» numClientsImported | number | none | false | none |
»»» numGLAccountsImported | number | none | false | none |
»»» numGroupsImported | number | none | false | none |
»»» numLoanRepaymentsImported | number | none | false | none |
»»» numLoanTransactionsImported | number | none | false | none |
»»» numLoansImported | number | none | false | none |
»»» numSavingsImported | number | none | false | none |
»»» state | string | none | false | none |
»»» type | string | none | false | none |
»» name | string | none | false | none |
»» stripTrailingZeros | boolean | none | false | none |
»» type | string | none | false | none |
»» usage | string | none | false | none |
» notes | string | none | false | none |
» productKey | string | none | false | none |
» productType | string | none | false | none |
» reversalEntryKey | string | none | false | none |
» transactionID | string | none | false | none |
» type | string | none | false | none |
» userKey | string | none | false | none |
Enumerated Values
Property | Value |
---|---|
currencySymbolPosition | AFTER_NUMBER |
currencySymbolPosition | BEFORE_NUMBER |
state | REVERTED |
state | DRAFT |
state | APPROVED |
type | IMPORT |
type | EXPORT |
type | INCOME |
type | EXPENSE |
type | LIABILITY |
type | ASSET |
type | EQUITY |
usage | HEADER |
usage | DETAIL |
productType | LOAN |
productType | SAVINGS |
type | CREDIT |
type | DEBIT |
General Ledger Accounts
Allows you to retrieve GL (General Ledger) accounts by type or specific GL accounts along with their balance. Balance for the GL accounts can be taken from the current moment or from a date range.
Get all GL Accounts
GET /glaccounts
Get All GL Accounts
Retrieve a list of GL accounts.
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
type | string | The type of GL accounts to retrieve. Required if no account id is provided. | query | true |
from | string | From (start) date to compute the account balance on. | query | false |
to | string | To (end) date to compute the account balance on. | query | false |
branchID | string | The branch ID on which to calculate/filter the gl accounts balances. | query | false |
Enumerated Values
Parameter | Value |
---|---|
type | ASSET |
type | LIABILITY |
type | EQUITY |
type | INCOME |
type | EXPENSE |
Example Responses
200 : OK
an array of GL Accounts
[
{
"encodedKey": "8a193c26722b51b701722d77cd9e26c0",
"creationDate": "2020-05-19T15:05:26+0000",
"lastModifiedDate": "2020-05-19T15:05:26+0000",
"glCode": "11100",
"type": "ASSET",
"usage": "DETAIL",
"name": "Cash on Hand",
"activated": true,
"allowManualJournalEntries": true,
"stripTrailingZeros": true,
"currency": {
"code": "EUR",
"name": "Euro",
"symbol": "€",
"digitsAfterDecimal": 2,
"currencySymbolPosition": "BEFORE_NUMBER",
"isBaseCurrency": true,
"creationDate": "2020-05-18T08:53:31+0000",
"lastModifiedDate": "2020-05-18T08:53:31+0000"
},
"balance": "39147.84"
},
{
"encodedKey": "8a193c26722b51b701722d77cdc826d6",
"creationDate": "2020-05-19T15:05:26+0000",
"lastModifiedDate": "2020-05-19T15:05:26+0000",
"glCode": "11400",
"type": "ASSET",
"usage": "DETAIL",
"name": "Client Savings Bank Account",
"activated": true,
"allowManualJournalEntries": true,
"stripTrailingZeros": true,
"currency": {
"code": "EUR",
"name": "Euro",
"symbol": "€",
"digitsAfterDecimal": 2,
"currencySymbolPosition": "BEFORE_NUMBER",
"isBaseCurrency": true,
"creationDate": "2020-05-18T08:53:31+0000",
"lastModifiedDate": "2020-05-18T08:53:31+0000"
},
"balance": "4253.21"
},
{
"encodedKey": "8a193c26722b51b701722d77cdb126ca",
"creationDate": "2020-05-19T15:05:26+0000",
"lastModifiedDate": "2020-05-19T15:05:26+0000",
"glCode": "11700",
"type": "ASSET",
"usage": "DETAIL",
"name": "Interest Receivable",
"activated": true,
"allowManualJournalEntries": true,
"stripTrailingZeros": true,
"currency": {
"code": "EUR",
"name": "Euro",
"symbol": "€",
"digitsAfterDecimal": 2,
"currencySymbolPosition": "BEFORE_NUMBER",
"isBaseCurrency": true,
"creationDate": "2020-05-18T08:53:31+0000",
"lastModifiedDate": "2020-05-18T08:53:31+0000"
},
"balance": "1305.32"
}
]
400 : Bad Request
bad account ID
{
"returnCode": 601,
"returnStatus": "INVALID_GL_ACCOUNT_TYPE"
}
400 : Bad Request
bad dates
{
"returnCode": 610,
"returnStatus": "INVALID_ACCOUNTING_DATE_ORDER",
"errorSource": "The from date is set after the to date"
}
400 : Bad Request
branch not found
{
"returnCode": 800,
"returnStatus": "INVALID_BRANCH_ID"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | Inline |
400 | Bad Request | Bad Request | Inline |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
anonymous | [glAccount] | [A General Ledger Account] | false | none |
» glAccount | glAccount | A General Ledger Account | false | none |
»» activated | boolean | none | false | none |
»» allowManualJournalEntries | string | none | false | none |
»» balance | string | none | false | none |
»» creationDate | string(date-time) | none | false | none |
»» currency | object | none | false | none |
»»» code | string | none | false | none |
»»» currencySymbolPosition | string | none | false | none |
»»» digitsAfterDecimal | number | none | false | none |
»»» name | string | none | false | none |
»»» symbol | string | none | false | none |
»» description | string | none | false | none |
»» encodedKey | string | none | false | none |
»» glCode | string | none | false | none |
»» lastModifiedDate | string(date-time) | none | false | none |
»» name | string | none | false | none |
»» stripTrailingZeros | boolean | none | false | none |
»» type | string | none | false | none |
»» usage | string | none | false | none |
Enumerated Values
Property | Value |
---|---|
type | ASSET |
type | LIABILITY |
type | EQUITY |
type | INCOME |
type | EXPENSE |
usage | DETAIL |
usage | HEADER |
Status Code 400
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | string | none | false | none |
» returnStatus | string | none | false | none |
Get GL Account by ID
GET /glaccounts/{glAccountId}
Get single GL Account
Retrieve details on a specific General Ledger Account.
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
from | string | From (start) date to compute the account balance on. | query | false |
to | string | To (end) date to compute the account balance on. | query | false |
branchID | string | The branch ID on which to calculate/filter the gl accounts balances. | query | false |
glAccountId | string | The ID of the GL account. | path | true |
Example Responses
200 : OK
example-1
{
"encodedKey": "8a193c26722b51b701722d77cd9e26c0",
"creationDate": "2020-05-19T15:05:26+0000",
"lastModifiedDate": "2020-05-19T15:05:26+0000",
"glCode": "11100",
"type": "ASSET",
"usage": "DETAIL",
"name": "Cash on Hand",
"activated": true,
"allowManualJournalEntries": true,
"stripTrailingZeros": true,
"currency": {
"code": "EUR",
"name": "Euro",
"symbol": "€",
"digitsAfterDecimal": 2,
"currencySymbolPosition": "BEFORE_NUMBER",
"isBaseCurrency": true,
"creationDate": "2020-05-18T08:53:31+0000",
"lastModifiedDate": "2020-05-18T08:53:31+0000"
},
"balance": "-1685.55"
}
400 : Bad Request
bad GL Account ID
{
"returnCode": 600,
"returnStatus": "INVALID_GL_ACCOUNT_ID"
}
400 : Bad Request
bad dates
{
"returnCode": 610,
"returnStatus": "INVALID_ACCOUNTING_DATE_ORDER",
"errorSource": "The from date is set after the to date"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | glAccount |
400 | Bad Request | Bad Request | Inline |
Response Schema
Status Code 400
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | string | none | false | none |
» returnStatus | string | none | false | none |
Get GL Journal Entries for a GL Account
GET /glaccounts/{glAccountId}/gljournalentries
Get GL Journal Entries for a GL Account
Get GL Journal Entries for a given GL Account.
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
from | string | Start date - The first booking date you want to retrieve journal entries from. | query | true |
to | string | End date - The last booking date you want to retrieve journal entries from. | query | true |
glAccountId | string | The ID of the GL account. | path | true |
Example Responses
200 : OK
An array of journal entries
[
{
"encodedKey": "8a19a207744d899f01744e8893a50800",
"entryID": 95,
"creationDate": "2020-09-02T11:50:10+0000",
"entryDate": "2020-08-10T00:00:00+0000",
"transactionID": "21",
"accountKey": "8a19c32b72eac4420172efcb0f176bbd",
"productKey": "8a193c26722b51b701722d77ca932614",
"productType": "LOAN",
"amount": "200",
"glAccount": {
"encodedKey": "8a193c26722b51b701722d77cd9e26c0",
"creationDate": "2020-05-19T15:05:26+0000",
"lastModifiedDate": "2020-05-19T15:05:26+0000",
"glCode": "11100",
"type": "ASSET",
"usage": "DETAIL",
"name": "Cash on Hand",
"activated": true,
"allowManualJournalEntries": true,
"stripTrailingZeros": true
},
"type": "DEBIT",
"userKey": "8a194075720ece2c017226fced6f005e",
"bookingDate": "2020-08-10T00:00:00+0000"
},
{
"encodedKey": "8a19a207744d899f01744e83027507f6",
"entryID": 92,
"creationDate": "2020-09-02T11:16:48+0000",
"entryDate": "2020-06-15T00:00:00+0000",
"transactionID": "20",
"accountKey": "8a19c32b72eac4420172efcb0f176bbd",
"productKey": "8a193c26722b51b701722d77ca932614",
"productType": "LOAN",
"amount": "100",
"glAccount": {
"encodedKey": "8a193c26722b51b701722d77cd9e26c0",
"creationDate": "2020-05-19T15:05:26+0000",
"lastModifiedDate": "2020-05-19T15:05:26+0000",
"glCode": "11100",
"type": "ASSET",
"usage": "DETAIL",
"name": "Cash on Hand",
"activated": true,
"allowManualJournalEntries": true,
"stripTrailingZeros": true
},
"type": "DEBIT",
"userKey": "8a194075720ece2c017226fced6f005e",
"bookingDate": "2020-06-15T00:00:00+0000"
}
]
400 : Bad Request
Bad GL Account ID
{
"returnCode": 600,
"returnStatus": "INVALID_GL_ACCOUNT_ID"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | Inline |
400 | Bad Request | Bad Request | Inline |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
anonymous | [glJournalEntry] | none | false | none |
» glJournalEntry | glJournalEntry | none | false | none |
»» notes | string | none | false | none |
»» amount | string | none | false | none |
»» bookingDate | string(date-time) | none | false | none |
»» creationDate | string(date-time) | none | false | none |
»» encodedKey | string | none | false | none |
»» entryDate | string(date-time) | none | false | none |
»» entryID | integer | none | false | none |
»» glAccount | glAccountMinimal | none | false | none |
»»» activated | boolean | none | false | none |
»»» allowManualJournalEntries | boolean | none | false | none |
»»» creationDate | string(date-time) | none | false | none |
»»» encodedKey | string | none | false | none |
»»» glCode | string | none | false | none |
»»» lastModifiedDate | string(date-time) | none | false | none |
»»» name | string | none | false | none |
»»» stripTrailingZeroes | boolean | none | false | none |
»»» type | string | none | false | none |
»»» usage | string | none | false | none |
»» transactionID | string | none | false | none |
»» type | string | none | false | none |
»» userKey | string | none | false | none |
Enumerated Values
Property | Value |
---|---|
type | ASSET |
type | LIABILITY |
type | EQUITY |
type | INCOME |
type | EXPENSE |
usage | DETAIL |
usage | HEADER |
type | DEBIT |
type | CREDIT |
Status Code 400
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | string | none | false | none |
» returnStatus | string | none | false | none |
Group Role Names
Get group role names configured for your organization.
Get Group Role Names
GET /grouprolenames
Get Group Role Names
Get group role names
Example Responses
200 : OK
a list of group roles
[
{
"encodedKey": "8a193c26722b51b701722d77c25e22e6",
"name": "President"
},
{
"encodedKey": "8a193c26722b51b701722d77c3c922e7",
"name": "Secretary"
},
{
"encodedKey": "8a193c26722b51b701722d77c3c922e8",
"name": "Treasurer"
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | Inline |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» encodedKey | string | A unique key for this role. | false | none |
» name | string | The name of this group role. | false | none |
Groups
Allows you to retrieve groups. Groups may have associated information such as their custom fields. The custom field values for groups can be changed using patch or delete methods.
Get all Groups
GET /groups
List Groups
Allows retrieving group directly by a group ID or by looking up a client. When retrieving a group, all his associated information such as their custom fields and addresses may also be returned if requested. An empty list is returned if no groups are found.
Example Requests
Get all groups assigned to the branch with id DB
GET /api/groups/?branchId=DB
Get all groups assigned to the centre with id DB and provide full details
GET /api/groups/?centreId=DC&fullDetails=true
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
centreID | string | Looking up a group assigned to a centre using branch id/key | query | false |
branchID | string | Looking up a group assigned to a branch using branch id/key | query | false |
offset | integer | start at index, for pagination | query | false |
limit | integer | max results to return | query | false |
creditOfficerUsername | string | Looking up by the username of a specific credit officer, required if the user making the call has the "Credit Officer" role and the option "Can access other credit officers clients" is not activated. | query | false |
fullDetails | boolean | Whether to load all the nested fields for the groups as well. | query | false |
Example Responses
200 : ok
array of groups, basic details
[
{
"encodedKey": "8a193c26722b51b701722d77c969260e",
"id": "237716573",
"creationDate": "2020-05-19T15:05:25+0000",
"lastModifiedDate": "2020-09-07T16:22:43+0000",
"groupName": "Portanica",
"loanCycle": 0,
"preferredLanguage": "SPANISH",
"clientRole": {
"encodedKey": "8a194075720ece2c017226fcf7130069"
}
},
{
"encodedKey": "8a193c26722b51b701722d77ca932611",
"id": "040693245",
"creationDate": "2020-05-19T15:05:25+0000",
"lastModifiedDate": "2020-05-19T15:05:25+0000",
"groupName": "Apache",
"loanCycle": 0,
"preferredLanguage": "ENGLISH",
"clientRole": {
"encodedKey": "8a194075720ece2c017226fcf7130069"
}
}
]
200 : ok
array of groups, full details
[
{
"theGroup": {
"encodedKey": "8a193c26722b51b701722d77c969260e",
"id": "237716573",
"creationDate": "2020-05-19T15:05:25+0000",
"lastModifiedDate": "2020-09-07T16:22:43+0000",
"groupName": "Portanica",
"loanCycle": 0,
"preferredLanguage": "SPANISH",
"clientRole": {
"encodedKey": "8a194075720ece2c017226fcf7130069"
}
},
"addresses": [],
"customInformation": [],
"groupRoles": [
{
"encodedKey": "8a19b592746765a501746960758307e0",
"groupKey": "8a193c26722b51b701722d77c969260e",
"groupRoleNameKey": "8a193c26722b51b701722d77c3c922e7",
"clientKey": "8a193c26722b51b701722d77c67d23d6",
"roleName": "Secretary",
"indexInList": 0
}
],
"groupMembers": [
{
"encodedKey": "8a19b592746765a501746960758307df",
"groupKey": "8a193c26722b51b701722d77c969260e",
"clientKey": "8a193c26722b51b701722d77c67d23d6",
"creationDate": "2020-09-07T16:22:43+0000",
"indexInList": 0
}
]
},
{
"theGroup": {
"encodedKey": "8a193c26722b51b701722d77ca932611",
"id": "040693245",
"creationDate": "2020-05-19T15:05:25+0000",
"lastModifiedDate": "2020-09-24T10:25:39+0000",
"groupName": "Apache",
"notes": "some <i>rich</i> notes about this <b>amazing</b> group",
"assignedUserKey": "8a19dab474909bc8017490f2fb9006a8",
"assignedBranchKey": "8a193c26722b51b701722d779e7122de",
"loanCycle": 0,
"assignedCentreKey": "8a193c26722b51b701722d779e7122e0",
"emailAddress": "apachegroup@yougotma.il",
"mobilePhone1": "+35131429818014",
"homePhone": "+350305551155",
"preferredLanguage": "ENGLISH",
"clientRole": {
"encodedKey": "8a194075720ece2c017226fcf7130069"
}
},
"addresses": [
{
"encodedKey": "8a19a3cc74beb0eb0174bf3f6fe80312",
"parentKey": "8a193c26722b51b701722d77ca932611",
"line1": "5a Group Lane",
"line2": "",
"city": "Big Smoke",
"region": "Big Sky County",
"postcode": "126 GV4",
"country": "Countrystan",
"indexInList": 0
}
],
"customInformation": [
{
"encodedKey": "8a19a3cc74beb0eb0174bf3f6fe80313",
"parentKey": "8a193c26722b51b701722d77ca932611",
"customFieldKey": "8a193c26722b51b701722d77cd292664",
"customField": {
"encodedKey": "8a193c26722b51b701722d77cd292664",
"id": "Central_Office_Groups",
"name": "Central Office",
"type": "GROUP_INFO",
"dataType": "SELECTION",
"valueLength": "SHORT",
"isDefault": false,
"isRequired": false,
"customFieldSet": {
"encodedKey": "8a193c26722b51b701722d77ccaf2638",
"id": "_Office_Groups",
"name": "Office",
"createdDate": "2020-05-19T15:05:25+0000",
"lastModifiedDate": "2020-05-19T15:05:25+0000",
"indexInList": 0,
"type": "GROUP_INFO",
"usage": "SINGLE"
},
"indexInList": -1,
"state": "NORMAL",
"customFieldSelectionOptions": [
{
"encodedKey": "8a193c26722b51b701722d77cd2d2668",
"id": "620330172",
"value": "Catamarca",
"score": "0"
},
{
"encodedKey": "8a193c26722b51b701722d77cd2d2669",
"id": "433019118",
"value": "Chaco",
"score": "1"
},
{
"encodedKey": "8a193c26722b51b701722d77cd2d266a",
"id": "077431565",
"value": "Jujuy",
"score": "10"
}
],
"viewRights": {
"encodedKey": "8a193c26722b51b701722d77cd292665",
"isAccessibleByAllUsers": true,
"roles": []
},
"editRights": {
"encodedKey": "8a193c26722b51b701722d77cd2d2666",
"isAccessibleByAllUsers": true,
"roles": []
},
"unique": false,
"values": [
"Catamarca",
"Chaco",
"Jujuy"
],
"amounts": {
"Catamarca": "0",
"Chaco": "1",
"Jujuy": "10"
}
},
"value": "Chaco",
"amount": "1",
"indexInList": 0,
"customFieldID": "Central_Office_Groups",
"customFieldSetGroupIndex": -1
},
{
"encodedKey": "8a19a3cc74beb0eb0174bf3f6fe80314",
"parentKey": "8a193c26722b51b701722d77ca932611",
"customFieldKey": "8a193c26722b51b701722d77cd32266f",
"customField": {
"encodedKey": "8a193c26722b51b701722d77cd32266f",
"id": "Has_Many_Members_Groups",
"name": "Has Many Members",
"type": "GROUP_INFO",
"dataType": "CHECKBOX",
"valueLength": "SHORT",
"isDefault": false,
"isRequired": false,
"customFieldSet": {
"encodedKey": "8a193c26722b51b701722d77ccd72639",
"id": "_Members_Groups",
"name": "Members",
"createdDate": "2020-05-19T15:05:25+0000",
"lastModifiedDate": "2020-05-19T15:05:25+0000",
"indexInList": 1,
"type": "GROUP_INFO",
"usage": "SINGLE"
},
"indexInList": -1,
"state": "NORMAL",
"customFieldSelectionOptions": [],
"viewRights": {
"encodedKey": "8a193c26722b51b701722d77cd3a2670",
"isAccessibleByAllUsers": true,
"roles": []
},
"editRights": {
"encodedKey": "8a193c26722b51b701722d77cd3a2671",
"isAccessibleByAllUsers": true,
"roles": []
},
"unique": false,
"values": [],
"amounts": {}
},
"value": "TRUE",
"indexInList": 1,
"customFieldID": "Has_Many_Members_Groups",
"customFieldSetGroupIndex": -1
},
{
"encodedKey": "8a19a3cc74beb0eb0174bf3f6fe80315",
"parentKey": "8a193c26722b51b701722d77ca932611",
"customFieldKey": "8a193c26722b51b701722d77cd32266b",
"customField": {
"encodedKey": "8a193c26722b51b701722d77cd32266b",
"id": "Group_Members_Groups",
"name": "Group Members",
"type": "GROUP_INFO",
"dataType": "NUMBER",
"valueLength": "SHORT",
"isDefault": false,
"isRequired": false,
"customFieldSet": {
"encodedKey": "8a193c26722b51b701722d77ccd72639",
"id": "_Members_Groups",
"name": "Members",
"createdDate": "2020-05-19T15:05:25+0000",
"lastModifiedDate": "2020-05-19T15:05:25+0000",
"indexInList": 1,
"type": "GROUP_INFO",
"usage": "SINGLE"
},
"indexInList": -1,
"state": "NORMAL",
"customFieldSelectionOptions": [],
"viewRights": {
"encodedKey": "8a193c26722b51b701722d77cd32266c",
"isAccessibleByAllUsers": true,
"roles": []
},
"editRights": {
"encodedKey": "8a193c26722b51b701722d77cd32266d",
"isAccessibleByAllUsers": true,
"roles": []
},
"unique": false,
"values": [],
"amounts": {}
},
"value": "17",
"indexInList": 2,
"customFieldID": "Group_Members_Groups",
"customFieldSetGroupIndex": -1
}
],
"groupRoles": [
{
"encodedKey": "8a19a3cc74beb0eb0174bfa492ae04d3",
"groupKey": "8a193c26722b51b701722d77ca932611",
"groupRoleNameKey": "8a193c26722b51b701722d77c25e22e6",
"clientKey": "8a193c26722b51b701722d77c66d23b9",
"roleName": "President",
"indexInList": 0
},
{
"encodedKey": "8a19a3cc74beb0eb0174bfa492ae04d4",
"groupKey": "8a193c26722b51b701722d77ca932611",
"groupRoleNameKey": "8a193c26722b51b701722d77c3c922e7",
"clientKey": "8a193c26722b51b701722d77c66d23bc",
"roleName": "Secretary",
"indexInList": 1
}
],
"groupMembers": [
{
"encodedKey": "8a193c26722b51b701722d77ca932612",
"groupKey": "8a193c26722b51b701722d77ca932611",
"clientKey": "8a193c26722b51b701722d77c66d23b9",
"creationDate": "2020-05-19T15:05:25+0000",
"indexInList": 0
},
{
"encodedKey": "8a193c26722b51b701722d77ca932613",
"groupKey": "8a193c26722b51b701722d77ca932611",
"clientKey": "8a193c26722b51b701722d77c66d23bc",
"creationDate": "2020-05-19T15:05:25+0000",
"indexInList": 1
}
]
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ok | GroupExpandedApiV1 |
Create new Group
POST /groups
Create a group
Allows the creation and update of groups programatically. This method allows creating a group with address information and custom fields.
This method can also be used for editing groups. In order to do so, the encodedKey of the group needs to be provided.
Example requests
A new group with an address and custom fields
{
"group": {
"id": "995577000",
"creationDate": "2014-12-17T11:38:00+0000",
"lastModifiedDate": "2014-12-17T15:55:00+0000",
"groupName": "Secret Group",
"notes": "This group will not be normally available",
"assignedUserKey": "8904193be1b047f9a94202c8bec9b9ef",
"assignedCentreKey": "2a9d604a381a4e10b2da8a4968aa6363",
"assignedBranchKey": "7bd2a83f-b3844729b90ff531a59f3dc4",
"clientRole": {
"encodedKey": "8a34356cf78600abc2ef799123"
}
},
"addresses": [
{
"line1": "The Tea Building",
"line2": "56 Shoreditch High Street",
"city": "London",
"region": "England",
"postcode": "E1 6JJ",
"country": "United Kingdom",
"indexInList": 0
}
],
"customInformation": [
{
"value": "60000",
"customFieldID": "Income"
},
{
"value": "TRUE",
"customFieldID": "Newsletter"
}
],
"groupMembers": [
{
"clientKey": "0a57a959a9354e97a8df11c083efdece",
"creationDate": "2014-12-17T11:38:00+0000"
},
{
"clientKey": "5a3932bfecc84cc5a6c1e495bf4748ed",
"creationDate": "2014-12-17T11:38:00+0000"
}
],
"groupRoles": [
{
"groupRoleNameKey": "e8927b8c01b24936ba806a91872e9652",
"clientKey": "5d1d0328eaf14f718013d9ead2687984"
}
]
}
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
body | JsonGroupApiV1 | none | body | false |
Example Responses
200 Response
{
"addresses": [
{
"addressType": "string",
"city": "string",
"country": "string",
"encodedKey": "string",
"indexInList": 0,
"latitude": 0,
"line1": "string",
"line2": "string",
"longitude": 0,
"parentKey": "string",
"postcode": "string",
"region": "string",
"toBeDeleted": true
}
],
"customInformation": [
{
"amount": 0,
"customField": {
"amounts": {
"property1": 0,
"property2": 0
},
"builtInCustomFieldId": "MOBILE_PHONE",
"creationDate": "string",
"customFieldProductSettings": [
{
"customFieldEncodedKey": "string",
"encodedKey": "string",
"isDefault": true,
"isRequired": true,
"linkType": "CLIENT_ROLE",
"productKey": "string"
}
],
"customFieldSelectionOptions": [
{
"constraint": {
"customFieldKey": "string",
"dataFieldType": "NATIVE",
"dataFieldValue": "string",
"dataItemType": "WRITTEN_OFF_LOANS",
"dataType": "ENUM",
"encodedKey": "string",
"filterElement": "STARTS_WITH_CASE_SENSITIVE",
"groupNumber": 0,
"index": 0,
"linkingOperator": "OR",
"secondValue": "string",
"value": "string"
},
"encodedKey": "string",
"id": "string",
"score": 0,
"value": "string"
}
],
"customFieldSet": {
"builtInType": "DETAILS",
"createdDate": "string",
"customFields": [
{}
],
"encodedKey": "string",
"id": "string",
"indexInList": 0,
"lastModifiedDate": "string",
"name": "string",
"notes": "string",
"type": "USER_INFO",
"usage": "SINGLE"
},
"dataType": "GROUP_LINK",
"description": "string",
"editRights": {
"encodedKey": "string",
"isAccessibleByAllUsers": true,
"roles": [
"string"
]
},
"encodedKey": "string",
"id": "string",
"indexInList": 0,
"isDefault": true,
"isRequired": true,
"lastModifiedDate": "string",
"name": "string",
"state": "DEACTIVATED",
"type": "USER_INFO",
"unique": true,
"validationPattern": "string",
"valueLength": "SHORT",
"values": [
"string"
],
"viewRights": {
"encodedKey": "string",
"isAccessibleByAllUsers": true,
"roles": [
"string"
]
}
},
"customFieldID": "string",
"customFieldKey": "string",
"customFieldSetGroupIndex": 0,
"encodedKey": "string",
"indexInList": 0,
"linkedEntityKeyValue": "string",
"parentKey": "string",
"selectionKey": "string",
"value": "string"
}
],
"group": {
"assignedBranchKey": "string",
"assignedCentreKey": "string",
"assignedUserKey": "string",
"clientRole": {
"encodedKey": "string"
},
"creationDate": "string",
"emailAddress": "string",
"encodedKey": "string",
"groupName": "string",
"homePhone": "string",
"id": "string",
"idPattern": "string",
"lastModifiedDate": "string",
"loanCycle": 0,
"migrationEvent": {
"creationDate": "string",
"encodedKey": "string",
"numCentresImported": 0,
"numClientsImported": 0,
"numGLAccountsImported": 0,
"numGroupsImported": 0,
"numLoanRepaymentsImported": 0,
"numLoanTransactionsImported": 0,
"numLoansImported": 0,
"numSavingsImported": 0,
"state": "REVERTED",
"type": "IMPORT"
},
"mobilePhone1": "string",
"notes": "string",
"preferredLanguage": "PORTUGESE"
},
"groupMembers": [
{
"clientKey": "string",
"creationDate": "string",
"encodedKey": "string",
"groupKey": "string",
"indexInList": 0
}
],
"groupRoles": [
{
"clientKey": "string",
"encodedKey": "string",
"groupKey": "string",
"groupRoleNameKey": "string",
"indexInList": 0,
"roleName": "string"
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ok | JsonGroupApiV1 |
Search for Groups
POST /groups/search
Search for Groups
Allows to retrieve groups using dynamic custom filters.
Available group filter values
Filter Selection Parameter | Data Type |
CLIENT_ROLE_KEY | KEY |
BRANCH_KEY | KEY |
CENTRE_KEY | KEY |
CREDIT_OFFICER_KEY | KEY |
ENCODED_KEY | KEY |
GROUP_NAME | STRING |
CREATION_DATE | DATE_UTC |
LAST_MODIFIED_DATE | DATE_UTC |
ID | STRING |
PREFERRED_LANGUAGE | ENUM |
DEPOSITS_BALANCE | MONEY |
LOANS_BALANCE | MONEY |
TOTAL_BALANCE | MONEY |
NUMBER_OF_MEMBERS | NUMBER |
LOAN_CYCLE | NUMBER |
Available filter elements
Filter Element | Number Of affected values | Available for |
EQUALS | ONE_VALUE | BIG_DECIMAL,BOOLEAN,LONG,MONEY,NUMBER,PERCENT,STRING,ENUM,KEY |
MORE_THAN | ONE_VALUE | BIG_DECIMAL,NUMBER,MONEY |
LESS_THAN | ONE_VALUE | BIG_DECIMAL,NUMBER,MONEY |
BETWEEN | TWO_VALUES | BIG_DECIMAL,NUMBER,MONEY,DATE,DATE_UTC |
ON | ONE_VALUE | DATE,DATE_UTC |
AFTER | ONE_VALUE | DATE,DATE_UTC |
BEFORE | ONE_VALUE | DATE,DATE_UTC |
STARTS_WITH | ONE_VALUE | STRING |
IN | LIST | ENUM,KEY |
TODAY | NO_VALUE | DATE,DATE_UTC |
THIS_WEEK | NO_VALUE | DATE,DATE_UTC |
THIS_MONTH | NO_VALUE | DATE,DATE_UTC |
THIS_YEAR | NO_VALUE | DATE,DATE_UTC |
LAST_DAYS | ONE_VALUE | DATE,DATE_UTC |
EMPTY | NO_VALUE | BIG_DECIMAL,LONG,MONEY,NUMBER,PERCENT,STRING,ENUM,KEY,DATE,DATE_UTC |
NOT_EMPTY | NO_VALUE | BIG_DECIMAL,LONG,MONEY,NUMBER,PERCENT,STRING,ENUM,KEY,DATE,DATE_UTC |
Example requests
a search
{
"filterConstraints": [
{
"dataFieldType": "string",
"dataItemType": "string",
"filterElement": "string",
"filterSelection": "string",
"secondValue": "string",
"value": "string",
"values": [
"string"
]
}
],
"sortDetails": {
"dataFieldType": "string",
"dataItemType": "string",
"sortingColumn": "string",
"sortingOrder": "string"
}
}
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
offset | integer | none | query | false |
limit | integer | none | query | false |
body | FilterApiV1 | none | body | false |
Example Responses
200 Response
[
{
"assignedBranchKey": "string",
"assignedCentreKey": "string",
"assignedUserKey": "string",
"clientRole": {
"encodedKey": "string"
},
"creationDate": "string",
"emailAddress": "string",
"encodedKey": "string",
"groupName": "string",
"homePhone": "string",
"id": "string",
"idPattern": "string",
"lastModifiedDate": "string",
"loanCycle": 0,
"migrationEvent": {
"creationDate": "string",
"encodedKey": "string",
"numCentresImported": 0,
"numClientsImported": 0,
"numGLAccountsImported": 0,
"numGroupsImported": 0,
"numLoanRepaymentsImported": 0,
"numLoanTransactionsImported": 0,
"numLoansImported": 0,
"numSavingsImported": 0,
"state": "REVERTED",
"type": "IMPORT"
},
"mobilePhone1": "string",
"notes": "string",
"preferredLanguage": "PORTUGESE"
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ok | Inline |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
anonymous | [GroupApiV1] | none | false | none |
» assignedBranchKey | string | none | false | none |
» assignedCentreKey | string | none | false | none |
» assignedUserKey | string | none | false | none |
» clientRole | ClientRoleBasicApiV1 | none | false | none |
»» encodedKey | string | none | false | none |
» creationDate | string | none | false | none |
» emailAddress | string | none | false | none |
» encodedKey | string | none | false | none |
» groupName | string | none | false | none |
» homePhone | string | none | false | none |
» id | string | none | false | none |
» idPattern | string | none | false | none |
» lastModifiedDate | string | none | false | none |
» loanCycle | number | none | false | none |
» migrationEvent | DataMigrationEventApiV1 | none | false | none |
»» creationDate | string | none | false | none |
»» encodedKey | string | none | false | none |
»» numCentresImported | number | none | false | none |
»» numClientsImported | number | none | false | none |
»» numGLAccountsImported | number | none | false | none |
»» numGroupsImported | number | none | false | none |
»» numLoanRepaymentsImported | number | none | false | none |
»» numLoanTransactionsImported | number | none | false | none |
»» numLoansImported | number | none | false | none |
»» numSavingsImported | number | none | false | none |
»» state | string | none | false | none |
»» type | string | none | false | none |
» mobilePhone1 | string | none | false | none |
» notes | string | none | false | none |
» preferredLanguage | string | none | false | none |
Enumerated Values
Property | Value |
---|---|
state | REVERTED |
state | DRAFT |
state | APPROVED |
type | IMPORT |
type | EXPORT |
preferredLanguage | PORTUGESE |
preferredLanguage | RUSSIAN |
preferredLanguage | ROMANIAN |
preferredLanguage | ENGLISH |
preferredLanguage | SPANISH |
preferredLanguage | GEORGIAN |
preferredLanguage | BURMESE |
preferredLanguage | PHRASE |
preferredLanguage | CHINESE |
preferredLanguage | FRENCH |
preferredLanguage | INDONESIAN |
Get Group by ID
GET /groups/{groupId}
Get Group by ID
Allows you to retrieve a group directly by its group ID.
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
fullDetails | boolean | none | query | false |
groupId | string | none | path | true |
Example Responses
200 : ok
a single group
{
"encodedKey": "8a193c26722b51b701722d77ca932611",
"id": "040693245",
"creationDate": "2020-05-19T15:05:25+0000",
"lastModifiedDate": "2020-09-24T10:25:39+0000",
"groupName": "Apache",
"assignedUserKey": "8a19dab474909bc8017490f2fb9006a8",
"assignedBranchKey": "8a193c26722b51b701722d779e7122de",
"loanCycle": 0,
"assignedCentreKey": "8a193c26722b51b701722d779e7122e0",
"emailAddress": "apachegroup@yougotma.il",
"mobilePhone1": "+35131429818014",
"homePhone": "+350305551155",
"preferredLanguage": "ENGLISH",
"clientRole": {
"encodedKey": "8a194075720ece2c017226fcf7130069"
}
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ok | GroupApiV1 |
Update Group info
PATCH /groups/{groupId}
Update Group Information
Information for a group can be added/edited using the PATCH method.
To remove all members and/or roles, provide an empty array for these fields.
Example requests
updated group information
{
"group": {
"id": "445076768",
"groupName": "Village group update",
"notes": "some_notes after update",
"assignedUserKey": "40288a164c31ebec014c31ebf7200004",
"assignedCentreKey": "40288a164c31eca9014c31ef7e510005",
"assignedBranchKey": "40288a164c31eca9014c31ef7e4f0003"
},
"groupMembers": [
{
"clientKey": "40288a164c31eca9014c31ef817100d9"
}
],
"groupRoles": [
{
"groupRoleNameKey": "40288a164c31eca9014c31ef8006000b",
"clientKey": "40288a164c31eca9014c31ef819200da"
}
]
}
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
group | object | none | body | false |
» id | string | ID of the group. If not provided Mambu will generate one. | body | false |
» groupName | string | A string with the name of the group. | body | false |
» notes | string | Free text with notes about the group. | body | false |
» assignedUserKey | string | Encoded key or ID of the assigned user. | body | false |
» assignedCentreKey | string | Encoded key or ID of the assigned centre | body | false |
» assignedBranchKey | string | Encoded key or ID of the assigned branch. | body | false |
» emailAddress | string | E-mail address associated with the group. | body | false |
» mobilePhone1 | string | Mobile phone associated with the group. | body | false |
» homePhone | string | Phone associated with the group. | body | false |
groupMembers | [object] | an array of group members | body | false |
» clientKey | string | A string with the encoded key or id of the client being assigned to the group. | body | true |
groupRoles | [object] | an array of group members and their associated roles | body | false |
» groupRoleNameKey | string | The encoded key of a group role. | body | true |
» clientKey | string | A valid encoded key of a client available as a member of the group. | body | true |
groupId | string | none | path | true |
Example Responses
200 : OK
Success Response
{
"returnCode": "0",
"returnStatus": "SUCCESS"
}
400 : Bad Request
bad client id
{
"returnCode": 301,
"returnStatus": "INVALID_CLIENT_ID"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | Inline |
400 | Bad Request | Bad Request | Inline |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | string | none | false | none |
» returnStatus | string | none | false | none |
Status Code 400
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
Get Group Comments
GET /groups/{groupId}/comments
Get all group comments
get all comments for a group
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
limit | string | none | query | false |
offset | string | none | query | false |
groupId | string | the ID of the group | path | true |
Example Responses
200 : OK
an array of comments
[
{
"encodedKey": "8a19b7057471f4af017472dc0fd80470",
"parentKey": "8a193c26722b51b701722d77c5e423b7",
"userKey": "8a194075720ece2c017226fced6f005e",
"creationDate": "2020-09-09T14:24:42+0000",
"lastModifiedDate": "2020-09-09T14:24:42+0000",
"text": "aanother afmaefomaef<div><br /></div><div>aefaefaf</div><div><br /></div><div>afaef</div>"
},
{
"encodedKey": "8a193c26722b51b701722d77c8bf25ab",
"parentKey": "8a193c26722b51b701722d77c5e423b7",
"creationDate": "2020-05-19T15:05:24+0000",
"lastModifiedDate": "2020-05-19T15:05:24+0000",
"text": "Should suggest she apply for the agriculture loan given the nature of their business"
}
]
400 : Bad Request
bad group ID
{
"returnCode": 149,
"returnStatus": "INVALID_ID"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | Inline |
400 | Bad Request | Bad Request | ExecutionStatusApiV1 |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
anonymous | [CommentApiV1] | none | false | none |
» creationDate | string(date-time) | the date and time at which this comment was added | false | none |
» encodedKey | string | a unique key for this comment | false | none |
» lastModifiedDate | string(date-time) | the date and time at which this comment was last modified | false | none |
» parentKey | string | the unique key of the parent object for this comment, for example, the client or loan account to which it relates | false | none |
» text | string | the text of the comment as a string, must be properly JSON escpaped if it contains special characters | false | none |
» userKey | string | the unique key of the user who created the comment | false | none |
Create new Group Comment
POST /groups/{groupId}/comments
Create a group Comment
create new comment for a group
Example requests
a comment
{
"comment": {
"text": "this is a comment with \" \" all kinds of : \\ / \"non compliant\" stuff & = which has been JSON escaped"
}
}
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
comment | object | an object contining the comment | body | false |
» text | string | text of the comment to be added. if adding complex content make sure it is properly JSON encoded before making your request | body | false |
groupId | string | the ID of the group | path | true |
Example Responses
200 : OK
a comment
{
"encodedKey": "8a19c34574720f9e0174734a039f06e2",
"parentKey": "8a193c26722b51b701722d77c5e423b7",
"userKey": "8a194075720ece2c017226fced6f005e",
"creationDate": "2020-09-09T14:39:36+0000",
"lastModifiedDate": "2020-09-09T14:39:36+0000",
"text": "this is a comment with \" \" all kinds of : \\ / non compliant stuff & = which has been JSON escaped"
}
400 : Bad Request
extra parameters in the request
{
"returnCode": 27,
"returnStatus": "PARAMETER_NOT_ALLOWED"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | CommentApiV1 |
400 | Bad Request | Bad Request | Inline |
Response Schema
Status Code 400
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
Update Group Custom Field Values
PATCH /groups/{groupId}/custominformation
Update custom field values
Update custom field values
Example Requests
Update a single custom field
{
"customInformation": [
{
"customFieldID": "custom_field_2",
"value": "3"
}
]
}
Update a field in a group
{
"customInformation": [
{
"customFieldID": "cf_grouped_field",
"value": "new value",
"customFieldSetGroupIndex": "0"
}
]
}
update multiple custom fields
{
"customInformation": [
{
"customFieldID": "cf_grouped_field_2",
"value": "3",
"customFieldSetGroupIndex": "0"
},
{
"customFieldID": "field_3",
"value": "divorced"
}
]
}
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
customInformation | [object] | none | body | false |
» customFieldID | string | none | body | true |
» value | string | none | body | true |
» customFieldSetGroupIndex | string | Required if field to update is part of a group, if the Field Set Group Index is not set, a new group will be created with the value provided. | body | false |
groupId | string | The ID of the group | path | true |
Example Responses
200 : OK
Success Response
{
"returnCode": 0,
"returnStatus": "SUCCESS"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | Inline |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
Get Group Custom Info
GET /groups/{groupId}/custominformation/{customFieldId}
Get a custom field for a group
Allows retrieving a custom field value for a given group directly by the ID/key of the group and the ID/key of the custom field.
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
groupId | string | The ID of the group. | path | true |
customFieldId | string | The ID of the custom field. | path | true |
Example Responses
200 : OK
A custom field
[
{
"encodedKey": "8a19cd6f74674df9017467f25aab02c6",
"parentKey": "8a193c26722b51b701722d779e7122de",
"customFieldKey": "8a19cd6f74674df9017467ef8e6802af",
"customField": {
"encodedKey": "8a19cd6f74674df9017467ef8e6802af",
"id": "cf_group",
"creationDate": "2020-09-07T09:42:33+0000",
"lastModifiedDate": "2020-09-07T09:42:33+0000",
"name": "Example Custom Field",
"type": "BRANCH_INFO",
"dataType": "CHECKBOX",
"valueLength": "SHORT",
"isDefault": false,
"isRequired": false,
"description": "an example custom field of the checkbox type",
"customFieldSet": {
"encodedKey": "8a19cd6f74674df9017467ef8e6802ae",
"id": "_example_group_custom_field_set",
"name": "example group custom field set",
"notes": "example custom field set",
"createdDate": "2020-09-07T09:41:50+0000",
"lastModifiedDate": "2020-09-07T09:41:50+0000",
"indexInList": 2,
"type": "BRANCH_INFO",
"usage": "SINGLE"
},
"indexInList": 0,
"state": "NORMAL",
"customFieldSelectionOptions": [],
"viewRights": {
"encodedKey": "8a19cd6f74674df9017467ef8e6802b0",
"isAccessibleByAllUsers": false,
"roles": []
},
"editRights": {
"encodedKey": "8a19cd6f74674df9017467ef8e6802b1",
"isAccessibleByAllUsers": false,
"roles": []
},
"unique": false,
"values": [],
"amounts": {}
},
"value": "TRUE",
"indexInList": -1,
"customFieldID": "cf_group",
"customFieldSetGroupIndex": -1
}
]
404 : Not Found
not found
{
"returnCode": 903,
"returnStatus": "INVALID_CUSTOM_FIELD_ID"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | CustomFieldApiV1 |
404 | Not Found | Not Found | Inline |
Response Schema
Status Code 404
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
Update Group Custom Field
PATCH /groups/{groupId}/custominformation/{customFieldId}
Update a custom field for a group
Update a custom field value for a group custom field
Example requests
Providing a value for a custom field
{
"value": "new value for custom field"
}
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
value | string | none | body | false |
groupId | string | The ID of the group. | path | true |
customFieldId | string | The ID of the custom field. | path | true |
Example Responses
200 : OK
example-1
{
"returnCode": 0,
"returnStatus": "SUCCESS"
}
400 : Bad Request
field is part of a group
{
"returnCode": 916,
"returnStatus": "INVALID_CUSTOM_FIELD_GROUP_INDEX",
"errorSource": "cf_group_field_2"
}
404 : Not Found
not found
{
"returnCode": 903,
"returnStatus": "INVALID_CUSTOM_FIELD_ID"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | Inline |
400 | Bad Request | Bad Request | Inline |
404 | Not Found | Not Found | Inline |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
Status Code 400
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
» errorSource | string | none | false | none |
Status Code 404
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
Delete Group Custom Field
DELETE /groups/{groupId}/custominformation/{customFieldId}
Delete Group Custom Field
Delete a single custom field
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
groupId | string | The ID of the group. | path | true |
customFieldId | string | The ID of the custom field. | path | true |
Example Responses
200 : OK
Success Response
{
"returnCode": 0,
"returnStatus": "SUCCESS"
}
400 : Bad Request
field is part of a group
{
"returnCode": 916,
"returnStatus": "INVALID_CUSTOM_FIELD_GROUP_INDEX",
"errorSource": "cf_group_field_2"
}
404 : Not Found
not found
{
"returnCode": 903,
"returnStatus": "INVALID_CUSTOM_FIELD_ID"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | Inline |
400 | Bad Request | Bad Request | Inline |
404 | Not Found | Not Found | Inline |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
Status Code 400
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
» errorSource | string | none | false | none |
Status Code 404
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
Update Group Custom Field (grouped)
PATCH /groups/{groupId}/custominformation/{customFieldId}/{customFieldGroupSetIndex}
Update grouped custom field
Update custom field which is part of a group
Example requests
a new value for a custom field
{
"value": "new value for custom field"
}
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
value | string | none | body | false |
groupId | string | The ID of the group | path | true |
customFieldId | string | The ID of the custom field | path | true |
customFieldGroupSetIndex | string | none | path | true |
Example Responses
200 : OK
Success Response
{
"returnCode": 0,
"returnStatus": "SUCCESS"
}
400 : Bad Request
wrong group index provided
{
"returnCode": 916,
"returnStatus": "INVALID_CUSTOM_FIELD_GROUP_INDEX",
"errorSource": "cf_group_field_2"
}
404 : Not Found
field not found
{
"returnCode": 903,
"returnStatus": "INVALID_CUSTOM_FIELD_ID"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | Inline |
400 | Bad Request | Bad Request | Inline |
404 | Not Found | Not Found | Inline |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
Status Code 400
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
» errorSource | string | none | false | none |
Status Code 404
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
Delete Group Custom Field (grouped)
DELETE /groups/{groupId}/custominformation/{customFieldId}/{customFieldGroupSetIndex}
Delete grouped custom field
Delete a custom field which is part of a group
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
groupId | string | The ID of the group | path | true |
customFieldId | string | The ID of the custom field | path | true |
customFieldGroupSetIndex | string | none | path | true |
Example Responses
200 : OK
Success Response
{
"returnCode": 0,
"returnStatus": "SUCCESS"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | Inline |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
Get Documents for a Group
GET /groups/{groupId}/documents
Get documents for group
Get all documents for a given group
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
offset | integer | offset results. use with limit parameter to achieve paging | query | false |
limit | integer | max number of records to return | query | false |
groupId | string | The ID of the group | path | true |
Example Responses
200 : ok
an array of documents
[
{
"encodedKey": "8a19c035747bf5b901747c5bfb04014b",
"id": 51,
"creationDate": "2020-09-11T08:52:48+0000",
"lastModifiedDate": "2020-09-11T08:52:48+0000",
"documentHolderKey": "8a193c26722b51b701722d779e7122df",
"documentHolderType": "GROUP",
"name": "covid rules",
"type": "png",
"fileSize": 8258,
"originalFilename": "Screenshot_2020-04-22_at_14.31.29.png",
"location": "BRSIDSLFBOGAYZKUUKCOGGQEDOSEOD",
"description": "some guidelines regarding covid",
"createdByUserKey": "8a194075720ece2c017226fced6f005e",
"userName": "big chief"
},
{
"encodedKey": "8a19a3337476f2d00174775b6a3001ae",
"id": 43,
"creationDate": "2020-09-10T09:31:54+0000",
"lastModifiedDate": "2020-09-10T09:31:54+0000",
"documentHolderKey": "8a193c26722b51b701722d779e7122df",
"documentHolderType": "GROUP",
"name": "group doc",
"type": "png",
"fileSize": 32109,
"originalFilename": "clients_duplicate_id.png",
"location": "JRTBQGGVXFQRQRBDGBRWQCTXJNRWXP",
"description": "group doc desc",
"createdByUserKey": "8a194075720ece2c017226fced6f005e",
"userName": "big chief"
}
]
400 : Bad Request
bad group ID
{
"returnCode": 4,
"returnStatus": "INVALID_PARAMETERS",
"errorSource": "wrong owner id"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ok | Inline |
400 | Bad Request | Bad Request | ExecutionStatusApiV1 |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
anonymous | [DocumentApiV1] | none | false | none |
» createdByUserKey | string | none | false | none |
» creationDate | string | none | false | none |
» description | string | none | false | none |
» documentHolderKey | string | none | false | none |
» documentHolderType | string | none | false | none |
» encodedKey | string | none | false | none |
» fileSize | number | none | false | none |
» id | number | none | false | none |
» lastModifiedDate | string | none | false | none |
» location | string | none | false | none |
» name | string | none | false | none |
» originalFilename | string | none | false | none |
» type | string | none | false | none |
» userName | string | none | false | none |
Enumerated Values
Property | Value |
---|---|
documentHolderType | BRANCH |
documentHolderType | LOAN_ACCOUNT |
documentHolderType | GROUP |
documentHolderType | DEPOSIT_ACCOUNT |
documentHolderType | LINE_OF_CREDIT |
documentHolderType | LOAN_PRODUCT |
documentHolderType | GL_JOURNAL_ENTRY |
documentHolderType | SAVINGS_PRODUCT |
documentHolderType | USER |
documentHolderType | CLIENT |
documentHolderType | CENTRE |
documentHolderType | ID_DOCUMENT |
Attach Document for a Group
POST /groups/{groupId}/documents
Attach new Document to a group
Attach a new document to a group
Example requests
a document to uplaod
{
"document": {
"documentHolderKey": "8a193c26722b51b701722d779e7122df",
"documentHolderType": "GROUP",
"name": "some image",
"type": "PNG",
"description": "this is an image file"
},
"documentContent": "iVBORw0KGgoAAAANSUhEUgAAAnYAAAF0CAYAAACudHRvAAABQGlDQ1BJQ0MgUHJvZmlsZQAAKJFjYGASS=="
}
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
body | CreateDocumentApiV1 | a new document to be attached to an entity | body | false |
groupId | string | The ID of the group | path | true |
Example Responses
201 : Created
uploaded document details
{
"encodedKey": "8a19c035747bf5b901747c5bfb04014d",
"id": 52,
"creationDate": "2020-09-11T08:54:53+0000",
"lastModifiedDate": "2020-09-11T08:54:53+0000",
"documentHolderKey": "8a193c26722b51b701722d779e7122df",
"documentHolderType": "GROUP",
"name": "some image",
"type": "png",
"fileSize": 32109,
"originalFilename": "some_image.png",
"location": "RCPOUIUHJFBYDRURQNNHMOGBEFIOQF",
"description": "this is an image file",
"createdByUserKey": "8a194075720ece2c017226fced6f005e"
}
400 : Bad Request
provided file type does not match actual file uploaded
{
"returnCode": 973,
"returnStatus": "INCONSISTENT_EXTENSION_WITH_FILE_CONTENT",
"errorSource": "Invalid extension with file content"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
201 | Created | Created | DocumentApiV1 |
400 | Bad Request | Bad Request | ExecutionStatusApiV1 |
Get Group Document
GET /groups/{groupId}/documents/{documentId}
Get a group Document
Get a specific document attached to a group
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
groupId | string | the ID of the group | path | true |
documentId | string | the ID of the document | path | true |
Example Responses
200 : OK
base64 encoded document
"iVBORw0KGgoAAAANSUhEUgAAAEAAAAA9CAYAAAAd1W/BAAAMY2lDQ1BJQ0MgUHJvZmlsZQAASImVVwdck0cbv3dkkrACEZAR9hJFZgAZIawIAjIFUQlJIGHEmBBE3NRSBesWUZxoVUTRagWkDkSssyhu6yiKqFRqsYoLle8yoNZ+4/c9v9+993+fe+7/jNzlvQNAr5Mvk+Wj+gAUSAvlCZGhrElp6SzSI4ABU0ADtsCTL1DIOPHxMQDKUP93eX0DIKr+qpuK65/j/1UMhSKFAAAkA=="
400 : Bad Request
bad Document ID
{
"returnCode": 970,
"returnStatus": "INVALID_DOCUMENT_ID"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | string |
400 | Bad Request | Bad Request | ExecutionStatusApiV1 |
Delete Group Document
DELETE /groups/{groupId}/documents/{documentId}
Delete a group Document
Delete a document attached to a group
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
groupId | string | the ID of the group | path | true |
documentId | string | the ID of the document | path | true |
Example Responses
200 : OK
Success Response
{
"returnCode": 0,
"returnStatus": "SUCCESS"
}
400 : Bad Request
bad Document ID
{
"returnCode": 970,
"returnStatus": "INVALID_DOCUMENT_ID"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | ExecutionStatusApiV1 |
400 | Bad Request | Bad Request | ExecutionStatusApiV1 |
Get Lines of Credit for a Group
GET /groups/{groupId}/linesofcredit
Get Lines of Credit for a Group
Get lines of credit for a client in a group
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
fullDetails | boolean | none | query | false |
groupId | string | none | path | true |
Example Responses
200 : ok
a line of credit for a group, basic details
[
{
"encodedKey": "8a19a3cc74beb0eb0174bfa5562b04dc",
"id": "ZCS816",
"groupKey": "8a193c26722b51b701722d77ca932611",
"startDate": "2020-09-01T00:00:00+0000",
"expireDate": "2021-09-30T00:00:00+0000",
"creationDate": "2020-09-24T10:35:16+0000",
"approvedDate": "2020-09-24T12:35:16+0000",
"lastModifiedDate": "2020-09-24T10:35:16+0000",
"state": "APPROVED",
"amount": "15000",
"exposureLimitType": "APPROVED_AMOUNT",
"notes": "a line of credit for the apache group",
"availableCreditAmount": "15000"
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ok | LineOfCreditFullApiV1 |
Images
Allows you to retrieve images of client profiles/signatures and any other images via api calls.
Get Image by ID
GET /images/{imageId}
Get Image by ID
Allows retrieving images of client profiles/signatures or any other images via api calls. The iamge ID can be found by, for example, making a GET request for the client.
Images will be returned as a base64 encoded string.
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
size | string | Image size to be returned. | query | false |
imageId | string | none | path | true |
Enumerated Values
Parameter | Value |
---|---|
size | LARGE |
size | MEDIUM |
size | SMALL_THUMB |
size | TINY_THUMB |
Example Responses
200 : OK
base 64 encoded string
"bW92ZSBvbiwgbm90aGluZyB0byBzZWUgaGVyZSAuLi4="
400 : Bad Request
Missing Image ID
{
"errorSource": "picture key is required",
"returnCode": 4,
"returnStatus": "INVALID_PARAMETERS"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | string |
400 | Bad Request | Bad Request | Inline |
Response Schema
Status Code 400
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» errorSource | string | none | false | none |
» returnCode | integer | none | false | none |
» returnStatus | string | none | false | none |
Index Rates
Update index rates on the system. For example EURIBOR is updated monthly and this can be automated using this endpoint.
Create or update Index Rates
POST /indexratesources/{indexRateSourceId}/indexrates
Update an Index Rate Source
Updates an index rate source. A valid index source ID is required.
Example requests
an index rate
{
"indexRate": {
"startDate": "2020-04-16",
"rate": "-0.03256",
"notes": "Euribor Apr 2020"
}
}
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
indexRate | object | none | body | false |
» notes | string | Optional notes about the rate | body | false |
» rate | string | A number with the interest rate | body | true |
» startDate | string(date) | Date of the start of the new interest rate | body | true |
indexRateSourceId | string | none | path | true |
Example Responses
200 Response
{
"encodedKey": "string",
"rate": "string",
"reateSource": {
"encodedKey": "string",
"name": "string",
"notes": "string",
"type": "INTEREST_RATE"
},
"startDate": "2019-08-24T14:15:22Z",
"userkey": "string"
}
200 : OK
response
400 : Bad Request
bad start date
{
"returnCode": 1302,
"returnStatus": "INVALID_INDEX_RATE_START_DATE"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | indexInterestRate.v1 |
400 | Bad Request | Bad Request | Inline |
Response Schema
Status Code 400
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» returnCode | string | none | false | none |
» returnStatus | string | none | false | none |
Indicators
Retrieve various performance indicators for the organization. Performance indicator descriptions can be found in our user guide.
Possible indicators to use include:
Clients
NUM_CLIENTS |
NUM_ACTIVE_CLIENTS |
NUM_INACTIVE_CLIENTS |
NUM_OPEN_CLIENTS |
NUM_CLOSED_CLIENTS |
NUM_EXITED_CLIENTS |
NUM_PENDING_APPROVAL_CLIENTS |
Active Pure Groups
NUM_GROUPS_BORROWING |
AVERAGE_GROUP_SIZE |
NUM_GROUP_BORROWERS |
NUM_INDIVIDUAL_BORROWERS |
PERCENTAGE_OF_FEMALE_BORROWERS |
NUM_GROUPS_SAVING |
NUM_INDIVIDUAL_SAVERS |
NUM_GROUP_SAVERS |
NUM_GROUPS |
NUM_HYBRID_GROUPS_BORROWING |
NUM_HYBRID_GROUP_BORROWERS |
Deposits
NUM_ACTIVE_SAVINGS_ACCOUNTS |
TOTAL_DEPOSITS |
INTEREST_PAYABLE |
Loan Portfolio
NUM_LOANS_OUTSTANDING |
NUM_LOANS_PENDING_DISBURSAL |
NUM_LOANS_IN_ARREARS |
NUM_LOANS_AWAITING_APPROVAL |
PORTFOLIO_PENDING_DISBURSAL |
GROSS_LOAN_PORTFOLIO |
AVERAGE_LOAN_BALANCE |
TOTAL_DISBURSED_ACTIVE_LOANS |
PROJECTED_LOAN_INTEREST_EARNINGS |
Loan Transaction
TOTAL_LOANS_DISBURSED |
Risk and Aging
PORTFOLIO_PERCENT_AT_RISK |
PORTFOLIO_VALUE_AT_RISK |
PAR_7_DAYS |
PAR_15_DAYS |
PAR_30_DAYS |
PAR_90_DAYS |
PAR_7_30_DAYS |
PAR_30_90_DAYS |
PAR_90_180_DAYS |
PAR_180_360_DAYS |
VAR_7_DAYS |
VAR_15_DAYS |
VAR_30_DAYS |
VAR_90_DAYS |
INTEREST_IN_SUSPENSE |
Organization Indicators
NUM_BRANCHES |
NUM_CREDIT_OFFICERS |
NUM_LOANS_PER_BRANCH |
NUM_LOANS_PER_CREDIT_OFFICER |
NUM_LOAN_ACCOUNTS |
NUM_USERS |
Get KPIs
GET /indicators/{INDICATOR}
Get Indicator
Retrieves the result of computing an indicator by it's unique name. Response is a map of the indicator name to its value which may be an integer or a decimal depending on the indicator. These indicators could be used to power a dashboard or feed data to a report.
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
INDICATOR | string | none | path | true |
Enumerated Values
Parameter | Value |
---|---|
INDICATOR | NUM_CLIENTS |
INDICATOR | NUM_ACTIVE_CLIENTS |
INDICATOR | NUM_INACTIVE_CLIENTS |
INDICATOR | NUM_OPEN_CLIENTS |
INDICATOR | NUM_CLOSED_CLIENTS |
INDICATOR | NUM_EXITED_CLIENTS |
INDICATOR | NUM_PENDING_APPROVAL_CLIENTS |
INDICATOR | NUM_GROUPS_BORROWING |
INDICATOR | AVERAGE_GROUP_SIZE |
INDICATOR | NUM_GROUP_BORROWERS |
INDICATOR | NUM_INDIVIDUAL_BORROWERS |
INDICATOR | PERCENTAGE_OF_FEMALE_BORROWERS |
INDICATOR | NUM_GROUPS_SAVING |
INDICATOR | NUM_INDIVIDUAL_SAVERS |
INDICATOR | NUM_GROUP_SAVERS |
INDICATOR | NUM_GROUPS |
INDICATOR | NUM_HYBRID_GROUPS_BORROWING |
INDICATOR | NUM_HYBRID_GROUP_BORROWERS |
INDICATOR | NUM_ACTIVE_SAVINGS_ACCOUNTS |
INDICATOR | TOTAL_DEPOSITS |
INDICATOR | INTEREST_PAYABLE |
INDICATOR | NUM_LOANS_OUTSTANDING |
INDICATOR | NUM_LOANS_PENDING_DISBURSAL |
INDICATOR | NUM_LOANS_IN_ARREARS |
INDICATOR | NUM_LOANS_AWAITING_APPROVAL |
INDICATOR | PORTFOLIO_PENDING_DISBURSAL |
INDICATOR | GROSS_LOAN_PORTFOLIO |
INDICATOR | AVERAGE_LOAN_BALANCE |
INDICATOR | TOTAL_DISBURSED_ACTIVE_LOANS |
INDICATOR | PROJECTED_LOAN_INTEREST_EARNINGS |
INDICATOR | TOTAL_LOANS_DISBURSED |
INDICATOR | PORTFOLIO_PERCENT_AT_RISK |
INDICATOR | PORTFOLIO_VALUE_AT_RISK |
INDICATOR | PAR_7_DAYS |
INDICATOR | PAR_15_DAYS |
INDICATOR | PAR_30_DAYS |
INDICATOR | PAR_90_DAYS |
INDICATOR | PAR_7_30_DAYS |
INDICATOR | PAR_30_90_DAYS |
INDICATOR | PAR_90_180_DAYS |
INDICATOR | PAR_180_360_DAYS |
INDICATOR | VAR_7_DAYS |
INDICATOR | VAR_15_DAYS |
INDICATOR | VAR_30_DAYS |
INDICATOR | VAR_90_DAYS |
INDICATOR | INTEREST_IN_SUSPENSE |
INDICATOR | NUM_BRANCHES |
INDICATOR | NUM_CREDIT_OFFICERS |
INDICATOR | NUM_LOANS_PER_BRANCH |
INDICATOR | NUM_LOANS_PER_CREDIT_OFFICER |
INDICATOR | NUM_LOAN_ACCOUNTS |
INDICATOR | NUM_USERS |
Example Responses
200 : OK
number of total clients
{
"NUM_CLIENTS": "10200"
}
200 : OK
response
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | Inline |
Response Schema
Status Code 200
Name | Type | Description | Required | Restrictions |
---|---|---|---|---|
» {indicator_name} | string | none | false | none |
Lines of Credit
Allows you to retrieve the lines of credit by a specific client or group, add and remove accounts from lines of credit.
Get all Lines of Credit
GET /linesofcredit
Get all lines of credit
Get all lines of credit
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
fullDetails | boolean | whether to include custom fields | query | false |
Example Responses
200 : ok
array of lines of credit with basic details
[
{
"encodedKey": "8a8080c84c2d590b014c2d59e9e80001",
"id": "WTF118",
"groupKey": "8a8080c84c085ddf014c085e27a7032f",
"startDate": "2016-03-18T00:00:00+0000",
"expireDate": "2017-03-22T00:00:00+0000",
"creationDate": "2015-03-18T14:46:49+0000",
"lastModifiedDate": "2015-03-18T14:46:49+0000",
"amount": "11111",
"availableCreditAmount": "5000",
"notes": ""
},
{
"encodedKey": "40288a7d4c2d441f014c2d45d2e70003",
"id": "CAO277",
"clientKey": "8a8080c84c085ddf014c085e1ecb00dd",
"startDate": "2015-03-31T00:00:00+0000",
"expireDate": "2015-04-02T00:00:00+0000",
"creationDate": "2015-03-18T14:24:52+0000",
"lastModifiedDate": "2015-03-18T14:24:52+0000",
"amount": "1111",
"availableCreditAmount": "200",
"notes": ""
},
{
"encodedKey": "40288a7d4c2d441f014c2d4581fe0001",
"id": "EPG351",
"clientKey": "8a8080c84c085ddf014c085e1e9200d7",
"startDate": "2015-03-23T00:00:00+0000",
"expireDate": "2015-03-30T00:00:00+0000",
"creationDate": "2015-03-18T14:24:32+0000",
"lastModifiedDate": "2015-03-18T14:24:32+0000",
"amount": "1111",
"availableCreditAmount": "400",
"notes": ""
}
]
200 : ok
array of lines of credit with full details
[
{
"encodedKey": "402880b858d95c8e0158d95f0379048a",
"id": "QCE677",
"clientKey": "402880b858d95c8e0158d95ce07b00f3",
"startDate": "2016-12-01T00:00:00+0000",
"expireDate": "2016-12-30T00:00:00+0000",
"creationDate": "2016-12-07T13:01:36+0000",
"lastModifiedDate": "2016-12-07T13:01:36+0000",
"state": "ACTIVE",
"amount": "1000",
"notes": "",
"availableCreditAmount": "1000",
"customInformation": [
{
"encodedKey": "402880b858d95c8e0158d95f0379048b",
"parentKey": "402880b858d95c8e0158d95f0379048a",
"customFieldKey": "402880b858d95c8e0158d95dd4a40484",
"customField": {
"encodedKey": "402880b858d95c8e0158d95dd4a40484",
"id": "loccf2",
"creationDate": "2016-12-07T13:00:01+0000",
"lastModifiedDate": "2016-12-07T13:00:01+0000",
"name": "LoC CF Req",
"type": "LINE_OF_CREDIT",
"dataType": "STRING",
"valueLength": "SHORT",
"isDefault": true,
"isRequired": true,
"description": "",
"customFieldSet": {
"encodedKey": "402880b858d95c8e0158d95cfe4b0480",
"name": "LoC CF Set",
"notes": "",
"createdDate": "2016-12-07T12:58:39+0000",
"indexInList": 0,
"type": "LINE_OF_CREDIT",
"usage": "SINGLE"
},
"indexInList": 1,
"state": "NORMAL",
"customFieldSelectionOptions": [],
"viewRights": {
"encodedKey": "402880b858d95c8e0158d95dd4a40485",
"isAccessibleByAllUsers": false,
"roles": []
},
"editRights": {
"encodedKey": "402880b858d95c8e0158d95dd4a40486",
"isAccessibleByAllUsers": false,
"roles": []
},
"unique": false,
"values": [],
"amounts": {}
},
"value": "asd",
"indexInList": -1,
"customFieldID": "loccf2",
"customFieldSetGroupIndex": -1
},
{
"encodedKey": "402880b858d95c8e0158d95f0379048c",
"parentKey": "402880b858d95c8e0158d95f0379048a",
"customFieldKey": "402880b858d95c8e0158d95cfe4b0481",
"customField": {
"encodedKey": "402880b858d95c8e0158d95cfe4b0481",
"id": "loccf1",
"creationDate": "2016-12-07T12:59:15+0000",
"lastModifiedDate": "2016-12-07T14:48:17+0000",
"name": "LoC CF",
"type": "LINE_OF_CREDIT",
"dataType": "STRING",
"valueLength": "SHORT",
"isDefault": false,
"isRequired": false,
"description": "",
"customFieldSet": {
"encodedKey": "402880b858d95c8e0158d95cfe4b0480",
"name": "LoC CF Set",
"notes": "",
"createdDate": "2016-12-07T12:58:39+0000",
"indexInList": 0,
"type": "LINE_OF_CREDIT",
"usage": "SINGLE"
},
"indexInList": 0,
"state": "NORMAL",
"customFieldSelectionOptions": [],
"viewRights": {
"encodedKey": "402880b858d95c8e0158d95cfe4b0482",
"isAccessibleByAllUsers": true,
"roles": []
},
"editRights": {
"encodedKey": "402880b858d95c8e0158d95dd4a40483",
"isAccessibleByAllUsers": true,
"roles": []
},
"unique": false,
"values": [],
"amounts": {}
},
"value": "123",
"indexInList": -1,
"customFieldID": "loccf1",
"customFieldSetGroupIndex": -1
},
{
"encodedKey": "402880b858d95c8e0158d95ffb37048d",
"parentKey": "402880b858d95c8e0158d95f0379048a",
"customFieldKey": "402880b858d95c8e0158d95dd4a40487",
"customField": {
"encodedKey": "402880b858d95c8e0158d95dd4a40487",
"id": "loccf3",
"creationDate": "2016-12-07T13:00:33+0000",
"lastModifiedDate": "2016-12-07T14:50:51+0000",
"name": "LoC CF Role View",
"type": "LINE_OF_CREDIT",
"dataType": "STRING",
"valueLength": "SHORT",
"isDefault": true,
"isRequired": false,
"description": "",
"customFieldSet": {
"encodedKey": "402880b858d95c8e0158d95cfe4b0480",
"name": "LoC CF Set",
"notes": "",
"createdDate": "2016-12-07T12:58:39+0000",
"indexInList": 0,
"type": "LINE_OF_CREDIT",
"usage": "SINGLE"
},
"indexInList": 2,
"state": "NORMAL",
"customFieldSelectionOptions": [],
"viewRights": {
"encodedKey": "402880b858d95c8e0158d95f03790488",
"isAccessibleByAllUsers": true,
"roles": []
},
"editRights": {
"encodedKey": "402880b858d95c8e0158d95f03790489",
"isAccessibleByAllUsers": false,
"roles": []
},
"unique": false,
"values": [],
"amounts": {}
},
"value": "role",
"indexInList": -1,
"customFieldID": "loccf3",
"customFieldSetGroupIndex": -1
}
]
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ok | LineOfCreditExpandedApiV1 |
Create Line of Credit
POST /linesofcredit
Create a line of credit
Create a new line of credit for a client or group
Example requests
a line of credit for a client with custom information
{
"lineOfCredit": {
"id": "FEP015",
"clientKey": "4028808a58d348710158d3490d0500f1",
"startDate": "2016-06-01T00:00:00+0000",
"expireDate": "2016-06-30T00:00:00+0000",
"amount": "10000",
"exposureLimitType": "APPROVED_AMOUNT",
"notes": "some fascinating line of credit notes",
"customInformation": [
{
"value": "Pending",
"customFieldID": "cf1"
},
{
"value": "3",
"customFieldID": "cf2"
}
]
}
}
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
body | CreateLineOfCreditApiV1 | none | body | false |
Example Responses
200 Response
{
"amount": 0,
"approvedDate": "string",
"availableCreditAmount": 0,
"clientKey": "string",
"closedDate": "string",
"creationDate": "string",
"customInformation": [
{
"amount": 0,
"customField": {
"amounts": {
"property1": 0,
"property2": 0
},
"builtInCustomFieldId": "MOBILE_PHONE",
"creationDate": "string",
"customFieldProductSettings": [
{
"customFieldEncodedKey": "string",
"encodedKey": "string",
"isDefault": true,
"isRequired": true,
"linkType": "CLIENT_ROLE",
"productKey": "string"
}
],
"customFieldSelectionOptions": [
{
"constraint": {
"customFieldKey": "string",
"dataFieldType": "NATIVE",
"dataFieldValue": "string",
"dataItemType": "WRITTEN_OFF_LOANS",
"dataType": "ENUM",
"encodedKey": "string",
"filterElement": "STARTS_WITH_CASE_SENSITIVE",
"groupNumber": 0,
"index": 0,
"linkingOperator": "OR",
"secondValue": "string",
"value": "string"
},
"encodedKey": "string",
"id": "string",
"score": 0,
"value": "string"
}
],
"customFieldSet": {
"builtInType": "DETAILS",
"createdDate": "string",
"customFields": [
{}
],
"encodedKey": "string",
"id": "string",
"indexInList": 0,
"lastModifiedDate": "string",
"name": "string",
"notes": "string",
"type": "USER_INFO",
"usage": "SINGLE"
},
"dataType": "GROUP_LINK",
"description": "string",
"editRights": {
"encodedKey": "string",
"isAccessibleByAllUsers": true,
"roles": [
"string"
]
},
"encodedKey": "string",
"id": "string",
"indexInList": 0,
"isDefault": true,
"isRequired": true,
"lastModifiedDate": "string",
"name": "string",
"state": "DEACTIVATED",
"type": "USER_INFO",
"unique": true,
"validationPattern": "string",
"valueLength": "SHORT",
"values": [
"string"
],
"viewRights": {
"encodedKey": "string",
"isAccessibleByAllUsers": true,
"roles": [
"string"
]
}
},
"customFieldID": "string",
"customFieldKey": "string",
"customFieldSetGroupIndex": 0,
"encodedKey": "string",
"indexInList": 0,
"linkedEntityKeyValue": "string",
"parentKey": "string",
"selectionKey": "string",
"value": "string"
}
],
"encodedKey": "string",
"expireDate": "string",
"exposureLimitType": "APPROVED_AMOUNT",
"groupKey": "string",
"id": "string",
"idPattern": "string",
"lastModifiedDate": "string",
"notes": "string",
"startDate": "string",
"state": "WITHDRAWN",
"subState": "WITHDRAWN"
}
400 : Bad Request
malformatted JSON/missing required field
{
"returnCode": 30,
"returnStatus": "MISSING_ENTITY_JSON"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | ok | LineOfCreditFullApiV1 |
400 | Bad Request | Bad Request | ExecutionStatusApiV1 |
Search for Lines of Credit
POST /linesofcredit/search
Search Lines of Credit
Search for lines of credit based on some given criteria
Example requests
Get all lines of credit approved this month
{
"filterConstraints": [
{
"filterSelection": "APPROVAL_DATE",
"filterElement": "THIS_MONTH"
}
]
}
Get all lines of credit that are in a specific substate
{
"filterConstraints": [
{
"filterSelection": "SUBSTATE",
"filterElement": "IN",
"values": [
"WITHDRAWN",
"REJECTED"
]
}
]
}
Parameters
Name | Type | Description | In | Required |
---|---|---|---|---|
body | FilterApiV1 | none | body | false |
Example Responses
200 Response
[
{
"amount": 0,
"approvedDate": "string",
"availableCreditAmount": 0,
"clientKey": "string",
"closedDate": "string",
"creationDate": "string",
"customInformation": [
{
"amount": 0,
"customField": {
"amounts": {
"property1": 0,
"property2": 0
},
"builtInCustomFieldId": "MOBILE_PHONE",
"creationDate": "string",
"customFieldProductSettings": [
{
"customFieldEncodedKey": "string",
"encodedKey": "string",
"isDefault": true,
"isRequired": true,
"linkType": "CLIENT_ROLE",
"productKey": "string"
}
],
"customFieldSelectionOptions": [
{
"constraint": {
"customFieldKey": "string",
"dataFieldType": "NATIVE",
"dataFieldValue": "string",
"dataItemType": "WRITTEN_OFF_LOANS",
"dataType": "ENUM",
"encodedKey": "string",
"filterElement": "STARTS_WITH_CASE_SENSITIVE",
"groupNumber": 0,
"index": 0,
"linkingOperator": "OR",
"secondValue": "string",
"value": "string"
},
"encodedKey": "string",
"id": "string",
"score": 0,
"value": "string"
}
],
"customFieldSet": {
"builtInType": "DETAILS",
"createdDate": "string",
"customFields": [
{}
],
"encodedKey": "string",
"id": "string",
"indexInList": 0,
"lastModifiedDate": "string",
"name": "string",
"notes": "string",
"type": "USER_INFO",
"usage": "SINGLE"
},
"dataType": "GROUP_LINK",
"description": "string",
"editRights": {
"encodedKey": "string",
"isAccessibleByAllUsers": true,
"roles": [
"string"
]
},
"encodedKey": "string",
"id": "string",
"indexInList": 0,
"isDefault": true,
"isRequired": true,
"lastModifiedDate": "string",
"name": "string",
"state": "DEACTIVATED",
"type": "USER_INFO",
"unique": true