Category: webapp (catalog read)
Entity: PlanetAttribute (structs.planet_attribute)
Base URL: ${webappBaseUrl} (default: http://localhost:8080, public guild webapp: http://crew.oh.energy)
Last Updated: May 13, 2026
Overview
Per-planet typed attributes (shield health, ore reserves, slot counts, defensive metadata, etc.). Cache rows are deleted when the chain attribute reaches zero — missing rows mean “no value”, not “value of zero”.
GET /api/planet-attribute/object/{object_id}/page/{page}
ID: webapp-planet-attribute-by-object
Name
Type
Required
Format
Description
object_id
string
Yes
planet-id
Planet identifier (e.g. 2-1)
page
integer
Yes
\d+
Page number
GET /api/planet-attribute/type/{attribute_type}/page/{page}
ID: webapp-planet-attribute-by-type
Name
Type
Required
Format
Description
attribute_type
string
Yes
–
Attribute type name (e.g. shield_health, ore, slots)
page
integer
Yes
\d+
Page number
Responses use the shared envelope ({ "success": true, "errors": {}, "data": [ ...rows ] }); catalog rows are returned directly in data as a flat array with a fixed page size of 100 — if data.length === 100, request the next page. See protocols/webapp-api-protocol.md.