Mantic Search API

The search API from Mantic — 2 operation(s) for search.

Operations 2

GET /beta/search Search #
GET /webapp/search Global Search #

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/mantic:mantic-search-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

mantic-search-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Fast Search API
  version: 0.1.0
tags:
- name: Search
paths:
  /beta/search:
    get:
      tags:
      - Search
      summary: Search
      description: Search questions, dashboards and situations, grouped by kind; omit `q` to browse.
      operationId: search_beta_search_get
      security:
      - OAuth2AuthorizationCodeBearer: []
      parameters:
      - name: q
        in: query
        required: false
        schema:
          anyOf:
          - type: string
            minLength: 2
            maxLength: 200
          - type: 'null'
          title: Q
      - name: limit_per_group
        in: query
        required: false
        schema:
          type: integer
          maximum: 10
          minimum: 1
          default: 5
          title: Limit Per Group
      - name: offset
        in: query
        required: false
        schema:
          type: integer
          minimum: 0
          default: 0
          title: Offset
      - name: type
        in: query
        required: false
        schema:
          anyOf:
          - enum:
            - question
            - dashboard
            - situation
            type: string
          - type: 'null'
          title: Type
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GlobalSearchResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /webapp/search:
    get:
      tags:
      - Search
      summary: Global Search
      description: 'Search the entity groups rendered by the global search palette, ordered for the reader.


        Every returned hit carries the request id its served row is recorded under, and the

        response carries the `order` token that later pages of the same query must send back.'
      operationId: global_search_webapp_search_get
      security:
      - OAuth2AuthorizationCodeBearer: []
      parameters:
      - name: q
        in: query
        required: false
        schema:
          anyOf:
          - type: string
            minLength: 2
            maxLength: 200
          - type: 'null'
          title: Q
      - name: limit_per_group
        in: query
        required: false
        schema:
          type: integer
          maximum: 10
          minimum: 1
          default: 5
          title: Limit Per Group
      - name: offset
        in: query
        required: false
        schema:
          type: integer
          minimum: 0
          default: 0
          title: Offset
      - name: type
        in: query
        required: false
        schema:
          anyOf:
          - enum:
            - question
            - dashboard
            - situation
            type: string
          - type: 'null'
          title: Type
      - name: order
        in: query
        required: false
        schema:
          anyOf:
          - type: string
            maxLength: 8000
          - type: 'null'
          title: Order
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GlobalSearchResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    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
    SituationSearchHit:
      properties:
        kind:
          type: string
          const: situation
          title: Kind
          default: situation
        entry_id:
          type: string
          title: Entry Id
        name:
          type: string
          title: Name
        situation_type:
          type: string
          title: Situation Type
        domain:
          anyOf:
          - type: string
          - type: 'null'
          title: Domain
        question_count:
          type: integer
          title: Question Count
        last_evidence_at:
          anyOf:
          - type: string
            format: date
          - type: 'null'
          title: Last Evidence At
        request_id:
          anyOf:
          - type: string
            format: uuid
          - type: 'null'
          title: Request Id
          description: Opaque id of the request that served this result.
      type: object
      required:
      - entry_id
      - name
      - situation_type
      - domain
      - question_count
      - last_evidence_at
      title: SituationSearchHit
    SituationSearchGroup:
      properties:
        items:
          items:
            $ref: '#/components/schemas/SituationSearchHit'
          type: array
          title: Items
        has_more:
          type: boolean
          title: Has More
        available:
          type: boolean
          title: Available
          default: true
      type: object
      required:
      - items
      - has_more
      title: SituationSearchGroup
    DashboardSearchGroup:
      properties:
        items:
          items:
            $ref: '#/components/schemas/DashboardSearchHit'
          type: array
          title: Items
        has_more:
          type: boolean
          title: Has More
        available:
          type: boolean
          title: Available
          default: true
      type: object
      required:
      - items
      - has_more
      title: DashboardSearchGroup
    DashboardSearchHit:
      properties:
        kind:
          type: string
          const: dashboard
          title: Kind
          default: dashboard
        id:
          type: integer
          title: Id
        title:
          type: string
          title: Title
        question_count:
          type: integer
          title: Question Count
        updated_at:
          type: string
          format: date-time
          title: Updated At
        request_id:
          anyOf:
          - type: string
            format: uuid
          - type: 'null'
          title: Request Id
          description: Opaque id of the request that served this result.
      type: object
      required:
      - id
      - title
      - question_count
      - updated_at
      title: DashboardSearchHit
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    QuestionSearchHit:
      properties:
        kind:
          type: string
          const: question
          title: Kind
          default: question
        id:
          type: integer
          title: Id
        title:
          type: string
          title: Title
        declarative_title:
          anyOf:
          - type: string
          - type: 'null'
          title: Declarative Title
        created_at:
          type: string
          format: date-time
          title: Created At
        question_type:
          $ref: '#/components/schemas/OutputType'
        resolution_time:
          anyOf:
          - type: string
            format: date-time
          - type: 'null'
          title: Resolution Time
        is_resolved:
          type: boolean
          title: Is Resolved
        request_id:
          anyOf:
          - type: string
            format: uuid
          - type: 'null'
          title: Request Id
          description: Opaque id of the request that served this result.
      type: object
      required:
      - id
      - title
      - created_at
      - question_type
      - resolution_time
      - is_resolved
      title: QuestionSearchHit
    QuestionSearchGroup:
      properties:
        items:
          items:
            $ref: '#/components/schemas/QuestionSearchHit'
          type: array
          title: Items
        has_more:
          type: boolean
          title: Has More
        available:
          type: boolean
          title: Available
          default: true
      type: object
      required:
      - items
      - has_more
      title: QuestionSearchGroup
    OutputType:
      type: string
      enum:
      - binary
      - categorical
      - numerical
      - date
      - joint
      title: OutputType
      description: 'Question output type.

        Values:

        - binary: The outcome has two mutually exclusive possibilities, such as yes or no.

        - categorical: The outcome is one of several mutually exclusive named options.

        - numerical: The resolving outcome is a numeric value; include its unit and range.

        - date: The resolving outcome is a date or timestamp.

        - joint: The outcome is a vector of named numerical dimensions under one constraint.'
    GlobalSearchResponse:
      properties:
        query:
          type: string
          title: Query
        questions:
          $ref: '#/components/schemas/QuestionSearchGroup'
        dashboards:
          $ref: '#/components/schemas/DashboardSearchGroup'
        situations:
          $ref: '#/components/schemas/SituationSearchGroup'
        total_returned:
          type: integer
          title: Total Returned
        order:
          anyOf:
          - type: string
          - type: 'null'
          title: Order
          description: Opaque token of this search's ordering, to send back for its later pages.
      type: object
      required:
      - query
      - questions
      - dashboards
      - situations
      - total_returned
      title: GlobalSearchResponse
  securitySchemes:
    OAuth2AuthorizationCodeBearer:
      type: oauth2
      flows:
        authorizationCode:
          scopes: {}
          authorizationUrl: https://app.mantic.com/auth/oauth2/authorize
          tokenUrl: https://app.mantic.com/auth/oauth2/token