---
title: "Get TestOrder by ID"
method: GET
path: "/api/v3/test-order/{test_order_id}"
tags: ["Test Order"]
---

# Get TestOrder by ID

`GET /api/v3/test-order/{test_order_id}`

## Request

- Base URL: `https://{tenant_name}.benchling.com`
- URL: `https://{tenant_name}.benchling.com/api/v3/test-order/{test_order_id}`
- Auth: HTTP bearer

Get a single TestOrder by ID.

## Path parameters

- `test_order_id` string, required

## Query parameters

- `returning` string[]
- `omit` string[]

## Response `200`

OK

- TestOrder: A Test Order represents an individual request to perform a specific test on a sample. Each Test Order references a `TestDefinition` that specifies what type of test to perform, and a `sample` (Entity) that is being tested. Test Orders track their lifecycle through `status` (see `TestStatus`), from PENDING when created, through IN_PROGRESS during execution, to COMPLETED or other terminal states. When executed via an Assay workflow, the `procedure` and `procedureMethodExecutionInstance` fields link to the execution context. Results are captured in the `result` field. Test Orders can be associated with `Study` objects for clinical/preclinical workflows and linked to specific plate wells via `plateWellAssociations` for laboratory execution tracking.
  - `__typename` string
  - `analysisComment` string, nullable: Additional comments provided for a test order with a status of blocked, invalid, or canceled.
  - `container` ContainerRef
    - `__typename` string
    - `id` string, api_id
  - `createdAt` string, datetime: Timestamp of when the test order was created.
  - `dilutionFactor` integer, nullable: The dilution factor of the test order.
  - `id` string: The ID of the test order.
  - `modifiedAt` string, datetime: Timestamp of when the test order was last modified.
  - `name` string: The name of the test order.
  - `plateWellAssociations` TestOrderLinkedPlateWell[]: The plate wells this test order has been linked to.
    - `__typename` string
    - `plate` WellPlateRef
      - `__typename` string
      - `id` string, api_id
    - `wellPosition` string: Alphanumeric position of plate well eg. A1, B19
  - `procedure` ProcedureRef
    - `__typename` string
    - `id` string, api_id
  - `procedureMethodExecutionInstance` ProcedureMethodExecutionInstanceRef
    - `__typename` string
    - `id` string, api_id
  - `result` ResultRef
    - `__typename` string
    - `id` string, api_id
  - `retestSourceProcedureMethodExecutionInstance` ProcedureMethodExecutionInstanceRef
    - `__typename` string
    - `id` string, api_id
  - `sample` EntityRef
    - `__typename` string
    - `id` string, api_id
  - `status` 'PENDING' | 'BLOCKED' | 'IN_PROGRESS' | 'CANCELLED' | 'INVALID' | 'COMPLETED': The status of the test order.
  - `testDefinition` TestDefinitionRef
    - `__typename` string
    - `id` string, api_id

## Other responses

- `400`: Bad Request
- `403`: Forbidden
- `404`: Not Found
- `429`: Too Many Requests
- `500`: Internal Server Error

---

[API](https://skmtc.dev/benchling/apis/benchling-api.md) - [All operations](https://skmtc.dev/benchling/apis/benchling-api/llms.txt) - [OpenAPI document](https://skmtc.dev/benchling/apis/benchling-api/revisions/c9f087b98b8b?raw)
