pydo.databases.update_user()
Generated on 1 Oct 2026
from pydo version
v0.43.0
Usage
client.databases.update_user(
database_cluster_uuid="9cc10173-e9ea-4176-9dbc-a4cee4c4ff30",
username="app-01",
body={
"settings": {...},
},
)Description
To update an existing database user, send a PUT request to /v2/databases/{database_cluster_uuid}/users/{username}
with the desired settings.
Note: only settings can be updated via this type of request. If you wish to change the name of a user,
you must recreate a new user.
For PostgreSQL clusters, you can update settings.pg_allow_replication to enable or
disable replication privileges for the user. When omitted, the value defaults to false.
For Kafka and OpenSearch clusters, additional options can be configured in the
settings object (for example, topic or index ACLs).
Updating users is not supported for MongoDB clusters. MongoDB roles and database
access are set with settings.mongo_user_settings when creating a user and cannot
be changed afterward; recreate the user to apply different roles or databases.
The response will be a JSON object with a key called user. The value of this will be an
object that contains the name of the updated database user, along with the settings object that
has been updated.
Parameters
database_cluster_uuidstring requiredA unique identifier for a database cluster.
usernamestring requiredThe name of the database user.
settingsobject requiredUser settings that can be updated via the Update a Database User endpoint.
Supported for PostgreSQL, Kafka, and OpenSearch clusters. MongoDB user roles
and database access (mongo_user_settings) cannot be updated after creation;
recreate the user to change them.Show child properties
pg_allow_replicationboolean optionalExample:
TrueFor PostgreSQL clusters, set to
trueto grant the user replication
privileges. When omitted on create or update, the value defaults tofalseand replication privileges are not granted. This option is not
currently supported for other database engines.opensearch_aclarray of objects optionalACLs (Access Control Lists) specifying permissions on index within a OpenSearch cluster.
Show child properties
indexstring optionalExample:
index-abc.*A regex for matching the indexes that this ACL should apply to.
permissionstring optionalPermission set applied to the ACL. 'read' allows user to read from the index. 'write' allows for user to write to the index. 'readwrite' allows for both 'read' and 'write' permission. 'deny'(default) restricts user from performing any operation over an index. 'admin' allows for 'readwrite' as well as any operations to administer the index.
aclarray of objects optionalACLs (Access Control Lists) specifying permissions on topics within a Kafka cluster.
Show child properties
idstring optionalExample:
aaaAn identifier for the ACL. Will be computed after the ACL is created/updated.
topicstring requiredExample:
topic-abc.*A regex for matching the topic(s) that this ACL should apply to.
permissionstring requiredPermission set applied to the ACL. 'consume' allows for messages to be consumed from the topic. 'produce' allows for messages to be published to the topic. 'produceconsume' allows for both 'consume' and 'produce' permission. 'admin' allows for 'produceconsume' as well as any operations to administer the topic (delete, update).
Request Sample
Response Example
More Information
See /v2/databases/{database_cluster_uuid}/users/{username} in the API reference for additional detail on responses, headers, parameters, and more.