---
title: "Get Journal"
method: GET
path: "/api/journal"
tags: ["journal"]
---

# Get Journal

`GET /api/journal`

Fetch the combined Journal screen payload for the authenticated user
(gratitudes, prayer journals and saved Bible verses) in a single call.

Backed by the `get_journal_bundle(p_user_id uuid)` Postgres function which
returns everything plus `latest_change` in a single round-trip. Freshness is
managed client-side via per-source stale signals; the server holds no cache.

## Headers

- `x-user-id` string, nullable

## Response `200`

Successful Response

- JournalBundleResponse
  - `gratitudes` GratitudeJournalResponse[], required
    - `id` integer, required
    - `gratitude_text` string, required
    - `created_at` string, date-time, required
    - `is_first_entry` boolean, nullable
  - `prayers` PrayerJournalResponse[], required
    - `id` integer, required
    - `prayer_text` string, required
    - `topic` string, nullable
    - `created_at` string, date-time, required
  - `verses` SavedVerse[], required
    - `version` string, required — Bible version (e.g., 'KJV', 'NIV', 'ESV')
    - `book` string, required — Book name (e.g., 'Genesis', 'John')
    - `chapter` integer, required — Chapter number
    - `verse` integer, required — Verse number
    - `created_at` string, date-time, nullable — ISO 8601 timestamp the verse was saved. May be null for verses saved before this field was introduced.
  - `latest_change` string, nullable

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/usecreed/apis/creed-api.md) · [All operations](https://skmtc.net/usecreed/apis/creed-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/usecreed/creed-api/versions/523833f9e819/schema)
