Nexfs Management API Documentation
Method Index
CreateUser
Create a New User using the Nexfs Management API
Action: CreateUser
Creates a new User
Permissions
To create a new role a requesting session must have the iam/UpdateUsers role enabled.
Request Parameters
A request must be made against the nexfs management console api with the CreateUser action.
The request must be signed with a valid AWS V4 style Signature using an active temporary session security token.
Action
CreateUser
AssumeRolePolicyDocument
A URI encoded json string containing a list of Nexfs Management Roles to attached to the user
AssumeRolePolicyDocument json Format
{
"Roles": [
"string"
,...
]
}
AssumeRolePolicyDocument json elements
Roles
A json array enclosure
string
Zero or more role names to be attached the the new user
Description
A URI encoded json string containing optional the description elements for the new user
Description json Format
{
"UserDescription1": "string",
"UserDescription2": "string",
}
Description json elements
UserDescription1
The json label for an optional user description
UserDescription2
The json label for an additional optional user description
string
Optional user description
Optional email address for the user
NewContentSecret
The Users Secret for access Nexfs over the S3 protocol
NewSecretHash
The Users MD5 Hex encoded Management Console/API Secret
UserId
The Users Id (The account id/name used for that user to authenticate against the API)
UserName
A short description of the user, often the users or automated systems name
UserPOSIXUID
When set, the users configured posix user id (uid)
UserPOSIXGID
When set, the users configured prmiary posix group id (gid)
Request Body
The request does not have a request body.
Response Syntax
HTTP1/1 200
<?xml version="1.0" encoding="UTF-8"?>
<RequestCompleted>
<Code>String</Code>
<CreateUserResponse>
<CreateUserResult>
<User>
<UserName>String</UserName>
<UserId>String</UserId>
</User>
</CreateUserResult>
<ResponseMetadata>
<RequestId>integer</RequestId>
</ResponseMetadata>
</CreateUserResponse>
<Resource>String</Resource>
</RequestCompleted>
Response Elements
If the action is successful, the service sends back an HTTP 200 response.
The following data is returned in XML format by the service:
RequestCompleted
Root Level tag for the successful Revoke Session response
Code
OK
CreateUserResponse
A section label with contains the create user response details
CreateUserResult
A section label which contains confirms the user that has been created
User
A section label which contains a summary of the user that has been created
UserId
The Users Id (The account id/name used for that user to authenticate against the API)
UserName
A short description of the user, often the users or automated systems name
Resource
/nexfsconsoleapi
RequestId
A requestid number that identifies the request made against the management api
Errors
Also See Rest Error Responses
400 BadRequest The request was Malformed
A BadRequest will be returned if AssumeRolePolicyDocument, RoleName or Version is missing from the request
A BadRequest will also be returned if AssumeRolePolicyDocument is incorrectly formatted
401 Unauthorized The request cannot be authenticated
403 Forbidden Session does not have the rights to perform the requested action
409 EntityAlreadyExists The request was rejected because it attempted to create a resource that already exists
500 InternalServerError An Internal Error was encountered
507 ToManyRoles Request exceed max roles allow for a user
Example Request
The following example create a user with the attributes
Action: CreateUser
AssumeRolePolicyDocument: {
"Roles": [
"Example Role Update"
]}
Description: {
"UserDescription1": "The is a example user",
"UserDescription2": ""
}
Email: exampleuser@nexfs.net
NewContentSecret: SecretKey
NewSecretHash: cb56817123f26f61cad4d373b882e155
UserId: ExampleUser
UserName: Example User
GET http://nexfs.example.com:9200/nexfsconsoleapi?Action=CreateUser&AssumeRolePolicyDocument={%20%22Roles%22:%20[%20%22Example%20Role%20Update%22]}&Description={%20%22UserDescription1%22:%20%22The%20is%20a%20example%20user%22,%22UserDescription2%22:%20%22%22%20}&Email=exampleuser@nexfs.net&NewContentSecret=SecretKey&NewSecretHash=cb56817123f26f61cad4d373b882e155&UserId=ExampleUser&UserName=Example%20User
Authorization: AWS4-HMAC-SHA256 Credential=65dfa6ebede0462da9439f3dde7976f6/20220831/nexfs/nexfsconsoleapi/aws4_request, SignedHeaders=host;x-amz-content-sha256;x-amz-date, Signature=b278c0f055af3f2d633ef21b3289adaa963abca0e4c67767c53ca5204628edb1content-type: application/x-www-form-urlencoded; charset=utf-8
host: nexfs.example.com
x-amz-date: 20220831T132709Z
Example Response
<?xml version="1.0" encoding="UTF-8"?>
<RequestCompleted>
<Code>Ok</Code>
<CreateUserResponse>
<CreateUserResult>
<User>
<UserName>Example User</UserName>
<UserId>ExampleUser</UserId>
</User>
</CreateUserResult>
<ResponseMetadata>
<RequestId>49</RequestId>
</ResponseMetadata>
</CreateUserResponse>
<Resource>/nexfsconsoleapi</Resource>
</RequestCompleted>