Command Palette

Search for a command to run...

POST
/fineract-provider/api/v1/authentication

Authenticate (HTTP Basic)

Verifies user credentials and returns authentication details. Use HTTP Basic authentication header.

Returns

200Authentication successful
401Invalid credentials

Request

curl
curl --request POST \
  --url "https://your-fineract-instance.com/fineract-provider/api/v1/authentication" \
  --header "Authorization: Basic {credentials}" \
  --header "Fineract-Platform-TenantId: default" \
  --header "Content-Type: application/json"

Response

json
{
  "officeId": 1,
  "resourceId": 1,
  "changes": {}
}
POST
/fineract-provider/api/oauth/token

OAuth2 token request

Requests an OAuth2 access token using client credentials or password grant.

Request Bodyrequired

OAuth2 token request

grant_typestring

password or refresh_token

client_idstring
client_secretstring
usernamestring
passwordstring
refresh_tokenstring

Returns

200Token issued

Request

curl
curl --request POST \
  --url "https://your-fineract-instance.com/fineract-provider/api/oauth/token" \
  --header "Authorization: Basic {credentials}" \
  --header "Fineract-Platform-TenantId: default" \
  --header "Content-Type: application/json" \
  --data '{
  "grant_type": "sample_grant_type",
  "client_id": "sample_client_id",
  "client_secret": "sample_client_secret",
  "username": "sample_username",
  "password": "sample_password",
  "refresh_token": "sample_refresh_token"
}'

Response

json
{
  "officeId": 1,
  "resourceId": 1,
  "changes": {}
}
GET
/fineract-provider/api/v1/userdetails

Get authenticated user details

Returns details of the currently authenticated user.

Returns

200User details

Request

curl
curl --request GET \
  --url "https://your-fineract-instance.com/fineract-provider/api/v1/userdetails" \
  --header "Authorization: Basic {credentials}" \
  --header "Fineract-Platform-TenantId: default" \
  --header "Content-Type: application/json"

Response

json
{
  "totalFilteredRecords": 25,
  "pageItems": [
    {
      "id": 1,
      "displayName": "Sample Item 1",
      "status": "active"
    },
    {
      "id": 2,
      "displayName": "Sample Item 2",
      "status": "active"
    }
  ]
}
GET
/fineract-provider/api/v1/users

List users

Retrieves all system users.

Returns

200List of users

Request

curl
curl --request GET \
  --url "https://your-fineract-instance.com/fineract-provider/api/v1/users" \
  --header "Authorization: Basic {credentials}" \
  --header "Fineract-Platform-TenantId: default" \
  --header "Content-Type: application/json"

Response

json
{
  "totalFilteredRecords": 25,
  "pageItems": [
    {
      "id": 1,
      "displayName": "Sample Item 1",
      "status": "active"
    },
    {
      "id": 2,
      "displayName": "Sample Item 2",
      "status": "active"
    }
  ]
}
GET
/fineract-provider/api/v1/users/{userId}

Retrieve user

Gets details of a specific user.

Path Parameters

userIdintegerrequired

User ID

Returns

200User details

Request

curl
curl --request GET \
  --url "https://your-fineract-instance.com/fineract-provider/api/v1/users/:userId" \
  --header "Authorization: Basic {credentials}" \
  --header "Fineract-Platform-TenantId: default" \
  --header "Content-Type: application/json"

Response

json
{
  "id": 1,
  "status": {
    "id": 300,
    "code": "statusType.active",
    "value": "Active"
  },
  "officeId": 1,
  "officeName": "Head Office",
  "createdDate": "2024-01-15",
  "lastModifiedDate": "2024-01-20"
}
POST
/fineract-provider/api/v1/users

Create user

Creates a new system user with specified roles and office access.

Request Bodyrequired

User details

usernamestring
firstnamestring
lastnamestring
emailstring
officeIdinteger
staffIdinteger
rolesarray
passwordstring
repeatPasswordstring
sendPasswordToEmailboolean
isSelfServiceUserboolean

Returns

200User created

Request

curl
curl --request POST \
  --url "https://your-fineract-instance.com/fineract-provider/api/v1/users" \
  --header "Authorization: Basic {credentials}" \
  --header "Fineract-Platform-TenantId: default" \
  --header "Content-Type: application/json" \
  --data '{
  "username": "sample_username",
  "firstname": "sample_firstname",
  "lastname": "sample_lastname",
  "email": "user@example.com",
  "officeId": 1,
  "staffId": 1,
  "roles": [],
  "password": "sample_password",
  "repeatPassword": "sample_repeatPassword",
  "sendPasswordToEmail": true,
  "isSelfServiceUser": true
}'

Response

json
{
  "officeId": 1,
  "resourceId": 1,
  "changes": {}
}
PUT
/fineract-provider/api/v1/users/{userId}

Update user

Updates user information.

Path Parameters

userIdintegerrequired

User ID

Request Bodyrequired

Updated user details

firstnamestring
lastnamestring
emailstring
officeIdinteger
rolesarray
passwordstring
repeatPasswordstring

Returns

200User updated

Request

curl
curl --request PUT \
  --url "https://your-fineract-instance.com/fineract-provider/api/v1/users/:userId" \
  --header "Authorization: Basic {credentials}" \
  --header "Fineract-Platform-TenantId: default" \
  --header "Content-Type: application/json" \
  --data '{
  "firstname": "sample_firstname",
  "lastname": "sample_lastname",
  "email": "user@example.com",
  "officeId": 1,
  "roles": [],
  "password": "sample_password",
  "repeatPassword": "sample_repeatPassword"
}'

Response

json
{
  "officeId": 1,
  "resourceId": 1,
  "changes": {}
}
DELETE
/fineract-provider/api/v1/users/{userId}

Delete user

Deletes a system user.

Path Parameters

userIdintegerrequired

User ID

Returns

200User deleted

Request

curl
curl --request DELETE \
  --url "https://your-fineract-instance.com/fineract-provider/api/v1/users/:userId" \
  --header "Authorization: Basic {credentials}" \
  --header "Fineract-Platform-TenantId: default" \
  --header "Content-Type: application/json"

Response

json
{
  "resourceId": 1,
  "changes": {}
}
GET
/fineract-provider/api/v1/roles

List roles

Retrieves all defined roles.

Returns

200List of roles

Request

curl
curl --request GET \
  --url "https://your-fineract-instance.com/fineract-provider/api/v1/roles" \
  --header "Authorization: Basic {credentials}" \
  --header "Fineract-Platform-TenantId: default" \
  --header "Content-Type: application/json"

Response

json
{
  "totalFilteredRecords": 25,
  "pageItems": [
    {
      "id": 1,
      "displayName": "Sample Item 1",
      "status": "active"
    },
    {
      "id": 2,
      "displayName": "Sample Item 2",
      "status": "active"
    }
  ]
}
GET
/fineract-provider/api/v1/roles/{roleId}

Retrieve role

Gets details of a specific role including its permissions.

Path Parameters

roleIdintegerrequired

Role ID

Returns

200Role details

Request

curl
curl --request GET \
  --url "https://your-fineract-instance.com/fineract-provider/api/v1/roles/:roleId" \
  --header "Authorization: Basic {credentials}" \
  --header "Fineract-Platform-TenantId: default" \
  --header "Content-Type: application/json"

Response

json
{
  "id": 1,
  "status": {
    "id": 300,
    "code": "statusType.active",
    "value": "Active"
  },
  "officeId": 1,
  "officeName": "Head Office",
  "createdDate": "2024-01-15",
  "lastModifiedDate": "2024-01-20"
}
POST
/fineract-provider/api/v1/roles

Create role

Creates a new role.

Request Bodyrequired

Role details

namestring
descriptionstring

Returns

200Role created

Request

curl
curl --request POST \
  --url "https://your-fineract-instance.com/fineract-provider/api/v1/roles" \
  --header "Authorization: Basic {credentials}" \
  --header "Fineract-Platform-TenantId: default" \
  --header "Content-Type: application/json" \
  --data '{
  "name": "sample_name",
  "description": "sample_description"
}'

Response

json
{
  "officeId": 1,
  "resourceId": 1,
  "changes": {}
}
PUT
/fineract-provider/api/v1/roles/{roleId}/permissions

Update role permissions

Updates the permissions assigned to a role.

Path Parameters

roleIdintegerrequired

Role ID

Request Bodyrequired

Permission updates

permissionsobject

Map of permission codes to boolean values

Returns

200Permissions updated

Request

curl
curl --request PUT \
  --url "https://your-fineract-instance.com/fineract-provider/api/v1/roles/:roleId/permissions" \
  --header "Authorization: Basic {credentials}" \
  --header "Fineract-Platform-TenantId: default" \
  --header "Content-Type: application/json" \
  --data '{
  "permissions": null
}'

Response

json
{
  "officeId": 1,
  "resourceId": 1,
  "changes": {}
}
GET
/fineract-provider/api/v1/permissions

List permissions

Retrieves all available permissions.

Returns

200List of permissions

Request

curl
curl --request GET \
  --url "https://your-fineract-instance.com/fineract-provider/api/v1/permissions" \
  --header "Authorization: Basic {credentials}" \
  --header "Fineract-Platform-TenantId: default" \
  --header "Content-Type: application/json"

Response

json
{
  "totalFilteredRecords": 25,
  "pageItems": [
    {
      "id": 1,
      "displayName": "Sample Item 1",
      "status": "active"
    },
    {
      "id": 2,
      "displayName": "Sample Item 2",
      "status": "active"
    }
  ]
}

Was this page helpful?