Access Control
Access Control APIs
API specs to map actions to roles.
Get the list of actions based on the input parameters.
The list of role codes.
The list of feature id's.
unique API ID
API version
response timestamp YYYY-MM-DDThh:mm:ss+/-nn:nn (timezone defaulted to +5.30)
api action like GET/POST/PUT/DELETE in case of http calls
device UUID from which API is called
API key (dynamic)
unique request message id, UUID, for handling API idempotency
UserId of the user calling
//session/jwt/saml token/oauth token
POST /v1/actions/_search HTTP/1.1
Host: access
Content-Type: */*
Accept: */*
Content-Length: 138
{
"apiId": "text",
"ver": "text",
"ts": "text",
"action": "text",
"did": "text",
"key": "text",
"msgId": "text",
"requesterId": "text",
"authToken": "text"
}
{
"responseInfo": {
"apiId": "text",
"ver": "text",
"ts": 1,
"resMsgId": "text",
"msgId": "text",
"status": "SUCCESSFUL"
},
"actions": [
{
"id": 1,
"name": "text",
"queryParams": "text",
"url": "text",
"parentModule": 1,
"orderNumber": 1,
"displayName": "text",
"enabled": true,
"createdBy": 1,
"createdDate": "2025-06-27",
"lastModifiedBy": 1,
"lastModifiedDate": "2025-06-27",
"tenantId": "text",
"serviceCode": 1
}
]
}
To create new action(s) in the system. An action entry is required for each and every path to authenticate the access based on the assigned role of an user.
action master
if enabled or not
unique id for feature
left icon
url for navigating
right icon
codes specifying role
Unique Identifier of the tenant, Like AP, AP.Kurnool etc.
POST /v1/actions/_create HTTP/1.1
Host: access
Content-Type: */*
Accept: */*
Content-Length: 1019
{
"requestInfo": {
"apiId": "text",
"ver": "text",
"ts": 1,
"action": "text",
"did": "text",
"key": "text",
"msgId": "text",
"requesterId": "text",
"authToken": "text",
"userInfo": {
"tenantId": "text",
"id": 1,
"userName": "text",
"mobile": "text",
"email": "text",
"primaryrole": [
{
"name": "text",
"description": "text",
"id": 1,
"code": "text",
"createdBy": 1,
"createdDate": "2025-06-27",
"lastModifiedBy": 1,
"lastModifiedDate": "2025-06-27"
}
],
"additionalroles": [
{
"tenantId": "text",
"roles": [
{
"name": "text",
"description": "text",
"id": 1,
"code": "text",
"createdBy": 1,
"createdDate": "2025-06-27",
"lastModifiedBy": 1,
"lastModifiedDate": "2025-06-27"
}
]
}
]
}
},
"actions": [
{
"id": 1,
"name": "text",
"queryParams": "text",
"url": "text",
"parentModule": 1,
"orderNumber": 1,
"displayName": "text",
"enabled": true,
"createdBy": 1,
"createdDate": "2025-06-27",
"lastModifiedBy": 1,
"lastModifiedDate": "2025-06-27",
"tenantId": "text",
"serviceCode": 1
}
],
"actionMaster": "text",
"enabled": true,
"featureIds": [
1
],
"leftIcon": "text",
"navigationURL": "text",
"rightIcon": "text",
"roleCodes": [
"text"
],
"tenantId": "text"
}
{
"responseInfo": {
"apiId": "text",
"ver": "text",
"ts": 1,
"resMsgId": "text",
"msgId": "text",
"status": "SUCCESSFUL"
},
"actions": [
{
"id": 1,
"name": "text",
"queryParams": "text",
"url": "text",
"parentModule": 1,
"orderNumber": 1,
"displayName": "text",
"enabled": true,
"createdBy": 1,
"createdDate": "2025-06-27",
"lastModifiedBy": 1,
"lastModifiedDate": "2025-06-27",
"tenantId": "text",
"serviceCode": 1
}
]
}
To update the existing action(s) in the system.
action master
if enabled or not
unique id for feature
left icon
url for navigating
right icon
codes specifying role
Unique Identifier of the tenant, Like AP, AP.Kurnool etc.
PUT /v1/actions/_update HTTP/1.1
Host: access
Content-Type: */*
Accept: */*
Content-Length: 1019
{
"requestInfo": {
"apiId": "text",
"ver": "text",
"ts": 1,
"action": "text",
"did": "text",
"key": "text",
"msgId": "text",
"requesterId": "text",
"authToken": "text",
"userInfo": {
"tenantId": "text",
"id": 1,
"userName": "text",
"mobile": "text",
"email": "text",
"primaryrole": [
{
"name": "text",
"description": "text",
"id": 1,
"code": "text",
"createdBy": 1,
"createdDate": "2025-06-27",
"lastModifiedBy": 1,
"lastModifiedDate": "2025-06-27"
}
],
"additionalroles": [
{
"tenantId": "text",
"roles": [
{
"name": "text",
"description": "text",
"id": 1,
"code": "text",
"createdBy": 1,
"createdDate": "2025-06-27",
"lastModifiedBy": 1,
"lastModifiedDate": "2025-06-27"
}
]
}
]
}
},
"actions": [
{
"id": 1,
"name": "text",
"queryParams": "text",
"url": "text",
"parentModule": 1,
"orderNumber": 1,
"displayName": "text",
"enabled": true,
"createdBy": 1,
"createdDate": "2025-06-27",
"lastModifiedBy": 1,
"lastModifiedDate": "2025-06-27",
"tenantId": "text",
"serviceCode": 1
}
],
"actionMaster": "text",
"enabled": true,
"featureIds": [
1
],
"leftIcon": "text",
"navigationURL": "text",
"rightIcon": "text",
"roleCodes": [
"text"
],
"tenantId": "text"
}
{
"responseInfo": {
"apiId": "text",
"ver": "text",
"ts": 1,
"resMsgId": "text",
"msgId": "text",
"status": "SUCCESSFUL"
},
"actions": [
{
"id": 1,
"name": "text",
"queryParams": "text",
"url": "text",
"parentModule": 1,
"orderNumber": 1,
"displayName": "text",
"enabled": true,
"createdBy": 1,
"createdDate": "2025-06-27",
"lastModifiedBy": 1,
"lastModifiedDate": "2025-06-27",
"tenantId": "text",
"serviceCode": 1
}
]
}
Validate a particular action for a given tenant and roles of the tenant.
POST /v1/actions/_validate HTTP/1.1
Host: access
Content-Type: */*
Accept: */*
Content-Length: 833
{
"requestInfo": {
"apiId": "text",
"ver": "text",
"ts": 1,
"action": "text",
"did": "text",
"key": "text",
"msgId": "text",
"requesterId": "text",
"authToken": "text",
"userInfo": {
"tenantId": "text",
"id": 1,
"userName": "text",
"mobile": "text",
"email": "text",
"primaryrole": [
{
"name": "text",
"description": "text",
"id": 1,
"code": "text",
"createdBy": 1,
"createdDate": "2025-06-27",
"lastModifiedBy": 1,
"lastModifiedDate": "2025-06-27"
}
],
"additionalroles": [
{
"tenantId": "text",
"roles": [
{
"name": "text",
"description": "text",
"id": 1,
"code": "text",
"createdBy": 1,
"createdDate": "2025-06-27",
"lastModifiedBy": 1,
"lastModifiedDate": "2025-06-27"
}
]
}
]
}
},
"validateAction": {
"tenantRole": {
"tenantId": "text",
"roles": [
{
"name": "text",
"description": "text",
"id": 1,
"code": "text",
"createdBy": 1,
"createdDate": "2025-06-27",
"lastModifiedBy": 1,
"lastModifiedDate": "2025-06-27"
}
]
},
"actionUrl": "text"
}
}
{
"responseInfo": {
"apiId": "text",
"ver": "text",
"ts": "text",
"resMsgId": "text",
"msgId": "text",
"status": "text"
},
"actionValidation": {
"allowed": true
}
}
Create mapping for feature and role.
List of Role Id to be provided for mapping it to feature.
Unique Identifier of the tenant, Like AP, AP.Kurnool etc.
POST /v1/feature-role/_create HTTP/1.1
Host: access
Content-Type: */*
Accept: */*
Content-Length: 285
{
"RequestInfo": {
"apiId": "text",
"ver": "text",
"ts": "text",
"action": "text",
"did": "text",
"key": "text",
"msgId": "text",
"requesterId": "text",
"authToken": "text"
},
"roleId": "text",
"feature": {
"id": 1,
"code": 1,
"name": "text",
"description": "text",
"serviceCode": 1,
"tenantId": "text"
},
"tenantId": "text"
}
{
"RequestInfo": {
"apiId": "text",
"ver": "text",
"ts": "text",
"resMsgId": "text",
"msgId": "text",
"status": "text"
},
"role": {
"id": 1,
"name": "text"
},
"feature": {
"id": 1,
"code": 1,
"name": "text",
"description": "text",
"serviceCode": 1,
"tenantId": "text"
}
}
Get the list of roles based on role codes in the input parameters.
The list of comma separated codes to filter Roles against. No providing any would end up in all Roles as there is nothing to filter against
POST /v1/roles/_search HTTP/1.1
Host: access
Content-Type: */*
Accept: */*
Content-Length: 602
{
"RequestInfo": {
"apiId": "text",
"ver": "text",
"ts": 1,
"action": "text",
"did": "text",
"key": "text",
"msgId": "text",
"requesterId": "text",
"authToken": "text",
"userInfo": {
"tenantId": "text",
"id": 1,
"userName": "text",
"mobile": "text",
"email": "text",
"primaryrole": [
{
"name": "text",
"description": "text",
"id": 1,
"code": "text",
"createdBy": 1,
"createdDate": "2025-06-27",
"lastModifiedBy": 1,
"lastModifiedDate": "2025-06-27"
}
],
"additionalroles": [
{
"tenantId": "text",
"roles": [
{
"name": "text",
"description": "text",
"id": 1,
"code": "text",
"createdBy": 1,
"createdDate": "2025-06-27",
"lastModifiedBy": 1,
"lastModifiedDate": "2025-06-27"
}
]
}
]
}
}
}
{
"responseInfo": {
"apiId": "text",
"ver": "text",
"ts": 1,
"resMsgId": "text",
"msgId": "text",
"status": "SUCCESSFUL"
},
"roles": [
{
"name": "text",
"description": "text",
"id": 1,
"code": "text",
"createdBy": 1,
"createdDate": "2025-06-27",
"lastModifiedBy": 1,
"lastModifiedDate": "2025-06-27"
}
]
}
To create new Role(s) in the system.
POST /v1/roles/_create HTTP/1.1
Host: access
Content-Type: */*
Accept: */*
Content-Length: 762
{
"requestInfo": {
"apiId": "text",
"ver": "text",
"ts": 1,
"action": "text",
"did": "text",
"key": "text",
"msgId": "text",
"requesterId": "text",
"authToken": "text",
"userInfo": {
"tenantId": "text",
"id": 1,
"userName": "text",
"mobile": "text",
"email": "text",
"primaryrole": [
{
"name": "text",
"description": "text",
"id": 1,
"code": "text",
"createdBy": 1,
"createdDate": "2025-06-27",
"lastModifiedBy": 1,
"lastModifiedDate": "2025-06-27"
}
],
"additionalroles": [
{
"tenantId": "text",
"roles": [
{
"name": "text",
"description": "text",
"id": 1,
"code": "text",
"createdBy": 1,
"createdDate": "2025-06-27",
"lastModifiedBy": 1,
"lastModifiedDate": "2025-06-27"
}
]
}
]
}
},
"roles": [
{
"name": "text",
"description": "text",
"id": 1,
"code": "text",
"createdBy": 1,
"createdDate": "2025-06-27",
"lastModifiedBy": 1,
"lastModifiedDate": "2025-06-27"
}
]
}
{
"responseInfo": {
"apiId": "text",
"ver": "text",
"ts": 1,
"resMsgId": "text",
"msgId": "text",
"status": "SUCCESSFUL"
},
"roles": [
{
"name": "text",
"description": "text",
"id": 1,
"code": "text",
"createdBy": 1,
"createdDate": "2025-06-27",
"lastModifiedBy": 1,
"lastModifiedDate": "2025-06-27"
}
]
}
To update the existing role(s) in the system.
PUT /v1/roles/_update HTTP/1.1
Host: access
Content-Type: */*
Accept: */*
Content-Length: 762
{
"requestInfo": {
"apiId": "text",
"ver": "text",
"ts": 1,
"action": "text",
"did": "text",
"key": "text",
"msgId": "text",
"requesterId": "text",
"authToken": "text",
"userInfo": {
"tenantId": "text",
"id": 1,
"userName": "text",
"mobile": "text",
"email": "text",
"primaryrole": [
{
"name": "text",
"description": "text",
"id": 1,
"code": "text",
"createdBy": 1,
"createdDate": "2025-06-27",
"lastModifiedBy": 1,
"lastModifiedDate": "2025-06-27"
}
],
"additionalroles": [
{
"tenantId": "text",
"roles": [
{
"name": "text",
"description": "text",
"id": 1,
"code": "text",
"createdBy": 1,
"createdDate": "2025-06-27",
"lastModifiedBy": 1,
"lastModifiedDate": "2025-06-27"
}
]
}
]
}
},
"roles": [
{
"name": "text",
"description": "text",
"id": 1,
"code": "text",
"createdBy": 1,
"createdDate": "2025-06-27",
"lastModifiedBy": 1,
"lastModifiedDate": "2025-06-27"
}
]
}
{
"responseInfo": {
"apiId": "text",
"ver": "text",
"ts": 1,
"resMsgId": "text",
"msgId": "text",
"status": "SUCCESSFUL"
},
"roles": [
{
"name": "text",
"description": "text",
"id": 1,
"code": "text",
"createdBy": 1,
"createdDate": "2025-06-27",
"lastModifiedBy": 1,
"lastModifiedDate": "2025-06-27"
}
]
}
Create mapping for role and action(s).
Unique Identifier of the tenant, Like AP, AP.Kurnool etc.
POST /v1/role-actions/_create HTTP/1.1
Host: access
Content-Type: */*
Accept: */*
Content-Length: 1041
{
"requestInfo": {
"apiId": "text",
"ver": "text",
"ts": 1,
"action": "text",
"did": "text",
"key": "text",
"msgId": "text",
"requesterId": "text",
"authToken": "text",
"userInfo": {
"tenantId": "text",
"id": 1,
"userName": "text",
"mobile": "text",
"email": "text",
"primaryrole": [
{
"name": "text",
"description": "text",
"id": 1,
"code": "text",
"createdBy": 1,
"createdDate": "2025-06-27",
"lastModifiedBy": 1,
"lastModifiedDate": "2025-06-27"
}
],
"additionalroles": [
{
"tenantId": "text",
"roles": [
{
"name": "text",
"description": "text",
"id": 1,
"code": "text",
"createdBy": 1,
"createdDate": "2025-06-27",
"lastModifiedBy": 1,
"lastModifiedDate": "2025-06-27"
}
]
}
]
}
},
"role": {
"name": "text",
"description": "text",
"id": 1,
"code": "text",
"createdBy": 1,
"createdDate": "2025-06-27",
"lastModifiedBy": 1,
"lastModifiedDate": "2025-06-27"
},
"actions": [
{
"id": 1,
"name": "text",
"queryParams": "text",
"url": "text",
"parentModule": 1,
"orderNumber": 1,
"displayName": "text",
"enabled": true,
"createdBy": 1,
"createdDate": "2025-06-27",
"lastModifiedBy": 1,
"lastModifiedDate": "2025-06-27",
"tenantId": "text",
"serviceCode": 1
}
],
"tenantId": "text"
}
{
"responseInfo": {
"apiId": "text",
"ver": "text",
"ts": 1,
"resMsgId": "text",
"msgId": "text",
"status": "SUCCESSFUL"
},
"roleActions": [
{
"roleCode": "text",
"actionId": 1,
"tenantId": "text"
}
]
}
Last updated
Was this helpful?