CreateDataSource - Amazon QuickSight

CreateDataSource

Creates a data source.

Request Syntax

POST /accounts/AwsAccountId/data-sources HTTP/1.1 Content-type: application/json { "Credentials": { "CopySourceArn": "string", "CredentialPair": { "AlternateDataSourceParameters": [ { "AmazonElasticsearchParameters": { "Domain": "string" }, "AmazonOpenSearchParameters": { "Domain": "string" }, "AthenaParameters": { "RoleArn": "string", "WorkGroup": "string" }, "AuroraParameters": { "Database": "string", "Host": "string", "Port": number }, "AuroraPostgreSqlParameters": { "Database": "string", "Host": "string", "Port": number }, "AwsIotAnalyticsParameters": { "DataSetName": "string" }, "BigQueryParameters": { "DataSetRegion": "string", "ProjectId": "string" }, "DatabricksParameters": { "Host": "string", "Port": number, "SqlEndpointPath": "string" }, "ExasolParameters": { "Host": "string", "Port": number }, "JiraParameters": { "SiteBaseUrl": "string" }, "MariaDbParameters": { "Database": "string", "Host": "string", "Port": number }, "MySqlParameters": { "Database": "string", "Host": "string", "Port": number }, "OracleParameters": { "Database": "string", "Host": "string", "Port": number }, "PostgreSqlParameters": { "Database": "string", "Host": "string", "Port": number }, "PrestoParameters": { "Catalog": "string", "Host": "string", "Port": number }, "RdsParameters": { "Database": "string", "InstanceId": "string" }, "RedshiftParameters": { "ClusterId": "string", "Database": "string", "Host": "string", "IAMParameters": { "AutoCreateDatabaseUser": boolean, "DatabaseGroups": [ "string" ], "DatabaseUser": "string", "RoleArn": "string" }, "IdentityCenterConfiguration": { "EnableIdentityPropagation": boolean }, "Port": number }, "S3Parameters": { "ManifestFileLocation": { "Bucket": "string", "Key": "string" }, "RoleArn": "string" }, "ServiceNowParameters": { "SiteBaseUrl": "string" }, "SnowflakeParameters": { "AuthenticationType": "string", "Database": "string", "DatabaseAccessControlRole": "string", "Host": "string", "OAuthParameters": { "IdentityProviderResourceUri": "string", "IdentityProviderVpcConnectionProperties": { "VpcConnectionArn": "string" }, "OAuthScope": "string", "TokenProviderUrl": "string" }, "Warehouse": "string" }, "SparkParameters": { "Host": "string", "Port": number }, "SqlServerParameters": { "Database": "string", "Host": "string", "Port": number }, "StarburstParameters": { "AuthenticationType": "string", "Catalog": "string", "DatabaseAccessControlRole": "string", "Host": "string", "OAuthParameters": { "IdentityProviderResourceUri": "string", "IdentityProviderVpcConnectionProperties": { "VpcConnectionArn": "string" }, "OAuthScope": "string", "TokenProviderUrl": "string" }, "Port": number, "ProductType": "string" }, "TeradataParameters": { "Database": "string", "Host": "string", "Port": number }, "TrinoParameters": { "Catalog": "string", "Host": "string", "Port": number }, "TwitterParameters": { "MaxRows": number, "Query": "string" } } ], "Password": "string", "Username": "string" }, "SecretArn": "string" }, "DataSourceId": "string", "DataSourceParameters": { "AmazonElasticsearchParameters": { "Domain": "string" }, "AmazonOpenSearchParameters": { "Domain": "string" }, "AthenaParameters": { "RoleArn": "string", "WorkGroup": "string" }, "AuroraParameters": { "Database": "string", "Host": "string", "Port": number }, "AuroraPostgreSqlParameters": { "Database": "string", "Host": "string", "Port": number }, "AwsIotAnalyticsParameters": { "DataSetName": "string" }, "BigQueryParameters": { "DataSetRegion": "string", "ProjectId": "string" }, "DatabricksParameters": { "Host": "string", "Port": number, "SqlEndpointPath": "string" }, "ExasolParameters": { "Host": "string", "Port": number }, "JiraParameters": { "SiteBaseUrl": "string" }, "MariaDbParameters": { "Database": "string", "Host": "string", "Port": number }, "MySqlParameters": { "Database": "string", "Host": "string", "Port": number }, "OracleParameters": { "Database": "string", "Host": "string", "Port": number }, "PostgreSqlParameters": { "Database": "string", "Host": "string", "Port": number }, "PrestoParameters": { "Catalog": "string", "Host": "string", "Port": number }, "RdsParameters": { "Database": "string", "InstanceId": "string" }, "RedshiftParameters": { "ClusterId": "string", "Database": "string", "Host": "string", "IAMParameters": { "AutoCreateDatabaseUser": boolean, "DatabaseGroups": [ "string" ], "DatabaseUser": "string", "RoleArn": "string" }, "IdentityCenterConfiguration": { "EnableIdentityPropagation": boolean }, "Port": number }, "S3Parameters": { "ManifestFileLocation": { "Bucket": "string", "Key": "string" }, "RoleArn": "string" }, "ServiceNowParameters": { "SiteBaseUrl": "string" }, "SnowflakeParameters": { "AuthenticationType": "string", "Database": "string", "DatabaseAccessControlRole": "string", "Host": "string", "OAuthParameters": { "IdentityProviderResourceUri": "string", "IdentityProviderVpcConnectionProperties": { "VpcConnectionArn": "string" }, "OAuthScope": "string", "TokenProviderUrl": "string" }, "Warehouse": "string" }, "SparkParameters": { "Host": "string", "Port": number }, "SqlServerParameters": { "Database": "string", "Host": "string", "Port": number }, "StarburstParameters": { "AuthenticationType": "string", "Catalog": "string", "DatabaseAccessControlRole": "string", "Host": "string", "OAuthParameters": { "IdentityProviderResourceUri": "string", "IdentityProviderVpcConnectionProperties": { "VpcConnectionArn": "string" }, "OAuthScope": "string", "TokenProviderUrl": "string" }, "Port": number, "ProductType": "string" }, "TeradataParameters": { "Database": "string", "Host": "string", "Port": number }, "TrinoParameters": { "Catalog": "string", "Host": "string", "Port": number }, "TwitterParameters": { "MaxRows": number, "Query": "string" } }, "FolderArns": [ "string" ], "Name": "string", "Permissions": [ { "Actions": [ "string" ], "Principal": "string" } ], "SslProperties": { "DisableSsl": boolean }, "Tags": [ { "Key": "string", "Value": "string" } ], "Type": "string", "VpcConnectionProperties": { "VpcConnectionArn": "string" } }

URI Request Parameters

The request uses the following URI parameters.

AwsAccountId

The AWS account ID.

Length Constraints: Fixed length of 12.

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

Required: Yes

Request Body

The request accepts the following data in JSON format.

DataSourceId

An ID for the data source. This ID is unique per AWS Region for each AWS account.

Type: String

Required: Yes

Name

A display name for the data source.

Type: String

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

Required: Yes

Type

The type of the data source. To return a list of all data sources, use ListDataSources.

Use AMAZON_ELASTICSEARCH for Amazon OpenSearch Service.

Type: String

Valid Values: ADOBE_ANALYTICS | AMAZON_ELASTICSEARCH | ATHENA | AURORA | AURORA_POSTGRESQL | AWS_IOT_ANALYTICS | GITHUB | JIRA | MARIADB | MYSQL | ORACLE | POSTGRESQL | PRESTO | REDSHIFT | S3 | SALESFORCE | SERVICENOW | SNOWFLAKE | SPARK | SQLSERVER | TERADATA | TWITTER | TIMESTREAM | AMAZON_OPENSEARCH | EXASOL | DATABRICKS | STARBURST | TRINO | BIGQUERY

Required: Yes

Credentials

The credentials Amazon QuickSight that uses to connect to your underlying source. Currently, only credentials based on user name and password are supported.

Type: DataSourceCredentials object

Required: No

DataSourceParameters

The parameters that Amazon QuickSight uses to connect to your underlying source.

Type: DataSourceParameters object

Required: No

FolderArns

When you create the data source, Amazon QuickSight adds the data source to these folders.

Type: Array of strings

Array Members: Maximum number of 1 item.

Required: No

Permissions

A list of resource permissions on the data source.

Type: Array of ResourcePermission objects

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

Required: No

SslProperties

Secure Socket Layer (SSL) properties that apply when Amazon QuickSight connects to your underlying source.

Type: SslProperties object

Required: No

Tags

Contains a map of the key-value pairs for the resource tag or tags assigned to the data source.

Type: Array of Tag objects

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

Required: No

VpcConnectionProperties

Use this parameter only when you want Amazon QuickSight to use a VPC connection when connecting to your underlying source.

Type: VpcConnectionProperties object

Required: No

Response Syntax

HTTP/1.1 Status Content-type: application/json { "Arn": "string", "CreationStatus": "string", "DataSourceId": "string", "RequestId": "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.

Arn

The Amazon Resource Name (ARN) of the data source.

Type: String

CreationStatus

The status of creating the data source.

Type: String

Valid Values: CREATION_IN_PROGRESS | CREATION_SUCCESSFUL | CREATION_FAILED | UPDATE_IN_PROGRESS | UPDATE_SUCCESSFUL | UPDATE_FAILED | DELETED

DataSourceId

The ID of the data source. This ID is unique per AWS Region for each AWS account.

Type: String

RequestId

The AWS request ID for this operation.

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

ConflictException

Updating or deleting a resource can cause an inconsistent state.

HTTP Status Code: 409

CustomerManagedKeyUnavailableException

The customer managed key that is registered to your Amazon QuickSight account is unavailable.

HTTP Status Code: 400

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

ResourceExistsException

The resource specified already exists.

HTTP Status Code: 409

ResourceNotFoundException

One or more resources can't be found.

HTTP Status Code: 404

ThrottlingException

Access is throttled.

HTTP Status Code: 429

Examples

Example

This example illustrates one usage of CreateDataSource.

Sample Request

POST /accounts/{AwsAccountId}/data-sources HTTP/1.1 Content-type: application/json

See Also

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