1// Code generated by smithy-go-codegen DO NOT EDIT. 2 3package types 4 5import ( 6 "time" 7) 8 9// The destination for the asset. 10type AssetDestinationEntry struct { 11 12 // The unique identifier for the asset. 13 // 14 // This member is required. 15 AssetId *string 16 17 // The S3 bucket that is the destination for the asset. 18 // 19 // This member is required. 20 Bucket *string 21 22 // The name of the object in Amazon S3 for the asset. 23 Key *string 24} 25 26type AssetDetails struct { 27 28 // The S3 object that is the asset. 29 S3SnapshotAsset *S3SnapshotAsset 30} 31 32// An asset in AWS Data Exchange is a piece of data that can be stored as an S3 33// object. The asset can be a structured data file, an image file, or some other 34// data file. When you create an import job for your files, you create an asset in 35// AWS Data Exchange for each of those files. 36type AssetEntry struct { 37 38 // The ARN for the asset. 39 // 40 // This member is required. 41 Arn *string 42 43 // Information about the asset, including its size. 44 // 45 // This member is required. 46 AssetDetails *AssetDetails 47 48 // The type of file your data is stored in. Currently, the supported asset type is 49 // S3_SNAPSHOT. 50 // 51 // This member is required. 52 AssetType AssetType 53 54 // The date and time that the asset was created, in ISO 8601 format. 55 // 56 // This member is required. 57 CreatedAt *time.Time 58 59 // The unique identifier for the data set associated with this asset. 60 // 61 // This member is required. 62 DataSetId *string 63 64 // The unique identifier for the asset. 65 // 66 // This member is required. 67 Id *string 68 69 // The name of the asset. When importing from Amazon S3, the S3 object key is used 70 // as the asset name. When exporting to Amazon S3, the asset name is used as 71 // default target S3 object key. 72 // 73 // This member is required. 74 Name *string 75 76 // The unique identifier for the revision associated with this asset. 77 // 78 // This member is required. 79 RevisionId *string 80 81 // The date and time that the asset was last updated, in ISO 8601 format. 82 // 83 // This member is required. 84 UpdatedAt *time.Time 85 86 // The asset ID of the owned asset corresponding to the entitled asset being 87 // viewed. This parameter is returned when an asset owner is viewing the entitled 88 // copy of its owned asset. 89 SourceId *string 90} 91 92// The source of the assets. 93type AssetSourceEntry struct { 94 95 // The S3 bucket that's part of the source of the asset. 96 // 97 // This member is required. 98 Bucket *string 99 100 // The name of the object in Amazon S3 for the asset. 101 // 102 // This member is required. 103 Key *string 104} 105 106// A data set is an AWS resource with one or more revisions. 107type DataSetEntry struct { 108 109 // The ARN for the data set. 110 // 111 // This member is required. 112 Arn *string 113 114 // The type of file your data is stored in. Currently, the supported asset type is 115 // S3_SNAPSHOT. 116 // 117 // This member is required. 118 AssetType AssetType 119 120 // The date and time that the data set was created, in ISO 8601 format. 121 // 122 // This member is required. 123 CreatedAt *time.Time 124 125 // The description for the data set. 126 // 127 // This member is required. 128 Description *string 129 130 // The unique identifier for the data set. 131 // 132 // This member is required. 133 Id *string 134 135 // The name of the data set. 136 // 137 // This member is required. 138 Name *string 139 140 // A property that defines the data set as OWNED by the account (for providers) or 141 // ENTITLED to the account (for subscribers). 142 // 143 // This member is required. 144 Origin Origin 145 146 // The date and time that the data set was last updated, in ISO 8601 format. 147 // 148 // This member is required. 149 UpdatedAt *time.Time 150 151 // If the origin of this data set is ENTITLED, includes the details for the product 152 // on AWS Marketplace. 153 OriginDetails *OriginDetails 154 155 // The data set ID of the owned data set corresponding to the entitled data set 156 // being viewed. This parameter is returned when a data set owner is viewing the 157 // entitled copy of its owned data set. 158 SourceId *string 159} 160 161type Details struct { 162 ImportAssetFromSignedUrlJobErrorDetails *ImportAssetFromSignedUrlJobErrorDetails 163 164 // The list of sources for the assets. 165 ImportAssetsFromS3JobErrorDetails []AssetSourceEntry 166} 167 168// Details of the operation to be performed by the job. 169type ExportAssetsToS3RequestDetails struct { 170 171 // The destination for the asset. 172 // 173 // This member is required. 174 AssetDestinations []AssetDestinationEntry 175 176 // The unique identifier for the data set associated with this export job. 177 // 178 // This member is required. 179 DataSetId *string 180 181 // The unique identifier for the revision associated with this export request. 182 // 183 // This member is required. 184 RevisionId *string 185 186 // Encryption configuration for the export job. 187 Encryption *ExportServerSideEncryption 188} 189 190// Details about the export to Amazon S3 response. 191type ExportAssetsToS3ResponseDetails struct { 192 193 // The destination in Amazon S3 where the asset is exported. 194 // 195 // This member is required. 196 AssetDestinations []AssetDestinationEntry 197 198 // The unique identifier for the data set associated with this export job. 199 // 200 // This member is required. 201 DataSetId *string 202 203 // The unique identifier for the revision associated with this export response. 204 // 205 // This member is required. 206 RevisionId *string 207 208 // Encryption configuration of the export job. 209 Encryption *ExportServerSideEncryption 210} 211 212// Details of the operation to be performed by the job. 213type ExportAssetToSignedUrlRequestDetails struct { 214 215 // The unique identifier for the asset that is exported to a signed URL. 216 // 217 // This member is required. 218 AssetId *string 219 220 // The unique identifier for the data set associated with this export job. 221 // 222 // This member is required. 223 DataSetId *string 224 225 // The unique identifier for the revision associated with this export request. 226 // 227 // This member is required. 228 RevisionId *string 229} 230 231// The details of the export to signed URL response. 232type ExportAssetToSignedUrlResponseDetails struct { 233 234 // The unique identifier for the asset associated with this export job. 235 // 236 // This member is required. 237 AssetId *string 238 239 // The unique identifier for the data set associated with this export job. 240 // 241 // This member is required. 242 DataSetId *string 243 244 // The unique identifier for the revision associated with this export response. 245 // 246 // This member is required. 247 RevisionId *string 248 249 // The signed URL for the export request. 250 SignedUrl *string 251 252 // The date and time that the signed URL expires, in ISO 8601 format. 253 SignedUrlExpiresAt *time.Time 254} 255 256// Encryption configuration of the export job. Includes the encryption type as well 257// as the AWS KMS key. The KMS key is only necessary if you chose the KMS 258// encryption type. 259type ExportServerSideEncryption struct { 260 261 // The type of server side encryption used for encrypting the objects in Amazon S3. 262 // 263 // This member is required. 264 Type ServerSideEncryptionTypes 265 266 // The Amazon Resource Name (ARN) of the the AWS KMS key you want to use to encrypt 267 // the Amazon S3 objects. This parameter is required if you choose aws:kms as an 268 // encryption type. 269 KmsKeyArn *string 270} 271 272type ImportAssetFromSignedUrlJobErrorDetails struct { 273 274 // The name of the asset. When importing from Amazon S3, the S3 object key is used 275 // as the asset name. When exporting to Amazon S3, the asset name is used as 276 // default target S3 object key. 277 // 278 // This member is required. 279 AssetName *string 280} 281 282// Details of the operation to be performed by the job. 283type ImportAssetFromSignedUrlRequestDetails struct { 284 285 // The name of the asset. When importing from Amazon S3, the S3 object key is used 286 // as the asset name. 287 // 288 // This member is required. 289 AssetName *string 290 291 // The unique identifier for the data set associated with this import job. 292 // 293 // This member is required. 294 DataSetId *string 295 296 // The Base64-encoded Md5 hash for the asset, used to ensure the integrity of the 297 // file at that location. 298 // 299 // This member is required. 300 Md5Hash *string 301 302 // The unique identifier for the revision associated with this import request. 303 // 304 // This member is required. 305 RevisionId *string 306} 307 308// The details in the response for an import request, including the signed URL and 309// other information. 310type ImportAssetFromSignedUrlResponseDetails struct { 311 312 // The name for the asset associated with this import response. 313 // 314 // This member is required. 315 AssetName *string 316 317 // The unique identifier for the data set associated with this import job. 318 // 319 // This member is required. 320 DataSetId *string 321 322 // The unique identifier for the revision associated with this import response. 323 // 324 // This member is required. 325 RevisionId *string 326 327 // The Base64-encoded Md5 hash for the asset, used to ensure the integrity of the 328 // file at that location. 329 Md5Hash *string 330 331 // The signed URL. 332 SignedUrl *string 333 334 // The time and date at which the signed URL expires, in ISO 8601 format. 335 SignedUrlExpiresAt *time.Time 336} 337 338// Details of the operation to be performed by the job. 339type ImportAssetsFromS3RequestDetails struct { 340 341 // Is a list of S3 bucket and object key pairs. 342 // 343 // This member is required. 344 AssetSources []AssetSourceEntry 345 346 // The unique identifier for the data set associated with this import job. 347 // 348 // This member is required. 349 DataSetId *string 350 351 // The unique identifier for the revision associated with this import request. 352 // 353 // This member is required. 354 RevisionId *string 355} 356 357// Details from an import from Amazon S3 response. 358type ImportAssetsFromS3ResponseDetails struct { 359 360 // Is a list of Amazon S3 bucket and object key pairs. 361 // 362 // This member is required. 363 AssetSources []AssetSourceEntry 364 365 // The unique identifier for the data set associated with this import job. 366 // 367 // This member is required. 368 DataSetId *string 369 370 // The unique identifier for the revision associated with this import response. 371 // 372 // This member is required. 373 RevisionId *string 374} 375 376// AWS Data Exchange Jobs are asynchronous import or export operations used to 377// create or copy assets. A data set owner can both import and export as they see 378// fit. Someone with an entitlement to a data set can only export. Jobs are deleted 379// 90 days after they are created. 380type JobEntry struct { 381 382 // The ARN for the job. 383 // 384 // This member is required. 385 Arn *string 386 387 // The date and time that the job was created, in ISO 8601 format. 388 // 389 // This member is required. 390 CreatedAt *time.Time 391 392 // Details of the operation to be performed by the job, such as export destination 393 // details or import source details. 394 // 395 // This member is required. 396 Details *ResponseDetails 397 398 // The unique identifier for the job. 399 // 400 // This member is required. 401 Id *string 402 403 // The state of the job. 404 // 405 // This member is required. 406 State State 407 408 // The job type. 409 // 410 // This member is required. 411 Type Type 412 413 // The date and time that the job was last updated, in ISO 8601 format. 414 // 415 // This member is required. 416 UpdatedAt *time.Time 417 418 // Errors for jobs. 419 Errors []JobError 420} 421 422// An error that occurred with the job request. 423type JobError struct { 424 425 // The code for the job error. 426 // 427 // This member is required. 428 Code Code 429 430 // The message related to the job error. 431 // 432 // This member is required. 433 Message *string 434 435 Details *Details 436 437 // The name of the limit that was reached. 438 LimitName JobErrorLimitName 439 440 // The value of the exceeded limit. 441 LimitValue float64 442 443 // The unique identifier for the resource related to the error. 444 ResourceId *string 445 446 // The type of resource related to the error. 447 ResourceType JobErrorResourceTypes 448} 449 450type OriginDetails struct { 451 452 // This member is required. 453 ProductId *string 454} 455 456// The details for the request. 457type RequestDetails struct { 458 459 // Details about the export to signed URL request. 460 ExportAssetToSignedUrl *ExportAssetToSignedUrlRequestDetails 461 462 // Details about the export to Amazon S3 request. 463 ExportAssetsToS3 *ExportAssetsToS3RequestDetails 464 465 // Details about the import from signed URL request. 466 ImportAssetFromSignedUrl *ImportAssetFromSignedUrlRequestDetails 467 468 // Details about the import from Amazon S3 request. 469 ImportAssetsFromS3 *ImportAssetsFromS3RequestDetails 470} 471 472// Details for the response. 473type ResponseDetails struct { 474 475 // Details for the export to signed URL response. 476 ExportAssetToSignedUrl *ExportAssetToSignedUrlResponseDetails 477 478 // Details for the export to Amazon S3 response. 479 ExportAssetsToS3 *ExportAssetsToS3ResponseDetails 480 481 // Details for the import from signed URL response. 482 ImportAssetFromSignedUrl *ImportAssetFromSignedUrlResponseDetails 483 484 // Details for the import from Amazon S3 response. 485 ImportAssetsFromS3 *ImportAssetsFromS3ResponseDetails 486} 487 488// A revision is a container for one or more assets. 489type RevisionEntry struct { 490 491 // The ARN for the revision. 492 // 493 // This member is required. 494 Arn *string 495 496 // The date and time that the revision was created, in ISO 8601 format. 497 // 498 // This member is required. 499 CreatedAt *time.Time 500 501 // The unique identifier for the data set associated with this revision. 502 // 503 // This member is required. 504 DataSetId *string 505 506 // The unique identifier for the revision. 507 // 508 // This member is required. 509 Id *string 510 511 // The date and time that the revision was last updated, in ISO 8601 format. 512 // 513 // This member is required. 514 UpdatedAt *time.Time 515 516 // An optional comment about the revision. 517 Comment *string 518 519 // To publish a revision to a data set in a product, the revision must first be 520 // finalized. Finalizing a revision tells AWS Data Exchange that your changes to 521 // the assets in the revision are complete. After it's in this read-only state, you 522 // can publish the revision to your products. Finalized revisions can be published 523 // through the AWS Data Exchange console or the AWS Marketplace Catalog API, using 524 // the StartChangeSet AWS Marketplace Catalog API action. When using the API, 525 // revisions are uniquely identified by their ARN. 526 Finalized bool 527 528 // The revision ID of the owned revision corresponding to the entitled revision 529 // being viewed. This parameter is returned when a revision owner is viewing the 530 // entitled copy of its owned revision. 531 SourceId *string 532} 533 534// The S3 object that is the asset. 535type S3SnapshotAsset struct { 536 537 // The size of the S3 object that is the object. 538 // 539 // This member is required. 540 Size float64 541} 542