---
title: "Fetch a single story"
method: GET
path: "/stories/{id}"
tags: ["stories"]
---

# Fetch a single story

`GET /stories/{id}`

## Request

- Base URL: `https://aistoryhub.co/api/v1`
- URL: `https://aistoryhub.co/api/v1/stories/{id}`
- Auth: HTTP bearer

## Path parameters

- `id` string, uuid, required

## Response `200`

The story.

- Story
  - `id` string, uuid
  - `title` string
  - `description` string, nullable
  - `genre` string, nullable
  - `tense` string, nullable
  - `language` string, nullable
  - `mood` string, nullable
  - `time_period` string, nullable
  - `tone` string, nullable
  - `pov` string, nullable
  - `status` string, nullable
  - `is_public` boolean
  - `word_count` integer
  - `target_word_count` integer, nullable
  - `cover_image_url` string, uri, nullable
  - `created_at` string, date-time, nullable
  - `updated_at` string, date-time, nullable

## Other responses

- `401`: Missing, malformed, invalid, revoked, or expired token.
- `403`: The token lacks the scope this endpoint requires.
- `404`: The resource does not exist or you do not own it.
- `429`: Too many requests. Retry after the delay in the `Retry-After` header.

---

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