Skip to content

Add client methods for 4 registry endpoints with no SDK exposure (index_price, margin_borrow, liquidation_stats, listings_historical) #126

Description

@martinkersner

Follow-up to #123 (PR #125). The registry-param coverage audit (tests/test_endpoint_param_coverage.py) surfaced 4 endpoints declared in datamaxi/_endpoints.py that have NO client method at all — every one of their params is unreachable from the SDK. These were allow-listed in the audit test (with NOTE FOR HUMAN REVIEW) rather than exposed, because adding them is not a param forward-through: each needs a brand-new client method (naming, return-shape handling, docs, tests) — a product/design decision out of scope for the coverage audit.

Two of these were not even in #123's original heuristic list (index_price, margin_borrow).

Endpoints missing a client method (with their registry params)

  • index_priceasset, from, to, interval
  • margin_borrowasset
  • liquidation_statswindow, exchange, min_volume_usd
  • listings_historicalrefresh

Decisions needed per endpoint

  • Do we want to expose it at all? (Some may be internal / front-api-adjacent / not intended for the public SDK.)
  • Which client class does it belong on, and what method name?
  • Return shape: raw page vs paginated pager vs DataFrame option, consistent with sibling methods.
  • Docs + wire-level forwarding tests.

Done when

  • Each of the 4 endpoints is either (a) given a client method that forwards its registry params (with tests + docs), or (b) explicitly documented as intentionally SDK-excluded.
  • The corresponding allow-list entries in tests/test_endpoint_param_coverage.py are removed (for exposed ones) or their rationale updated (for intentionally-excluded ones), so the audit stays honest.

Ref: PR #125, tests/test_endpoint_param_coverage.py _ALLOWLIST.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions