Public API
Read-only JSON endpoints, accessible from scripts or other websites. No sign-in or API key required.
No authentication. Requests need no cookie or token, and every caller receives the same response.
CORS is enabled for all origins.
Rebuilt daily at 19:40 UTC. Responses may be cached for one hour; send the ETag in If-None-Match to receive 304 if the list is unchanged.
Endpoints
| Endpoint | Returns | Current items |
|---|---|---|
| GET/api/credits/makers | Makers | 30 |
| GET/api/credits/editors | Editors | 70 |
| GET/api/credits/translators | Translators | 25 |
| GET/api/credits/sponsors | Sponsors | 79 |
Response
All endpoints return the same object: the build time, the item count and the items.
- refreshedAtstring
When this list was last built. ISO 8601, in UTC.
- countnumber
How many items the list has.
- itemsobject[]
The list itself, in the order the credits page shows it.
/api/credits/makers
Makers
Developers from the project's GitHub repositories, and contributors credited manually for work not tracked by any API.
Fields of each item
- namestring | null
Display name. null for an account on this site that has never chosen one.
- githubstring | null
GitHub login, where one is known.
- userIdstring | null
Account id on this site, where they have one. Their profile page is /users/{userId}.
- avatarUrlstring
Avatar URL on this site. Users without an avatar get the default image, so this is never null.
- roles("developer" | "translator" | "editor" | "honorary")[]
Everything this person is credited for, not only this list.
- medal"developer" | "contributor" | null
developer for a gold developer, contributor for a gold contributor, otherwise null.
{
"refreshedAt": "2026-11-15T19:41:26.901Z",
"count": 30,
"items": [
{
"name": "nutant",
"github": "nutant233",
"userId": null,
"avatarUrl": "https://gtodyssey.com/api/credits/avatars/dff0ab5959ee02a3b5f7e0031ec5d3af49f90fe8df5c95037bf3fe2e296c3479",
"roles": [
"developer",
"honorary"
],
"medal": "developer"
},
{
"name": "Hophenby",
"github": "Hophenby",
"userId": null,
"avatarUrl": "https://gtodyssey.com/api/credits/avatars/e494ed97db2b02d2c7d9d1c3b8b080e59dd823fda43807c9011720fee62b4cc8",
"roles": [
"developer",
"honorary"
],
"medal": "developer"
}
]
}Live response, truncated to the first 2 of 30 items.
/api/credits/editors
Editors
Everyone who has had an article published on this wiki.
Fields of each item
- namestring | null
Display name. null for an account on this site that has never chosen one.
- githubstring | null
GitHub login, where one is known.
- userIdstring | null
Account id on this site, where they have one. Their profile page is /users/{userId}.
- avatarUrlstring
Avatar URL on this site. Users without an avatar get the default image, so this is never null.
- roles("developer" | "translator" | "editor" | "honorary")[]
Everything this person is credited for, not only this list.
- medal"developer" | "contributor" | null
developer for a gold developer, contributor for a gold contributor, otherwise null.
{
"refreshedAt": "2026-11-15T19:41:26.901Z",
"count": 70,
"items": [
{
"name": "xinxinsuried",
"github": "xinxinsuried",
"userId": "P3TMMeSaYoWlbxayrphKallNdyNjqWjk",
"avatarUrl": "https://gtodyssey.com/api/credits/avatars/4240736bdf110c65549029a1373a1ab4bdb153361c877d1b0c78fbc812bd4620",
"roles": [
"developer",
"translator",
"editor",
"honorary"
],
"medal": "developer"
},
{
"name": "Sephirah",
"github": null,
"userId": "UJpZOnlzAkDZVWfb3sw0HvMykQVnH3Gy",
"avatarUrl": "https://gtodyssey.com/api/avatars/5cf47269dea03cc96504c428306ed580700bf66eb457564ef614fd6e3a1e4ba9",
"roles": [
"editor"
],
"medal": null
}
]
}Live response, truncated to the first 2 of 70 items.
/api/credits/translators
Translators
Translators with more than 10 points across the project's ParaTranz projects.
Fields of each item
- namestring | null
Display name. null for an account on this site that has never chosen one.
- githubstring | null
GitHub login, where one is known.
- userIdstring | null
Account id on this site, where they have one. Their profile page is /users/{userId}.
- avatarUrlstring
Avatar URL on this site. Users without an avatar get the default image, so this is never null.
- roles("developer" | "translator" | "editor" | "honorary")[]
Everything this person is credited for, not only this list.
- medal"developer" | "contributor" | null
developer for a gold developer, contributor for a gold contributor, otherwise null.
{
"refreshedAt": "2026-11-15T19:41:26.901Z",
"count": 25,
"items": [
{
"name": "xinxinsuried",
"github": "xinxinsuried",
"userId": "P3TMMeSaYoWlbxayrphKallNdyNjqWjk",
"avatarUrl": "https://gtodyssey.com/api/credits/avatars/4240736bdf110c65549029a1373a1ab4bdb153361c877d1b0c78fbc812bd4620",
"roles": [
"developer",
"translator",
"editor",
"honorary"
],
"medal": "developer"
},
{
"name": "LEgenD-Leo",
"github": "LEgenD-Leo",
"userId": null,
"avatarUrl": "https://gtodyssey.com/api/credits/avatars/363b87bf4997242209442f59003d1cf7317380058ea1eb87c78f4b85ce57ca27",
"roles": [
"developer",
"translator",
"honorary"
],
"medal": null
}
]
}Live response, truncated to the first 2 of 25 items.
/api/credits/sponsors
Sponsors
Sponsors on Afdian, earliest first.
Fields of each item
- namestring | null
Name on Afdian or Ko-fi; null for a Ko-fi sponsor who gave no name.
- avatarUrlstring
Avatar URL on this site. Users without an avatar get the default image, so this is never null.
- goldboolean
Whether their total giving has passed the gold threshold. Amounts are never published.
- firstPayAtstring
When they first sponsored. ISO 8601, in UTC.
{
"refreshedAt": "2026-11-15T19:41:26.901Z",
"count": 79,
"items": [
{
"name": "帕大星PadaStar",
"avatarUrl": "https://gtodyssey.com/api/credits/avatars/00dd49d67d16321c1e8bffccc35a70b1ff8b413bb28123c5ae2a87af6c1bea34",
"gold": false,
"firstPayAt": "2026-04-04T12:21:25.000Z"
},
{
"name": "爱发电用户_p6k4",
"avatarUrl": "https://gtodyssey.com/api/credits/avatars/78cc724ef3678336978019c7935adad27927dbd25fc5f71f7da185176e625b55",
"gold": false,
"firstPayAt": "2026-04-04T12:25:21.000Z"
}
]
}Live response, truncated to the first 2 of 79 items.