Same names on every platform#
Platforms name the same idea differently: a follower count is followersCount on one and statistics.subscriberCount on another. Onekey maps every source onto one fixed schema of 147 fields (version 1.0), grouped by what they describe: author, content, engagement, entity, media, market, place, listing, package, paper and event. You write your parsing once.
The field list is read from the same definition the backend enforces, and the counts of which endpoints return each field come from the field mappings of the 1,995 endpoints, so they cannot drift from what the API serves.
The rules that make it trustworthy#
- A field a platform does not have is
null, never missing. You can read any field without checking that it exists, andnullmeans "the source does not provide this", not "zero". - Types are enforced. Numbers that are not numeric become
null; dates become UTC ISO 8601; only real http or https links pass as URLs; booleans understandtrue/false,1/0,yes/no. - Platform-specific data lives under
ext.<name>. One flat level, camelCase, documented on the endpoint page that returns it. It is stable per endpoint but not part of the cross-platform contract, so code that must work everywhere should read the fixed fields only. When a name proves useful on many platforms it is promoted into the fixed schema, additively. - Nothing is invented. The mapping renames and converts; it does not estimate. The only derived block is
computed, and it names its formulas.
Where to look#
- Schema field explorer: browse every field, its type, and which platforms and endpoints return it.
- Unified schema docs: the groups, typing rules and every field table.
- Each endpoint page has a Field mapping table: source path, Onekey field, transform. Start from the platforms index and open any endpoint.
- The API explorer shows one endpoint's request and its recorded response.