1// Code generated by smithy-go-codegen DO NOT EDIT. 2 3package quicksight 4 5import ( 6 "context" 7 awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" 8 "github.com/aws/aws-sdk-go-v2/aws/signer/v4" 9 "github.com/aws/aws-sdk-go-v2/service/quicksight/types" 10 "github.com/aws/smithy-go/middleware" 11 smithyhttp "github.com/aws/smithy-go/transport/http" 12) 13 14// Creates a dataset. 15func (c *Client) CreateDataSet(ctx context.Context, params *CreateDataSetInput, optFns ...func(*Options)) (*CreateDataSetOutput, error) { 16 if params == nil { 17 params = &CreateDataSetInput{} 18 } 19 20 result, metadata, err := c.invokeOperation(ctx, "CreateDataSet", params, optFns, c.addOperationCreateDataSetMiddlewares) 21 if err != nil { 22 return nil, err 23 } 24 25 out := result.(*CreateDataSetOutput) 26 out.ResultMetadata = metadata 27 return out, nil 28} 29 30type CreateDataSetInput struct { 31 32 // The Amazon Web Services account ID. 33 // 34 // This member is required. 35 AwsAccountId *string 36 37 // An ID for the dataset that you want to create. This ID is unique per Amazon Web 38 // Services Region; for each Amazon Web Services account. 39 // 40 // This member is required. 41 DataSetId *string 42 43 // Indicates whether you want to import the data into SPICE. 44 // 45 // This member is required. 46 ImportMode types.DataSetImportMode 47 48 // The display name for the dataset. 49 // 50 // This member is required. 51 Name *string 52 53 // Declares the physical tables that are available in the underlying data sources. 54 // 55 // This member is required. 56 PhysicalTableMap map[string]types.PhysicalTable 57 58 // Groupings of columns that work together in certain Amazon QuickSight features. 59 // Currently, only geospatial hierarchy is supported. 60 ColumnGroups []types.ColumnGroup 61 62 // A set of one or more definitions of a ColumnLevelPermissionRule. 63 ColumnLevelPermissionRules []types.ColumnLevelPermissionRule 64 65 // The usage configuration to apply to child datasets that reference this dataset 66 // as a source. 67 DataSetUsageConfiguration *types.DataSetUsageConfiguration 68 69 // The folder that contains fields and nested subfolders for your dataset. 70 FieldFolders map[string]types.FieldFolder 71 72 // Configures the combination and transformation of the data from the physical 73 // tables. 74 LogicalTableMap map[string]types.LogicalTable 75 76 // A list of resource permissions on the dataset. 77 Permissions []types.ResourcePermission 78 79 // The row-level security configuration for the data that you want to create. 80 RowLevelPermissionDataSet *types.RowLevelPermissionDataSet 81 82 // The configuration of tags on a dataset to set row-level security. Row-level 83 // security tags are currently supported for anonymous embedding only. 84 RowLevelPermissionTagConfiguration *types.RowLevelPermissionTagConfiguration 85 86 // Contains a map of the key-value pairs for the resource tag or tags assigned to 87 // the dataset. 88 Tags []types.Tag 89 90 noSmithyDocumentSerde 91} 92 93type CreateDataSetOutput struct { 94 95 // The Amazon Resource Name (ARN) of the dataset. 96 Arn *string 97 98 // The ID for the dataset that you want to create. This ID is unique per Amazon Web 99 // Services Region; for each Amazon Web Services account. 100 DataSetId *string 101 102 // The ARN for the ingestion, which is triggered as a result of dataset creation if 103 // the import mode is SPICE. 104 IngestionArn *string 105 106 // The ID of the ingestion, which is triggered as a result of dataset creation if 107 // the import mode is SPICE. 108 IngestionId *string 109 110 // The Amazon Web Services request ID for this operation. 111 RequestId *string 112 113 // The HTTP status of the request. 114 Status int32 115 116 // Metadata pertaining to the operation's result. 117 ResultMetadata middleware.Metadata 118 119 noSmithyDocumentSerde 120} 121 122func (c *Client) addOperationCreateDataSetMiddlewares(stack *middleware.Stack, options Options) (err error) { 123 err = stack.Serialize.Add(&awsRestjson1_serializeOpCreateDataSet{}, middleware.After) 124 if err != nil { 125 return err 126 } 127 err = stack.Deserialize.Add(&awsRestjson1_deserializeOpCreateDataSet{}, middleware.After) 128 if err != nil { 129 return err 130 } 131 if err = addSetLoggerMiddleware(stack, options); err != nil { 132 return err 133 } 134 if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil { 135 return err 136 } 137 if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil { 138 return err 139 } 140 if err = addResolveEndpointMiddleware(stack, options); err != nil { 141 return err 142 } 143 if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil { 144 return err 145 } 146 if err = addRetryMiddlewares(stack, options); err != nil { 147 return err 148 } 149 if err = addHTTPSignerV4Middleware(stack, options); err != nil { 150 return err 151 } 152 if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil { 153 return err 154 } 155 if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil { 156 return err 157 } 158 if err = addClientUserAgent(stack); err != nil { 159 return err 160 } 161 if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil { 162 return err 163 } 164 if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil { 165 return err 166 } 167 if err = addOpCreateDataSetValidationMiddleware(stack); err != nil { 168 return err 169 } 170 if err = stack.Initialize.Add(newServiceMetadataMiddleware_opCreateDataSet(options.Region), middleware.Before); err != nil { 171 return err 172 } 173 if err = addRequestIDRetrieverMiddleware(stack); err != nil { 174 return err 175 } 176 if err = addResponseErrorMiddleware(stack); err != nil { 177 return err 178 } 179 if err = addRequestResponseLogging(stack, options); err != nil { 180 return err 181 } 182 return nil 183} 184 185func newServiceMetadataMiddleware_opCreateDataSet(region string) *awsmiddleware.RegisterServiceMetadata { 186 return &awsmiddleware.RegisterServiceMetadata{ 187 Region: region, 188 ServiceID: ServiceID, 189 SigningName: "quicksight", 190 OperationName: "CreateDataSet", 191 } 192} 193