Endpoint
Retrieve an entity
GET /api/{game}/entity/{file}.json
One entity in full: its identity, the values that resolve today, and every fact behind them including the ones that have been superseded.
Path parameters
| game | string | A game slug from the index. |
| file | string | The file from the entity list — not necessarily the id. |
Response
One entity.
| id | string | Stable identifier. |
| type | string | Entity type. |
| name | string | Display name. |
| sourceUrl | string | Where the values were read from. |
| description? | string | string[] | null | What it does. An array where the game states each form separately. |
| resolved | Value[] | What holds now, one entry per field and qualifier. |
| facts | Fact[] | Every fact, including superseded ones. This is the source of truth. |
| facts[].field | string | Registry field path. Look it up in fields.json. |
| facts[].value | number | string | The value itself. |
| facts[].qualifier? | string | null | Which variant of the field this is — alive, rank 3. |
| facts[].unit? | string | null | From the registry, not from the source text. |
| facts[].tier | string | How well attested. See Provenance. |
| facts[].source | string | URL the value was read from. Never empty. |
| facts[].evidence | string | The text it was read from, so a human can audit the parse. |
| facts[].patchFrom? | string | null | Patch this value took effect in, when known. |
| facts[].patchTo? | string | null | Patch it stopped being current. null means it still is. |
| facts[].ingestedBy | string | Which pass wrote it, and when. |
Request
curl -s -H "x-api-key: $KB_API_KEY" https://kb.play-ascend.com/api/valorant/entity/clove-ruse.json
Response example
{
"id": "clove-ruse",
"type": "ability",
"name": "Ruse",
"sourceUrl": "https://wiki.playvalorant.com/en-us/Ruse",
"resolved": [
{
"field": "ability.charges",
"qualifier": null,
"value": 2,
"unit": "count",
"tier": "official_ingame",
"patchFrom": null,
"confidence": 0.9,
"source": "https://wiki.playvalorant.com/en-us/Ruse",
"evidence": "2"
},
{
"field": "ability.charges",
"qualifier": "while dead",
"value": 1,
"unit": "count",
"tier": "official_ingame",
"patchFrom": null,
"confidence": 0.9,
"source": "https://wiki.playvalorant.com/en-us/Ruse",
"evidence": "1 (while dead)"
},
"… 12 more"
],
"facts": [
{
"field": "ability.creds",
"value": 150,
"qualifier": null,
"unit": "credits",
"tier": "official_ingame",
"source": "https://wiki.playvalorant.com/en-us/Ruse",
"evidence": "150",
"patchFrom": null,
"patchTo": null,
"confidence": 0.9,
"ingestedBy": "wiki-abilities@2026-08-23"
},
{
"field": "ability.charges",
"value": 2,
"qualifier": null,
"unit": "count",
"tier": "official_ingame",
"source": "https://wiki.playvalorant.com/en-us/Ruse",
"evidence": "2",
"patchFrom": null,
"patchTo": null,
"confidence": 0.9,
"ingestedBy": "wiki-abilities@2026-08-23"
},
"… 15 more"
],
"agent": "clove",
"description": "EQUIP a tactical map. FIRE to set smoke locations. ALT FIRE to cast …",
"agentUuid": "1dbf2edd-4729-0984-3115-daa5eed44993",
"slot": "E",
"abilityType": "Signature",
"function": "Smoke",
"codename": "Smonk",
"internalClasses": [
"GameObject_Smonk_NewSmoke",
"GameObject_Smonk_NewSmoke_PDS"
]
}