Storm docs logo
Search the docs.../
Explore Storm Products

Update User

Updates an existing user's information.

Request

PropertyValue
MethodPATCH
URL/api/users/{userId}
Content-Typeapplication/json
AuthenticationBearer Token
Request
Code iconbash
curl -X PATCH "{BASE_URL}/api/users/{userId}" \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"key": "value"}'

Path Parameters

ParameterTypeRequiredDescription
userIdintegerYesUnique identifier of the user
Request with parameters
Code iconbash
curl -X PATCH "{BASE_URL}/api/users/{userId}" \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json"

Request Body

ParameterTypeRequiredDescription
data.attributes.usernamestringNoUser's username
data.attributes.passwordstringNoUser's password
data.attributes.accessRightsarrayNoList of access rights
data.attributes.accessRights[].name"server" | "viewer" | "application" | "stream"Yes*Access right category
data.attributes.accessRights[].value"none" | "read_only" | "read_write"Yes*Access right level

*Required when accessRights array is provided.

Example Request

Request Body
Code iconjson
{
  "data": {
    "attributes": {
      "username": "username",
      "password": "password",
      "accessRights": [
        { "name": "server", "value": "read_write" },
        { "name": "viewer", "value": "read_write" },
        { "name": "application", "value": "read_write" },
        { "name": "stream", "value": "read_write" }
      ]
    }
  }
}

Response Body

ParameterTypeDescription
data.idintegerUnique identifier of the updated user
data.attributes.username.valuestringThe username of the updated user
data.attributes.username.editablebooleanIndicates if the username can be modified
data.attributes.username.lockedBystringIdentifier of the entity that locked this field (if locked)
data.attributes.password.valuestringMasked password value (always returns "******")
data.attributes.password.editablebooleanIndicates if the password can be modified
data.attributes.password.maskedbooleanIndicates if the password value is masked
data.attributes.password.lockedBystringIdentifier of the entity that locked this field (if locked)
data.attributes.algorithm.valuestringPassword hashing algorithm
data.attributes.algorithm.editablebooleanIndicates if the algorithm can be modified
data.attributes.algorithm.lockedBystringIdentifier of the entity that locked this field (if locked)
data.attributes.accessRightsarrayList of access rights assigned to the user
data.attributes.accessRights[].name"Server" | "Stream" | "Application"Access right category name
data.attributes.accessRights[].value"NONE" | "READ_ONLY" | "READ_WRITE"Access right level
meta.executionTimeintegerRequest processing time in milliseconds
meta.generatedAtintegerResponse generation timestamp (Unix timestamp in ms)
messagestringMain response status message
Successful Response (200)
Code iconjson
{
  "data": {
    "id": 1,
    "attributes": {
      "username": {
        "editable": true,
        "value": "username"
      },
      "password": {
        "editable": true,
        "masked": true,
        "value": "******"
      },
      "algorithm": {
        "editable": false,
        "value": "PLAIN"
      },
      "accessRights": [
        { "name": "Server", "value": "NONE" },
        { "name": "Stream", "value": "NONE" },
        { "name": "Application", "value": "NONE" }
      ]
    }
  },
  "meta": {
    "executionTime": 21,
    "generatedAt": 1764232021849
  },
  "message": "User has been updated"
}

Error Responses

ParameterTypeDescription
messagestringHuman-readable error message
errors.attributes.usernamestring[]Array of validation errors for username field
Username Already Exists (409)
Code iconjson
{
  "message": "User with given username already exists",
  "errors": {
    "attributes": {
      "username": [
        "User with this username already exists"
      ]
    }
  }
}
User Not Found (404)
Code iconjson
{
  "message": "User not found"
}

Notes

  • The username must be unique across the system.
  • Only provided fields will be updated; omitted fields remain unchanged.
Support Needed?

Create a free ticket and our support team will provide you necessary assistance.

Blog
Support
About us
Patents
Term of use
Privacy policy
Contact
©2026 Storm Streaming Media. All Rights Reserved.