Chemaxon Bulk amendment API

Bulk amendment related operations

GitHub OpenAPI

Operations 3

POST /amendmentService/bulkloader Bulk updates structures and additional data from CSV file #
POST /amendmentService/bulkloader/status Get status information about a bulk update operation #
GET /amendmentService/bulkloader/statistics/{uploadId} Collects detailed statistics of an upload #

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-bulk-amendment-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-bulk-amendment-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Chemaxon Bulk amendment API
  version: 26.1.5-2610221056
  description: 'Operations tagged Bulk amendment 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: Bulk amendment
  description: Bulk amendment related operations
paths:
  /amendmentService/bulkloader:
    post:
      tags:
      - Bulk amendment
      summary: Bulk updates structures and additional data from CSV file
      operationId: bulkAmendText
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BulkAmendTextRequest'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorMessage'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BulkloaderResponse'
        '201':
          description: Created
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
    servers:
    - url: /RegistryCxn/rest
  /amendmentService/bulkloader/status:
    post:
      tags:
      - Bulk amendment
      summary: Get status information about a bulk update operation
      operationId: bulkAmendmentDetails
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BulkAmendStatusRequestParams'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorMessage'
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/PaginatedResultAmendBulkRowWithStructure'
        '201':
          description: Created
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
    servers:
    - url: /RegistryCxn/rest
  /amendmentService/bulkloader/statistics/{uploadId}:
    get:
      tags:
      - Bulk amendment
      summary: Collects detailed statistics of an upload
      operationId: bulkAmendmentStatistics
      parameters:
      - name: uploadId
        in: path
        required: true
        schema:
          type: integer
          format: int64
      responses:
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorMessage'
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/UploadAmendmentStatistics'
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
    servers:
    - url: /RegistryCxn/rest
components:
  schemas:
    RegistryComponent:
      type: object
      properties:
        compId:
          type: string
          description: ID of the component structure if it already exists
          example: CXN1
          xml:
            name: CompId
        molfile:
          type: string
          description: Representation of the compound in any format supported by JChem
          example: C
          xml:
            name: Molfile
        helm:
          type: string
          description: Representation of the macromolecule compound in HELM format
          example: PEPTIDE1{Y.G.G.F.L.[am]}$$$$
          xml:
            name: Helm
        range:
          type: string
          description: Component range in case of Mixture structure type
          example: 45-55%
          xml:
            name: Range
        percentage:
          type: number
          format: float
          description: Exact component percentage in case of Formulation structure type
          example: 50
          xml:
            name: Percentage
        cst:
          type: string
          description: Chemically Significant Text (CST)
          example: CST
          xml:
            name: CST
        structureId:
          type: integer
          format: int64
          description: Structure ID
        unknownId:
          type: integer
          format: int32
          description: Unknown ID
        creatorId:
          type: string
          deprecated: true
          description: The user who started the registration procedure
          example: admin
      required:
      - compId
      - molfile
    AmendmentStatistics:
      type: object
      properties:
        label:
          type: string
        count:
          type: integer
          format: int32
        tag:
          type: string
        amendmentStatus:
          type: string
    FieldMapping:
      type: object
      properties:
        externalFieldName:
          type: string
        fieldId:
          $ref: '#/components/schemas/FieldId'
        defaultValue:
          type: string
    AdditionalData:
      type: object
      properties:
        name:
          type: string
          example: Project
          xml:
            name: Name
        value:
          type: string
          example: Project A
          xml:
            name: Value
      required:
      - name
      - value
    PaginatedResultAmendBulkRowWithStructure:
      type: object
      properties:
        results:
          type: array
          items:
            $ref: '#/components/schemas/AmendBulkRowWithStructure'
          xml:
            name: items
        offset:
          type: integer
          format: int64
        limit:
          type: integer
          format: int32
        resultCount:
          type: integer
          format: int64
        filteredCount:
          type: integer
          format: int32
    RegistryStructure:
      type: object
      properties:
        structureMolfile:
          type: string
          description: In the response object it contains the structure to be displayed
          xml:
            name: StructureMolfile
        source:
          type: string
          description: Source
          example: REGISTRAR
        multiplicity:
          type: integer
          format: int32
          description: Parent multiplicity when a salt or solvate is added
          example: 1
          xml:
            name: Multiplicity
        unknownId:
          type: integer
          format: int32
          description: Unknown ID
          example: 1
          xml:
            name: UnknownId
        restricted:
          type: integer
          format: int32
          description: Restriction Level
          xml:
            name: Restricted
        cst:
          type: string
          description: Chemically Significant Text (CST)
          example: CST
          xml:
            name: CST
        components:
          type: array
          description: In case of a Multi-Component Compound it contains the list of components, otherwise it contains only the single structure
          items:
            $ref: '#/components/schemas/RegistryComponent'
          xml:
            name: Components
        saltsAndSolvates:
          type: array
          description: Salts and Solvates
          items:
            $ref: '#/components/schemas/SaltSolvate'
          xml:
            name: SaltsAndSolvates
        mwt:
          type: number
          description: Molecular Weight (used only in response)
          example: 16.043
          xml:
            name: Mwt
        overridedMwt:
          type: number
          description: Specified Molecular Weight
          xml:
            name: OverridedMwt
        mf:
          type: string
          description: Molecular Formula (used only in response)
          example: CH4
          xml:
            name: Mf
        structureType:
          type: string
          description: Structure Type
          enum:
          - SINGLE
          - MIXTURE
          - FORMULATION
          - ISOMER
          - MARKUSH
          - ALTERNATE
          - POLYMER
          - NO_STRUCTURE
          - PEPTIDE
          xml:
            name: StructureType
        uniqueStructureId:
          type: string
          description: A unique identifier of the structure comprised of the structure's internal ID and the Version Fingerprint (used only in response)
          example: '5000:1'
          xml:
            name: UniqueStructureId
        additionalData:
          type: array
          description: Additional Data
          items:
            $ref: '#/components/schemas/AdditionalData'
          xml:
            name: AdditionalDataMap
        creatorId:
          type: string
          deprecated: true
          description: The user who started the registration procedure.
          example: admin
          xml:
            name: CreatorId
        errorStructure:
          type: string
        helm:
          type: string
          description: Representation of the macromolecule compound in HELM format
          example: PEPTIDE1{Y.G.G.F.L.[am]}$$$$
          readOnly: true
      required:
      - components
      - multiplicity
      - source
      - structureType
    SubmissionStatus: {}
    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
    FileSettings:
      type: object
      properties:
        type:
          type: string
          enum:
          - AUTO
          - MOLECULE
          - CSV
        rowDelimiter:
          type: string
        fieldDelimiter:
          type: string
        multiValueDelimiter:
          type: string
        structureField:
          type: string
        containsHeader:
          type: boolean
        processIdBasedFields:
          type: boolean
    SystemSwitchersWrapper:
      type: object
      properties:
        sysSwitchers:
          type: object
          additionalProperties:
            type: boolean
    ErrorMessage:
      type: object
      properties:
        errorCode:
          type: string
          enum:
          - UNKNOWN
          - UNAUTHORIZED
          - APPLICATION_ERROR
          - BAD_REQUEST
          - NOT_FOUND
        message:
          type: string
        detail:
          type: string
    BriefUser:
      type: object
      properties:
        userId:
          type: integer
          format: int32
        displayName:
          type: string
        source:
          type: string
          enum:
          - DB
          - AD
          - LDAP
          - SAMLSSO
          - OAUTH2
          - UNKNOWN
    SaltSolvate:
      type: object
      properties:
        id:
          type: integer
          format: int64
          description: Salt ID
          example: 1
          xml:
            name: Id
        multiplicity:
          type: number
          format: double
          description: Salt multiplicity
          example: 1
          xml:
            name: Multiplicity
        isSalt:
          type: boolean
          description: True in case of salt, false in case of solvate
        name:
          type: string
          description: Salts and Solvates
          example: HCl
      required:
      - id
      - isSalt
      - multiplicity
      - name
    BulkAmendStatusRequestParams:
      type: object
      properties:
        uploadId:
          type: integer
          format: int32
        status:
          type: string
          enum:
          - Inprogress
          - Ok
          - Uploaded
          - Rejected
          - LnbRefDuplicated
          - LotIdDuplicated
          - InvalidLnbRef
          - InvalidCn
          - InvalidPcn
          - UnknownError
          - InvalidLotId
          - BadMolfile
          - InvalidUserId
          - InvalidSalt
          - InvalidParentMultiplicityNoSalts
          - InvalidStructureType
          - UnknownCST
          - CNDuplicated
          - PCNDuplicated
          - ComponentDuplication
          - ParentTautomerMatch
          - Parent2DMatch
          - NoStructure
          - UnBalancedCharge
          - StandardizerError
          - InconsistentVersionTree
          - StructureCheckerError
          - UnknownSource
          - InvalidAction
          - SaltSplittingError
          - InvalidMoveMultipleLots
          - OperationNotAllowed
          - InvalidSaltMultiplicity
          - InvalidSolvateMultiplicity
          - RestrictedMatch
          - Parent2DTautomerMatch
          - UpdateStatusError
          - InsertSubmissionError
          - InconsistentAmf
          - DuplicatedSaltSolvateInfo
          - IllegalIdsForAmendment
          - ManualVersionFixRequired
          - InvalidSubmissionId
          - PositivelyChargedStructure
          - SavedSubmission
          - ReadyForRegistration
          - CreateSubmission
          - UndeleteError
          - InvalidStereoComment
          - MarkushStructure
          - LNDuplicated
          - ValidationError
          - ProjectAccessError
          - InvalidSubmitter
          - UnknownIdCalculationError
          - IdGeneratorError
          - FieldRegenerationError
          - AmendmentCascadeWarning
          - DatabaseError
          - InvalidAlternativeIdPrefix
          - AmendmentLotVersionReferenceWarning
          - CascadedAmendmentError
          - InconsistentVersion
          - JmsError
          - MacroIdAndStructureMismatch
          - InvalidHelm
        pagination:
          $ref: '#/components/schemas/PaginationRequestParams'
    ErrorCounts:
      type: object
      properties:
        structural:
          type: integer
          format: int32
        validation:
          type: integer
          format: int32
        match:
          type: integer
          format: int32
        operational:
          type: integer
          format: int32
        numberOfErrors:
          type: integer
          format: int32
    AmendBulkField:
      type: object
      properties:
        id:
          type: integer
          format: int32
        field:
          type: string
        value:
          type: string
    PaginationRequestParams:
      type: object
      properties:
        offset:
          type: integer
          format: int32
        limit:
          type: integer
          format: int32
    BulkloaderResponse:
      type: object
      properties:
        uploadId:
          type: integer
          format: int32
        library:
          type: string
        recordCount:
          type: integer
          format: int64
    AmendBulkRowWithStructure:
      type: object
      properties:
        id:
          type: integer
          format: int32
        uploadId:
          type: integer
          format: int32
        rowIndex:
          type: integer
          format: int32
        idType:
          type: string
          enum:
          - Lnb
          - LN
          - CN
          - PCN
          - LotId
          - StructId
          - Monomer
        identifier:
          type: string
        status:
          $ref: '#/components/schemas/SubmissionStatus'
        message:
          type: string
        fields:
          type: array
          items:
            $ref: '#/components/schemas/AmendBulkField'
        structure:
          $ref: '#/components/schemas/RegistryStructure'
    UploadAmendmentStatistics:
      type: object
      properties:
        uploadId:
          type: integer
          format: int32
        fileName:
          type: string
        library:
          type: string
        uploadedOn:
          type: string
          format: date-time
        total:
          type: integer
          format: int32
        processed:
          type: integer
          format: int32
        status:
          type: string
          enum:
          - IN_PROGRESS
          - DELIVERED
          - STOPPED
          - DELETED
          - PAUSED
        errorCounts:
          $ref: '#/components/schemas/ErrorCounts'
        uploadedBy:
          $ref: '#/components/schemas/BriefUser'
        updated:
          type: integer
          format: int32
        amendments:
          type: array
          items:
            $ref: '#/components/schemas/AmendmentStatistics'
    BulkAmendTextRequest:
      type: object
      properties:
        source:
          type: string
        library:
          type: string
        fieldMappings:
          type: array
          items:
            $ref: '#/components/schemas/FieldMapping'
        settings:
          $ref: '#/components/schemas/FileSettings'
        sysSwitchers:
          $ref: '#/components/schemas/SystemSwitchersWrapper'
        operation:
          type: string
          enum:
          - Add
          - Overwrite
          - Delete
        content:
          type: string
x-refined-from:
- chemaxon-compound-registration-openapi.json
- chemaxon-compound-registration-openapi.yml