site summaries

Get Site Summary

One summary in full: facts, inclusions, current settings, and who a send would reach. A customer-side login gets the customer projection and no grounding block; view says which.

get/site-summaries/{summary_id}

Request

  • Base URL
    https://api.verdun.ai (the document declares no server; this is the origin it was published from)
  • URL
    https://api.verdun.ai/site-summaries/{summary_id}
  • Auth
    HTTP bearer

Path parameters

summary_idstring uuid required

Response

Successful Response

idstring required

Summary UUID.

site_idstring required

Site UUID.

site_namestring required

Site name as it is today (live), for the drawer header.

parent_idstring required

Parent UUID SNAPSHOTTED on the summary row, not the site's parent today.

account_idstring nullable

Account UUID snapshotted on the summary row; null when the site was held directly under the parent at generation.

local_datestring required

YYYY-MM-DD, site-local, the date this summary is filed under.

timezonestring required

IANA zone snapshotted at generation; every wall clock in facts is rendered in it.

window_startstring date-time required

First instant the summary covers (UTC, inclusive).

window_endstring date-time required

Instant the window closed (UTC, exclusive).

narrativestring required

The prose the e-mail carries.

narrative_sourcestring required

'llm' when the model's narrative passed grounding, 'template' when the deterministic floor was used.

groundingobject nullable

The grounding verdict (checked, mismatches, prompt_version, model, reason). NULL for a customer-side reader: mismatches quote a rejected narrative's tokens.

factsobject required

The stored fact sheet. Full for an internal reader; the customer projection (seven paths dropped) for a customer-side login (account manager / location manager) — read view to know which.

inclusionsstring[] required

Event ids ticked INTO the customer e-mail beyond the escalations, in insertion order.

generated_atstring date-time nullable

When generation finished (UTC).

regenerated_atstring date-time nullable

When the narrative was last regenerated (UTC); null when it never was.

viewstring required

'customer' when facts is the projection and grounding is withheld, 'internal' otherwise.

Example response

{
  "id": "9f8e7d6c-1111-4222-8333-444455556666",
  "site_id": "3f1e0d2c-1111-4222-8333-444455556666",
  "site_name": "Northgate Yard",
  "parent_id": "a1b2c3d4-1111-4222-8333-444455556666",
  "local_date": "2026-09-05",
  "timezone": "America/Los_Angeles",
  "narrative": "Monitoring covered 12 cameras overnight.",
  "narrative_source": "llm",
  "grounding": {
    "checked": 27,
    "mismatches": []
  },
  "facts": {
    "schema_version": 1
  },
  "inclusions": [],
  "settings": {
    "site_id": "3f1e0d2c-1111-4222-8333-444455556666",
    "send_local_time": "07:00",
    "send_on_quiet_days": true,
    "min_outage_minutes": 10,
    "sections": {
      "escalations": true,
      "narrative": true,
      "outages": true,
      "stats": true
    },
    "is_default": true
  },
  "recipients_preview": [
    {
      "contact_id": "7a6b5c4d-1111-4222-8333-444455556666",
      "name": "Dana Whitfield",
      "email": "dana@example.com",
      "receives": true,
      "reason": "ok"
    }
  ],
  "view": "internal"
}

Changes

No recorded changes to this operation across all 2 revisions of this API.