Download OpenAPI specification:Download
This is the spec that defines the API provided by the application to provide auth across the cluster
Create an access token for EFA
Credentials to fetch a token
| username | string Name of the user for whom the token has to be generated |
| password | string Password for the above user |
{- "username": "admin",
- "password": "password"
}{- "access-token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
- "token-type": "Bearer",
- "refresh-token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
}Create an access token for EFA clients
Client Credentials to fetch a token
| username | string Name of the user for whom the token has to be generated |
| password | string Password for the above user |
| clientId | string ID of the registered client |
{- "username": "admin",
- "password": "password"
}{- "access-token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
- "token-type": "Bearer"
}Get access token with refresh token
Refresh token
| refresh-token | string refresh token |
| grant-type | string grant type(refresh_token) |
{- "grant-type": "refresh_token",
- "refresh-token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
}{- "access-token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
- "token-type": "Bearer",
- "refresh-token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
}Create a key for EFA clients
| force required | boolean Force key regenerate |
Credentials to fetch a token
| clientId | string ID of the registered client |
{- "clientId": "sdjfdjskjd"
}{- "apiKey": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
}Update Token Expiry Time For A Specific Token
Type of the EFA token
| type | string Type of the token |
| hours | integer Hours for token expiry |
| minutes | integer Minutes for token expiry |
{- "type": "ACCESS",
- "hours": 0,
- "minutes": 15
}{- "type": "ACCESS",
- "hours": 0,
- "minutes": 15
}Register a new client to access EFA
Details of the client
| name | string Name for the client(tenant name for Openstack clients) |
| clientType | string Type of the client(openstack for Openstack clients) |
{- "name": "tenantname",
- "clientType": "openstack"
}{- "name": "tenantname",
- "clientID": "askjf-djffi-dwokd-askls",
- "clientType": "openstack"
}Fetch LDAP details by name
| name required | string Name given for the ldap connection |
{- "id": 0,
- "name": "string",
- "primary": 0,
- "host": "string",
- "port": "string",
- "tls": true,
- "insecure-tls": true,
- "cacert": "string",
- "timeout": 0,
- "bind-user-name": "string",
- "bind-user-password": "string",
- "user-search-base": "string",
- "user-object-class": "string",
- "user-login-attribute": "string",
- "user-role-attribute": "string",
- "user-role-attribute-key": "string",
- "user-member-attribute": "string",
- "group-search-base": "string",
- "group-object-class": "string",
- "group-attribute": "string",
- "group-member-user-attribute": "string",
- "group-member-mapping-attribute": "string"
}Update LDAP configuration for authentication
| name required | string Name of the registered LDAP Server |
Details of the LDAP Server
| name | string Name for the LDAP connection |
| primary required | integer Set to 1 when multiple LDAP connections are available |
| host | string Specify the hostname or IP address |
| port | string Specify the port at which the OpenLDAP server is listening for connections |
| tls required | boolean Enable to use LDAP over SSL/TLS |
| insecure-tls required | boolean Enable to use LDAP without cert verification |
| cacert | string CA certificate |
| timeout required | integer Duration in number of seconds before considering the server unreachable(defaults to 5 sec) |
| bind-user-name | string Distinguished Name (DN) of the user that should be used to bind, search and retrieve LDAP entries |
| bind-user-password | string Password of the bind user |
| user-search-base | string Enter the Distinguished Name of the node in your directory tree from which to start searching for user objects. |
| user-object-class | string Name of the object class used for user objects(defaults to inetOrgPerson) |
| user-login-attribute | string The attribute whose value matches the username part of credentials entered by your users when logging in(defualts to uid) |
| user-role-attribute | string The attribute to read the role of user from |
| user-role-attribute-key | string The attribute to read the role value from role attribute |
| user-member-attribute | string The attribute to read the member of the group the user is part of |
| group-search-base | string Enter the Distinguished Name of the node in your directory tree from which to start searching for group objects. |
| group-object-class | string Name of the object class used for group objects(defaults to groupOfNames) |
| group-attribute | string Attribute to define search filter on group(defaults to cn) |
| group-member-user-attribute | string The name of the user attribute whose format matches the group members(defualts to entrydn) |
| group-member-mapping-attribute | string The name of the group attribute containing the members of a group(defaults to member) |
{- "name": "string",
- "primary": 0,
- "host": "string",
- "port": "string",
- "tls": true,
- "insecure-tls": true,
- "cacert": "string",
- "timeout": 0,
- "bind-user-name": "string",
- "bind-user-password": "string",
- "user-search-base": "string",
- "user-object-class": "string",
- "user-login-attribute": "string",
- "user-role-attribute": "string",
- "user-role-attribute-key": "string",
- "user-member-attribute": "string",
- "group-search-base": "string",
- "group-object-class": "string",
- "group-attribute": "string",
- "group-member-user-attribute": "string",
- "group-member-mapping-attribute": "string"
}{- "id": 0,
- "name": "string",
- "primary": 0,
- "host": "string",
- "port": "string",
- "tls": true,
- "insecure-tls": true,
- "cacert": "string",
- "timeout": 0,
- "bind-user-name": "string",
- "bind-user-password": "string",
- "user-search-base": "string",
- "user-object-class": "string",
- "user-login-attribute": "string",
- "user-role-attribute": "string",
- "user-role-attribute-key": "string",
- "user-member-attribute": "string",
- "group-search-base": "string",
- "group-object-class": "string",
- "group-attribute": "string",
- "group-member-user-attribute": "string",
- "group-member-mapping-attribute": "string"
}Register a new LDAP Server for authentication
Details of the LDAP Server
| name | string Name for the LDAP connection |
| primary required | integer Set to 1 when multiple LDAP connections are available |
| host | string Specify the hostname or IP address |
| port | string Specify the port at which the OpenLDAP server is listening for connections |
| tls required | boolean Enable to use LDAP over SSL/TLS |
| insecure-tls required | boolean Enable to use LDAP without cert verification |
| cacert | string CA certificate |
| timeout required | integer Duration in number of seconds before considering the server unreachable(defaults to 5 sec) |
| bind-user-name | string Distinguished Name (DN) of the user that should be used to bind, search and retrieve LDAP entries |
| bind-user-password | string Password of the bind user |
| user-search-base | string Enter the Distinguished Name of the node in your directory tree from which to start searching for user objects. |
| user-object-class | string Name of the object class used for user objects(defaults to inetOrgPerson) |
| user-login-attribute | string The attribute whose value matches the username part of credentials entered by your users when logging in(defualts to uid) |
| user-role-attribute | string The attribute to read the role of user from |
| user-role-attribute-key | string The attribute to read the role value from role attribute |
| user-member-attribute | string The attribute to read the member of the group the user is part of |
| group-search-base | string Enter the Distinguished Name of the node in your directory tree from which to start searching for group objects. |
| group-object-class | string Name of the object class used for group objects(defaults to groupOfNames) |
| group-attribute | string Attribute to define search filter on group(defaults to cn) |
| group-member-user-attribute | string The name of the user attribute whose format matches the group members(defualts to entrydn) |
| group-member-mapping-attribute | string The name of the group attribute containing the members of a group(defaults to member) |
{- "name": "string",
- "primary": 0,
- "host": "string",
- "port": "string",
- "tls": true,
- "insecure-tls": true,
- "cacert": "string",
- "timeout": 0,
- "bind-user-name": "string",
- "bind-user-password": "string",
- "user-search-base": "string",
- "user-object-class": "string",
- "user-login-attribute": "string",
- "user-role-attribute": "string",
- "user-role-attribute-key": "string",
- "user-member-attribute": "string",
- "group-search-base": "string",
- "group-object-class": "string",
- "group-attribute": "string",
- "group-member-user-attribute": "string",
- "group-member-mapping-attribute": "string"
}{- "id": 0,
- "name": "string",
- "primary": 0,
- "host": "string",
- "port": "string",
- "tls": true,
- "insecure-tls": true,
- "cacert": "string",
- "timeout": 0,
- "bind-user-name": "string",
- "bind-user-password": "string",
- "user-search-base": "string",
- "user-object-class": "string",
- "user-login-attribute": "string",
- "user-role-attribute": "string",
- "user-role-attribute-key": "string",
- "user-member-attribute": "string",
- "group-search-base": "string",
- "group-object-class": "string",
- "group-attribute": "string",
- "group-member-user-attribute": "string",
- "group-member-mapping-attribute": "string"
}[- {
- "id": 0,
- "name": "string",
- "primary": 0,
- "host": "string",
- "port": "string",
- "tls": true,
- "insecure-tls": true,
- "cacert": "string",
- "timeout": 0,
- "bind-user-name": "string",
- "bind-user-password": "string",
- "user-search-base": "string",
- "user-object-class": "string",
- "user-login-attribute": "string",
- "user-role-attribute": "string",
- "user-role-attribute-key": "string",
- "user-member-attribute": "string",
- "group-search-base": "string",
- "group-object-class": "string",
- "group-attribute": "string",
- "group-member-user-attribute": "string",
- "group-member-mapping-attribute": "string"
}
]Get the detailed output of the given execution ID
| id required | string Execution ID |
{- "start_time": "2000-01-23T04:56:07.000Z",
- "end_time": "2000-01-23T04:56:07.000Z",
- "id": "id",
- "parameters": "client add",
- "logs": "logs",
- "command": "client add",
- "status": "Failed, Succeeded"
}This API will delete the execution entries older than specific number of days
| days_older_by required | integer Default: 30 Deletes execution entries older than specified number of days |
{- "code": 0,
- "message": "message"
}Get the list of all the previous executions
| limit required | integer Default: 10 Limit the number of executions that will be sent in the response. Default is 10 |
| status | string Default: "all" Filter the executions based on the status(failed/succeeded/all) |
{- "items": [
- {
- "start_time": "2000-01-23T04:56:07.000Z",
- "end_time": "2000-01-23T04:56:07.000Z",
- "id": "id",
- "command": "client add",
- "status": "client add"
}, - {
- "start_time": "2000-01-23T04:56:07.000Z",
- "end_time": "2000-01-23T04:56:07.000Z",
- "id": "id",
- "command": "client add",
- "status": "client add"
}
]
}Add new role mapping
Details of the mapping to be created
| name | string Name for the user or group for whom role is to assigned |
| role | string Name of the role to be assigned |
| type | string Type of the assignment (user or group) |
{- "name": "tenantname",
- "role": "TenantAdmin",
- "type": "user"
}{- "id": 1,
- "name": "tenantname",
- "role": "TenantAdmin",
- "type": "user"
}