Amazon DataZone Datazone Filters API

The Datazone Filters API from Amazon DataZone — 2 operation(s) for datazone filters.

Operations 5

POST /v2/domains/{domainIdentifier}/assets/{assetIdentifier}/filters Create Asset Filter #
GET /v2/domains/{domainIdentifier}/assets/{assetIdentifier}/filters List Asset Filters #
DELETE /v2/domains/{domainIdentifier}/assets/{assetIdentifier}/filters/{identifier} Delete Asset Filter #
GET /v2/domains/{domainIdentifier}/assets/{assetIdentifier}/filters/{identifier} Get Asset Filter #
PATCH /v2/domains/{domainIdentifier}/assets/{assetIdentifier}/filters/{identifier} Update Asset Filter #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • 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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/amazon-datazone:amazon-datazone-filters-api"
All apis
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.

Get an API 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 Specification

amazon-datazone-filters-api-openapi.yml Raw ↑
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)