Myles’ Arcana exposes a read-only JSON API for accessing artifacts, creators, and groups. All endpoints are static JSON files generated at build time.
The base URL is https://arcana.myles.garden.
Endpoints
| Method | URL | Description |
|---|---|---|
GET | /api/v1/artifacts.json | List all artifacts |
GET | /api/v1/artifacts/{id}.json | Artifact detail |
GET | /api/v1/creators.json | List all creators |
GET | /api/v1/creators/{id}.json | Creator detail |
GET | /api/v1/groups.json | List all groups |
GET | /api/v1/groups/{id}.json | Group detail |
List responses
All list endpoints return the same envelope:
{
"next": null,
"previous": null,
"count": 42,
"result": []
}
Artifacts
List — /api/v1/artifacts.json
Each item in result is a slim artifact object:
{
"id": "books/delicious-in-dungeon-vol-1",
"url": "/books/delicious-in-dungeon-vol-1",
"apiUrl": "/api/v1/artifacts/books/delicious-in-dungeon-vol-1.json",
"kind": "book",
"title": "Delicious in Dungeon, Vol. 1",
"releasedAt": "2016-02-26T00:00:00+00:00"
}
The kind field is one of: book, film, tvShow, tvShowSeason, tvShowEpisode, videoGame, vinylRecord, vinylRecordTrack.
Detail — /api/v1/artifacts/{id}.json
The detail response extends the slim object with full metadata. All artifacts include these additional fields:
{
"description": "When young adventurer Laios and his company are attacked…",
"coverUrl": null,
"identifiers": [{ "scheme": "isbn13", "value": "9780316471855" }],
"creators": [
{
"id": "ryoko-kui",
"url": "/creators/ryoko-kui",
"apiUrl": "/api/v1/creators/ryoko-kui.json",
"name": "Ryoko Kui",
"role": "author"
}
],
"groups": [
{
"id": "delicious-in-dungeon",
"url": "/groups/delicious-in-dungeon",
"apiUrl": "/api/v1/groups/delicious-in-dungeon.json",
"title": "Delicious in Dungeon",
"label": "Volume 1",
"order": 1
}
]
}
Kind-specific fields are also included:
| Kind | Extra fields |
|---|---|
book | edition, format, pageCount |
tvShowSeason | tvShow, seasonNumber |
tvShowEpisode | tvShowSeason, episodeNumber, airedAt |
videoGame | playMode |
vinylRecordTrack | vinylRecord, position, duration |
Creators
List — /api/v1/creators.json
{
"id": "ryoko-kui",
"url": "/creators/ryoko-kui",
"apiUrl": "/api/v1/creators/ryoko-kui.json",
"name": "Ryoko Kui",
"creatorType": "person"
}
Detail — /api/v1/creators/{id}.json
{
"id": "ryoko-kui",
"url": "/creators/ryoko-kui",
"apiUrl": "/api/v1/creators/ryoko-kui.json",
"name": "Ryoko Kui",
"creatorType": "person",
"givenName": "Ryoko",
"familyName": "Kui",
"additionalName": null,
"aliases": [],
"artifacts": [
{
"id": "books/delicious-in-dungeon-vol-1",
"url": "/books/delicious-in-dungeon-vol-1",
"apiUrl": "/api/v1/artifacts/books/delicious-in-dungeon-vol-1.json",
"kind": "book",
"title": "Delicious in Dungeon, Vol. 1"
}
]
}
Groups
List — /api/v1/groups.json
{
"id": "delicious-in-dungeon",
"url": "/groups/delicious-in-dungeon",
"apiUrl": "/api/v1/groups/delicious-in-dungeon.json",
"title": "Delicious in Dungeon",
"groupType": "series",
"status": "completed"
}
Detail — /api/v1/groups/{id}.json
{
"id": "delicious-in-dungeon",
"url": "/groups/delicious-in-dungeon",
"apiUrl": "/api/v1/groups/delicious-in-dungeon.json",
"title": "Delicious in Dungeon",
"groupType": "series",
"status": "completed",
"description": null,
"startedAt": "2014-09-01T00:00:00+00:00",
"endedAt": "2023-09-01T00:00:00+00:00",
"artifacts": [
{
"id": "books/delicious-in-dungeon-vol-1",
"url": "/books/delicious-in-dungeon-vol-1",
"apiUrl": "/api/v1/artifacts/books/delicious-in-dungeon-vol-1.json",
"kind": "book",
"title": "Delicious in Dungeon, Vol. 1"
}
]
}