Update exist Role, ACCESS LEVEL: SUPER_ADMIN, PARTNER, MERCHANT, BRANCH
| Time | Status | User Agent | |
|---|---|---|---|
Retrieving recent requests… | |||
This endpoint allows you to update role details.
Endpoint
PUT https://demo-api.edfapay.com/api/v1/roles/role/{roleId}
Content-Type: application/json
Authentication
All requests to this endpoint must include a valid X-API-KEY in the request header for authentication. The X-API-KEY must be sent from the server side and should not be exposed on the client side.
Query Parameters
| Field | Type | Required | Description |
|---|---|---|---|
| roleId | string | Yes | Unique Role ID from EdfaPay (UUID). |
How to get the
roleIdCreate Role API: After creating a role, the
idis returned in the success response. 👉 Create Role ResponsesSearch Roles API: After applying your search criteria, the
idis returned in the success response along with the details for each role. 👉 Search Roles ResponsesEdfapay Dashboard: Go to the Roles page, click the Columns icon, and enable the id field from Hidden Attributes.
Request Parameters
| Field | Type | Required | Description |
|---|---|---|---|
| roleName | string | Yes | Name of the role |
| description | string | Yes | Description of the role |
| permissions | array[string] | Yes | List of permissions assigned to the role |
Permissions Format
Each permission is a string composed of: "<module>_<action>"
Example To allow reading users: "user_read"
Available Permissions
Refer to the official documentation for the full list of permissions: 👉 Permissions
Example Request
curl --location --request PUT 'https://demo-api.edfapay.com/api/v1/roles/role/{roleId}' \
--header 'Content-Type: application/json' \
--header 'X-API-KEY: YOUR_API_KEY' \
--data-raw '{
"roleName": "Users Viewer",
"description": "Views the users list",
"permissions": [
"user_read"
]
}'Example Responses
{
"code": 200,
"message": "Success",
"errorCode": null,
"data": {
"createdBy": null,
"createdTimestamp": "2026-04-20T12:47:30.252128609Z",
"updatedBy": null,
"updatedTimestamp": "2026-04-20T12:47:30.252016969Z",
"id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"name": "Users Viewer",
"description": "Views the users list",
"businessUnitId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"permissions": [
"USER_READ"
]
}
}{
"code": 404,
"message": "Entity Role not found for fields [roleName, businessUnitId] and values [Users Viewer, xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx]",
"errorCode": "404",
"data": null
}Important Notes
permissionsmust exactly match the supported values. Any incorrectly formatted permission will be ignored and not assigned to the role.
roleNamemust be unique and must not have been used previously.