Static document

Magic API

A personal API for public archive metadata and private model access.

API reference

Build-time metadata endpoints and private owner-only model routes. Public resources describe the visible site; AI routes require an issued token.

GET/api/site.jsonsite identity, language options and ownership contact GET/api/cloud/manifest.jsoncloud manifest and section map GET/api/projects/index.jsonproject index with active public cards GET/api/archive/cards.jsonarchive card collection GET/generated/sparks.jsonstatic generated fragments GET/api/cloud/v1/archive/chunksarchive chunk metadata probe GET/api/cloud/v1/events/streamevent stream metadata probe GET/api/v1/modelsallowed private model list

Personal AI API

This API is owner-operated and requires a personal bearer token. Requests on chunchunmaru.isgood.host are handled through chunchunmaru.isgood.host.

GET

/api/v1/models

Returns the allowed model list. The default model is gpt-5-nano.

POST

/api/v1/responses

Creates a model response from an input string or structured input.

POST

/api/v1/chat

Accepts a compact chat-style body and returns normalized text output.

GET

/api/v1/openapi.json

Machine-readable route description for the personal API.

curl https://chunchunmaru.isgood.host/api/v1/responses \
  -H "Authorization: Bearer <personal_api_token>" \
  -H "Content-Type: application/json" \
  -d '{"model":"gpt-5-nano","input":"Write one short status line."}'

Private model routes require an owner-issued bearer token. Unauthenticated requests are rejected without a model call.

×

Using the personal API

The public metadata resources are safe to read without a token. They describe the archive, its cards and its visible sections. They are meant for simple scripts, link previews and manual inspection.

Model routes are different. They require a personal bearer token, use the configured low-cost model, and return normalized JSON with status, text and usage details.

The model endpoint is intentionally small. It accepts an input string or a compact chat body, then returns one response object. Long workflows should be built outside this public document layer.

Model list OpenAPI JSON