---
title: "List Rules"
method: GET
path: "/v1/rule-books/{rule_book_id}/rules"
tags: ["Rule Books"]
---

# List Rules

`GET /v1/rule-books/{rule_book_id}/rules`

## Request

- Base URL: `https://api.sandbox.usenash.com`
- URL: `https://api.sandbox.usenash.com/v1/rule-books/{rule_book_id}/rules`
- Auth: none declared

The rules in a version (default `current`), in the order they were added, each with its derived status.

## Path parameters

- `rule_book_id` string, required: The rule book id (`rbk_…`).

## Query parameters

- `version` 'current' | 'draft' | 'working': Which version a read means: the one in use, the draft, or the draft if there is one, else the one in use.
- `in_nash` 'must' | 'aim_for' | 'report' | 'not_in_nash': How Nash plans with a rule. Must is never broken, Aim for is kept unless it costs a lot, and Report is checked after planning.
- `q` string, nullable: Text in the name, the customer's words or the key.

## Response `200`

OK

- RuleList
  - `version` VersionRef, required
    - `id` string, required
    - `number` integer, required
    - `state` 'draft' | 'published' | 'superseded' | 'discarded', required
  - `rules` RuleRead[], required
    - `id` string, required
    - `key` string, required
    - `aliases` string[], required
    - `rule_book_id` string, required
    - `version` VersionRef, required
      - `id` string, required
      - `number` integer, required
      - `state` 'draft' | 'published' | 'superseded' | 'discarded', required
    - `revision_id` string, required
    - `revision_number` integer, required
    - `added_in_version` integer, nullable, required: The version that added the rule.
    - `revised_in_version` integer, nullable, required: The version that made this revision: later than `added_in_version` once the rule is edited.
    - `name` string, required
    - `customer_words` CustomerWords, required: The rule as the customer said or wrote it. `verbatim: false` marks our notes of a call, not a quote.
      - `text` string, required
      - `source_id` string, nullable
      - `verbatim` boolean
    - `applies_to` AppliesTo, required
      - `all_sites` boolean
      - `site_ids` string[]
    - `in_nash` 'must' | 'aim_for' | 'report' | 'not_in_nash', required: How Nash plans with a rule. Must is never broken, Aim for is kept unless it costs a lot, and Report is checked after planning.
    - `how` string, nullable, required
    - `values` RuleValueRead[], required
      - `scope` ValueScope, required: Exactly one of: every site, or one site.
        - `all_sites` boolean
        - `site_id` string, nullable
      - `customer_value` string, nullable, required
      - `nash_value` NashValue, required: What Nash runs with: an amount and a unit, a time or window in text, or plain text.
        - `amount` union
          - integer
          - number
        - `unit` 'h' | 'min' | 'stops' | 'cube' | 'percent' | 'count' | 'trucks' | 'time_of_day' | 'window'
        - `text` string, nullable
      - `status` 'confirmed' | 'assumed' | 'needs_answer', required
      - `authored_status` 'assumed' | 'needs_answer', required: What an author may set. `confirmed` only ever comes from a confirmation.
      - `status_reason` string, nullable, required
      - `source_ids` string[], required
    - `sources` RuleSourceRead[], required
      - `id` string, required
      - `kind` 'sheet_cells' | 'file_columns' | 'document' | 'call' | 'written_answer' | 'nash_reading', required
      - `label` string, nullable, required
      - `file_name` string, nullable, required
      - `sheet` string, nullable, required
      - `cells` string[], required
      - `columns` string[], required
      - `excerpt` CellExcerpt[], required
        - `ref` string, required
        - `value` string, required
      - `locator` string, nullable, required
      - `url` string, nullable, required
      - `title` string, nullable, required
      - `date` string, date, nullable, required
      - `author` string, nullable, required
      - `verbatim` boolean, required
      - `basis` string, nullable, required
      - `verified` boolean, required
    - `status` RuleStatusRead, required
      - `state` 'confirmed' | 'assumed' | 'needs_answer', required
      - `reason` string, nullable, required
    - `confirmations` ConfirmationRead[], required
      - `id` string, required
      - `rule_id` string, required
      - `revision_id` string, required
      - `confirmed_by` ConfirmedBy, required
        - `name` string, required
        - `role` string, nullable
        - `user_id` string, nullable
      - `channel` 'call' | 'email' | 'written_answer' | 'meeting' | 'portal', required
      - `confirmed_at` string, date, required
      - `source_url` string, nullable, required
      - `source_missing` boolean, required
      - `note` string, nullable, required
      - `recorded` ActorAt, required
        - `actor` Actor, required: Who did something. Built by the API layer from the request's credentials, never sent by a client.
          - `type` 'person' | 'agent' | 'integration', required
          - `id` string, required
          - `display` string, required
        - `at` string, date-time, required
    - `created` ActorAt, required
      - `actor` Actor, required: Who did something. Built by the API layer from the request's credentials, never sent by a client.
        - `type` 'person' | 'agent' | 'integration', required
        - `id` string, required
        - `display` string, required
      - `at` string, date-time, required
    - `updated` ActorAt, required
      - `actor` Actor, required: Who did something. Built by the API layer from the request's credentials, never sent by a client.
        - `type` 'person' | 'agent' | 'integration', required
        - `id` string, required
        - `display` string, required
      - `at` string, date-time, required
    - `etag` string, required

## Other responses

- `422`: Unprocessable Content

---

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