Interface ClientApi
public interface ClientApi
-
Method Summary
Modifier and TypeMethodDescriptionretrofit2.Call<PostClientsClientIdResponse> activate1(Long clientId, PostClientsClientIdRequest postClientsClientIdRequest, String command) Activate a Client | Close a Client | Reject a Client | Withdraw a Client | Reactivate a Client | UndoReject a Client | UndoWithdraw a Client | Assign a Staff | Unassign a Staff | Update Default Savings Account | Propose a Client Transfer | Withdraw a Client Transfer | Reject a Client Transfer | Accept a Client Transfer | Propose and Accept a Client Transfer Activate a Client: Clients can be created in a Pending state.retrofit2.Call<PostClientsClientIdResponse> activate1(Long clientId, PostClientsClientIdRequest postClientsClientIdRequest, String command, Map<String, String> headers) Activate a Client | Close a Client | Reject a Client | Withdraw a Client | Reactivate a Client | UndoReject a Client | UndoWithdraw a Client | Assign a Staff | Unassign a Staff | Update Default Savings Account | Propose a Client Transfer | Withdraw a Client Transfer | Reject a Client Transfer | Accept a Client Transfer | Propose and Accept a Client Transfer Activate a Client: Clients can be created in a Pending state.retrofit2.Call<PostClientsClientIdResponse> applyCommand(String externalId, PostClientsClientIdRequest postClientsClientIdRequest, String command) Activate a Client | Close a Client | Reject a Client | Withdraw a Client | Reactivate a Client | UndoReject a Client | UndoWithdraw a Client | Assign a Staff | Unassign a Staff | Update Default Savings Account | Propose a Client Transfer | Withdraw a Client Transfer | Reject a Client Transfer | Accept a Client Transfer | Propose and Accept a Client Transfer Activate a Client: Clients can be created in a Pending state.retrofit2.Call<PostClientsClientIdResponse> applyCommand(String externalId, PostClientsClientIdRequest postClientsClientIdRequest, String command, Map<String, String> headers) Activate a Client | Close a Client | Reject a Client | Withdraw a Client | Reactivate a Client | UndoReject a Client | UndoWithdraw a Client | Assign a Staff | Unassign a Staff | Update Default Savings Account | Propose a Client Transfer | Withdraw a Client Transfer | Reject a Client Transfer | Accept a Client Transfer | Propose and Accept a Client Transfer Activate a Client: Clients can be created in a Pending state.retrofit2.Call<PostClientsResponse> create6(PostClientsRequest postClientsRequest) Create a Client Note: 1.retrofit2.Call<PostClientsResponse> create6(PostClientsRequest postClientsRequest, Map<String, String> headers) Create a Client Note: 1.retrofit2.Call<DeleteClientsClientIdResponse> Delete a Client If a client is in Pending state, you are allowed to Delete it.retrofit2.Call<DeleteClientsClientIdResponse> Delete a Client If a client is in Pending state, you are allowed to Delete it.retrofit2.Call<DeleteClientsClientIdResponse> Delete a Client If a client is in Pending state, you are allowed to Delete it.retrofit2.Call<DeleteClientsClientIdResponse> Delete a Client If a client is in Pending state, you are allowed to Delete it.retrofit2.Call<Void> getClientTemplate(String legalFormType, Long officeId, Long staffId, String dateFormat) retrofit2.Call<Void> getClientTemplate(String legalFormType, Long officeId, Long staffId, String dateFormat, Map<String, String> headers) retrofit2.Call<String> postClientTemplate(String legalFormType, String dateFormat, String locale, okhttp3.MultipartBody.Part uploadedInputStream) retrofit2.Call<String> postClientTemplate(String legalFormType, String dateFormat, String locale, okhttp3.MultipartBody.Part uploadedInputStream, Map<String, String> headers) retrofit2.Call<GetClientsResponse> retrieveAll21(Long officeId, String externalId, String displayName, String firstName, String lastName, String status, String underHierarchy, Integer offset, Integer limit, String orderBy, String sortOrder, Boolean orphansOnly, Integer legalForm) List Clients The list capability of clients can support pagination and sorting.retrofit2.Call<GetClientsResponse> retrieveAll21(Long officeId, String externalId, String displayName, String firstName, String lastName, String status, String underHierarchy, Integer offset, Integer limit, String orderBy, String sortOrder, Boolean orphansOnly, Integer legalForm, Map<String, String> headers) List Clients The list capability of clients can support pagination and sorting.retrofit2.Call<GetClientsClientIdAccountsResponse> retrieveAssociatedAccounts(Long clientId) Retrieve client accounts overview An example of how a loan portfolio summary can be provided.retrofit2.Call<GetClientsClientIdAccountsResponse> retrieveAssociatedAccounts(Long clientId, Map<String, String> headers) Retrieve client accounts overview An example of how a loan portfolio summary can be provided.retrofit2.Call<GetClientsClientIdAccountsResponse> retrieveAssociatedAccounts1(String externalId) Retrieve client accounts overview An example of how a loan portfolio summary can be provided.retrofit2.Call<GetClientsClientIdAccountsResponse> retrieveAssociatedAccounts1(String externalId, Map<String, String> headers) Retrieve client accounts overview An example of how a loan portfolio summary can be provided.retrofit2.Call<GetClientObligeeDetailsResponse> retrieveObligeeDetails(Long clientId) Retrieve client obligee details Retrieve client obligee detailsretrofit2.Call<GetClientObligeeDetailsResponse> retrieveObligeeDetails(Long clientId, Map<String, String> headers) Retrieve client obligee details Retrieve client obligee detailsretrofit2.Call<GetClientObligeeDetailsResponse> retrieveObligeeDetails1(String externalId) Retrieve client obligee details Retrieve client obligee details using the client external Idretrofit2.Call<GetClientObligeeDetailsResponse> retrieveObligeeDetails1(String externalId, Map<String, String> headers) Retrieve client obligee details Retrieve client obligee details using the client external Idretrofit2.Call<GetClientsClientIdResponse> retrieveOne11(Long clientId, Boolean staffInSelectedOfficeOnly) Retrieve a Client Example Requests: clients/1 clients/1?template=true clients/1?fields=id,displayName,officeNameretrofit2.Call<GetClientsClientIdResponse> Retrieve a Client Example Requests: clients/1 clients/1?template=true clients/1?fields=id,displayName,officeNameretrofit2.Call<GetClientsClientIdResponse> retrieveOne12(String externalId, Boolean staffInSelectedOfficeOnly) Retrieve a Client by External Id Example Requests: clients/123-456 clients/123-456?template=true clients/123-456?fields=id,displayName,officeNameretrofit2.Call<GetClientsClientIdResponse> Retrieve a Client by External Id Example Requests: clients/123-456 clients/123-456?template=true clients/123-456?fields=id,displayName,officeNameretrofit2.Call<GetClientsTemplateResponse> retrieveTemplate5(Long officeId, String commandParam, Boolean staffInSelectedOfficeOnly) Retrieve Client Details Template This is a convenience resource.retrofit2.Call<GetClientsTemplateResponse> retrieveTemplate5(Long officeId, String commandParam, Boolean staffInSelectedOfficeOnly, Map<String, String> headers) Retrieve Client Details Template This is a convenience resource.retrofit2.Call<GetClientTransferProposalDateResponse> retrieveTransferTemplate(Long clientId) Retrieve client transfer template Retrieve client transfer templateretrofit2.Call<GetClientTransferProposalDateResponse> retrieveTransferTemplate(Long clientId, Map<String, String> headers) Retrieve client transfer template Retrieve client transfer templateretrofit2.Call<GetClientTransferProposalDateResponse> retrieveTransferTemplate1(String externalId) Retrieve client transfer template Retrieve client transfer template using the client external Idretrofit2.Call<GetClientTransferProposalDateResponse> retrieveTransferTemplate1(String externalId, Map<String, String> headers) Retrieve client transfer template Retrieve client transfer template using the client external Idretrofit2.Call<PutClientsClientIdResponse> update10(Long clientId, PutClientsClientIdRequest putClientsClientIdRequest) Update a Client Note: You can update any of the basic attributes of a client (but not its associations) using this API.retrofit2.Call<PutClientsClientIdResponse> update10(Long clientId, PutClientsClientIdRequest putClientsClientIdRequest, Map<String, String> headers) Update a Client Note: You can update any of the basic attributes of a client (but not its associations) using this API.retrofit2.Call<PutClientsClientIdResponse> update11(String externalId, PutClientsClientIdRequest putClientsClientIdRequest) Update a Client using the External Id Note: You can update any of the basic attributes of a client (but not its associations) using this API.retrofit2.Call<PutClientsClientIdResponse> update11(String externalId, PutClientsClientIdRequest putClientsClientIdRequest, Map<String, String> headers) Update a Client using the External Id Note: You can update any of the basic attributes of a client (but not its associations) using this API.
-
Method Details
-
activate1
@Headers("Content-Type:application/json") @POST("v1/clients/{clientId}") retrofit2.Call<PostClientsClientIdResponse> activate1(@Path("clientId") Long clientId, @Body PostClientsClientIdRequest postClientsClientIdRequest, @Query("command") String command) Activate a Client | Close a Client | Reject a Client | Withdraw a Client | Reactivate a Client | UndoReject a Client | UndoWithdraw a Client | Assign a Staff | Unassign a Staff | Update Default Savings Account | Propose a Client Transfer | Withdraw a Client Transfer | Reject a Client Transfer | Accept a Client Transfer | Propose and Accept a Client Transfer Activate a Client: Clients can be created in a Pending state. This API exists to enable client activation (for when a client becomes an approved member of the financial Institution). If the client happens to be already active this API will result in an error. Close a Client: Clients can be closed if they do not have any non-closed loans/savingsAccount. This API exists to close a client . If the client have any active loans/savingsAccount this API will result in an error. Reject a Client: Clients can be rejected when client is in pending for activation status. If the client is any other status, this API throws an error. Mandatory Fields: rejectionDate, rejectionReasonId Withdraw a Client: Client applications can be withdrawn when client is in a pending for activation status. If the client is any other status, this API throws an error. Mandatory Fields: withdrawalDate, withdrawalReasonId Reactivate a Client: Clients can be reactivated after they have been closed. Trying to reactivate a client in any other state throws an error. Mandatory Fields: reactivationDate UndoReject a Client: Clients can be reactivated after they have been rejected. Trying to reactivate a client in any other state throws an error. Mandatory Fields: reopenedDateUndoWithdraw a Client: Clients can be reactivated after they have been withdrawn. Trying to reactivate a client in any other state throws an error. Mandatory Fields: reopenedDate Assign a Staff: Allows you to assign a Staff for existed Client. The selected Staff should belong to the same office (or an officer higher up in the hierarchy) as the Client he manages. Unassign a Staff: Allows you to unassign the Staff assigned to a Client. Update Default Savings Account: Allows you to modify or assign a default savings account for an existing Client. The selected savings account should be one among the existing savings account for a particular customer. Propose a Client Transfer: Allows you to propose the transfer of a Client to a different Office. Withdraw a Client Transfer: Allows you to withdraw the proposed transfer of a Client to a different Office. Withdrawal can happen only if the destination Branch (to which the transfer was proposed) has not already accepted the transfer proposal Reject a Client Transfer: Allows the Destination Branch to reject the proposed Client Transfer. Accept a Client Transfer: Allows the Destination Branch to accept the proposed Client Transfer. The destination branch may also choose to link this client to a group (in which case, any existing active JLG loan of the client is rescheduled to match the meeting frequency of the group) and loan Officer at the time of accepting the transfer Propose and Accept a Client Transfer: Abstraction over the Propose and Accept Client Transfer API's which enable a user with Data Scope over both the Target and Destination Branches to directly transfer a Client to the destination Office. Showing request/response for 'Reject a Client Transfer'- Parameters:
clientId- clientId (required)postClientsClientIdRequest- (required)command- command (optional)- Returns:
- Call<PostClientsClientIdResponse>
-
applyCommand
@Headers("Content-Type:application/json") @POST("v1/clients/external-id/{externalId}") retrofit2.Call<PostClientsClientIdResponse> applyCommand(@Path("externalId") String externalId, @Body PostClientsClientIdRequest postClientsClientIdRequest, @Query("command") String command) Activate a Client | Close a Client | Reject a Client | Withdraw a Client | Reactivate a Client | UndoReject a Client | UndoWithdraw a Client | Assign a Staff | Unassign a Staff | Update Default Savings Account | Propose a Client Transfer | Withdraw a Client Transfer | Reject a Client Transfer | Accept a Client Transfer | Propose and Accept a Client Transfer Activate a Client: Clients can be created in a Pending state. This API exists to enable client activation (for when a client becomes an approved member of the financial Institution). If the client happens to be already active this API will result in an error. Close a Client: Clients can be closed if they do not have any non-closed loans/savingsAccount. This API exists to close a client . If the client have any active loans/savingsAccount this API will result in an error. Reject a Client: Clients can be rejected when client is in pending for activation status. If the client is any other status, this API throws an error. Mandatory Fields: rejectionDate, rejectionReasonId Withdraw a Client: Client applications can be withdrawn when client is in a pending for activation status. If the client is any other status, this API throws an error. Mandatory Fields: withdrawalDate, withdrawalReasonId Reactivate a Client: Clients can be reactivated after they have been closed. Trying to reactivate a client in any other state throws an error. Mandatory Fields: reactivationDate UndoReject a Client: Clients can be reactivated after they have been rejected. Trying to reactivate a client in any other state throws an error. Mandatory Fields: reopenedDateUndoWithdraw a Client: Clients can be reactivated after they have been withdrawn. Trying to reactivate a client in any other state throws an error. Mandatory Fields: reopenedDate Assign a Staff: Allows you to assign a Staff for existed Client. The selected Staff should belong to the same office (or an officer higher up in the hierarchy) as the Client he manages. Unassign a Staff: Allows you to unassign the Staff assigned to a Client. Update Default Savings Account: Allows you to modify or assign a default savings account for an existing Client. The selected savings account should be one among the existing savings account for a particular customer. Propose a Client Transfer: Allows you to propose the transfer of a Client to a different Office. Withdraw a Client Transfer: Allows you to withdraw the proposed transfer of a Client to a different Office. Withdrawal can happen only if the destination Branch (to which the transfer was proposed) has not already accepted the transfer proposal Reject a Client Transfer: Allows the Destination Branch to reject the proposed Client Transfer. Accept a Client Transfer: Allows the Destination Branch to accept the proposed Client Transfer. The destination branch may also choose to link this client to a group (in which case, any existing active JLG loan of the client is rescheduled to match the meeting frequency of the group) and loan Officer at the time of accepting the transfer Propose and Accept a Client Transfer: Abstraction over the Propose and Accept Client Transfer API's which enable a user with Data Scope over both the Target and Destination Branches to directly transfer a Client to the destination Office. Showing request/response for 'Reject a Client Transfer'- Parameters:
externalId- externalId (required)postClientsClientIdRequest- (required)command- command (optional)- Returns:
- Call<PostClientsClientIdResponse>
-
create6
@Headers("Content-Type:application/json") @POST("v1/clients") retrofit2.Call<PostClientsResponse> create6(@Body PostClientsRequest postClientsRequest) Create a Client Note: 1. You can enter either:firstname/middlename/lastname - for a person (middlename is optional) OR fullname - for a business or organisation (or person known by one name). 2.If address is enable(enable-address=true), then additional field called address has to be passed. Mandatory Fields: firstname and lastname OR fullname, officeId, active=true and activationDate OR active=false, if(address enabled) address Optional Fields: groupId, externalId, accountNo, staffId, mobileNo, savingsProductId, genderId, clientTypeId, clientClassificationId- Parameters:
postClientsRequest- (required)- Returns:
- Call<PostClientsResponse>
-
delete8
@DELETE("v1/clients/{clientId}") retrofit2.Call<DeleteClientsClientIdResponse> delete8(@Path("clientId") Long clientId) Delete a Client If a client is in Pending state, you are allowed to Delete it. The delete is a 'hard delete' and cannot be recovered from. Once clients become active or have loans or savings associated with them, you cannot delete the client but you may Close the client if they have left the program.- Parameters:
clientId- clientId (required)- Returns:
- Call<DeleteClientsClientIdResponse>
-
delete9
@DELETE("v1/clients/external-id/{externalId}") retrofit2.Call<DeleteClientsClientIdResponse> delete9(@Path("externalId") String externalId) Delete a Client If a client is in Pending state, you are allowed to Delete it. The delete is a 'hard delete' and cannot be recovered from. Once clients become active or have loans or savings associated with them, you cannot delete the client but you may Close the client if they have left the program.- Parameters:
externalId- externalId (required)- Returns:
- Call<DeleteClientsClientIdResponse>
-
getClientTemplate
@GET("v1/clients/downloadtemplate") retrofit2.Call<Void> getClientTemplate(@Query("legalFormType") String legalFormType, @Query("officeId") Long officeId, @Query("staffId") Long staffId, @Query("dateFormat") String dateFormat) - Parameters:
legalFormType- (optional)officeId- (optional)staffId- (optional)dateFormat- (optional)- Returns:
- Call<Void>
-
postClientTemplate
@Multipart @POST("v1/clients/uploadtemplate") retrofit2.Call<String> postClientTemplate(@Query("legalFormType") String legalFormType, @Part("dateFormat") String dateFormat, @Part("locale") String locale, @Part okhttp3.MultipartBody.Part uploadedInputStream) - Parameters:
legalFormType- (optional)dateFormat- (optional)locale- (optional)uploadedInputStream- (optional)- Returns:
- Call<String>
-
retrieveAll21
@GET("v1/clients") retrofit2.Call<GetClientsResponse> retrieveAll21(@Query("officeId") Long officeId, @Query("externalId") String externalId, @Query("displayName") String displayName, @Query("firstName") String firstName, @Query("lastName") String lastName, @Query("status") String status, @Query("underHierarchy") String underHierarchy, @Query("offset") Integer offset, @Query("limit") Integer limit, @Query("orderBy") String orderBy, @Query("sortOrder") String sortOrder, @Query("orphansOnly") Boolean orphansOnly, @Query("legalForm") Integer legalForm) List Clients The list capability of clients can support pagination and sorting. Example Requests: clients clients?fields=displayName,officeName,timeline clients?offset=10&limit=50 clients?orderBy=displayName&sortOrder=DESC- Parameters:
officeId- officeId (optional)externalId- externalId (optional)displayName- displayName (optional)firstName- firstName (optional)lastName- lastName (optional)status- status (optional)underHierarchy- underHierarchy (optional)offset- offset (optional)limit- limit (optional)orderBy- orderBy (optional)sortOrder- sortOrder (optional)orphansOnly- orphansOnly (optional)legalForm- (optional)- Returns:
- Call<GetClientsResponse>
-
retrieveAssociatedAccounts
@GET("v1/clients/{clientId}/accounts") retrofit2.Call<GetClientsClientIdAccountsResponse> retrieveAssociatedAccounts(@Path("clientId") Long clientId) Retrieve client accounts overview An example of how a loan portfolio summary can be provided. This is requested in a specific use case of the community application. It is quite reasonable to add resources like this to simplify User Interface development. Example Requests: clients/1/accounts clients/1/accounts?fields=loanAccounts,savingsAccounts- Parameters:
clientId- clientId (required)- Returns:
- Call<GetClientsClientIdAccountsResponse>
-
retrieveAssociatedAccounts1
@GET("v1/clients/external-id/{externalId}/accounts") retrofit2.Call<GetClientsClientIdAccountsResponse> retrieveAssociatedAccounts1(@Path("externalId") String externalId) Retrieve client accounts overview An example of how a loan portfolio summary can be provided. This is requested in a specific use case of the community application. It is quite reasonable to add resources like this to simplify User Interface development. Example Requests: clients/123-456/accounts clients/123-456/accounts?fields=loanAccounts,savingsAccounts- Parameters:
externalId- externalId (required)- Returns:
- Call<GetClientsClientIdAccountsResponse>
-
retrieveObligeeDetails
@GET("v1/clients/{clientId}/obligeedetails") retrofit2.Call<GetClientObligeeDetailsResponse> retrieveObligeeDetails(@Path("clientId") Long clientId) Retrieve client obligee details Retrieve client obligee details- Parameters:
clientId- (required)- Returns:
- Call<GetClientObligeeDetailsResponse>
-
retrieveObligeeDetails1
@GET("v1/clients/external-id/{externalId}/obligeedetails") retrofit2.Call<GetClientObligeeDetailsResponse> retrieveObligeeDetails1(@Path("externalId") String externalId) Retrieve client obligee details Retrieve client obligee details using the client external Id- Parameters:
externalId- (required)- Returns:
- Call<GetClientObligeeDetailsResponse>
-
retrieveOne11
@GET("v1/clients/{clientId}") retrofit2.Call<GetClientsClientIdResponse> retrieveOne11(@Path("clientId") Long clientId, @Query("staffInSelectedOfficeOnly") Boolean staffInSelectedOfficeOnly) Retrieve a Client Example Requests: clients/1 clients/1?template=true clients/1?fields=id,displayName,officeName- Parameters:
clientId- clientId (required)staffInSelectedOfficeOnly- staffInSelectedOfficeOnly (optional, default to false)- Returns:
- Call<GetClientsClientIdResponse>
-
retrieveOne12
@GET("v1/clients/external-id/{externalId}") retrofit2.Call<GetClientsClientIdResponse> retrieveOne12(@Path("externalId") String externalId, @Query("staffInSelectedOfficeOnly") Boolean staffInSelectedOfficeOnly) Retrieve a Client by External Id Example Requests: clients/123-456 clients/123-456?template=true clients/123-456?fields=id,displayName,officeName- Parameters:
externalId- externalId (required)staffInSelectedOfficeOnly- staffInSelectedOfficeOnly (optional, default to false)- Returns:
- Call<GetClientsClientIdResponse>
-
retrieveTemplate5
@GET("v1/clients/template") retrofit2.Call<GetClientsTemplateResponse> retrieveTemplate5(@Query("officeId") Long officeId, @Query("commandParam") String commandParam, @Query("staffInSelectedOfficeOnly") Boolean staffInSelectedOfficeOnly) Retrieve Client Details Template This is a convenience resource. It can be useful when building maintenance user interface screens for client applications. The template data returned consists of any or all of: Field Defaults Allowed Value Lists Example Request: clients/template- Parameters:
officeId- officeId (optional)commandParam- commandParam (optional)staffInSelectedOfficeOnly- staffInSelectedOfficeOnly (optional, default to false)- Returns:
- Call<GetClientsTemplateResponse>
-
retrieveTransferTemplate
@GET("v1/clients/{clientId}/transferproposaldate") retrofit2.Call<GetClientTransferProposalDateResponse> retrieveTransferTemplate(@Path("clientId") Long clientId) Retrieve client transfer template Retrieve client transfer template- Parameters:
clientId- (required)- Returns:
- Call<GetClientTransferProposalDateResponse>
-
retrieveTransferTemplate1
@GET("v1/clients/external-id/{externalId}/transferproposaldate") retrofit2.Call<GetClientTransferProposalDateResponse> retrieveTransferTemplate1(@Path("externalId") String externalId) Retrieve client transfer template Retrieve client transfer template using the client external Id- Parameters:
externalId- (required)- Returns:
- Call<GetClientTransferProposalDateResponse>
-
update10
@Headers("Content-Type:application/json") @PUT("v1/clients/{clientId}") retrofit2.Call<PutClientsClientIdResponse> update10(@Path("clientId") Long clientId, @Body PutClientsClientIdRequest putClientsClientIdRequest) Update a Client Note: You can update any of the basic attributes of a client (but not its associations) using this API. Changing the relationship between a client and its office is not supported through this API. An API specific to handling transfers of clients between offices is available for the same. The relationship between a client and a group must be removed through the Groups API.- Parameters:
clientId- clientId (required)putClientsClientIdRequest- (required)- Returns:
- Call<PutClientsClientIdResponse>
-
update11
@Headers("Content-Type:application/json") @PUT("v1/clients/external-id/{externalId}") retrofit2.Call<PutClientsClientIdResponse> update11(@Path("externalId") String externalId, @Body PutClientsClientIdRequest putClientsClientIdRequest) Update a Client using the External Id Note: You can update any of the basic attributes of a client (but not its associations) using this API. Changing the relationship between a client and its office is not supported through this API. An API specific to handling transfers of clients between offices is available for the same. The relationship between a client and a group must be removed through the Groups API.- Parameters:
externalId- externalId (required)putClientsClientIdRequest- (required)- Returns:
- Call<PutClientsClientIdResponse>
-
activate1
@Headers("Content-Type:application/json") @POST("v1/clients/{clientId}") retrofit2.Call<PostClientsClientIdResponse> activate1(@Path("clientId") Long clientId, @Body PostClientsClientIdRequest postClientsClientIdRequest, @Query("command") String command, @HeaderMap Map<String, String> headers) Activate a Client | Close a Client | Reject a Client | Withdraw a Client | Reactivate a Client | UndoReject a Client | UndoWithdraw a Client | Assign a Staff | Unassign a Staff | Update Default Savings Account | Propose a Client Transfer | Withdraw a Client Transfer | Reject a Client Transfer | Accept a Client Transfer | Propose and Accept a Client Transfer Activate a Client: Clients can be created in a Pending state. This API exists to enable client activation (for when a client becomes an approved member of the financial Institution). If the client happens to be already active this API will result in an error. Close a Client: Clients can be closed if they do not have any non-closed loans/savingsAccount. This API exists to close a client . If the client have any active loans/savingsAccount this API will result in an error. Reject a Client: Clients can be rejected when client is in pending for activation status. If the client is any other status, this API throws an error. Mandatory Fields: rejectionDate, rejectionReasonId Withdraw a Client: Client applications can be withdrawn when client is in a pending for activation status. If the client is any other status, this API throws an error. Mandatory Fields: withdrawalDate, withdrawalReasonId Reactivate a Client: Clients can be reactivated after they have been closed. Trying to reactivate a client in any other state throws an error. Mandatory Fields: reactivationDate UndoReject a Client: Clients can be reactivated after they have been rejected. Trying to reactivate a client in any other state throws an error. Mandatory Fields: reopenedDateUndoWithdraw a Client: Clients can be reactivated after they have been withdrawn. Trying to reactivate a client in any other state throws an error. Mandatory Fields: reopenedDate Assign a Staff: Allows you to assign a Staff for existed Client. The selected Staff should belong to the same office (or an officer higher up in the hierarchy) as the Client he manages. Unassign a Staff: Allows you to unassign the Staff assigned to a Client. Update Default Savings Account: Allows you to modify or assign a default savings account for an existing Client. The selected savings account should be one among the existing savings account for a particular customer. Propose a Client Transfer: Allows you to propose the transfer of a Client to a different Office. Withdraw a Client Transfer: Allows you to withdraw the proposed transfer of a Client to a different Office. Withdrawal can happen only if the destination Branch (to which the transfer was proposed) has not already accepted the transfer proposal Reject a Client Transfer: Allows the Destination Branch to reject the proposed Client Transfer. Accept a Client Transfer: Allows the Destination Branch to accept the proposed Client Transfer. The destination branch may also choose to link this client to a group (in which case, any existing active JLG loan of the client is rescheduled to match the meeting frequency of the group) and loan Officer at the time of accepting the transfer Propose and Accept a Client Transfer: Abstraction over the Propose and Accept Client Transfer API's which enable a user with Data Scope over both the Target and Destination Branches to directly transfer a Client to the destination Office. Showing request/response for 'Reject a Client Transfer'- Parameters:
clientId- clientId (required)postClientsClientIdRequest- (required)command- command (optional)- Returns:
- Call<PostClientsClientIdResponse>
-
applyCommand
@Headers("Content-Type:application/json") @POST("v1/clients/external-id/{externalId}") retrofit2.Call<PostClientsClientIdResponse> applyCommand(@Path("externalId") String externalId, @Body PostClientsClientIdRequest postClientsClientIdRequest, @Query("command") String command, @HeaderMap Map<String, String> headers) Activate a Client | Close a Client | Reject a Client | Withdraw a Client | Reactivate a Client | UndoReject a Client | UndoWithdraw a Client | Assign a Staff | Unassign a Staff | Update Default Savings Account | Propose a Client Transfer | Withdraw a Client Transfer | Reject a Client Transfer | Accept a Client Transfer | Propose and Accept a Client Transfer Activate a Client: Clients can be created in a Pending state. This API exists to enable client activation (for when a client becomes an approved member of the financial Institution). If the client happens to be already active this API will result in an error. Close a Client: Clients can be closed if they do not have any non-closed loans/savingsAccount. This API exists to close a client . If the client have any active loans/savingsAccount this API will result in an error. Reject a Client: Clients can be rejected when client is in pending for activation status. If the client is any other status, this API throws an error. Mandatory Fields: rejectionDate, rejectionReasonId Withdraw a Client: Client applications can be withdrawn when client is in a pending for activation status. If the client is any other status, this API throws an error. Mandatory Fields: withdrawalDate, withdrawalReasonId Reactivate a Client: Clients can be reactivated after they have been closed. Trying to reactivate a client in any other state throws an error. Mandatory Fields: reactivationDate UndoReject a Client: Clients can be reactivated after they have been rejected. Trying to reactivate a client in any other state throws an error. Mandatory Fields: reopenedDateUndoWithdraw a Client: Clients can be reactivated after they have been withdrawn. Trying to reactivate a client in any other state throws an error. Mandatory Fields: reopenedDate Assign a Staff: Allows you to assign a Staff for existed Client. The selected Staff should belong to the same office (or an officer higher up in the hierarchy) as the Client he manages. Unassign a Staff: Allows you to unassign the Staff assigned to a Client. Update Default Savings Account: Allows you to modify or assign a default savings account for an existing Client. The selected savings account should be one among the existing savings account for a particular customer. Propose a Client Transfer: Allows you to propose the transfer of a Client to a different Office. Withdraw a Client Transfer: Allows you to withdraw the proposed transfer of a Client to a different Office. Withdrawal can happen only if the destination Branch (to which the transfer was proposed) has not already accepted the transfer proposal Reject a Client Transfer: Allows the Destination Branch to reject the proposed Client Transfer. Accept a Client Transfer: Allows the Destination Branch to accept the proposed Client Transfer. The destination branch may also choose to link this client to a group (in which case, any existing active JLG loan of the client is rescheduled to match the meeting frequency of the group) and loan Officer at the time of accepting the transfer Propose and Accept a Client Transfer: Abstraction over the Propose and Accept Client Transfer API's which enable a user with Data Scope over both the Target and Destination Branches to directly transfer a Client to the destination Office. Showing request/response for 'Reject a Client Transfer'- Parameters:
externalId- externalId (required)postClientsClientIdRequest- (required)command- command (optional)- Returns:
- Call<PostClientsClientIdResponse>
-
create6
@Headers("Content-Type:application/json") @POST("v1/clients") retrofit2.Call<PostClientsResponse> create6(@Body PostClientsRequest postClientsRequest, @HeaderMap Map<String, String> headers) Create a Client Note: 1. You can enter either:firstname/middlename/lastname - for a person (middlename is optional) OR fullname - for a business or organisation (or person known by one name). 2.If address is enable(enable-address=true), then additional field called address has to be passed. Mandatory Fields: firstname and lastname OR fullname, officeId, active=true and activationDate OR active=false, if(address enabled) address Optional Fields: groupId, externalId, accountNo, staffId, mobileNo, savingsProductId, genderId, clientTypeId, clientClassificationId- Parameters:
postClientsRequest- (required)- Returns:
- Call<PostClientsResponse>
-
delete8
@DELETE("v1/clients/{clientId}") retrofit2.Call<DeleteClientsClientIdResponse> delete8(@Path("clientId") Long clientId, @HeaderMap Map<String, String> headers) Delete a Client If a client is in Pending state, you are allowed to Delete it. The delete is a 'hard delete' and cannot be recovered from. Once clients become active or have loans or savings associated with them, you cannot delete the client but you may Close the client if they have left the program.- Parameters:
clientId- clientId (required)- Returns:
- Call<DeleteClientsClientIdResponse>
-
delete9
@DELETE("v1/clients/external-id/{externalId}") retrofit2.Call<DeleteClientsClientIdResponse> delete9(@Path("externalId") String externalId, @HeaderMap Map<String, String> headers) Delete a Client If a client is in Pending state, you are allowed to Delete it. The delete is a 'hard delete' and cannot be recovered from. Once clients become active or have loans or savings associated with them, you cannot delete the client but you may Close the client if they have left the program.- Parameters:
externalId- externalId (required)- Returns:
- Call<DeleteClientsClientIdResponse>
-
getClientTemplate
@GET("v1/clients/downloadtemplate") retrofit2.Call<Void> getClientTemplate(@Query("legalFormType") String legalFormType, @Query("officeId") Long officeId, @Query("staffId") Long staffId, @Query("dateFormat") String dateFormat, @HeaderMap Map<String, String> headers) - Parameters:
legalFormType- (optional)officeId- (optional)staffId- (optional)dateFormat- (optional)- Returns:
- Call<Void>
-
postClientTemplate
@Multipart @POST("v1/clients/uploadtemplate") retrofit2.Call<String> postClientTemplate(@Query("legalFormType") String legalFormType, @Part("dateFormat") String dateFormat, @Part("locale") String locale, @Part okhttp3.MultipartBody.Part uploadedInputStream, @HeaderMap Map<String, String> headers) - Parameters:
legalFormType- (optional)dateFormat- (optional)locale- (optional)uploadedInputStream- (optional)- Returns:
- Call<String>
-
retrieveAll21
@GET("v1/clients") retrofit2.Call<GetClientsResponse> retrieveAll21(@Query("officeId") Long officeId, @Query("externalId") String externalId, @Query("displayName") String displayName, @Query("firstName") String firstName, @Query("lastName") String lastName, @Query("status") String status, @Query("underHierarchy") String underHierarchy, @Query("offset") Integer offset, @Query("limit") Integer limit, @Query("orderBy") String orderBy, @Query("sortOrder") String sortOrder, @Query("orphansOnly") Boolean orphansOnly, @Query("legalForm") Integer legalForm, @HeaderMap Map<String, String> headers) List Clients The list capability of clients can support pagination and sorting. Example Requests: clients clients?fields=displayName,officeName,timeline clients?offset=10&limit=50 clients?orderBy=displayName&sortOrder=DESC- Parameters:
officeId- officeId (optional)externalId- externalId (optional)displayName- displayName (optional)firstName- firstName (optional)lastName- lastName (optional)status- status (optional)underHierarchy- underHierarchy (optional)offset- offset (optional)limit- limit (optional)orderBy- orderBy (optional)sortOrder- sortOrder (optional)orphansOnly- orphansOnly (optional)legalForm- (optional)- Returns:
- Call<GetClientsResponse>
-
retrieveAssociatedAccounts
@GET("v1/clients/{clientId}/accounts") retrofit2.Call<GetClientsClientIdAccountsResponse> retrieveAssociatedAccounts(@Path("clientId") Long clientId, @HeaderMap Map<String, String> headers) Retrieve client accounts overview An example of how a loan portfolio summary can be provided. This is requested in a specific use case of the community application. It is quite reasonable to add resources like this to simplify User Interface development. Example Requests: clients/1/accounts clients/1/accounts?fields=loanAccounts,savingsAccounts- Parameters:
clientId- clientId (required)- Returns:
- Call<GetClientsClientIdAccountsResponse>
-
retrieveAssociatedAccounts1
@GET("v1/clients/external-id/{externalId}/accounts") retrofit2.Call<GetClientsClientIdAccountsResponse> retrieveAssociatedAccounts1(@Path("externalId") String externalId, @HeaderMap Map<String, String> headers) Retrieve client accounts overview An example of how a loan portfolio summary can be provided. This is requested in a specific use case of the community application. It is quite reasonable to add resources like this to simplify User Interface development. Example Requests: clients/123-456/accounts clients/123-456/accounts?fields=loanAccounts,savingsAccounts- Parameters:
externalId- externalId (required)- Returns:
- Call<GetClientsClientIdAccountsResponse>
-
retrieveObligeeDetails
@GET("v1/clients/{clientId}/obligeedetails") retrofit2.Call<GetClientObligeeDetailsResponse> retrieveObligeeDetails(@Path("clientId") Long clientId, @HeaderMap Map<String, String> headers) Retrieve client obligee details Retrieve client obligee details- Parameters:
clientId- (required)- Returns:
- Call<GetClientObligeeDetailsResponse>
-
retrieveObligeeDetails1
@GET("v1/clients/external-id/{externalId}/obligeedetails") retrofit2.Call<GetClientObligeeDetailsResponse> retrieveObligeeDetails1(@Path("externalId") String externalId, @HeaderMap Map<String, String> headers) Retrieve client obligee details Retrieve client obligee details using the client external Id- Parameters:
externalId- (required)- Returns:
- Call<GetClientObligeeDetailsResponse>
-
retrieveOne11
@GET("v1/clients/{clientId}") retrofit2.Call<GetClientsClientIdResponse> retrieveOne11(@Path("clientId") Long clientId, @Query("staffInSelectedOfficeOnly") Boolean staffInSelectedOfficeOnly, @HeaderMap Map<String, String> headers) Retrieve a Client Example Requests: clients/1 clients/1?template=true clients/1?fields=id,displayName,officeName- Parameters:
clientId- clientId (required)staffInSelectedOfficeOnly- staffInSelectedOfficeOnly (optional, default to false)- Returns:
- Call<GetClientsClientIdResponse>
-
retrieveOne12
@GET("v1/clients/external-id/{externalId}") retrofit2.Call<GetClientsClientIdResponse> retrieveOne12(@Path("externalId") String externalId, @Query("staffInSelectedOfficeOnly") Boolean staffInSelectedOfficeOnly, @HeaderMap Map<String, String> headers) Retrieve a Client by External Id Example Requests: clients/123-456 clients/123-456?template=true clients/123-456?fields=id,displayName,officeName- Parameters:
externalId- externalId (required)staffInSelectedOfficeOnly- staffInSelectedOfficeOnly (optional, default to false)- Returns:
- Call<GetClientsClientIdResponse>
-
retrieveTemplate5
@GET("v1/clients/template") retrofit2.Call<GetClientsTemplateResponse> retrieveTemplate5(@Query("officeId") Long officeId, @Query("commandParam") String commandParam, @Query("staffInSelectedOfficeOnly") Boolean staffInSelectedOfficeOnly, @HeaderMap Map<String, String> headers) Retrieve Client Details Template This is a convenience resource. It can be useful when building maintenance user interface screens for client applications. The template data returned consists of any or all of: Field Defaults Allowed Value Lists Example Request: clients/template- Parameters:
officeId- officeId (optional)commandParam- commandParam (optional)staffInSelectedOfficeOnly- staffInSelectedOfficeOnly (optional, default to false)- Returns:
- Call<GetClientsTemplateResponse>
-
retrieveTransferTemplate
@GET("v1/clients/{clientId}/transferproposaldate") retrofit2.Call<GetClientTransferProposalDateResponse> retrieveTransferTemplate(@Path("clientId") Long clientId, @HeaderMap Map<String, String> headers) Retrieve client transfer template Retrieve client transfer template- Parameters:
clientId- (required)- Returns:
- Call<GetClientTransferProposalDateResponse>
-
retrieveTransferTemplate1
@GET("v1/clients/external-id/{externalId}/transferproposaldate") retrofit2.Call<GetClientTransferProposalDateResponse> retrieveTransferTemplate1(@Path("externalId") String externalId, @HeaderMap Map<String, String> headers) Retrieve client transfer template Retrieve client transfer template using the client external Id- Parameters:
externalId- (required)- Returns:
- Call<GetClientTransferProposalDateResponse>
-
update10
@Headers("Content-Type:application/json") @PUT("v1/clients/{clientId}") retrofit2.Call<PutClientsClientIdResponse> update10(@Path("clientId") Long clientId, @Body PutClientsClientIdRequest putClientsClientIdRequest, @HeaderMap Map<String, String> headers) Update a Client Note: You can update any of the basic attributes of a client (but not its associations) using this API. Changing the relationship between a client and its office is not supported through this API. An API specific to handling transfers of clients between offices is available for the same. The relationship between a client and a group must be removed through the Groups API.- Parameters:
clientId- clientId (required)putClientsClientIdRequest- (required)- Returns:
- Call<PutClientsClientIdResponse>
-
update11
@Headers("Content-Type:application/json") @PUT("v1/clients/external-id/{externalId}") retrofit2.Call<PutClientsClientIdResponse> update11(@Path("externalId") String externalId, @Body PutClientsClientIdRequest putClientsClientIdRequest, @HeaderMap Map<String, String> headers) Update a Client using the External Id Note: You can update any of the basic attributes of a client (but not its associations) using this API. Changing the relationship between a client and its office is not supported through this API. An API specific to handling transfers of clients between offices is available for the same. The relationship between a client and a group must be removed through the Groups API.- Parameters:
externalId- externalId (required)putClientsClientIdRequest- (required)- Returns:
- Call<PutClientsClientIdResponse>
-