Clarity Filters API

The filters API from Clarity — 7 operation(s) for filters.

Operations 9

POST /api/v1/filters List Filters #
GET /api/v1/filters/cache List Filters Cache #
POST /api/v1/filters/cache Add Filters Cache #
GET /api/v1/filters/cache/{filters_cache_id} Get Filters Cache #
DELETE /api/v1/filters/cache/{filters_cache_id} Delete Filters Cache #
GET /api/v1/filters/metadata Get Filters Metadata #
POST /api/v1/filters/filter-names Get Filter Names #
POST /api/v1/filters/filter-values Get Filter Values #
POST /api/v1/filters/query Get Elasticsearch Query #

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/onclarity-com:onclarity-com-filters-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

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

onclarity-com-filters-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Fast Filters API
  version: 0.1.0
tags:
- name: Filters
paths:
  /api/v1/filters:
    post:
      tags:
      - Filters
      summary: List Filters
      operationId: list_filters_api_v1_filters_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FiltersRequest'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
      - HTTPBearer: []
  /api/v1/filters/cache:
    get:
      tags:
      - Filters
      summary: List Filters Cache
      operationId: list_filters_cache_api_v1_filters_cache_get
      security:
      - HTTPBearer: []
      parameters:
      - name: private
        in: query
        required: false
        schema:
          anyOf:
          - type: boolean
          - type: 'null'
          title: Private
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
    post:
      tags:
      - Filters
      summary: Add Filters Cache
      operationId: add_filters_cache_api_v1_filters_cache_post
      security:
      - HTTPBearer: []
      parameters:
      - name: private
        in: query
        required: false
        schema:
          anyOf:
          - type: boolean
          - type: 'null'
          title: Private
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AddFiltersCacheRequest'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/v1/filters/cache/{filters_cache_id}:
    get:
      tags:
      - Filters
      summary: Get Filters Cache
      operationId: get_filters_cache_api_v1_filters_cache__filters_cache_id__get
      security:
      - HTTPBearer: []
      parameters:
      - name: filters_cache_id
        in: path
        required: true
        schema:
          type: integer
          title: Filters Cache Id
      - name: private
        in: query
        required: false
        schema:
          anyOf:
          - type: boolean
          - type: 'null'
          title: Private
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
    delete:
      tags:
      - Filters
      summary: Delete Filters Cache
      operationId: delete_filters_cache_api_v1_filters_cache__filters_cache_id__delete
      security:
      - HTTPBearer: []
      parameters:
      - name: filters_cache_id
        in: path
        required: true
        schema:
          type: integer
          title: Filters Cache Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/v1/filters/metadata:
    get:
      tags:
      - Filters
      summary: Get Filters Metadata
      description: 'Get filter metadata (name, key, type) without possible values.

        Returns a lightweight list of available filters with their types.'
      operationId: get_filters_metadata_api_v1_filters_metadata_get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
      security:
      - HTTPBearer: []
  /api/v1/filters/filter-names:
    post:
      tags:
      - Filters
      summary: Get Filter Names
      description: 'Get filters that have exactly 1 value when filtered by the provided filters.

        Compares results with and without filters to determine if filters are disabled.

        Returns filter names (key, name, type, disabled) without their values.

        For range filters, also returns min and max values when available.

        Supports last_n_days parameter to auto-generate ds date range filter.'
      operationId: get_filter_names_api_v1_filters_filter_names_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FiltersRequest'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
      - HTTPBearer: []
  /api/v1/filters/filter-values:
    post:
      tags:
      - Filters
      summary: Get Filter Values
      description: 'Get possible_values for specific filter name.

        Compares values with and without filters to determine if values are disabled.

        Returns values with ''disabled'' field indicating if value disappeared after applying filters.

        For range filters, excludes filters with the same field name to avoid self-restriction.

        Supports last_n_days parameter to auto-generate ds date range filter.'
      operationId: get_filter_values_api_v1_filters_filter_values_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FilterValuesRequest'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
      - HTTPBearer: []
  /api/v1/filters/query:
    post:
      tags:
      - Filters
      summary: Get Elasticsearch Query
      description: 'Convert filters to Elasticsearch query.

        Takes a list of filters and returns the corresponding Elasticsearch query.'
      operationId: get_elasticsearch_query_api_v1_filters_query_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FiltersRequest'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/QueryResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
      - HTTPBearer: []
components:
  schemas:
    FilterValuesRequest:
      properties:
        filters:
          items:
            $ref: '#/components/schemas/QueryFilter'
          type: array
          title: Filters
          default: []
        baseline_filters:
          anyOf:
          - items:
              $ref: '#/components/schemas/QueryFilter'
            type: array
          - type: 'null'
          title: Baseline Filters
        filter_name:
          type: string
          title: Filter Name
          default: ''
        last_n_days:
          anyOf:
          - type: integer
          - type: 'null'
          title: Last N Days
      type: object
      title: FilterValuesRequest
    QueryResponse:
      properties:
        query:
          additionalProperties: true
          type: object
          title: Query
      type: object
      required:
      - query
      title: QueryResponse
    FiltersRequest:
      properties:
        filters:
          items:
            $ref: '#/components/schemas/QueryFilter'
          type: array
          title: Filters
          default: []
        baseline_filters:
          anyOf:
          - items:
              $ref: '#/components/schemas/QueryFilter'
            type: array
          - type: 'null'
          title: Baseline Filters
        last_n_days:
          anyOf:
          - type: integer
          - type: 'null'
          title: Last N Days
      type: object
      title: FiltersRequest
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
            - type: string
            - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
        input:
          title: Input
        ctx:
          type: object
          title: Context
      type: object
      required:
      - loc
      - msg
      - type
      title: ValidationError
    AddFiltersCacheRequest:
      properties:
        name:
          type: string
          title: Name
        filters:
          items:
            $ref: '#/components/schemas/QueryFilter'
          type: array
          title: Filters
      type: object
      required:
      - name
      - filters
      title: AddFiltersCacheRequest
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    QueryFilter:
      properties:
        type:
          anyOf:
          - type: string
            const: exists
          - type: string
            const: list
          - type: string
            const: nested
          - type: string
            const: range
          - type: string
            const: text
          title: Type
        key:
          type: string
          title: Key
        values:
          anyOf:
          - items:
              type: string
            type: array
          - items:
              type: integer
            type: array
          - items:
              additionalProperties: true
              type: object
            type: array
          - type: string
          - type: 'null'
          title: Values
        min:
          anyOf:
          - type: string
          - type: integer
          - type: number
          - type: 'null'
          title: Min
        max:
          anyOf:
          - type: string
          - type: integer
          - type: number
          - type: 'null'
          title: Max
        operator:
          anyOf:
          - type: string
            const: eq
          - type: string
            const: neq
          - type: string
            const: contains
          title: Operator
          default: eq
        generated:
          type: boolean
          title: Generated
          default: false
      type: object
      required:
      - type
      - key
      title: QueryFilter
  securitySchemes:
    HTTPBearer:
      type: http
      scheme: bearer
    HTTPBasic:
      type: http
      scheme: basic