API
Everything here is a static JSON file on the same CDN as the site. There is no key, no rate limit and no versioning handshake: fetch a URL, get a document. Use it from a browser if you like — the files are served with permissive CORS.
Start here
Names every other file, counts the catalogue, and records when the build ran and under what licence. Fetch this first and follow it: the shard filenames are not a stable contract, this index is.
The metadata is CC0. The artwork is not — see the licensing page before you republish an image.
The catalogue
Each shard is an array of release objects. The shard list is in
index.json.
{
"id": 264078,
"url": "https://c64gfx.com/image/264078.html",
"image": "https://d2certfx9n6wgt.cloudfront.net/artwork/264078.png",
"title": "Helch R.I.P",
"artists": ["Chancer"],
"year": 2026, "month": 8, "day": 30,
"tags": ["logo", "hi-res"],
"colours": 14,
"csdbId": 12345,
"dateAdded": "2026-08-30T12:34:56",
"likes": 7
}
| Field | What it is |
|---|---|
id | The number in the artwork's page address. Stable. |
url, image | The page on this site, and the full-size PNG on the CDN. |
title, artists | As catalogued here. An artwork may have several artists. |
year, month, day | When it was released, as far as that is known. Frequently absent. |
tags | Type, format and technique tags, e.g. logo, hi-res, petscii. |
colours | How many of the 16 the picture uses. |
csdbId | The matching CSDb release, where there is one. |
dateAdded | When this site catalogued it — not when it was made. |
likes | Likes on C64GFX. Always present. |
Absent fields are omitted, not zeroed. Most of the catalogue predates any
record of a release day, so year, month and day are
frequently missing — that is different from a year of 0, and your parser should treat it that
way. likes is always present, because "nobody has liked this" is a fact rather
than a gap.
What changed
The most recently catalogued releases. Poll it and keep everything with a
dateAdded newer than the last one you saw. Records with no dateAdded
are left out, since you could not place them anyway.
The site is rebuilt and deployed by hand rather than continuously, so this moves in bursts. Polling more often than daily will tell you nothing new.
Other documents
| Path | What it holds |
|---|---|
/api/palettes.json |
Every 16-colour C64 palette rendering, by name. Also browsable at Palettes, with downloads for pixel-art tools. |
/api/artists.json/api/artist-ids.json |
The artist list. |
/api/events.json | Parties and competitions. |
/api/keywords.json | The keyword vocabulary. |
/api/embed/ |
The documents behind the embed widget. |
Feeds
If you want to follow the catalogue rather than consume it, there are RSS feeds.
/feed.xml everything
/tag/<slug>/feed.xml one graphics type
/artist/<name>/feed.xml one artist
If something is wrong
Errors in the data are errors on the site too. Report them through Suggest Changes on the page in question, or write to raistlin@c64demo.com. If you are building something on this and need a field that is not here, ask — it is easier to add one than to have you scrape the HTML for it.