Skip to main content

marketplaceEligibility

Per-rule eligibility for a strategy, optionally scoped to one candidate backtest, WITH actual values (e.g. '31 trades, needs 50'). AUTHENTICATED. backtestID is OPTIONAL: the publish drawer opens before a backtest is chosen, and the trade-count/window rules simply read as not-yet-met until one is supplied. Runs the SAME internal/marketplace.EvaluateEligibility publishListing gates on, so the drawer and the mutation can never disagree.

draft is what makes that last sentence true of the COPY rules too. Without it this query judged title/metaDescription/body against empty strings, so those three rules were permanently red here and the ceiling on metaDescription — the bound on a public SERP snippet — was enforced nowhere the publisher could see before the mutation fired. Supply the drawer's current copy and the preview reports the same pass/fail, the same rule key and the same required window ("120-160") publishListing itself would.

marketplaceEligibility(
strategyID: ID!
backtestID: ID
draft: MarketplaceCopyDraftInput
): MarketplaceEligibility!

Arguments

marketplaceEligibility.strategyID ● ID! non-null scalar

marketplaceEligibility.backtestID ● ID scalar

marketplaceEligibility.draft ● MarketplaceCopyDraftInput input

Type

MarketplaceEligibility object

Whether a strategy (optionally, a specific backtest) may be published RIGHT NOW, and why not if not. Reports EVERY rule, passed or failed — never fail-fast — so the drawer never makes a publisher fix one failure only to discover the next.