Chemaxon Markush API

The Markush API from Chemaxon — 1 operation(s) for markush.

GitHub OpenAPI

Operations 1

POST /rest-v1/markush/enumerate Markush enumeration #

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-markush-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-markush-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Chemaxon Markush API
  version: 26.1.3
  description: 'Operations tagged Markush across 2 of this provider''s published API definitions: chemaxon-markush-enumeration-openapi.json, chemaxon-markush-enumeration-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://jchem-microservices.chemaxon.com/jws-markush
tags:
- name: Markush
paths:
  /rest-v1/markush/enumerate:
    post:
      operationId: enumerateSequential
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EnumerationRequest'
        required: true
      responses:
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EnumerationResponse'
          description: Un-parsable structure or other invalid value in the request.
      summary: Markush enumeration
      tags:
      - Markush
    servers:
    - url: https://jchem-microservices.chemaxon.com/jws-markush
components:
  schemas:
    EnumerationResponse:
      properties:
        combinatorialCount:
          type: integer
          format: int64
          description: 'It''s an upper limit of count that is based on combinatorial calculation.

            This value is returned unchanged even if limit of iteration or result counts are set.'
        molecules:
          type: array
          description: list of enumerated molecules
          example: CCC
          items:
            type: string
        resultCount:
          type: integer
          format: int32
          description: actual result count
        status:
          type: string
          description: status of enumeration.
          enum:
          - COMPLETE
          - RESULT_LIMIT_REACHED
          - TIMEOUT
          example: COMPLETE
    RgroupRequest:
      properties:
        fragments:
          type: array
          description: R-group fragments
          example:
          - '[#8]-* |$;_AP1$|'
          items:
            type: string
        label:
          type: string
          description: Label of the R-group (e.g. "R1", "R2", etc.)
          example: R1
    EnumerationRequest:
      description: Json structure that contains the structure and the needed parameters.
      properties:
        chemicalTermsFilterExpression:
          type: string
          description: 'It filters out the result according to the specified chemical terms.

            Filtering is executed before returning and counting the result set.'
          example: mass() < 200
        enableDuplicateFilter:
          type: boolean
          default: false
          description: If enabled it filters out duplicates. Filtering is executed before returning and counting the result set.
        enableValenceFilter:
          type: boolean
          default: false
          description: 'If the Markush structure is not properly (or too generally) formulated, it is possible

            that it describes structures with valence errors. In this case, the valence filter setting is useful

            to filter out the offending result structures.

            Filtering is executed before returning and counting the result set.'
        inputFormat:
          type: string
          description: Format of the input structure, or null for auto recognition.
          example: cxsmarts
        maxResultCount:
          type: integer
          format: int32
          default: 100
          description: 'If set, iteration stops on reached given result count, and returns the incomplete results.

            Set to null for no limit.'
        resultStructureFormat:
          type: string
          default: mrv
          description: The output format and options for the enumerated structures.
        rgroups:
          type: array
          description: Additional R-groups that will be added to the main structure. Existing R-groups in the main structure are not replaced, just extended.
          items:
            $ref: '#/components/schemas/RgroupRequest'
        structure:
          type: string
          description: the structure to be enumerated
          example: '[#6,#7,#8]#[*] |$;_R1$,RG:_R1={[#6]-* |$;_AP1$|},{[#7]-* |$;_AP1$|}|'
        timeoutInMilliseconds:
          type: integer
          format: int32
          default: 10000
          description: If set, iteration stops on timeout, and returns the incomplete results. Set to null for no timeout.
      required:
      - structure
x-refined-from:
- chemaxon-markush-enumeration-openapi.json
- chemaxon-markush-enumeration-openapi.yml