{"note":"OpenAPI conversion -- returning structured metadata","name":"amazonaws-com-dataexchange","description":"AWS Data Exchange","version":"2017-07-25","base_url":"","endpoints":30,"raw":"@lap v0.3\n# Machine-readable API spec. Each @endpoint block is one API call.\n@api AWS Data Exchange\n@version 2017-07-25\n@auth AWS SigV4\n@endpoints 30\n@hint download_for_search\n@toc jobs(5), data-sets(16), event-actions(5), tags(3), v1(1)\n\n@group jobs\n@endpoint DELETE /v1/jobs/{JobId}\n@desc This operation cancels a job. Jobs can be cancelled only when they are in the WAITING state.\n@required {JobId: str}\n\n@endgroup\n\n@group data-sets\n@endpoint POST /v1/data-sets\n@desc This operation creates a data set.\n@required {AssetType: str, Description: str, Name: str}\n@optional {Tags: map<str,str>}\n@returns(200) {Arn: str?, AssetType: str?, CreatedAt: str(timestamp)?, Description: str?, Id: str?, Name: str?, Origin: str?, OriginDetails: OriginDetails?{ProductId: str?}, SourceId: str?, Tags: map<str,str>?, UpdatedAt: str(timestamp)?}\n\n@endgroup\n\n@group event-actions\n@endpoint POST /v1/event-actions\n@desc This operation creates an event action.\n@required {Action: Action, Event: Event}\n@returns(200) {Action: Action?{ExportRevisionToS3: AutoExportRevisionToS3RequestDetails?{Encryption: ExportServerSideEncryption?{KmsKeyArn: str?, Type: str}, RevisionDestination: AutoExportRevisionDestinationEntry{Bucket: str, KeyPattern: str?}}}, Arn: str?, CreatedAt: str(timestamp)?, Event: Event?{RevisionPublished: RevisionPublished?{DataSetId: str}}, Id: str?, UpdatedAt: str(timestamp)?}\n\n@endgroup\n\n@group jobs\n@endpoint POST /v1/jobs\n@desc This operation creates a job.\n@required {Details: RequestDetails, Type: str}\n@returns(200) {Arn: str?, CreatedAt: str(timestamp)?, Details: ResponseDetails?{ExportAssetToSignedUrl: ExportAssetToSignedUrlResponseDetails?{AssetId: str, DataSetId: str, RevisionId: str, SignedUrl: str?, SignedUrlExpiresAt: str(timestamp)?}, ExportAssetsToS3: ExportAssetsToS3ResponseDetails?{AssetDestinations: [AssetDestinationEntry], DataSetId: str, Encryption: ExportServerSideEncryption?{KmsKeyArn: str?, Type: str}, RevisionId: str}, ExportRevisionsToS3: ExportRevisionsToS3ResponseDetails?{DataSetId: str, Encryption: ExportServerSideEncryption?{KmsKeyArn: str?, Type: str}, RevisionDestinations: [RevisionDestinationEntry], EventActionArn: str?}, ImportAssetFromSignedUrl: ImportAssetFromSignedUrlResponseDetails?{AssetName: str, DataSetId: str, Md5Hash: str?, RevisionId: str, SignedUrl: str?, SignedUrlExpiresAt: str(timestamp)?}, ImportAssetsFromS3: ImportAssetsFromS3ResponseDetails?{AssetSources: [AssetSourceEntry], DataSetId: str, RevisionId: str}, ImportAssetsFromRedshiftDataShares: ImportAssetsFromRedshiftDataSharesResponseDetails?{AssetSources: [RedshiftDataShareAssetSourceEntry], DataSetId: str, RevisionId: str}, ImportAssetFromApiGatewayApi: ImportAssetFromApiGatewayApiResponseDetails?{ApiDescription: str?, ApiId: str, ApiKey: str?, ApiName: str, ApiSpecificationMd5Hash: str, ApiSpecificationUploadUrl: str, ApiSpecificationUploadUrlExpiresAt: str(timestamp), DataSetId: str, ProtocolType: str, RevisionId: str, Stage: str}, CreateS3DataAccessFromS3Bucket: CreateS3DataAccessFromS3BucketResponseDetails?{AssetSource: S3DataAccessAssetSourceEntry{Bucket: str, KeyPrefixes: [str]?, Keys: [str]?, KmsKeysToGrant: [KmsKeyToGrant]?}, DataSetId: str, RevisionId: str}, ImportAssetsFromLakeFormationTagPolicy: ImportAssetsFromLakeFormationTagPolicyResponseDetails?{CatalogId: str, Database: DatabaseLFTagPolicyAndPermissions?{Expression: [LFTag], Permissions: [str]}, Table: TableLFTagPolicyAndPermissions?{Expression: [LFTag], Permissions: [str]}, RoleArn: str, DataSetId: str, RevisionId: str}}, Errors: [JobError]?, Id: str?, State: str?, Type: str?, UpdatedAt: str(timestamp)?}\n\n@endgroup\n\n@group data-sets\n@endpoint POST /v1/data-sets/{DataSetId}/revisions\n@desc This operation creates a revision for a data set.\n@required {DataSetId: str}\n@optional {Comment: str, Tags: map<str,str>}\n@returns(200) {Arn: str?, Comment: str?, CreatedAt: str(timestamp)?, DataSetId: str?, Finalized: bool?, Id: str?, SourceId: str?, Tags: map<str,str>?, UpdatedAt: str(timestamp)?, RevocationComment: str?, Revoked: bool?, RevokedAt: str(timestamp)?}\n\n@endpoint DELETE /v1/data-sets/{DataSetId}/revisions/{RevisionId}/assets/{AssetId}\n@desc This operation deletes an asset.\n@required {AssetId: str, DataSetId: str, RevisionId: str}\n\n@endpoint DELETE /v1/data-sets/{DataSetId}\n@desc This operation deletes a data set.\n@required {DataSetId: str}\n\n@endgroup\n\n@group event-actions\n@endpoint DELETE /v1/event-actions/{EventActionId}\n@desc This operation deletes the event action.\n@required {EventActionId: str}\n\n@endgroup\n\n@group data-sets\n@endpoint DELETE /v1/data-sets/{DataSetId}/revisions/{RevisionId}\n@desc This operation deletes a revision.\n@required {DataSetId: str, RevisionId: str}\n\n@endpoint GET /v1/data-sets/{DataSetId}/revisions/{RevisionId}/assets/{AssetId}\n@desc This operation returns information about an asset.\n@required {AssetId: str, DataSetId: str, RevisionId: str}\n@returns(200) {Arn: str?, AssetDetails: AssetDetails?{S3SnapshotAsset: S3SnapshotAsset?{Size: num(f64)}, RedshiftDataShareAsset: RedshiftDataShareAsset?{Arn: str}, ApiGatewayApiAsset: ApiGatewayApiAsset?{ApiDescription: str?, ApiEndpoint: str?, ApiId: str?, ApiKey: str?, ApiName: str?, ApiSpecificationDownloadUrl: str?, ApiSpecificationDownloadUrlExpiresAt: str(timestamp)?, ProtocolType: str?, Stage: str?}, S3DataAccessAsset: S3DataAccessAsset?{Bucket: str, KeyPrefixes: [str]?, Keys: [str]?, S3AccessPointAlias: str?, S3AccessPointArn: str?, KmsKeysToGrant: [KmsKeyToGrant]?}, LakeFormationDataPermissionAsset: LakeFormationDataPermissionAsset?{LakeFormationDataPermissionDetails: LakeFormationDataPermissionDetails{LFTagPolicy: LFTagPolicyDetails?}, LakeFormationDataPermissionType: str, Permissions: [str], RoleArn: str?}}, AssetType: str?, CreatedAt: str(timestamp)?, DataSetId: str?, Id: str?, Name: str?, RevisionId: str?, SourceId: str?, UpdatedAt: str(timestamp)?}\n\n@endpoint GET /v1/data-sets/{DataSetId}\n@desc This operation returns information about a data set.\n@required {DataSetId: str}\n@returns(200) {Arn: str?, AssetType: str?, CreatedAt: str(timestamp)?, Description: str?, Id: str?, Name: str?, Origin: str?, OriginDetails: OriginDetails?{ProductId: str?}, SourceId: str?, Tags: map<str,str>?, UpdatedAt: str(timestamp)?}\n\n@endgroup\n\n@group event-actions\n@endpoint GET /v1/event-actions/{EventActionId}\n@desc This operation retrieves information about an event action.\n@required {EventActionId: str}\n@returns(200) {Action: Action?{ExportRevisionToS3: AutoExportRevisionToS3RequestDetails?{Encryption: ExportServerSideEncryption?{KmsKeyArn: str?, Type: str}, RevisionDestination: AutoExportRevisionDestinationEntry{Bucket: str, KeyPattern: str?}}}, Arn: str?, CreatedAt: str(timestamp)?, Event: Event?{RevisionPublished: RevisionPublished?{DataSetId: str}}, Id: str?, UpdatedAt: str(timestamp)?}\n\n@endgroup\n\n@group jobs\n@endpoint GET /v1/jobs/{JobId}\n@desc This operation returns information about a job.\n@required {JobId: str}\n@returns(200) {Arn: str?, CreatedAt: str(timestamp)?, Details: ResponseDetails?{ExportAssetToSignedUrl: ExportAssetToSignedUrlResponseDetails?{AssetId: str, DataSetId: str, RevisionId: str, SignedUrl: str?, SignedUrlExpiresAt: str(timestamp)?}, ExportAssetsToS3: ExportAssetsToS3ResponseDetails?{AssetDestinations: [AssetDestinationEntry], DataSetId: str, Encryption: ExportServerSideEncryption?{KmsKeyArn: str?, Type: str}, RevisionId: str}, ExportRevisionsToS3: ExportRevisionsToS3ResponseDetails?{DataSetId: str, Encryption: ExportServerSideEncryption?{KmsKeyArn: str?, Type: str}, RevisionDestinations: [RevisionDestinationEntry], EventActionArn: str?}, ImportAssetFromSignedUrl: ImportAssetFromSignedUrlResponseDetails?{AssetName: str, DataSetId: str, Md5Hash: str?, RevisionId: str, SignedUrl: str?, SignedUrlExpiresAt: str(timestamp)?}, ImportAssetsFromS3: ImportAssetsFromS3ResponseDetails?{AssetSources: [AssetSourceEntry], DataSetId: str, RevisionId: str}, ImportAssetsFromRedshiftDataShares: ImportAssetsFromRedshiftDataSharesResponseDetails?{AssetSources: [RedshiftDataShareAssetSourceEntry], DataSetId: str, RevisionId: str}, ImportAssetFromApiGatewayApi: ImportAssetFromApiGatewayApiResponseDetails?{ApiDescription: str?, ApiId: str, ApiKey: str?, ApiName: str, ApiSpecificationMd5Hash: str, ApiSpecificationUploadUrl: str, ApiSpecificationUploadUrlExpiresAt: str(timestamp), DataSetId: str, ProtocolType: str, RevisionId: str, Stage: str}, CreateS3DataAccessFromS3Bucket: CreateS3DataAccessFromS3BucketResponseDetails?{AssetSource: S3DataAccessAssetSourceEntry{Bucket: str, KeyPrefixes: [str]?, Keys: [str]?, KmsKeysToGrant: [KmsKeyToGrant]?}, DataSetId: str, RevisionId: str}, ImportAssetsFromLakeFormationTagPolicy: ImportAssetsFromLakeFormationTagPolicyResponseDetails?{CatalogId: str, Database: DatabaseLFTagPolicyAndPermissions?{Expression: [LFTag], Permissions: [str]}, Table: TableLFTagPolicyAndPermissions?{Expression: [LFTag], Permissions: [str]}, RoleArn: str, DataSetId: str, RevisionId: str}}, Errors: [JobError]?, Id: str?, State: str?, Type: str?, UpdatedAt: str(timestamp)?}\n\n@endgroup\n\n@group data-sets\n@endpoint GET /v1/data-sets/{DataSetId}/revisions/{RevisionId}\n@desc This operation returns information about a revision.\n@required {DataSetId: str, RevisionId: str}\n@returns(200) {Arn: str?, Comment: str?, CreatedAt: str(timestamp)?, DataSetId: str?, Finalized: bool?, Id: str?, SourceId: str?, Tags: map<str,str>?, UpdatedAt: str(timestamp)?, RevocationComment: str?, Revoked: bool?, RevokedAt: str(timestamp)?}\n\n@endpoint GET /v1/data-sets/{DataSetId}/revisions\n@desc This operation lists a data set's revisions sorted by CreatedAt in descending order.\n@required {DataSetId: str}\n@optional {maxResults: int, nextToken: str}\n@returns(200) {NextToken: str?, Revisions: [RevisionEntry]?}\n\n@endpoint GET /v1/data-sets\n@desc This operation lists your data sets. When listing by origin OWNED, results are sorted by CreatedAt in descending order. When listing by origin ENTITLED, there is no order and the maxResults parameter is ignored.\n@optional {maxResults: int, nextToken: str, origin: str}\n@returns(200) {DataSets: [DataSetEntry]?, NextToken: str?}\n\n@endgroup\n\n@group event-actions\n@endpoint GET /v1/event-actions\n@desc This operation lists your event actions.\n@optional {eventSourceId: str, maxResults: int, nextToken: str}\n@returns(200) {EventActions: [EventActionEntry]?, NextToken: str?}\n\n@endgroup\n\n@group jobs\n@endpoint GET /v1/jobs\n@desc This operation lists your jobs sorted by CreatedAt in descending order.\n@optional {dataSetId: str, maxResults: int, nextToken: str, revisionId: str}\n@returns(200) {Jobs: [JobEntry]?, NextToken: str?}\n\n@endgroup\n\n@group data-sets\n@endpoint GET /v1/data-sets/{DataSetId}/revisions/{RevisionId}/assets\n@desc This operation lists a revision's assets sorted alphabetically in descending order.\n@required {DataSetId: str, RevisionId: str}\n@optional {maxResults: int, nextToken: str}\n@returns(200) {Assets: [AssetEntry]?, NextToken: str?}\n\n@endgroup\n\n@group tags\n@endpoint GET /tags/{ResourceArn}\n@desc This operation lists the tags on the resource.\n@required {ResourceArn: str}\n@returns(200) {Tags: map<str,str>?}\n\n@endgroup\n\n@group data-sets\n@endpoint POST /v1/data-sets/{DataSetId}/revisions/{RevisionId}/revoke\n@desc This operation revokes subscribers' access to a revision.\n@required {DataSetId: str, RevisionId: str, RevocationComment: str}\n@returns(200) {Arn: str?, Comment: str?, CreatedAt: str(timestamp)?, DataSetId: str?, Finalized: bool?, Id: str?, SourceId: str?, UpdatedAt: str(timestamp)?, RevocationComment: str?, Revoked: bool?, RevokedAt: str(timestamp)?}\n\n@endgroup\n\n@group v1\n@endpoint POST /v1\n@desc This operation invokes an API Gateway API asset. The request is proxied to the provider’s API Gateway API.\n@required {x-amzn-dataexchange-asset-id: str, x-amzn-dataexchange-data-set-id: str, x-amzn-dataexchange-revision-id: str}\n@optional {QueryStringParameters: map<str,str>, x-amzn-dataexchange-http-method: str, x-amzn-dataexchange-path: str, Body: str, RequestHeaders: map<str,str>}\n@returns(200) {Body: str?, ResponseHeaders: map<str,str>?}\n\n@endgroup\n\n@group data-sets\n@endpoint POST /v1/data-sets/{DataSetId}/notification\n@desc The type of event associated with the data set.\n@required {DataSetId: str, Type: str}\n@optional {Scope: ScopeDetails, ClientToken: str, Comment: str, Details: NotificationDetails}\n\n@endgroup\n\n@group jobs\n@endpoint PATCH /v1/jobs/{JobId}\n@desc This operation starts a job.\n@required {JobId: str}\n\n@endgroup\n\n@group tags\n@endpoint POST /tags/{ResourceArn}\n@desc This operation tags a resource.\n@required {ResourceArn: str, Tags: map<str,str>}\n\n@endpoint DELETE /tags/{ResourceArn}\n@desc This operation removes one or more tags from a resource.\n@required {ResourceArn: str, tagKeys: [str]}\n\n@endgroup\n\n@group data-sets\n@endpoint PATCH /v1/data-sets/{DataSetId}/revisions/{RevisionId}/assets/{AssetId}\n@desc This operation updates an asset.\n@required {AssetId: str, DataSetId: str, RevisionId: str, Name: str}\n@returns(200) {Arn: str?, AssetDetails: AssetDetails?{S3SnapshotAsset: S3SnapshotAsset?{Size: num(f64)}, RedshiftDataShareAsset: RedshiftDataShareAsset?{Arn: str}, ApiGatewayApiAsset: ApiGatewayApiAsset?{ApiDescription: str?, ApiEndpoint: str?, ApiId: str?, ApiKey: str?, ApiName: str?, ApiSpecificationDownloadUrl: str?, ApiSpecificationDownloadUrlExpiresAt: str(timestamp)?, ProtocolType: str?, Stage: str?}, S3DataAccessAsset: S3DataAccessAsset?{Bucket: str, KeyPrefixes: [str]?, Keys: [str]?, S3AccessPointAlias: str?, S3AccessPointArn: str?, KmsKeysToGrant: [KmsKeyToGrant]?}, LakeFormationDataPermissionAsset: LakeFormationDataPermissionAsset?{LakeFormationDataPermissionDetails: LakeFormationDataPermissionDetails{LFTagPolicy: LFTagPolicyDetails?}, LakeFormationDataPermissionType: str, Permissions: [str], RoleArn: str?}}, AssetType: str?, CreatedAt: str(timestamp)?, DataSetId: str?, Id: str?, Name: str?, RevisionId: str?, SourceId: str?, UpdatedAt: str(timestamp)?}\n\n@endpoint PATCH /v1/data-sets/{DataSetId}\n@desc This operation updates a data set.\n@required {DataSetId: str}\n@optional {Description: str, Name: str}\n@returns(200) {Arn: str?, AssetType: str?, CreatedAt: str(timestamp)?, Description: str?, Id: str?, Name: str?, Origin: str?, OriginDetails: OriginDetails?{ProductId: str?}, SourceId: str?, UpdatedAt: str(timestamp)?}\n\n@endgroup\n\n@group event-actions\n@endpoint PATCH /v1/event-actions/{EventActionId}\n@desc This operation updates the event action.\n@required {EventActionId: str}\n@optional {Action: Action}\n@returns(200) {Action: Action?{ExportRevisionToS3: AutoExportRevisionToS3RequestDetails?{Encryption: ExportServerSideEncryption?{KmsKeyArn: str?, Type: str}, RevisionDestination: AutoExportRevisionDestinationEntry{Bucket: str, KeyPattern: str?}}}, Arn: str?, CreatedAt: str(timestamp)?, Event: Event?{RevisionPublished: RevisionPublished?{DataSetId: str}}, Id: str?, UpdatedAt: str(timestamp)?}\n\n@endgroup\n\n@group data-sets\n@endpoint PATCH /v1/data-sets/{DataSetId}/revisions/{RevisionId}\n@desc This operation updates a revision.\n@required {DataSetId: str, RevisionId: str}\n@optional {Comment: str, Finalized: bool}\n@returns(200) {Arn: str?, Comment: str?, CreatedAt: str(timestamp)?, DataSetId: str?, Finalized: bool?, Id: str?, SourceId: str?, UpdatedAt: str(timestamp)?, RevocationComment: str?, Revoked: bool?, RevokedAt: str(timestamp)?}\n\n@endgroup\n\n@end\n"}