Files
cbsnexora-backend/fineract-provider/config/swagger/templates

# Fineract Client



This is a Java and Retrofit2 based client library for [Apache Fineract Platform](https://github.com/apache/fineract) version `{{appVersion}}`. This library is automatically generated by the [Swagger Codegen](https://github.com/swagger-api/swagger-codegen).



{{#appDescription}}{{{appDescription}}}{{/appDescription}}



{{#infoUrl}}

  For more information, please visit [{{{infoUrl}}}]({{{infoUrl}}})

{{/infoUrl}}





## Add Dependency



To add the library as dependency to your project, follow the steps below.



### Maven



Add this dependency to your project's POM:



```xml

<dependency>

  <groupId>{{{groupId}}}</groupId>

  <artifactId>{{{artifactId}}}</artifactId>

  <version>{{{artifactVersion}}}</version>

  <scope>compile</scope>

</dependency>

```



### Gradle



Add this dependency to your project's build file:



```groovy

implementation "{{{groupId}}}:{{{artifactId}}}:{{{artifactVersion}}}"

```



## Build Project



To build the API client library locally, you must have:

1. Java 1.8+

2. Maven/Gradle



To install the API client library to your local Maven repository, execute:



```shell

mvn clean install

```



To build the JAR, execute:



```shell

mvn clean package

```



## Getting Started



Once you have added the library, you can use the following example **Java** code for authentication. 



```java

import com.google.gson.JsonObject;

import org.apache.fineract.client.models.PostAuthenticationResponse;

import org.apache.fineract.client.services.AuthenticationHttpBasicApi;

import retrofit2.Call;

import retrofit2.Callback;

import retrofit2.Response;



public class Example {



    public static void main(String[] args) {



        // Using API Key Authorization "tenantid"

        ApiClient defaultClient = new ApiClient("tenantid");

        defaultClient.setApiKey("default");



        AuthenticationHttpBasicApi apiService = defaultClient.createService(AuthenticationHttpBasicApi.class);



        // Response body

        JsonObject jsonObject = new JsonObject();

        jsonObject.addProperty("username", "mifos");

        jsonObject.addProperty("password", "password");



        Call<PostAuthenticationResponse> call = apiService.authenticate(jsonObject.toString());

        call.enqueue(new Callback<PostAuthenticationResponse>() {

            @Override

            public void onResponse(Call<PostAuthenticationResponse> call

                    , Response<PostAuthenticationResponse> response) {

                System.out.println(call.toString() + "\n" + response.toString());

            }



            @Override

            public void onFailure(Call<PostAuthenticationResponse> call, Throwable t) {

                System.out.println(t.getMessage());

            }

        });

    }

}



```



For complete documentation, refer `docs/AuthenticationHttpBasicApi.md`



## Recommendation



It's recommended to create an instance of `ApiClient` per thread in a multithreaded environment to avoid any potential issues.



## Author



{{#apiInfo}}{{#apis}}{{^hasMore}}{{infoEmail}}

{{/hasMore}}{{/apis}}{{/apiInfo}}