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

# Get brand parity dashboard

> Legacy-vs-new decision parity over the window.

### Path parameters

<ParamField path="brand_id" type="string (uuid)" required />

### Response

`object`

<ResponseField name="brand_id" type="string (uuid)" required />

<ResponseField name="routing_mode" type="string" required />

<ResponseField name="canary_percent" type="integer" required />

<ResponseField name="window" type="object" required>
  <Expandable title="window">
    <ResponseField name="from" type="string (date-time)" />

    <ResponseField name="to" type="string (date-time)" />
  </Expandable>
</ResponseField>

<ResponseField name="summary" type="object" required>
  <Expandable title="summary">
    <ResponseField name="total_events" type="integer" required />

    <ResponseField name="dispatched_to_new" type="integer" required />

    <ResponseField name="dispatched_to_legacy" type="integer" required />

    <ResponseField name="dry_run_events" type="integer" required />

    <ResponseField name="parity_match" type="integer" required />

    <ResponseField name="parity_mismatch" type="integer" required />

    <ResponseField name="parity_unknown" type="integer" required />

    <ResponseField name="mismatch_rate" type="number" required />

    <ResponseField name="by_routing_mode" type="object" required>
      <Expandable title="by_routing_mode">
        <ResponseField name="legacy" type="integer" required />

        <ResponseField name="shadow" type="integer" required />

        <ResponseField name="canary" type="integer" required />

        <ResponseField name="live" type="integer" required />
      </Expandable>
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="recent_mismatches" type="object[]" required>
  <Expandable title="recent_mismatches">
    <ResponseField name="event_id" type="string (uuid)" required />

    <ResponseField name="event_type" type="string" required />

    <ResponseField name="routing_mode" type="string" required />

    <ResponseField name="created_at" type="string (date-time)" required />

    <ResponseField name="legacy_decision" type="object" />

    <ResponseField name="new_decision" type="object" />
  </Expandable>
</ResponseField>

### Status codes

| Code  | Meaning                                        |
| ----- | ---------------------------------------------- |
| `200` | Legacy-vs-new decision parity over the window. |
| `400` | Validation error                               |
| `401` | Unauthorized                                   |
| `404` | Not found                                      |
| `429` | Rate limited                                   |
| `500` | Internal error                                 |

<RequestExample>
  ```bash cURL theme={null}
  curl --request GET \
    --url 'https://api.workstream.stateset.com/v1/brands/{brand_id}/parity' \
    --header "x-api-key: $STATESET_TEMPORAL_API_KEY"
  ```
</RequestExample>

<ResponseExample>
  ```json 200 theme={null}
  {
    "brand_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "routing_mode": "string",
    "canary_percent": 8,
    "window": {
      "from": "2026-08-31T14:22:05Z",
      "to": "2026-08-31T14:22:05Z"
    },
    "summary": {
      "total_events": 1,
      "dispatched_to_new": 1,
      "dispatched_to_legacy": 1,
      "dry_run_events": 1,
      "parity_match": 1,
      "parity_mismatch": 1,
      "parity_unknown": 1,
      "mismatch_rate": 7.5,
      "by_routing_mode": {
        "legacy": 1,
        "shadow": 1,
        "canary": 1,
        "live": 1
      }
    },
    "recent_mismatches": [
      {
        "event_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
        "event_type": "string",
        "routing_mode": "string",
        "created_at": "2026-08-31T14:22:05Z",
        "legacy_decision": {},
        "new_decision": {}
      }
    ]
  }
  ```
</ResponseExample>
