Amazon DataZone Datazone Filters API
The Datazone Filters API from Amazon DataZone — 2 operation(s) for datazone filters.
The Datazone Filters API from Amazon DataZone — 2 operation(s) for datazone filters.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/amazon-datazone:amazon-datazone-filters-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Amazon DataZone Filters API
version: '2018-05-10'
description: Generated from AWS's published Smithy model for Amazon DataZone. 5 operation(s).
contact:
name: Amazon Web Services
url: https://aws.amazon.com/contact-us/
license:
name: Apache 2.0
identifier: Apache-2.0
url: https://github.com/aws/api-models-aws/blob/main/LICENSE
servers:
- url: https://datazone.{region}.amazonaws.com
variables:
region:
default: us-east-1
security:
- sigv4: []
tags:
- name: Filters
paths:
/v2/domains/{domainIdentifier}/assets/{assetIdentifier}/filters:
post:
operationId: CreateAssetFilter
summary: Create Asset Filter
description: 'Creates a data asset filter. Asset filters provide a sophisticated way to create controlled views of data assets by selecting specific columns or applying row-level filters. This capability is crucial for organizations that need to share data while maintaining security and privacy controls. For example, your database might be filtered to show only non-PII fields to certain users, or sales data might be filtered by region for different regional teams. Asset filters enable fine-grained access control while maintaining a single source of truth. Prerequisites: A valid domain (--domain-identifier) must exist. A data asset (--asset-identifier) must already be created under that domain. The asset must have the referenced columns available in its schema for column-based filtering. You cannot specify both (columnConfiguration, rowConfiguration)at the same time.'
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/CreateAssetFilterOutput'
'403':
description: AccessDeniedException; AccessDeniedException
content:
application/json:
schema:
$ref: '#/components/schemas/AccessDeniedException'
'409':
description: ConflictException
content:
application/json:
schema:
$ref: '#/components/schemas/ConflictException'
'500':
description: InternalServerException
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerException'
'404':
description: ResourceNotFoundException
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceNotFoundException'
'402':
description: ServiceQuotaExceededException
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceQuotaExceededException'
'429':
description: ThrottlingException; ThrottlingException
content:
application/json:
schema:
$ref: '#/components/schemas/ThrottlingException'
'400':
description: ValidationException
content:
application/json:
schema:
$ref: '#/components/schemas/ValidationException'
'401':
description: UnauthorizedException
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedException'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/CreateAssetFilterInput'
tags:
- Filters
get:
operationId: ListAssetFilters
summary: List Asset Filters
description: 'Lists asset filters. Prerequisites: A valid domain and asset must exist. The asset must have at least one filter created to return results.'
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/ListAssetFiltersOutput'
'403':
description: AccessDeniedException; AccessDeniedException
content:
application/json:
schema:
$ref: '#/components/schemas/AccessDeniedException'
'500':
description: InternalServerException
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerException'
'404':
description: ResourceNotFoundException
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceNotFoundException'
'429':
description: ThrottlingException; ThrottlingException
content:
application/json:
schema:
$ref: '#/components/schemas/ThrottlingException'
'400':
description: ValidationException
content:
application/json:
schema:
$ref: '#/components/schemas/ValidationException'
'401':
description: UnauthorizedException
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedException'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ListAssetFiltersInput'
tags:
- Filters
/v2/domains/{domainIdentifier}/assets/{assetIdentifier}/filters/{identifier}:
delete:
operationId: DeleteAssetFilter
summary: Delete Asset Filter
description: 'Deletes an asset filter. Prerequisites: The asset filter must exist. The domain and asset must not have been deleted. Ensure the --identifier refers to a valid filter ID.'
responses:
'200':
description: Success
content:
application/json:
schema:
type: string
'403':
description: AccessDeniedException; AccessDeniedException
content:
application/json:
schema:
$ref: '#/components/schemas/AccessDeniedException'
'409':
description: ConflictException
content:
application/json:
schema:
$ref: '#/components/schemas/ConflictException'
'500':
description: InternalServerException
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerException'
'404':
description: ResourceNotFoundException
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceNotFoundException'
'429':
description: ThrottlingException; ThrottlingException
content:
application/json:
schema:
$ref: '#/components/schemas/ThrottlingException'
'400':
description: ValidationException
content:
application/json:
schema:
$ref: '#/components/schemas/ValidationException'
'401':
description: UnauthorizedException
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedException'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/DeleteAssetFilterInput'
tags:
- Filters
get:
operationId: GetAssetFilter
summary: Get Asset Filter
description: 'Gets an asset filter. Prerequisites: Domain (--domain-identifier), asset (--asset-identifier), and filter (--identifier) must all exist. The asset filter should not have been deleted. The asset must still exist (since the filter is linked to it).'
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/GetAssetFilterOutput'
'403':
description: AccessDeniedException; AccessDeniedException
content:
application/json:
schema:
$ref: '#/components/schemas/AccessDeniedException'
'500':
description: InternalServerException
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerException'
'404':
description: ResourceNotFoundException
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceNotFoundException'
'429':
description: ThrottlingException; ThrottlingException
content:
application/json:
schema:
$ref: '#/components/schemas/ThrottlingException'
'400':
description: ValidationException
content:
application/json:
schema:
$ref: '#/components/schemas/ValidationException'
'401':
description: UnauthorizedException
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedException'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/GetAssetFilterInput'
tags:
- Filters
patch:
operationId: UpdateAssetFilter
summary: Update Asset Filter
description: 'Updates an asset filter. Prerequisites: The domain, asset, and asset filter identifier must all exist. The asset must contain the columns being referenced in the update. If applying a row filter, ensure the column referenced in the expression exists in the asset schema.'
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateAssetFilterOutput'
'403':
description: AccessDeniedException; AccessDeniedException
content:
application/json:
schema:
$ref: '#/components/schemas/AccessDeniedException'
'409':
description: ConflictException
content:
application/json:
schema:
$ref: '#/components/schemas/ConflictException'
'500':
description: InternalServerException
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerException'
'404':
description: ResourceNotFoundException
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceNotFoundException'
'429':
description: ThrottlingException; ThrottlingException
content:
application/json:
schema:
$ref: '#/components/schemas/ThrottlingException'
'400':
description: ValidationException
content:
application/json:
schema:
$ref: '#/components/schemas/ValidationException'
'401':
description: UnauthorizedException
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedException'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateAssetFilterInput'
tags:
- Filters
components:
schemas:
LikeExpression:
type: object
properties:
columnName:
type: string
description: The name of the column.
value:
type: string
description: The value that might be like the expression.
required:
- columnName
- value
CreateAssetFilterInput:
type: object
properties:
domainIdentifier:
type: string
description: The ID of the domain in which you want to create an asset filter.
assetIdentifier:
type: string
description: The ID of the data asset.
name:
type: string
description: The name of the asset filter.
description:
type: string
description: The description of the asset filter.
configuration:
$ref: '#/components/schemas/AssetFilterConfiguration'
clientToken:
type: string
description: A unique, case-sensitive identifier that is provided to ensure the idempotency of the request.
required:
- domainIdentifier
- assetIdentifier
- name
- configuration
LessThanOrEqualToExpression:
type: object
properties:
columnName:
type: string
description: The name of the column.
value:
type: string
description: The value that might be less than or equal to an expression.
required:
- columnName
- value
CreateAssetFilterOutput:
type: object
properties:
id:
type: string
description: The ID of the asset filter.
domainId:
type: string
description: The ID of the domain where the asset filter is created.
assetId:
type: string
description: The ID of the asset.
name:
type: string
description: The name of the asset filter.
description:
type: string
description: The description of the asset filter.
status:
type: string
enum:
- VALID
- INVALID
description: The status of the asset filter.
configuration:
$ref: '#/components/schemas/AssetFilterConfiguration'
createdAt:
type: string
format: date-time
description: The timestamp at which the asset filter was created.
errorMessage:
type: string
description: The error message that is displayed if the asset filter is not created successfully.
effectiveColumnNames:
type: array
items:
type: string
description: The column names in the asset filter.
effectiveRowFilter:
type: string
description: The row filter in the asset filter.
required:
- id
- domainId
- assetId
- name
- configuration
AssetFilterSummary:
type: object
properties:
id:
type: string
description: The ID of the asset filter.
domainId:
type: string
description: The ID of the domain where the asset filter lives.
assetId:
type: string
description: The ID of the data asset.
name:
type: string
description: The name of the asset filter.
description:
type: string
description: The description of the asset filter.
status:
type: string
enum:
- VALID
- INVALID
description: The status of the asset filter.
effectiveColumnNames:
type: array
items:
type: string
description: The effective column names of the asset filter.
effectiveRowFilter:
type: string
description: The effective row filter of the asset filter.
createdAt:
type: string
format: date-time
description: The timestamp at which the asset filter was created.
errorMessage:
type: string
description: The error message that is displayed if the action does not succeed.
required:
- id
- domainId
- assetId
- name
ValidationException:
type: object
properties:
message:
type: string
required:
- message
RowFilter:
type: object
properties:
expression:
$ref: '#/components/schemas/RowFilterExpression'
and:
type: array
items:
$ref: '#/components/schemas/RowFilter'
description: The 'and' clause of the row filter.
or:
type: array
items:
$ref: '#/components/schemas/RowFilter'
description: The 'or' clause of the row filter.
description: Exactly one member is set.
RowFilterExpression:
type: object
properties:
equalTo:
$ref: '#/components/schemas/EqualToExpression'
notEqualTo:
$ref: '#/components/schemas/NotEqualToExpression'
greaterThan:
$ref: '#/components/schemas/GreaterThanExpression'
lessThan:
$ref: '#/components/schemas/LessThanExpression'
greaterThanOrEqualTo:
$ref: '#/components/schemas/GreaterThanOrEqualToExpression'
lessThanOrEqualTo:
$ref: '#/components/schemas/LessThanOrEqualToExpression'
isNull:
$ref: '#/components/schemas/IsNullExpression'
isNotNull:
$ref: '#/components/schemas/IsNotNullExpression'
in:
$ref: '#/components/schemas/InExpression'
notIn:
$ref: '#/components/schemas/NotInExpression'
like:
$ref: '#/components/schemas/LikeExpression'
notLike:
$ref: '#/components/schemas/NotLikeExpression'
description: Exactly one member is set.
ColumnFilterConfiguration:
type: object
properties:
includedColumnNames:
type: array
items:
type: string
description: Specifies whether to include column names.
EqualToExpression:
type: object
properties:
columnName:
type: string
description: The name of the column.
value:
type: string
description: The value that might be equal to an expression.
required:
- columnName
- value
UpdateAssetFilterInput:
type: object
properties:
domainIdentifier:
type: string
description: The ID of the domain where you want to update an asset filter.
assetIdentifier:
type: string
description: The ID of the data asset.
identifier:
type: string
description: The ID of the asset filter.
name:
type: string
description: The name of the asset filter.
description:
type: string
description: The description of the asset filter.
configuration:
$ref: '#/components/schemas/AssetFilterConfiguration'
required:
- domainIdentifier
- assetIdentifier
- identifier
UnauthorizedException:
type: object
properties:
message:
type: string
required:
- message
GreaterThanExpression:
type: object
properties:
columnName:
type: string
description: The name of the column.
value:
type: string
description: The value that might be greater than an expression.
required:
- columnName
- value
ThrottlingException:
type: object
properties:
message:
type: string
required:
- message
GetAssetFilterOutput:
type: object
properties:
id:
type: string
description: The ID of the asset filter.
domainId:
type: string
description: The ID of the domain where you want to get an asset filter.
assetId:
type: string
description: The ID of the data asset.
name:
type: string
description: The name of the asset filter.
description:
type: string
description: The description of the asset filter.
status:
type: string
enum:
- VALID
- INVALID
description: The status of the asset filter.
configuration:
$ref: '#/components/schemas/AssetFilterConfiguration'
createdAt:
type: string
format: date-time
description: The timestamp at which the asset filter was created.
errorMessage:
type: string
description: The error message that is displayed if the action does not complete successfully.
effectiveColumnNames:
type: array
items:
type: string
description: The column names of the asset filter.
effectiveRowFilter:
type: string
description: The row filter of the asset filter.
required:
- id
- domainId
- assetId
- name
- configuration
GetAssetFilterInput:
type: object
properties:
domainIdentifier:
type: string
description: The ID of the domain where you want to get an asset filter.
assetIdentifier:
type: string
description: The ID of the data asset.
identifier:
type: string
description: The ID of the asset filter.
required:
- domainIdentifier
- assetIdentifier
- identifier
NotInExpression:
type: object
properties:
columnName:
type: string
description: The name of the column.
values:
type: array
items:
type: string
description: The value that might not be in the expression.
required:
- columnName
- values
ListAssetFiltersOutput:
type: object
properties:
items:
type: array
items:
$ref: '#/components/schemas/AssetFilterSummary'
description: The results of the ListAssetFilters action.
nextToken:
type: string
description: When the number of asset filters is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of asset filters, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to ListAssetFilters to list the next set of asset filters.
required:
- items
ListAssetFiltersInput:
type: object
properties:
domainIdentifier:
type: string
description: The ID of the domain where you want to list asset filters.
assetIdentifier:
type: string
description: The ID of the data asset.
status:
type: string
enum:
- VALID
- INVALID
description: The status of the asset filter.
nextToken:
type: string
description: When the number of asset filters is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of asset filters, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to ListAssetFilters to list the next set of asset filters.
maxResults:
type: integer
description: The maximum number of asset filters to return in a single call to ListAssetFilters. When the number of asset filters to be listed is greater than the value of MaxResults, the response contains a NextToken value that you can use in a subsequent call to ListAssetFilters to list the next set of asset filters.
required:
- domainIdentifier
- assetIdentifier
NotEqualToExpression:
type: object
properties:
columnName:
type: string
description: The name of the column.
value:
type: string
description: The value that might not be equal to the expression.
required:
- columnName
- value
GreaterThanOrEqualToExpression:
type: object
properties:
columnName:
type: string
description: The name of the column.
value:
type: string
description: The value that might be greater than or equal to an expression.
required:
- columnName
- value
InExpression:
type: object
properties:
columnName:
type: string
description: The name of the column.
values:
type: array
items:
type: string
description: The values that might be in the expression.
required:
- columnName
- values
AccessDeniedException:
type: object
properties:
message:
type: string
required:
- message
NotLikeExpression:
type: object
properties:
columnName:
type: string
description: The name of the column.
value:
type: string
description: The value that might not be like the expression.
required:
- columnName
- value
UpdateAssetFilterOutput:
type: object
properties:
id:
type: string
description: The ID of the asset filter.
domainId:
type: string
description: The ID of the domain where the asset filter was created.
assetId:
type: string
description: The ID of the data asset.
name:
type: string
description: The name of the asset filter.
description:
type: string
description: The description of the asset filter.
status:
type: string
enum:
- VALID
- INVALID
description: The status of the asset filter.
configuration:
$ref: '#/components/schemas/AssetFilterConfiguration'
createdAt:
type: string
format: date-time
description: The timestamp at which the asset filter was created.
errorMessage:
type: string
description: The error message that is displayed if the action is not completed successfully.
effectiveColumnNames:
type: array
items:
type: string
description: The column names of the asset filter.
effectiveRowFilter:
type: string
description: The row filter of the asset filter.
required:
- id
- domainId
- assetId
- name
- configuration
RowFilterConfiguration:
type: object
properties:
rowFilter:
$ref: '#/components/schemas/RowFilter'
sensitive:
type: boolean
description: Specifies whether the row filter is sensitive.
required:
- rowFilter
IsNullExpression:
type: object
properties:
columnName:
type: string
description: The name of the column.
required:
- columnName
AssetFilterConfiguration:
type: object
properties:
columnConfiguration:
$ref: '#/components/schemas/ColumnFilterConfiguration'
rowConfiguration:
$ref: '#/components/schemas/RowFilterConfiguration'
description: Exactly one member is set.
DeleteAssetFilterInput:
type: object
properties:
domainIdentifier:
type: string
description: The ID of the domain where you want to delete an asset filter.
assetIdentifier:
type: string
description: The ID of the data asset.
identifier:
type: string
description: The ID of the asset filter that you want to delete.
required:
- domainIdentifier
- assetIdentifier
- identifier
LessThanExpression:
type: object
properties:
columnName:
type: string
description: The name of the column.
value:
type: string
description: The value that might be less than the expression.
required:
- columnName
- value
InternalServerException:
type: object
properties:
message:
type: string
required:
- message
ResourceNotFoundException:
type: object
properties:
message:
type: string
required:
- message
IsNotNullExpression:
type: object
properties:
columnName:
type: string
description: The name of the column.
required:
- columnName
ServiceQuotaExceededException:
type: object
properties:
message:
type: string
required:
- message
ConflictException:
type: object
properties:
message:
type: string
required:
- message
securitySchemes:
sigv4:
type: apiKey
in: header
name: Authorization
description: AWS Signature Version 4. The Authorization header carries an AWS4-HMAC-SHA256 signature over the canonical request, with X-Amz-Date (and X-Amz-Security-Token for temporary credentials). Not a bearer token.
x-aws-sigv4:
signingName: datazone
x-provenance:
method: harvested
publisher: Amazon Web Services
source: https://raw.githubusercontent.com/aws/api-models-aws/582e55931c45b944739742a2c1620b6026dd2d13/models/datazone/service/2018-05-10/datazone-2018-05-10.json
note: converted by smithy-to-openapi.py from AWS's Smithy model (roadmap#1001)