Thermo Fisher Scientific Entities API

Browse entity data from SampleManager.

OpenAPI Specification

thermo-fisher-scientific-entities-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Thermo Fisher NanoDrop Ultra Web Authentication Entities API
  description: The Thermo Scientific NanoDrop Ultra Web API provides RESTful access to instrument control and data retrieval for the NanoDrop Ultra microvolume UV-Vis spectrophotometer and fluorometer. Enables laboratory informatics integration, automated measurement workflows, sample data export, and instrument status monitoring.
  version: 1.0.0
  contact:
    name: Thermo Fisher Scientific
    url: https://www.thermofisher.com/us/en/home/industrial/spectroscopy-elemental-isotope-analysis/molecular-spectroscopy/uv-vis-spectrophotometry/instruments/nanodrop.html
  license:
    name: Proprietary
    url: https://www.thermofisher.com
servers:
- url: http://{instrument-ip}:{port}
  description: NanoDrop Ultra instrument local network API
  variables:
    instrument-ip:
      description: IP address of the NanoDrop Ultra instrument on the local network.
      default: 192.168.1.100
    port:
      description: API port.
      default: '8080'
tags:
- name: Entities
  description: Browse entity data from SampleManager.
paths:
  /mobile/browses/{entity}:
    get:
      operationId: browseEntity
      summary: Browse Entity
      description: Returns a list of records for the specified SampleManager entity (e.g., SAMPLE, TEST, RESULT, CUSTOMER). Supports filtering and sorting.
      tags:
      - Entities
      parameters:
      - name: entity
        in: path
        required: true
        schema:
          type: string
        description: The SampleManager entity name (e.g., SAMPLE, TEST, RESULT, CUSTOMER, BATCH_HEADER, ANALYSIS).
      - name: criteria
        in: query
        required: false
        schema:
          type: string
        description: Filter criteria using SampleManager query syntax (e.g., STATUS='A' AND SAMPLED_DATE > '2026-01-01').
      - name: orderby
        in: query
        required: false
        schema:
          type: string
        description: Field name to sort results by.
      - name: ascending
        in: query
        required: false
        schema:
          type: boolean
          default: true
        description: Sort direction.
      - name: pagesize
        in: query
        required: false
        schema:
          type: integer
          default: 50
        description: Number of records per page.
      - name: page
        in: query
        required: false
        schema:
          type: integer
          default: 1
        description: Page number (1-based).
      responses:
        '200':
          description: Entity records returned successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BrowseResponse'
        '401':
          description: Unauthorized.
        '404':
          description: Entity not found.
  /mobile/browses/{entity}/{id}:
    get:
      operationId: getEntityById
      summary: Get Entity By ID
      description: Returns a single record for the specified entity and record identity.
      tags:
      - Entities
      parameters:
      - name: entity
        in: path
        required: true
        schema:
          type: string
        description: The SampleManager entity name.
      - name: id
        in: path
        required: true
        schema:
          type: string
        description: The record identity (primary key value).
      responses:
        '200':
          description: Entity record returned successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EntityRecord'
        '401':
          description: Unauthorized.
        '404':
          description: Record not found.
components:
  schemas:
    EntityRecord:
      type: object
      description: A generic SampleManager entity record. Field names depend on the entity type.
      additionalProperties: true
      properties:
        identity:
          type: string
          description: The primary key of the record.
    BrowseResponse:
      type: object
      properties:
        total:
          type: integer
          description: Total number of matching records.
        page:
          type: integer
          description: Current page number.
        pagesize:
          type: integer
          description: Records per page.
        records:
          type: array
          items:
            $ref: '#/components/schemas/EntityRecord'