---
title: "The caller's day on the asking device: the entries and the intervals they cover, in one read"
method: GET
path: "/v1/days/{day}"
tags: ["entries"]
---

# The caller's day on the asking device: the entries and the intervals they cover, in one read

`GET /v1/days/{day}`

## Request

- Base URL: `https://api.sixminute.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://api.sixminute.ai/v1/days/{day}`
- Auth: HTTP bearer

The caller's own day, whatever their role: nobody reads another person's day. Device-bound: without the device header, until the page floor moves, the caller's most recently active device, and no activity with none; 403 for a device not theirs. The day's entries in time order, from every device and source, each with its `delivery` where the firm has a connector, and the asking device's intervals of the local day in time order, with those of the earlier ids the same machine held that `X-Six-Minute-Device-Known` names (comma-separated; an id that is not one of the caller's devices is ignored), each on its device's local day, with its evidence, its summary and its `activity` block and never its judged text: the activity column, where another device's intervals never appear. An entry's evidence is the activity it was generated from: `entry_intervals` holds, for each live entry of the day generated on another of the caller's devices (the entry's `device_id`, not the asking device nor an earlier id it names), that device's intervals under the entry (an interval whose start lies in one of its parts), in time order and in the same shape, and nothing else; they are never activity. An entry generated on the asking device, and a hand-made entry (`device_id` null), read `intervals`. Never another person's. A slot of an entry with no interval reads "Not captured" (D-217). `unit_seconds` is the day's unit (the firm's when the day opened, or now for a day not opened yet), the grid of every stretch where no interval is stored (D-219). `zone`, `t_start` and `t_end` are the caller's day row, `provisional` where the day is not opened yet (the bounds opening it now would store). Each entry carries `editable` (false once released or while its release is in flight), `blockers` (what stands between it and a released entry, as rule codes) and `options` per attribute key. `calendar` is present only with a calendar connected: the events that overlap the day's bounds, with the caller's marks. Each interval carries `judge_order` where its matter call read a ranked list: the matter ids, best first. `recent_matters` is the matters of the caller's own released entries worked in the last 90 days, at most 20, the most recently released first.

## Path parameters

- `day` string, required

## Response `200`

The day's entries and intervals.

- object
  - `day` string, required
  - `unit_seconds` integer, required
  - `zone` string
  - `t_start` string, date-time
  - `t_end` string, date-time
  - `provisional` boolean
  - `entries` object[], required
    - `entry` object, required
      - `id` string, required
      - `day` string, required
      - `time_zone` string, required
      - `timekeeper_id` string, required
      - `t_start` string, date-time, required
      - `t_end` string, date-time, required
      - `parts` object[]
        - `t_start` string, date-time, required
        - `t_end` string, date-time, required
      - `narrative` string, required
      - `matter_id` string, nullable
      - `attributes` object
      - `internal_note` string, nullable
      - `status` 'draft' | 'released'
      - `created_at` string, date-time, required
      - `updated_at` string, date-time, required
      - `released_at` string, date-time, nullable
      - `edited_at` string, date-time, nullable
      - `override_seconds` integer, nullable
      - `device_id` string, nullable
    - `delivery` object, nullable
      - `kind` 'urios' | 'legalsense' | 'fake', required
      - `state` 'released' | 'accepted' | 'rejected' | 'edited', required
      - `reason` 'deleted_in_pms' | 'written_off' | 'draft_discarded' | 'edited_in_pms', nullable
      - `pms_status` string, nullable
      - `external_id` string, required
      - `state_changed_at` string, date-time, required
      - `pms_copy` object, nullable
        - `external_id` string, required
        - `present` boolean, required
        - `accepted` boolean
        - `billed` boolean
        - `written_off` boolean
        - `discarded` boolean
        - `minutes` integer, nullable
        - `day` string, nullable
        - `matter_external_ref` string, nullable
        - `narrative` string, nullable
        - `modified_at` string, date-time, nullable
        - `raw_status` string, nullable
    - `editable` boolean
    - `blockers` object[]
      - `path` string, required
      - `rule` string, required
      - `params` object
    - `options` object
  - `intervals` object[], required
    - `t_start` string, date-time, required
    - `t_end` string, date-time, required
    - `evidence` object[], required
      - `t_start` string, date-time, required
      - `t_end` string, date-time, required
      - `app` string, required
      - `bundle` string
      - `title` string, required
      - `host` string, nullable, required
      - `source` 'screen', required
      - `microphone` boolean
      - `camera` boolean
    - `summary` string, nullable, required
    - `activity` object, nullable
      - `key` string, required
      - `label` string, nullable, required
    - `judge_order` string[]
  - `entry_intervals` object[]
    - `t_start` string, date-time, required
    - `t_end` string, date-time, required
    - `evidence` object[], required
      - `t_start` string, date-time, required
      - `t_end` string, date-time, required
      - `app` string, required
      - `bundle` string
      - `title` string, required
      - `host` string, nullable, required
      - `source` 'screen', required
      - `microphone` boolean
      - `camera` boolean
    - `summary` string, nullable, required
    - `activity` object, nullable
      - `key` string, required
      - `label` string, nullable, required
    - `judge_order` string[]
  - `calendar` object
    - `events` object[], required
      - `id` string, required
      - `title` string, required
      - `from` string, date-time, required
      - `to` string, date-time, required
      - `all_day` boolean, required
      - `status` 'confirmed' | 'cancelled', required
      - `my_response` 'organiser' | 'accepted' | 'tentative' | 'declined' | 'none', required
      - `where` object, required
        - `kind` 'call' | 'address' | 'none', required
        - `text` string, nullable, required
      - `guests` object[], required
        - `name` string, required
        - `email` string, nullable, required
        - `response` 'organiser' | 'accepted' | 'tentative' | 'declined' | 'none', required
        - `organiser` boolean, required
        - `me` boolean, required
      - `provider` 'microsoft' | 'google', required
      - `web_link` string, nullable, required
      - `not_attended` boolean, required
      - `can_mark` boolean, required
  - `recent_matters` string[]

## Other responses

- `400`: The body, query or path did not validate; `errors` lists the fields.
- `401`: No bearer token, or one that does not verify or has expired.
- `403`: The token verified but may not do this: no organisation, not provisioned, wrong role, or a device problem.

## Changes

- **2026-11-04** `605577eadc10`: 3 info
  - added the optional property `entry_intervals/items/judge_order` to the response with the `200` status
  - added the optional property `intervals/items/judge_order` to the response with the `200` status
  - added the optional property `recent_matters` to the response with the `200` status

[Operation history](https://skmtc.dev/sixminute/apis/sixminute-api/changes/v1/days/:day/get.md)

---

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