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'