Chemaxon Reactor Work queue handler controller API

Use this controller to handle async and background tasks

GitHub OpenAPI

Operations 13

PUT /rest-v1/work-queue/reactor/task Creates a new reactor task / background process to the work queue #
DELETE /rest-v1/work-queue/reactor/task/{taskId} Deletes the specified task #
GET /rest-v1/work-queue/reactor/task/{taskId} Gets the state of the specified task / background process #
PUT /rest-v1/work-queue/reactor/task/{taskId} Adds structures to specified task / background process #
PUT /rest-v1/work-queue/reactor/task/{taskId}/copy Copies an already existing task / background process to the work queue #
POST /rest-v1/work-queue/reactor/task/{taskId}/import-file/{fileName} Imports all structures from the file and adds them to the given task ID #
POST /rest-v1/work-queue/reactor/task/{taskId}/manage Manages the specified task #
GET /rest-v1/work-queue/reactor/task/{taskId}/results Get task result page #
DELETE /rest-v1/work-queue/reactor/task/{taskId}/structure/{structureKey} Deletes the specified structure of the specified task / background process #
GET /rest-v1/work-queue/reactor/task/{taskId}/structure/{structureKey} Gets the specified structure of the specified task / background process #
GET /rest-v1/work-queue/reactor/task/{taskId}/structures Gets all of the structures of the specified task / background process #
POST /rest-v1/work-queue/reactor/task/{taskId}/upload Uploads structures of specified task #
GET /rest-v1/work-queue/reactor/tasks Lists all tasks #

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-reactor-work-queue-handler-controller-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-reactor-work-queue-handler-controller-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Chemaxon Reactor Work queue handler controller API
  version: 26.1.3
  description: 'Operations tagged Reactor Work queue handler controller across 2 of this provider''s published API definitions: chemaxon-task-manager-openapi.json, chemaxon-task-manager-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://jchem-microservices.chemaxon.com/jws-taskmanager
tags:
- description: Use this controller to handle async and background tasks
  name: Reactor Work queue handler controller
paths:
  /rest-v1/work-queue/reactor/task:
    put:
      operationId: createTask
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ReactorTaskCreationRequest'
        required: true
      responses:
        '201':
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ReactorTaskDescriptor'
          description: Created
      summary: Creates a new reactor task / background process to the work queue
      tags:
      - Reactor Work queue handler controller
    servers:
    - url: https://jchem-microservices.chemaxon.com/jws-taskmanager
  /rest-v1/work-queue/reactor/task/{taskId}:
    delete:
      operationId: deleteTask
      parameters:
      - description: id of the task to delete
        example: 3
        in: path
        name: taskId
        required: true
        schema:
          type: integer
          format: int64
      responses:
        '200':
          description: OK
      summary: Deletes the specified task
      tags:
      - Reactor Work queue handler controller
    get:
      operationId: monitorState
      parameters:
      - description: id of the task to monitor its state
        example: 3
        in: path
        name: taskId
        required: true
        schema:
          type: integer
          format: int64
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MonitorResponse'
          description: OK
      summary: Gets the state of the specified task / background process
      tags:
      - Reactor Work queue handler controller
    put:
      operationId: addStructures
      parameters:
      - description: id of the task to add structures
        example: 3
        in: path
        name: taskId
        required: true
        schema:
          type: integer
          format: int64
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ReactorAddStructuresRequest'
        required: true
      responses:
        '201':
          content:
            '*/*':
              schema:
                type: array
                items:
                  type: string
          description: Created
      summary: Adds structures to specified task / background process
      tags:
      - Reactor Work queue handler controller
    servers:
    - url: https://jchem-microservices.chemaxon.com/jws-taskmanager
  /rest-v1/work-queue/reactor/task/{taskId}/copy:
    put:
      description: Request body is optional. Fill in only if you want to change some aspects of the copied task!
      operationId: copyTask
      parameters:
      - description: id of the task to copy
        example: 3
        in: path
        name: taskId
        required: true
        schema:
          type: integer
          format: int64
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ReactorTaskCreationRequest'
      responses:
        '201':
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ReactorTaskDescriptor'
          description: Created
      summary: Copies an already existing task / background process to the work queue
      tags:
      - Reactor Work queue handler controller
    servers:
    - url: https://jchem-microservices.chemaxon.com/jws-taskmanager
  /rest-v1/work-queue/reactor/task/{taskId}/import-file/{fileName}:
    post:
      description: 'The file can be a reference to the .json, or a .zip archive, where first item is the .json.

        Default import directory is ./data/export, that can be modified by setting the value of

        chemaxon.microservices.db.import-export.dir property.'
      operationId: importFromFile
      parameters:
      - description: id of the task to upload the structures
        example: 3
        in: path
        name: taskId
        required: true
        schema:
          type: integer
          format: int64
      - description: File name
        example: exported.json
        in: path
        name: fileName
        required: true
        schema:
          type: string
      - description: position of reactants in reaction, only required and used for Reactor tasks
        in: query
        name: position
        required: false
        schema:
          type: integer
          format: int32
      responses:
        '201':
          content:
            '*/*':
              schema:
                type: array
                items:
                  type: string
          description: Created
      summary: Imports all structures from the file and adds them to the given task ID
      tags:
      - Reactor Work queue handler controller
    servers:
    - url: https://jchem-microservices.chemaxon.com/jws-taskmanager
  /rest-v1/work-queue/reactor/task/{taskId}/manage:
    post:
      operationId: manageTask
      parameters:
      - description: id of the task to upload the structures
        example: 3
        in: path
        name: taskId
        required: true
        schema:
          type: integer
          format: int64
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ManageRequest'
        required: true
      responses:
        '200':
          description: OK
      summary: Manages the specified task
      tags:
      - Reactor Work queue handler controller
    servers:
    - url: https://jchem-microservices.chemaxon.com/jws-taskmanager
  /rest-v1/work-queue/reactor/task/{taskId}/results:
    get:
      description: Gets a specific page of the results of the specified task / background process
      operationId: getResultPage
      parameters:
      - description: id of the task to which the structure belongs
        example: 3
        in: path
        name: taskId
        required: true
        schema:
          type: integer
          format: int64
      - description: requested result type in the response.
        in: query
        name: resultIdType
        required: false
        schema:
          type: string
          default: SUCCESS
          enum:
          - SUCCESS
          - ERROR
      - description: Requested page number, starting from 0
        in: query
        name: pageNumber
        required: false
        schema:
          type: integer
          format: int32
          default: 0
      - description: Requested page size
        in: query
        name: pageSize
        required: false
        schema:
          type: integer
          format: int32
          default: 20
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ReactorResultResponse'
          description: OK
      summary: Get task result page
      tags:
      - Reactor Work queue handler controller
    servers:
    - url: https://jchem-microservices.chemaxon.com/jws-taskmanager
  /rest-v1/work-queue/reactor/task/{taskId}/structure/{structureKey}:
    delete:
      operationId: deleteStructure
      parameters:
      - description: id of the task to which the structure belongs
        example: 3
        in: path
        name: taskId
        required: true
        schema:
          type: integer
          format: int64
      - description: Task-Manager-specific unique key of the structure
        example: s5
        in: path
        name: structureKey
        required: true
        schema:
          type: string
      responses:
        '202':
          description: Accepted
      summary: Deletes the specified structure of the specified task / background process
      tags:
      - Reactor Work queue handler controller
    get:
      operationId: getStructure
      parameters:
      - description: id of the task to which the structure belongs
        example: 3
        in: path
        name: taskId
        required: true
        schema:
          type: integer
          format: int64
      - description: Task-Manager-specific unique key of the structure
        example: s5
        in: path
        name: structureKey
        required: true
        schema:
          type: string
      - description: the output format of the structure, if not set, then returns the way the structure is in the database
        in: query
        name: outputFormat
        required: false
        schema:
          type: string
      responses:
        '200':
          content:
            '*/*':
              schema:
                type: string
                format: byte
          description: OK
      summary: Gets the specified structure of the specified task / background process
      tags:
      - Reactor Work queue handler controller
    servers:
    - url: https://jchem-microservices.chemaxon.com/jws-taskmanager
  /rest-v1/work-queue/reactor/task/{taskId}/structures:
    get:
      operationId: getStructures
      parameters:
      - description: id of the task to which the structure belongs
        example: 3
        in: path
        name: taskId
        required: true
        schema:
          type: integer
          format: int64
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ReactorStructureResponse'
          description: OK
      summary: Gets all of the structures of the specified task / background process
      tags:
      - Reactor Work queue handler controller
    servers:
    - url: https://jchem-microservices.chemaxon.com/jws-taskmanager
  /rest-v1/work-queue/reactor/task/{taskId}/upload:
    post:
      operationId: uploadStructures
      parameters:
      - description: id of the task to upload the structures
        example: 3
        in: path
        name: taskId
        required: true
        schema:
          type: integer
          format: int64
      - description: input format and options
        in: query
        name: inputFormat
        required: false
        schema:
          type: string
      - description: the mode of error handling
        in: query
        name: errorHandlingMode
        required: true
        schema:
          type: string
          default: HALT
          enum:
          - SKIP
          - HALT
          - EMPTY
      - description: position of reactants in reaction, only required and used for Reactor tasks
        in: query
        name: position
        required: false
        schema:
          type: integer
          format: int32
          default: 0
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                file:
                  type: string
                  format: binary
                  description: The file containing the structures to upload to the specified task
              required:
              - file
      responses:
        '201':
          content:
            application/json:
              schema:
                type: array
                items:
                  type: string
          description: Created
      summary: Uploads structures of specified task
      tags:
      - Reactor Work queue handler controller
    servers:
    - url: https://jchem-microservices.chemaxon.com/jws-taskmanager
  /rest-v1/work-queue/reactor/tasks:
    get:
      operationId: tasks
      responses:
        '200':
          content:
            '*/*':
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ReactorTaskDescriptor'
          description: OK
      summary: Lists all tasks
      tags:
      - Reactor Work queue handler controller
    servers:
    - url: https://jchem-microservices.chemaxon.com/jws-taskmanager
components:
  schemas:
    ReactorStructureWithId:
      properties:
        id:
          type: string
          description: The ID of the structure.
          example: '"4"'
        structure:
          type: string
          description: The structure.
          example: O=C1CCCC=C1
    ReactorTaskDescriptor:
      description: All information about the reactor task
      properties:
        organization:
          type: string
          deprecated: true
          description: Not used. A default value is returned for backward compatibility.
        params:
          type: object
          description: Any additional property object to set up the task.
          example:
            copyPropertyByReactant:
            - copyAs: NewPropertyName
              copyFrom: 1
              propertyName: PropertyName
            outputFormat: mrv
            productIndexes:
            - 1
            ratio:
            - 1
            reactantInputFormat: smiles
            reaction: '[#6:8]-[#6:1](=[O:3])-[#6:2](-[#6:9])=[O:6]>>[H:5][#8:4]-[#6:1](=[O:3])[C:2]([#6:8])([#6:9])[#8:6][H:7]'
            resultType: product
            showUnsuccessfulReactions: true
            unambiguousOnly: false
        status:
          type: string
          description: Current status of task
          enum:
          - PREPARING
          - WAITING
          - IN_PROGRESS
          - READY
          - ERROR
          - PAUSED
        task:
          type: string
          description: The process that should be performed by the service
          example: react/combinatorial
        taskId:
          type: integer
          format: int64
          description: The identifier of the task in the database
        user:
          type: string
          deprecated: true
          description: Not used. A default value is returned for backward compatibility.
    ReactorAddStructuresRequest:
      description: structure and input format descriptor object
      properties:
        inputFormat:
          type: string
          description: The input format and options.
          example: smiles
        position:
          type: integer
          format: int32
          description: Position of reactant in reaction.
          example: 0
        structures:
          type: array
          description: A list of structures to add to task.
          example:
          - id: 1
            structure: OC(=O)CC(=O)C(=O)CC(O)=O
          - id: 2
            structure: C1CCCCC1
          items:
            $ref: '#/components/schemas/ReactorStructureWithId'
      required:
      - structures
    ReactorRequestStructure:
      description: Represents a structure
      properties:
        id:
          type: string
          description: The ID of the structure.
          example: '"4"'
        position:
          type: integer
          format: int32
          description: The position of the structure to react.
        structure:
          type: string
          description: The structure.
          example: O=C1CCCC=C1
    ReactorStructureResponse:
      properties:
        id:
          type: string
          description: The ID of the structure.
        inputFormat:
          type: string
          description: The input format of the structure
        key:
          type: string
          description: Task-Manager-specific unique key of the structure
        position:
          type: integer
          format: int32
          description: Position of reactant in reaction.
        structure:
          type: string
          description: The structure.
    ReactorTaskCreationRequest:
      description: universal task descriptor object
      properties:
        params:
          type: object
          description: Any additional property object to set up the task.
          example:
            copyPropertyByReactant:
            - copyAs: NewPropertyName
              copyFrom: 1
              propertyName: PropertyName
            outputFormat: mrv
            productIndexes:
            - 1
            ratio:
            - 1
            reactantInputFormat: smiles
            reaction: '[#6:8]-[#6:1](=[O:3])-[#6:2](-[#6:9])=[O:6]>>[H:5][#8:4]-[#6:1](=[O:3])[C:2]([#6:8])([#6:9])[#8:6][H:7]'
            resultType: product
            showUnsuccessfulReactions: true
            unambiguousOnly: false
        task:
          type: string
          description: The process that should be performed by the service
          example: react/combinatorial
    MonitorResponse:
      description: Information about the state of the task
      properties:
        inQueuePosition:
          type: integer
          format: int32
          description: The task's position in the queue while its status is WAITING.
        processedError:
          type: integer
          format: int64
          description: Number of failed structures.
        processedPercentage:
          type: integer
          format: int64
          description: This shows the percentage of structures which were processed.
        processedSuccess:
          type: integer
          format: int64
          description: Number of successfully processed structures.
        status:
          type: string
          description: 'The status of the task. Possible values: PREPARING, WAITING, IN PROGRESS, READY, ERROR, PAUSED'
          enum:
          - PREPARING
          - WAITING
          - IN_PROGRESS
          - READY
          - ERROR
          - PAUSED
    ReactorErrorResult:
      description: Products that are result of a reaction
      properties:
        errorMessage:
          type: string
          description: Reactor error message.
        structures:
          type: array
          items:
            $ref: '#/components/schemas/ReactorRequestStructure'
    ReactorProductsResultResponse:
      description: Products that are result of a reaction
      properties:
        The status of the task. If it is not a final status, the number of total results may increase:
          type: string
          enum:
          - PREPARING
          - WAITING
          - IN_PROGRESS
          - READY
          - ERROR
          - PAUSED
        pageNumber:
          type: integer
          format: int64
          description: The currently returned page number
        products:
          type: array
          description: Results of a reaction, in JSON format. Contains "result" (product) and "reactantIds" fields
          items:
            type: string
        totalPages:
          type: integer
          format: int64
          description: Total number of pages based on the page size and the total results
        totalResults:
          type: integer
          format: int64
          description: Total number of results that can be returned based on the current filter
    ManageRequest:
      description: manage a task
      properties:
        action:
          type: string
          description: The action to take on the task
          enum:
          - START
          - PAUSE
          example: START
      required:
      - action
    ReactorErrorResultResponse:
      description: Products that are result of a reaction
      properties:
        The status of the task. If it is not a final status, the number of total results may increase:
          type: string
          enum:
          - PREPARING
          - WAITING
          - IN_PROGRESS
          - READY
          - ERROR
          - PAUSED
        pageNumber:
          type: integer
          format: int64
          description: The currently returned page number
        results:
          type: array
          description: Error results of a reaction. Contains related structures with position and reactor error message.
          items:
            $ref: '#/components/schemas/ReactorErrorResult'
        totalPages:
          type: integer
          format: int64
          description: Total number of pages based on the page size and the total results
        totalResults:
          type: integer
          format: int64
          description: Total number of results that can be returned based on the current filter
    ReactorResultResponse:
      description: Reactor task result.
      oneOf:
      - $ref: '#/components/schemas/ReactorProductsResultResponse'
      - $ref: '#/components/schemas/ReactorErrorResultResponse'
x-refined-from:
- chemaxon-task-manager-openapi.json
- chemaxon-task-manager-openapi.yml