---
title: "Get a work order"
method: GET
path: "/api/v1/work-orders/{id}"
tags: ["Work Orders"]
---

# Get a work order

`GET /api/v1/work-orders/{id}`

## Request

- Base URL: `https://app.drillerdb.com`
- URL: `https://app.drillerdb.com/api/v1/work-orders/{id}`
- Auth: API key in header `X-API-Key`

Get a work order Requires an Enterprise-plan API key (X-API-Key header) carrying the work_orders:read scope.

## Path parameters

- `id` integer, required

## Response `200`

Work order detail.

- WorkOrderResponse
  - `data` WorkOrder, required
    - `id` integer, required
    - `project_id` integer, nullable
    - `status` string, required
    - `category` string, required
    - `work_type` string, nullable
    - `field_tech` string, nullable
    - `service_date` string, nullable
    - `completed_at` string, nullable
    - `customer_id` integer, nullable
    - `customer_name` string, required
    - `project_title` string, nullable
    - `memo` string, nullable
    - `amount_billed` union
      - string
      - number
  - `meta` RequestMeta, required
    - `request_id` string, required
  - `links` ItemLinks, required
    - `self` string, required

## Other responses

- `401`: Missing, invalid, inactive, or expired API key.
- `403`: The API key lacks scope or the company is not entitled to API access.
- `404`: The requested work order does not exist in the API key company scope.
- `405`: The path exists but not for this HTTP method. Every route is GET (HEAD and OPTIONS are also accepted).
- `429`: The key exceeded its configured rate limits.
- `503`: The public API schema has not been migrated in this environment yet.

---

[API](https://skmtc.dev/drillerdb/apis/drillerdb-public-apis.md) · [All operations](https://skmtc.dev/drillerdb/apis/drillerdb-public-apis/llms.txt) · [OpenAPI document](https://skmtc.dev/drillerdb/apis/drillerdb-public-apis/revisions/aeb372774d99?raw)
