--- title: alloydb-create-user type: docs weight: 2 description: "The \"alloydb-create-user\" tool creates a new database user within a specified AlloyDB cluster.\n" --- ## About The `alloydb-create-user` tool creates a new database user (`ALLOYDB_BUILT_IN` or `ALLOYDB_IAM_USER`) within a specified cluster. **Permissions & APIs Required:** Before using, ensure the following on your GCP project: 1. The [AlloyDB API](https://console.cloud.google.com/apis/library/alloydb.googleapis.com) is enabled. 2. The user or service account executing the tool has one of the following IAM roles: - `roles/alloydb.admin` (the AlloyDB Admin predefined IAM role) - `roles/owner` (the Owner basic IAM role) - `roles/editor` (the Editor basic IAM role) The tool takes the following input parameters: | Parameter | Type | Description | Required | | :-------------- | :------------ | :------------------------------------------------------------------------------------------------------------ | :------- | | `project` | string | The GCP project ID where the cluster exists. | Yes | | `cluster` | string | The ID of the existing cluster where the user will be created. | Yes | | `location` | string | The GCP location where the cluster exists (e.g., `us-central1`). | Yes | | `user` | string | The name for the new user. Must be unique within the cluster. | Yes | | `userType` | string | The type of user. Valid values: `ALLOYDB_BUILT_IN` and `ALLOYDB_IAM_USER`. `ALLOYDB_IAM_USER` is recommended. | Yes | | `password` | string | A secure password for the user. Required only if `userType` is `ALLOYDB_BUILT_IN`. | No | | `databaseRoles` | array(string) | Optional. A list of database roles to grant to the new user (e.g., `pg_read_all_data`). | No | ## Compatible Sources {{< compatible-sources >}} ## Example ```yaml kind: tool name: create_user type: alloydb-create-user source: alloydb-admin-source description: Use this tool to create a new database user for an AlloyDB cluster. ``` ## Reference | **field** | **type** | **required** | **description** | | ----------- | :------: | :----------: | ---------------------------------------------------- | | type | string | true | Must be alloydb-create-user. | | source | string | true | The name of an `alloydb-admin` source. | | description | string | false | Description of the tool that is passed to the agent. |