Chemaxon Search API

Structure search and export related operations.

GitHub OpenAPI

Operations 4

POST /searchService/matchSearch Collects matching structures based on the provided structure #
POST /searchService/exports Executes search and exports the result to a molecule file #
GET /searchService/levels Collects the available levels for 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/chemaxon:chemaxon-search-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

chemaxon-search-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Chemaxon Search API
  version: 26.1.5-2610221056
  description: 'Operations tagged Search across 2 of this provider''s published API definitions: chemaxon-compound-registration-openapi.json, chemaxon-compound-registration-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: /RegistryCxn/rest
tags:
- name: Search
  description: Structure search and export related operations.
paths:
  /searchService/search:
    post:
      tags:
      - Search
      summary: Executes search based on the provided filtering parameters
      operationId: search
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SearchRequest'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorMessage'
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SearchResult'
        '201':
          description: Created
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
    servers:
    - url: /RegistryCxn/rest
  /searchService/matchSearch:
    post:
      tags:
      - Search
      summary: Collects matching structures based on the provided structure
      operationId: search_1
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MatchSearchRequest'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorMessage'
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SearchResult'
        '201':
          description: Created
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
    servers:
    - url: /RegistryCxn/rest
  /searchService/exports:
    post:
      tags:
      - Search
      summary: Executes search and exports the result to a molecule file
      operationId: searchExport
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ExportSearchRequest'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorMessage'
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SearchExportResult'
        '201':
          description: Created
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
    servers:
    - url: /RegistryCxn/rest
  /searchService/levels:
    get:
      tags:
      - Search
      summary: Collects the available levels for search
      operationId: getLevels
      responses:
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorMessage'
        '200':
          description: OK
          content:
            '*/*':
              schema:
                type: array
                items:
                  type: string
                  enum:
                  - PARENT
                  - VERSION
                  - LOT
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
    servers:
    - url: /RegistryCxn/rest
components:
  schemas:
    SearchExportResult:
      type: object
      properties:
        status:
          type: string
          enum:
          - CREATED
          - IN_PROGRESS
          - SUCCESSFUL
          - FAILED
        selfHref:
          type: string
        contentHref:
          type: string
    PaginationRequestParams:
      type: object
      properties:
        offset:
          type: integer
          format: int32
        limit:
          type: integer
          format: int32
    ErrorMessage:
      type: object
      properties:
        errorCode:
          type: string
          enum:
          - UNKNOWN
          - UNAUTHORIZED
          - APPLICATION_ERROR
          - BAD_REQUEST
          - NOT_FOUND
        message:
          type: string
        detail:
          type: string
    FieldId:
      type: object
      properties:
        fieldName:
          type: string
          example: cst
        additional:
          type: boolean
          description: True in case of additional data field, false otherwise
      required:
      - additional
      - fieldName
    FieldMetadata:
      type: object
      properties:
        fieldId:
          $ref: '#/components/schemas/FieldId'
        displayName:
          type: string
        required:
          type: boolean
        type:
          type: string
          enum:
          - INT
          - DOUBLE
          - FLOAT
          - DECIMAL
          - STRING
          - DATETIME
        idBased:
          type: boolean
        requiredForSearch:
          type: boolean
        sortable:
          type: boolean
        operators:
          type: array
          items:
            type: string
            enum:
            - '='
            - <>
            - <
            - <=
            - '>'
            - '>='
            - LIKE
            - NOT LIKE
            - IN
            - AND
            - BETWEEN
            - '='
            - CONTAINS
            - <
            - '>'
        options:
          type: array
          items:
            $ref: '#/components/schemas/Option'
        list:
          type: boolean
    RegistrySearchResult:
      type: object
      properties:
        searchColumns:
          type: object
          additionalProperties:
            type: string
          description: Additional data fields included in the search result
        additionalData:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
          description: List of additional data
        additionalDataIds:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
          description: List of additional data with ids
        additionalDataErrors:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
          description: List of errors for unsuccessfully resolved id based additional data
        searchMatch:
          type: string
          description: Search match type
          enum:
          - MATCH_EXACT
          - MATCH_SIMILAR_CST
          - MATCH_TAUTOMER
          - MATCH_2D
          - MATCH_TAUTOMER_2D
          - MATCH_DATA_ONLY
          - MATCH_COMPONENT
          - MATCH_EXTERNAL_COMPONENT
          - MATCH_MARKUSH_EXACT
          - MATCH_MARKUSH_OVERLAP
          - MATCH_MARKUSH_CST
        actions:
          type: array
          description: List of possible match actions in case of match search
          items:
            type: string
            enum:
            - ACCEPT
            - UNIQUE
          uniqueItems: true
        dissimilarityMetric:
          type: string
          description: Dissimilarity metric used during the search
          enum:
          - Tanimoto
          - Tversky
          - Euclidean
          - Normalized_euclidean
          - Dice
          - Substructure
          - Superstucture
          - Markush_overlap
        dissimilarity:
          type: number
          format: float
          description: Dissimilarity description
        id:
          type: string
          example: CXN1
        idType:
          type: string
          enum:
          - LN
          - CN
          - PCN
          example: PCN
      required:
      - actions
      - additionalData
      - additionalDataErrors
      - additionalDataIds
      - dissimilarity
      - dissimilarityMetric
      - id
      - idType
      - searchColumns
      - searchMatch
    OrderingParam:
      type: object
      properties:
        field:
          $ref: '#/components/schemas/FieldId'
          xml:
            name: Field
        direction:
          type: string
          enum:
          - ASC
          - DESC
          xml:
            name: Direction
        fieldFromMetadata:
          $ref: '#/components/schemas/FieldMetadata'
          writeOnly: true
      required:
      - direction
      - field
    Option:
      type: object
      properties:
        label:
          type: string
        value:
          type: string
    OrderingParams:
      type: object
      properties:
        orderingParams:
          type: array
          items:
            $ref: '#/components/schemas/OrderingParam'
    SearchRequest:
      type: object
      properties:
        queryStructure:
          type: string
          description: Chemical structure within the structure search criteria
          example: C1=CC=CC=C1
        resultFormat:
          type: string
          description: Structure file format in the response object
        exportFormat:
          type: string
          description: Exported document format
          enum:
          - JSON
          - SDF
          - CSV
          example: SDF
        options:
          $ref: '#/components/schemas/SearchOption'
          description: Structure-related search options
        resultFields:
          type: array
          description: List of fields included in the results
          items:
            $ref: '#/components/schemas/FieldId'
        conditions:
          type: array
          description: List of field-related criteria
          items:
            $ref: '#/components/schemas/SearchCondition'
        pagination:
          $ref: '#/components/schemas/PaginationRequestParams'
          description: Pagination
        ordering:
          $ref: '#/components/schemas/OrderingParams'
          description: Ordering parameters
        structuralClass:
          type: string
          description: 'Structural class: COMPOUND or MONOMER, if not provided COMPOUND will be used'
          enum:
          - MONOMER
          - COMPOUND
      required:
      - conditions
      - ordering
      - pagination
      - resultFields
      - resultFormat
    SearchCondition:
      type: object
      properties:
        fieldId:
          $ref: '#/components/schemas/FieldId'
          xml:
            name: Field
        operator:
          type: string
          enum:
          - Equals, NotEquals, LessThan, GreaterThan, Like, NotLike, In, And, Range, SimilarTo, Contains, Before, After
          example: Equals
          xml:
            name: Operator
        value:
          type: string
          xml:
            name: Value
    SearchResult:
      type: object
      properties:
        resultsPage:
          type: array
          description: List containing the results corresponding to a requested page
          items:
            $ref: '#/components/schemas/RegistrySearchResult'
          xml:
            name: ResultsPage
        resultsCount:
          type: integer
          format: int32
          description: Total number of search results
          xml:
            name: ResultsCount
        projectFilteredResultsCount:
          type: integer
          format: int32
          description: Number of results that were filtered due to project restrictions
          xml:
            name: ProjectFilteredResultsCount
        nextPageOffset:
          type: integer
          format: int32
          description: Offset for retrieving the next page of search results
          xml:
            name: NextPageOffset
        projectFileteredResultsCount:
          type: integer
          format: int32
          writeOnly: true
      required:
      - nextPageOffset
      - projectFilteredResultsCount
      - resultsCount
      - resultsPage
    MatchSearchRequest:
      type: object
      properties:
        format:
          type: string
          description: Molecule format
          example: SMILES
        structure:
          type: string
          description: Structure data in the given format
          example: C1=CC=CC=C1
        cst:
          type: string
          description: Chemically Significant Text
      required:
      - cst
      - format
      - structure
    ExportSearchRequest:
      type: object
      properties:
        queryStructure:
          type: string
          description: Chemical structure within the structure search criteria
          example: C1=CC=CC=C1
        resultFormat:
          type: string
          description: Structure file format in the response object
        exportFormat:
          type: string
          description: Exported document format
          enum:
          - JSON
          - SDF
          - CSV
          example: SDF
        options:
          $ref: '#/components/schemas/SearchOption'
          description: Structure-related search options
        resultFields:
          type: array
          description: List of fields included in the results
          items:
            $ref: '#/components/schemas/FieldId'
        conditions:
          type: array
          description: List of field-related criteria
          items:
            $ref: '#/components/schemas/SearchCondition'
        pagination:
          $ref: '#/components/schemas/PaginationRequestParams'
          description: Pagination
        ordering:
          $ref: '#/components/schemas/OrderingParams'
          description: Ordering parameters
        structuralClass:
          type: string
          description: 'Structural class: COMPOUND or MONOMER, if not provided COMPOUND will be used'
          enum:
          - MONOMER
          - COMPOUND
        identifiers:
          type: array
          description: List of search results IDs that will be exported
          items:
            type: string
      required:
      - conditions
      - identifiers
      - ordering
      - pagination
      - resultFields
      - resultFormat
    SearchOption:
      type: object
      properties:
        searchType:
          type: string
          description: Structure search type
          enum:
          - FULL
          - SUBSTRUCTURE
          - DUPLICATE
          - SIMILARITY
        searchLevel:
          type: string
          description: Search level
          enum:
          - PARENT
          - VERSION
          - LOT
        tautomer:
          type: string
          description: Include tautomer matches
          enum:
          - 'ON'
          - 'OFF'
          - DEFAULT
          example: 'OFF'
        stereo:
          type: string
          description: Include stereo matches
          enum:
          - 'ON'
          - 'OFF'
          - DEFAULT
          example: 'ON'
        markush:
          type: string
          description: Markush search enabled
          enum:
          - 'ON'
          - 'OFF'
          - DEFAULT
        dissimilarityMetric:
          type: string
          description: Dissimilarity metric used in case of similarity search
          enum:
          - Tanimoto
          - Tversky
          - Euclidean
          - Normalized_euclidean
          - Dice
          - Substructure
          - Superstucture
          - Markush_overlap
        dissimilarityThreshold:
          type: number
          format: float
          description: Dissimilarity treshold in case of similarity search
        searchDeleted:
          type: string
          description: Search for deleted, or non-deleted records (by default)
          enum:
          - 'YES'
          - 'NO'
      required:
      - markush
      - searchLevel
x-refined-from:
- chemaxon-compound-registration-openapi.json
- chemaxon-compound-registration-openapi.yml