> ## 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.

# List Office Votes

> List your organization's office-coverage votes

## Overview

Returns every office your organization has voted for, alphabetical by office code. Watch `office_status`: when an office you voted for goes live, its votes flip to `live` — your ask landed.

The votable vocabulary is bounded — ISO 3166-1 country codes plus `BX`, `AP`, `OA`, see [Cast Office Votes](/api-reference/reference/cast-office-votes) — so the list is always a single page: `has_more` is always `false` and `pagination.cursor` is always `null`.

Like `GET /v1/feedback`, this list bills 1 read unit; casting and retracting votes bill 0 units. Responses carry the standard `RateLimit-*` headers.

## Query Parameters

<ParamField query="limit" type="integer">
  Accepted for compatibility with generic list clients and SDK pagination helpers, then ignored — every vote comes back in one page. Must still be a well-formed page size (1–100).
</ParamField>

<ParamField query="cursor" type="string">
  Accepted and ignored, same reason. There is never a next page to fetch.
</ParamField>

Any other query parameter is rejected with `400 validation_error`. Responses are `private, no-store` — votes are org-scoped, never shared cache.

## Response

<ResponseField name="object" type="string">Always `list`.</ResponseField>

<ResponseField name="data" type="object[]">
  <Expandable title="Office vote object">
    <ResponseField name="object" type="string">Always `office_vote`.</ResponseField>
    <ResponseField name="office_code" type="string">Canonical uppercase ST.3 office code.</ResponseField>
    <ResponseField name="office_status" type="string">`live`, `roadmap`, or `not_covered` — see [Cast Office Votes](/api-reference/reference/cast-office-votes).</ResponseField>
    <ResponseField name="created_at" type="string">When your organization first voted for this office.</ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="has_more" type="boolean">Always `false`.</ResponseField>

<ResponseExample>
  ```json theme={null}
  {
    "object": "list",
    "data": [
      {
        "object": "office_vote",
        "office_code": "BR",
        "office_status": "not_covered",
        "created_at": "2026-08-29T12:00:00.000Z"
      },
      {
        "object": "office_vote",
        "office_code": "GB",
        "office_status": "roadmap",
        "created_at": "2026-08-12T09:30:00.000Z"
      }
    ],
    "has_more": false,
    "pagination": { "cursor": null },
    "request_id": "req_01kabc..."
  }
  ```
</ResponseExample>

## Code Examples

<CodeGroup>
  ```bash cURL theme={null}
  curl "https://api.signa.so/v1/offices/votes" \
    -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 votes = await signa.references.officeVotes();
  for (const vote of votes.data) {
    console.log(vote.office_code, vote.office_status);
  }
  ```
</CodeGroup>

## Errors

| Status | Type               | Description                                                |
| ------ | ------------------ | ---------------------------------------------------------- |
| 400    | `validation_error` | An unsupported query parameter, or a `limit` outside 1–100 |
| 401    | `unauthorized`     | Missing or invalid API key                                 |
| 429    | `rate_limited`     | Too many requests                                          |

Casting a vote can also fail validation with `unknown_office_code`, `office_already_live`, or `no_trademark_register` — see [Cast Office Votes](/api-reference/reference/cast-office-votes).

## Related Endpoints

* [Cast Office Votes](/api-reference/reference/cast-office-votes), vote for the offices you want next
* [Retract Office Vote](/api-reference/reference/retract-office-vote), remove a vote
* [List Offices](/api-reference/reference/list-offices), the offices already covered by Signa
