> ## Documentation Index
> Fetch the complete documentation index at: https://docs.signa.so/llms.txt
> Use this file to discover all available pages before exploring further.

# Get Office

> Retrieve a single trademark office with sync metadata

## Overview

Returns a single trademark office record: update cadence, total marks ingested, last successful sync timestamp, and field coverage percentages. Use this to display data freshness and data completeness for a specific office. Offices that are not live return `404`.

## Path Parameters

<ParamField path="code" type="string" required>
  Lowercase office code, e.g. `uspto`, `euipo`, `wipo`. This is not the jurisdiction code, use [Get Jurisdiction](/api-reference/reference/get-jurisdiction) for ISO codes like `US` or `EU`.
</ParamField>

## Response

This endpoint is publicly cacheable, so the response never includes `request_id`. The object has the same fields as an item in [List Offices](/api-reference/reference/list-offices).

<ResponseField name="code" type="string">Lowercase office code.</ResponseField>
<ResponseField name="object" type="string">Always `office`.</ResponseField>
<ResponseField name="name" type="string">Full office name.</ResponseField>
<ResponseField name="country_name" type="string | null">Name of the office's country or region.</ResponseField>
<ResponseField name="jurisdiction_code" type="string">ISO jurisdiction code for this office, e.g. `US`.</ResponseField>
<ResponseField name="website_url" type="string | null">Office website URL.</ResponseField>
<ResponseField name="status" type="string">`live` when the office is shipping data normally, `paused` when it is temporarily offline.</ResponseField>
<ResponseField name="update_cadence" type="string | null">How often this office's data is refreshed: `daily`, `weekly`, `monthly`, `on_demand`, or `null` when not yet scheduled.</ResponseField>
<ResponseField name="total_marks" type="integer">Total trademark records currently held for this office.</ResponseField>
<ResponseField name="last_synced_at" type="string | null">ISO 8601 timestamp of the last successful data sync, or `null`.</ResponseField>
<ResponseField name="coverage" type="object | null">Per-field completeness percentages for this office, rounded from 0 to 100. See [List Offices](/api-reference/reference/list-offices) for the full field list.</ResponseField>
<ResponseField name="coverage_computed_at" type="string | null">ISO 8601 timestamp of the stats run that computed `coverage`, or `null`.</ResponseField>

<ResponseExample>
  ```json theme={null}
  {
    "code": "uspto",
    "object": "office",
    "name": "United States Patent and Trademark Office",
    "country_name": "United States of America",
    "jurisdiction_code": "US",
    "website_url": "https://www.uspto.gov",
    "status": "live",
    "update_cadence": "daily",
    "total_marks": 14175925,
    "last_synced_at": "2026-07-06T13:04:22.321Z",
    "coverage": {
      "images": 64,
      "goods_services_text": 76,
      "design_codes": 15,
      "publication_date": 81,
      "registration_number": 94,
      "registration_date": 92,
      "expiry_date": 88,
      "priority_claims": 7,
      "seniority_claims": 3,
      "filing_basis": 31,
      "first_use_date": 24,
      "attorney_linkage": 68,
      "owner_linkage": 99,
      "status_effective_date": 73
    },
    "coverage_computed_at": "2026-07-06T14:00:00.000Z"
  }
  ```
</ResponseExample>

## Code Examples

<CodeGroup>
  ```bash cURL theme={null}
  curl "https://api.signa.so/v1/offices/uspto" \
    -H "Authorization: Bearer sig_YOUR_KEY"
  ```

  ```typescript TypeScript theme={null}
  import { Signa } from "@signa-so/sdk";

  const signa = new Signa({ api_key: process.env.SIGNA_API_KEY });

  const office = await signa.references.office("uspto");
  console.log(office.total_marks, office.last_synced_at);
  ```
</CodeGroup>

## Errors

| Status | Type           | Description                                           |
| ------ | -------------- | ----------------------------------------------------- |
| 401    | `unauthorized` | Missing or invalid API key                            |
| 403    | `forbidden`    | API key missing the `trademarks:read` scope           |
| 404    | `not_found`    | Office code not recognized, or the office is not live |

## Related Endpoints

* [List Offices](/api-reference/reference/list-offices), all supported offices
* [Get Jurisdiction](/api-reference/reference/get-jurisdiction)
* [Data Freshness](/guides/data-freshness)
