Card Assessment
The assessment resource returned for trading card workflows.
A card assessment identifies a trading card and returns grade details when requested.
Image guidance
Photograph the card front and back, one card per request.
The front is what identifies the card. The back is what makes a grade possible: if no back is recognized among the submitted photos, the assessment returns an identity and reports that grading did not run.
A grading holder does not get in the way of identifying a card, but it does get in the way of grading one. Grading reads the card's surface, and the plastic sits between the camera and that surface: glare, scratches, and haze in the holder can be read as the card's own condition. Photograph a raw card where you can. Through a holder, keep reflections and marks on the plastic out of the frame so the grade describes the card and not its case.
Include the holder's label too, so its company and certificate number can be read. Where the grade printed on the label can be read, that is the grade returned.
Assessment sections
Card assessments support these result sections. If your integration only needs some sections, pass include with the sections you want; requesting fewer sections can be faster in some cases.
| Section | Description |
|---|---|
identity | Card name, set, number, year, game, language, and certificate. |
grade | An overall grade, with condition subgrades when the grade is ours rather than a grading company's. |
Identity
identity describes which card this is — its name, year, game, set, number, parallel variant, language and edition. The schema at the bottom of this page lists them all. Two need more than their name explains:
confidence— how sure we are this is the right catalog entry, from0to1. It covers the identity only, and says nothing about the grade beside it. See Assessment Basics for how confidence behaves.certificate— the grading company and certificate number, present only when the card came in a holder whose label we could read.
Grade
grade is the card's single overall grade. subgrades breaks that down into centering, corners, edges, and surface.
Subgrades are our own assessment of the card, so they are returned only when the overall grade is also ours. When the card is in a holder whose label we can read, the grade comes from that label and no subgrades are returned — the holder's own subgrades are not reproduced. A holder we can identify but whose grade we cannot read still returns certificate alongside our grade and subgrades.
{
"grade": {
"grade": "8",
"subgrades": {
"centering": "7.5",
"corners": "8",
"edges": "8.5",
"surface": "8"
}
}
}Grades and subgrades are strings on the same scale, so parse them before doing arithmetic.
Resource
Full card assessment responses use this schema:
assessment_id*uuidUnique Vardera assessment ID.
external_id?stringCaller-provided ID, if supplied.
status*enumFinal assessment outcome.
"completed" | "partial" | "rejected"created_at*timestampRFC 3339 timestamp for when Vardera created the assessment.
RFC 3339 timestampcompleted_at?timestampRFC 3339 timestamp for when processing finished, regardless of outcome.
RFC 3339 timestampassessment?objectCard assessment details grouped by requested section.
Show child attributes1 field
assessment.items?array<object>Show child attributes2 fields
assessment.items[].identity?objectCard identity fields returned by card assessment endpoints.
Show child attributes10 fields
assessment.items[].identity.name?stringassessment.items[].identity.year?stringassessment.items[].identity.game?stringassessment.items[].identity.set_name?stringassessment.items[].identity.card_number?stringassessment.items[].identity.parallel_variant?stringassessment.items[].identity.language?stringassessment.items[].identity.edition?stringassessment.items[].identity.certificate?objectCard certification metadata read from a grading label.
Show child attributes2 fields
assessment.items[].identity.certificate.company?stringassessment.items[].identity.certificate.number?stringassessment.items[].identity.confidence?numberConfidence in the returned catalog identity.
assessment.items[].grade?objectFinal public card grade answer.
Show child attributes3 fields
assessment.items[].grade.grade?stringassessment.items[].grade.subgrades?objectModel-predicted subgrades. Present only when the overall grade is also model-predicted, never when it was read from a grading label.
Show child attributes4 fields
assessment.items[].grade.subgrades.centering?stringassessment.items[].grade.subgrades.corners?stringassessment.items[].grade.subgrades.edges?stringassessment.items[].grade.subgrades.surface?stringassessment.items[].grade.details?stringissues?array<string>Human-readable limitations or rejection reasons.
Show example
{
"assessment": {
"items": [
{
"grade": {
"grade": "8",
"subgrades": {
"centering": "7.5",
"corners": "8",
"edges": "8.5",
"surface": "8"
}
},
"identity": {
"card_number": "58/102",
"confidence": 0.94,
"edition": "1st Edition",
"game": "Pokemon",
"language": "English",
"name": "Pikachu",
"parallel_variant": "Holo",
"set_name": "Base Set",
"year": "1999"
}
}
]
},
"assessment_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"completed_at": "2026-06-09T19:13:12.548Z",
"created_at": "2026-06-09T19:12:42.548Z",
"external_id": "card-123",
"issues": [],
"status": "completed"
}