animedex ghibli
The Ghibli backend is a bundled, offline snapshot of the public Studio Ghibli API. High-level commands read animedex/data/ghibli.json directly, so they are deterministic, do not need network access, and do not consume upstream capacity. The raw animedex api ghibli passthrough remains available when a caller explicitly wants the live mirror.
References
Live API |
|
Source repository |
|
Python module |
|
Rich models |
Backend: Studio Ghibli API snapshot bundled with animedex.
Rate limit: not applicable for high-level commands; reads are local file reads.
Auth: never. The live mirror and bundled snapshot are anonymous read-only data.
Snapshot: captured on 2026-05-09 UTC from
https://ghibliapi.vercel.app/{films,people,locations,species,vehicles}.
Films — films()
films lists the 22 bundled film records in snapshot order and supports local filters:
animedex ghibli films --director "Hayao Miyazaki" --min-rt-score 95 --jq 'map(.title)'
# => ["Castle in the Sky", "Kiki's Delivery Service", "Spirited Away"]
animedex ghibli film 2baf70d1-42bb-4437-b551-e5fed5a87abe --jq '{title, director, rt_score}'
# => {"title": "Castle in the Sky", "director": "Hayao Miyazaki", "rt_score": "95"}
Film records project to the cross-source Anime shape via animedex.backends.ghibli.models.GhibliFilm.to_common(), carrying the Ghibli UUID in ids["ghibli"] and the Rotten Tomatoes score as a 0..100 rating.
People — people()
people lists character/person records and accepts a positional optional name filter plus --gender, --film-id, and --species-id:
animedex ghibli people Haku --jq '.[0] | {name, age, eye_color, source: .source_tag.backend}'
# => {"name": "Haku", "age": "12", "eye_color": "Green", "source": "ghibli"}
animedex ghibli person 267649ac-fb1b-11eb-9a03-0242ac130003 --jq '{name, gender, films}'
People project to Character via animedex.backends.ghibli.models.GhibliPerson.to_common().
Locations, Species, And Vehicles
The remaining snapshot families are exposed as rich, lossless models:
animedex ghibli locations --terrain forest --jq 'map(.name)'
animedex ghibli species --jq '[.[].name]'
# => ["Human", "Deer", "Spirit", "God", "Cat", "Totoro", "Dragon"]
animedex ghibli vehicles --jq '[.[].name]'
# => ["Air Destroyer Goliath", "Red Wing", "Sosuke's Boat"]
Endpoint Summary
Command |
Python entry point |
Purpose |
|---|---|---|
|
list film records with local filters |
|
|
return one film by Studio Ghibli API UUID |
|
|
list people with local filters |
|
|
return one person by UUID |
|
|
list location records |
|
|
return one location by UUID |
|
|
list species records |
|
|
return one species by UUID |
|
|
list vehicle records |
|
|
return one vehicle by UUID |
Gotchas
The high-level backend is intentionally offline. Use
animedex api ghibli /filmsonly when the user asks for live upstream data.The public mirror is a frozen community data set. The snapshot reflects the mirror’s shape and contents at capture time; it is not a complete filmography database.
Source attribution still applies. TTY rows render
[src: ghibli]and JSON includes the source tag metadata even though the data came from a local file.
The Python library page covers the same surface from inside Python.