RegisterUser - Amazon QuickSight

RegisterUser

Creates an Amazon QuickSight user whose identity is associated with the AWS Identity and Access Management (IAM) identity or role specified in the request. When you register a new user from the Amazon QuickSight API, Amazon QuickSight generates a registration URL. The user accesses this registration URL to create their account. Amazon QuickSight doesn't send a registration email to users who are registered from the Amazon QuickSight API. If you want new users to receive a registration email, then add those users in the Amazon QuickSight console. For more information on registering a new user in the Amazon QuickSight console, see Inviting users to access Amazon QuickSight.

Request Syntax

POST /accounts/AwsAccountId/namespaces/Namespace/users HTTP/1.1 Content-type: application/json { "CustomFederationProviderUrl": "string", "CustomPermissionsName": "string", "Email": "string", "ExternalLoginFederationProviderType": "string", "ExternalLoginId": "string", "IamArn": "string", "IdentityType": "string", "SessionName": "string", "Tags": [ { "Key": "string", "Value": "string" } ], "UserName": "string", "UserRole": "string" }

URI Request Parameters

The request uses the following URI parameters.

AwsAccountId

The ID for the AWS account that the user is in. Currently, you use the ID for the AWS account that contains your Amazon QuickSight account.

Length Constraints: Fixed length of 12.

Pattern: ^[0-9]{12}$

Required: Yes

Namespace

The namespace. Currently, you should set this to default.

Length Constraints: Maximum length of 64.

Pattern: ^[a-zA-Z0-9._-]*$

Required: Yes

Request Body

The request accepts the following data in JSON format.

Email

The email address of the user that you want to register.

Type: String

Required: Yes

IdentityType

The identity type that your Amazon QuickSight account uses to manage the identity of users.

Type: String

Valid Values: IAM | QUICKSIGHT | IAM_IDENTITY_CENTER

Required: Yes

UserRole

The Amazon QuickSight role for the user. The user role can be one of the following:

  • READER: A user who has read-only access to dashboards.

  • AUTHOR: A user who can create data sources, datasets, analyses, and dashboards.

  • ADMIN: A user who is an author, who can also manage Amazon QuickSight settings.

  • READER_PRO: Reader Pro adds Generative BI capabilities to the Reader role. Reader Pros have access to Amazon Q in Amazon QuickSight, can build stories with Amazon Q, and can generate executive summaries from dashboards.

  • AUTHOR_PRO: Author Pro adds Generative BI capabilities to the Author role. Author Pros can author dashboards with natural language with Amazon Q, build stories with Amazon Q, create Topics for Q&A, and generate executive summaries from dashboards.

  • ADMIN_PRO: Admin Pros are Author Pros who can also manage Amazon QuickSight administrative settings. Admin Pro users are billed at Author Pro pricing.

  • RESTRICTED_READER: This role isn't currently available for use.

  • RESTRICTED_AUTHOR: This role isn't currently available for use.

Type: String

Valid Values: ADMIN | AUTHOR | READER | RESTRICTED_AUTHOR | RESTRICTED_READER | ADMIN_PRO | AUTHOR_PRO | READER_PRO

Required: Yes

CustomFederationProviderUrl

The URL of the custom OpenID Connect (OIDC) provider that provides identity to let a user federate into Amazon QuickSight with an associated AWS Identity and Access Management(IAM) role. This parameter should only be used when ExternalLoginFederationProviderType parameter is set to CUSTOM_OIDC.

Type: String

Required: No

CustomPermissionsName

(Enterprise edition only) The name of the custom permissions profile that you want to assign to this user. Customized permissions allows you to control a user's access by restricting access the following operations:

  • Create and update data sources

  • Create and update datasets

  • Create and update email reports

  • Subscribe to email reports

To add custom permissions to an existing user, use UpdateUser instead.

A set of custom permissions includes any combination of these restrictions. Currently, you need to create the profile names for custom permission sets by using the Amazon QuickSight console. Then, you use the RegisterUser API operation to assign the named set of permissions to a Amazon QuickSight user.

Amazon QuickSight custom permissions are applied through IAM policies. Therefore, they override the permissions typically granted by assigning Amazon QuickSight users to one of the default security cohorts in Amazon QuickSight (admin, author, reader, admin pro, author pro, reader pro).

This feature is available only to Amazon QuickSight Enterprise edition subscriptions.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 64.

Pattern: ^[a-zA-Z0-9+=,.@_-]+$

Required: No

ExternalLoginFederationProviderType

The type of supported external login provider that provides identity to let a user federate into Amazon QuickSight with an associated AWS Identity and Access Management(IAM) role. The type of supported external login provider can be one of the following.

  • COGNITO: Amazon Cognito. The provider URL is cognito-identity.amazonaws.com. When choosing the COGNITO provider type, don’t use the "CustomFederationProviderUrl" parameter which is only needed when the external provider is custom.

  • CUSTOM_OIDC: Custom OpenID Connect (OIDC) provider. When choosing CUSTOM_OIDC type, use the CustomFederationProviderUrl parameter to provide the custom OIDC provider URL.

Type: String

Required: No

ExternalLoginId

The identity ID for a user in the external login provider.

Type: String

Required: No

IamArn

The ARN of the IAM user or role that you are registering with Amazon QuickSight.

Type: String

Required: No

SessionName

You need to use this parameter only when you register one or more users using an assumed IAM role. You don't need to provide the session name for other scenarios, for example when you are registering an IAM user or an Amazon QuickSight user. You can register multiple users using the same IAM role if each user has a different session name. For more information on assuming IAM roles, see assume-role in the AWS CLI Reference.

Type: String

Length Constraints: Minimum length of 2. Maximum length of 64.

Pattern: [\w+=.@-]*

Required: No

Tags

The tags to associate with the user.

Type: Array of Tag objects

Array Members: Minimum number of 1 item. Maximum number of 200 items.

Required: No

UserName

The Amazon QuickSight user name that you want to create for the user you are registering.

Type: String

Length Constraints: Minimum length of 1.

Pattern: [\u0020-\u00FF]+

Required: No

Response Syntax

HTTP/1.1 Status Content-type: application/json { "RequestId": "string", "User": { "Active": boolean, "Arn": "string", "CustomPermissionsName": "string", "Email": "string", "ExternalLoginFederationProviderType": "string", "ExternalLoginFederationProviderUrl": "string", "ExternalLoginId": "string", "IdentityType": "string", "PrincipalId": "string", "Role": "string", "UserName": "string" }, "UserInvitationUrl": "string" }

Response Elements

If the action is successful, the service sends back the following HTTP response.

Status

The HTTP status of the request.

The following data is returned in JSON format by the service.

RequestId

The AWS request ID for this operation.

Type: String

User

The user's user name.

Type: User object

UserInvitationUrl

The URL the user visits to complete registration and provide a password. This is returned only for users with an identity type of QUICKSIGHT.

Type: String

Errors

For information about the errors that are common to all actions, see Common Errors.

AccessDeniedException

You don't have access to this item. The provided credentials couldn't be validated. You might not be authorized to carry out the request. Make sure that your account is authorized to use the Amazon QuickSight service, that your policies have the correct permissions, and that you are using the correct credentials.

HTTP Status Code: 401

InternalFailureException

An internal failure occurred.

HTTP Status Code: 500

InvalidParameterValueException

One or more parameters has a value that isn't valid.

HTTP Status Code: 400

LimitExceededException

A limit is exceeded.

HTTP Status Code: 409

PreconditionNotMetException

One or more preconditions aren't met.

HTTP Status Code: 400

ResourceExistsException

The resource specified already exists.

HTTP Status Code: 409

ResourceNotFoundException

One or more resources can't be found.

HTTP Status Code: 404

ResourceUnavailableException

This resource is currently unavailable.

HTTP Status Code: 503

ThrottlingException

Access is throttled.

HTTP Status Code: 429

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: