Cards & printings
Gameplay belongs to the card. Physical details belong to the printing.
A card is the thing you play: its rules, cost and stats. A printing is one physical version of it: a set, a product and a finish, with its own art and slug. One card has one or more printings. Which ID to store is explained under identifiers.
Card records
cards/{codex_id}.json contains the current gameplay face: type, category, rarity, slot, subtypes, elements, keywords, umbrellas, cost, attack, defense, power, life, elemental thresholds and rules text. A double-faced card also has a back face; otherwise back is null.
It also includes the permanent ID, current name, errata flag, set codes, printing IDs, default printing, image information and record links. The per-card endpoint adds printings summaries, name_history and card_history.
{
"codex_id": "C000139",
"name": "Askelon Phoenix",
"type": "Minion",
"rules_text": "Airborne\nIf Askelon Phoenix would take fire damage, it gains +1 power this turn instead.",
"default_printing_id": "P000571",
"printing_ids": [
"P000569",
"P000570",
"P000571",
"P000572"
],
"api_url": "https://api.kairosarchive.net/v3/cards/C000139.json",
"kairos_url": "https://kairosarchive.net/cards/C000139"
}Printing records
printings/{printing_id}.json identifies one set, product and finish. It includes codex_id, set name and code, release date, artist, typeline, flavour text, slug, image information, retirement date and printed_as_current. The per-printing endpoint adds its slug_history.
Do not infer a printing’s rules from the card’s current text. An older printing may display earlier values. Use the printing status and card history.
Numbers and absent values
- Missing or inapplicable numeric values can be null. Preserve null rather than displaying it as zero.
lifebelongs to Avatars.powerequals attack when attack equals defense; otherwise it is the floor of their average. If either is null, power is null. Use the published value so clients agree.- Thresholds are separate numbers:
thr_air,thr_earth,thr_fireandthr_water. - Rules text includes real line breaks. Preserve those when displaying multiple abilities.
Default printing
default_printing_id selects the card’s representative printing. Its art supplies the card’s image URLs. It does not promise the newest printing or one whose printed wording is current.
Records kept by hand
The official API does not serve everything that was printed: store-kit prize cards, Kickstarter pledge cards and curios exist only on tables and in binders. The registry records these by hand, with the same fields as every other record and IDs from the same counters. Each card, printing and set carries origin: api when the official API serves it, manual when the registry recorded it. A hand-recorded record also carries manual, with its source, the day it was recorded and, later, the day the API was confirmed to serve it or the reason it was withdrawn.
- When the API starts serving a manual record, a person confirms the match. The record keeps its ID and becomes
api. - A manual record found to be wrong is never deleted. It is marked withdrawn, and a withdrawn printing is never a card's default.
- A manual printing's slug is the registry's prediction in the publisher's pattern, and may change when the record is confirmed. It is a lookup, never a key.
- The registry's own sets have codes of three capital letters, such as
CURfor the curios, so they can never collide with the publisher's three-digit codes.
Search finds them with is:manual.
Released with
Every printing carries released_with, the set release it belongs to. For a booster card it is its own set. The publisher files every promo under set 999, so for a promo or a curio it is the release it came out with, recorded by hand, and null until recorded. Search reads it with with:: with:beta finds Beta's cards and the promos released with Beta.
Notes
Cards and printings carry notes: facts the official API has no field for, such as a promo that was prize support in a particular store kit. Each note gives its source and the date it was recorded. A note is a report, not an official record, so quote the source with the fact.
Double-faced cards
Two cards are physically double-faced (Druid and Foot Soldier). Their card record carries a back face with full gameplay data, and each printing's back carries the reverse artist, typeline and image. For every other card back is null.
Reference: registry API contract and published object definitions. Report a data or documentation issue.