GET /v1/cards/{gemrate_id}/population takes. A GemRate ID is consistent
once assigned.
One card, up to four IDs
Each grading company — PSA, Beckett, SGC, CGC — catalogs cards independently, so GemRate mints a separate ID per grader. A single real-world card therefore has up to four GemRate ID values, one for each grader’s entry. Each ID means “this card, graded by this grader.”The universal ID
When GemRate recognizes that several per-grader entries are the same card, it matches them together and promotes one of those IDs to be the universal GemRate ID — the single identifier that represents the card across every grader. A grader-scoped response carries both:gemrate_id— the grader-scoped ID for the entry you looked up.universal_gemrate_id— the promoted, cross-grader ID for the same card.
gemrate_id and universal_gemrate_id are identical, while the other
graders’ gemrate_ids differ from it.
When to use the universal or grader-specific
Whenever possible, you should use the universal gemrate ID. The universal ID will not change for a card definition and it can be used to fetch data for any grader. If the universal gemrate ID is not returned by a response, that is because we have not matched that card across graders. That gemrate ID is still functional in any endpoint, and if/when the card is matched that ID will still work.Where does a GemRate ID come from?
You obtain agemrate_id by looking a card up. Depending on what you already know, there are a few ways in:
- Cert lookup —
GET /v1/certs/{grader}/{cert}. If you have a grading company’s cert number, this returns that copy’sgemrate_id(and theuniversal_gemrate_idalongside it). The most direct route when you’re holding a slab. - Catalog downloads —
GET /v1/catalogs/{catalog}. Bulk CSV exports list every card in a catalog with itsgemrate_idper row — use these to map IDs in bulk rather than one lookup at a time. Availability is limited — see the catalog download endpoint for the catalogs you can currently request (psaandpokemon), each gated by its own approved-key allowlist. - The web app — search on gemrate.com and open a card; the
gemrate_idis the hex segment in the URL, right after/card/. For example, inhttps://www.gemrate.com/card/d74f909463a77b5d16a878900d60e2f93710a17f/2025-cooper-flagg-topps-chrome-refractor-251the ID isd74f909463a77b5d16a878900d60e2f93710a17f(the trailing slug is just a human-readable label and isn’t part of the ID). - Spec lookup —
GET /v1/specs/{grader}/{spec_id}. If you have a grading company’s own catalog identifier (PSA spec number, Beckett price-item id, etc.), this resolves it to the card and returns itsgemrate_id.
Example
A 1986 Fleer Michael Jordan #57 graded by all four companies:
After matching, all four entries report
universal_gemrate_id = abc123…, while each
keeps its own grader-scoped gemrate_id.