7. WebMCAM

The MCAM can be accessed via a web interface for integration in other acquisition systems.

The capabilities of the web interface are currently quite limited, but the interface can be used for basic acquisition with the MCAM.

Please contact Ramona Optics to discuss your usecase and to learn more about how to integrate the WebMCAM API into your workflow.

The openapi.yaml file which fully describes the MCAM API can be downloaded here. The endpoints are briefly described below.

If the WebMCAM server is active on your system, an interactive version of this documentation can be accessed at:

http://IP_ADDRESS_OF_THE_WEB_SERVER:PORT/docs

WebMCAM endpoints

List available analysis assays.

Status Codes:
GET /v1/analysis/assay/{assay_name}

MCAM Analysis Assay Information

Obtain the full analysis assay schema for customization

Parameters:
  • assay_name (string)

Status Codes:
POST /v1/analysis/{assay_name}

MCAM Run Analysis Assay

Run the analysis assay on the given MCAM data

Parameters:
  • assay_name (string)

Query Parameters:
  • file_name (string) – (Required)

Status Codes:
GET /v1/analysis/{assay_name}/configuration

List available configurations for a given analysis assay

Parameters:
  • assay_name (string)

Status Codes:

List available MCAMs for connection

Status Codes:
  • 200 OK – List of serial numbers of the available MCAMs.

DELETE /v1/mcam/{serial_number}

Delete the connection to the given MCAM.

Parameters:
  • serial_number (string)

Status Codes:
GET /v1/mcam/{serial_number}

Get the status of the MCAM with the given serial number.

Parameters:
  • serial_number (string)

Status Codes:
POST /v1/mcam/{serial_number}

Initiate connection with an MCAM with the given serial number.

Parameters:
  • serial_number (string)

Status Codes:
POST /v1/mcam/{serial_number}/assay/result

MCAM Wait for Assay to Complete.

Used in conjunction with assay/start, this call block for the specified timeout until the results of the assay are available. To avoid blocking ensure that the status of the assay is completed before calling this endpoint.

Parameters:
  • serial_number (string)

Status Codes:

List available assays for the particular MCAM.

Parameters:
  • serial_number (string)

Status Codes:
POST /v1/mcam/{serial_number}/assay/status

Request the status of the latest MCAM Assay.

Used in conjunction with assay/start, this call will report the status of the started after a success invocation of the start endpoint.

Parameters:
  • serial_number (string)

Status Codes:
POST /v1/mcam/{serial_number}/assay/stop

Request to stop the assay using the MCAM.

Request to stop Start the assay on the given MCAM. The MCAM will attempt to honor the request at the next possible point in the assay runtime.

Parameters:
  • serial_number (string)

Status Codes:
GET /v1/mcam/{serial_number}/assay/{assay_name}

MCAM Assay Information

Obtain the full assay schema for customization

Parameters:
  • serial_number (string)

  • assay_name (string)

Status Codes:
POST /v1/mcam/{serial_number}/assay/{assay_name}

MCAM Run Assay

Run the assay on the given MCAM

Parameters:
  • serial_number (string)

  • assay_name (string)

Status Codes:
GET /v1/mcam/{serial_number}/assay/{assay_name}/configuration

List available configurations for a given assay

Parameters:
  • serial_number (string)

  • assay_name (string)

Status Codes:
POST /v1/mcam/{serial_number}/assay/{assay_name}/start

MCAM Start an Assay

Start the assay on the given MCAM. A call to wait will have to be issued to get the results of the assay.

Parameters:
  • serial_number (string)

  • assay_name (string)

Status Codes:
GET /v1/mcam/{serial_number}/state

Get the current state of the MCAM

Parameters:
  • serial_number (string)

Status Codes:
POST /v1/mcam/{serial_number}/state

Set the state of the MCAM

Parameters:
  • serial_number (string)

Status Codes:

List of available states for the specific MCAM.

Parameters:
  • serial_number (string)

Status Codes:
GET /v1/status

MCAM Instrument Status Information

Status Codes:
  • 200 OK – List of assays available for usage with this particular MCAM.

POST /v1/test_authentication

Test Authentication

Status Codes:
  • 200 OK – Returns the current username. Always.

Synchronous control

The WebMCAM API is designed to be used synchronously and asynchronously, as shown in the following diagrams:

Flow diagram of the Asynchronous WebMCAM API

Asynchronous control

Flow diagram of the Asynchronous WebMCAM API Truth table for the Asynchronous WebMCAM API

For more information, please see Introduction to the WebMCAM for additional setup and troubleshooting, or WebAPI Retractable Tray Demo for a demonstration on interacting with the WebMCAM.

For driver development please refer to the WebAPI Driver Requirements Checklist for a list of requirements and best practices.