Compatibility that preserves meaning
ItemData accepts familiar inventory parameters when their semantics remain accurate. Compatibility aliases reduce migration work without pretending that unsupported enrichment exists.
- start_assetid continues from the exact returned last_assetid cursor.
- include_non_tradable and with_no_tradable are equivalent switches.
- pretty=1 returns indented JSON.
- game=dota is accepted as an alias for dota2.
- no_cache=true requests a coordinated fresh public fetch.
Deliberate differences
ItemData fixes the Steam page size server-side, returns JSON only, and does not implement price, float, paint, market, or global offset/search/group/select enrichment. Filtering one cursor page would not represent a complete inventory, so global operations belong after pagination.
Migration checklist
Compare current provider documentation, response fields, visibility requirements, pagination, rate limits, billing, error handling, and data retention against your real production requests. Run both paths on a representative test corpus before switching traffic.