{"openapi":"3.1.0","info":{"title":"SilphCo Analytics API","version":"0.3.0","description":"Pokemon TCG on-chain marketplace intelligence. Search cards, explore sets, track tournament meta shifts, and download datasets."},"paths":{"/api/v3/analytics/grade-premium":{"get":{"tags":["Analytics","stable"],"summary":"Grade premium analytics","description":"Response contract: `grade-premium.v1`. Requires `Authorization: Bearer <api_key>`.","operationId":"GET__api_v3_analytics_grade-premium","responses":{"200":{"description":"silphco-envelope.v1","content":{"application/json":{"schema":{"type":"object","properties":{"contract":{"type":"string","example":"grade-premium.v1"},"data":{"type":"object"}}}}}},"401":{"description":"Missing or invalid API key"}},"security":[{"bearerAuth":[]}]}},"/api/v3/analytics/kfactor":{"get":{"tags":["Analytics","stable"],"summary":"Share k-factor metrics","description":"Response contract: `share-kfactor.v1`. Requires `Authorization: Bearer <api_key>`.","operationId":"GET__api_v3_analytics_kfactor","responses":{"200":{"description":"silphco-envelope.v1","content":{"application/json":{"schema":{"type":"object","properties":{"contract":{"type":"string","example":"share-kfactor.v1"},"data":{"type":"object"}}}}}},"401":{"description":"Missing or invalid API key"}},"security":[{"bearerAuth":[]}]}},"/api/v3/cards":{"get":{"tags":["cards"],"summary":"Paginated card list (card-gold.v3)","operationId":"list_cards_api_v1_cards_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"type":"string","maxLength":256,"default":"","title":"Q"}},{"name":"set_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}],"title":"Set Id"}},{"name":"language","in":"query","required":false,"schema":{"anyOf":[{"type":"string","pattern":"^(en|ja)$"},{"type":"null"}],"title":"Language"}},{"name":"rarity","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}],"title":"Rarity"}},{"name":"variant","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}],"title":"Variant"}},{"name":"card_number","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":32},{"type":"null"}],"title":"Card Number"}},{"name":"sort","in":"query","required":false,"schema":{"type":"string","pattern":"^(volume|name|price)$","default":"volume","title":"Sort"}},{"name":"order","in":"query","required":false,"schema":{"type":"string","pattern":"^(asc|desc)$","default":"desc","title":"Order"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"title":"Response List Cards Api V1 Cards Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/cards/summary":{"get":{"tags":["cards"],"summary":"Lightweight card summaries (card-summary.v1)","description":"Return lightweight card summaries (card-summary.v1).\n\nReproduces silphco GET /api/v3/cards/summary: same filters + pagination as\n/api/v1/cards but with a fixed _SUMMARY_FIELDS whitelist.  Each result row\ncarries exactly: card_id, pokemontcg_id, name, set_id, set_name, language,\nvariant, rarity, card_number, image_small, tvwap_price_usd, tvwap_staleness,\ntvwap_confidence, psa10_price_usd, psa9_price_usd, psa8_price_usd,\ntotal_sales, has_physical_sales, physical_sales_count.","operationId":"list_cards_summary_api_v1_cards_summary_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"type":"string","maxLength":256,"default":"","title":"Q"}},{"name":"set_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}],"title":"Set Id"}},{"name":"card_ids","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":2000},{"type":"null"}],"description":"Comma-separated pokemontcg_id values to filter by","title":"Card Ids"},"description":"Comma-separated pokemontcg_id values to filter by"},{"name":"language","in":"query","required":false,"schema":{"anyOf":[{"type":"string","pattern":"^(en|ja)$"},{"type":"null"}],"title":"Language"}},{"name":"rarity","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}],"title":"Rarity"}},{"name":"variant","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}],"title":"Variant"}},{"name":"has_physical_sales","in":"query","required":false,"schema":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Has Physical Sales"}},{"name":"min_price","in":"query","required":false,"schema":{"anyOf":[{"type":"number","minimum":0},{"type":"null"}],"title":"Min Price"}},{"name":"max_price","in":"query","required":false,"schema":{"anyOf":[{"type":"number","minimum":0},{"type":"null"}],"title":"Max Price"}},{"name":"sort","in":"query","required":false,"schema":{"type":"string","pattern":"^(volume|name|price)$","default":"volume","title":"Sort"}},{"name":"order","in":"query","required":false,"schema":{"type":"string","pattern":"^(asc|desc)$","default":"desc","title":"Order"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"title":"Response List Cards Summary Api V1 Cards Summary Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/cards/timeseries":{"get":{"tags":["Cards","stable"],"summary":"Multi-card time series","description":"Response contract: `card-timeseries.v1`. Requires `Authorization: Bearer <api_key>`.","operationId":"GET__api_v3_cards_timeseries","responses":{"200":{"description":"silphco-envelope.v1","content":{"application/json":{"schema":{"type":"object","properties":{"contract":{"type":"string","example":"card-timeseries.v1"},"data":{"type":"object"}}}}}},"401":{"description":"Missing or invalid API key"}},"security":[{"bearerAuth":[]}]}},"/api/v3/cards/{id}":{"get":{"tags":["Cards","stable"],"summary":"Card detail","description":"Response contract: `card-gold.v3`. Requires `Authorization: Bearer <api_key>`.","operationId":"GET__api_v3_cards_id","responses":{"200":{"description":"silphco-envelope.v1","content":{"application/json":{"schema":{"type":"object","properties":{"contract":{"type":"string","example":"card-gold.v3"},"data":{"type":"object"}}}}}},"401":{"description":"Missing or invalid API key"}},"security":[{"bearerAuth":[]}]}},"/api/v3/cards/{id}/analytics":{"get":{"tags":["Cards","stable"],"summary":"Card analytics","description":"Response contract: `card-analytics.v1`. Requires `Authorization: Bearer <api_key>`.","operationId":"GET__api_v3_cards_id_analytics","responses":{"200":{"description":"silphco-envelope.v1","content":{"application/json":{"schema":{"type":"object","properties":{"contract":{"type":"string","example":"card-analytics.v1"},"data":{"type":"object"}}}}}},"401":{"description":"Missing or invalid API key"}},"security":[{"bearerAuth":[]}]}},"/api/v3/cards/{id}/market-history":{"get":{"tags":["Cards","stable"],"summary":"Daily market history","description":"Response contract: `market-history.v1`. Requires `Authorization: Bearer <api_key>`.","operationId":"GET__api_v3_cards_id_market-history","responses":{"200":{"description":"silphco-envelope.v1","content":{"application/json":{"schema":{"type":"object","properties":{"contract":{"type":"string","example":"market-history.v1"},"data":{"type":"object"}}}}}},"401":{"description":"Missing or invalid API key"}},"security":[{"bearerAuth":[]}]}},"/api/v3/cards/{id}/physical-sales":{"get":{"tags":["Cards","stable"],"summary":"Physical marketplace sales","description":"Response contract: `physical-sales.v1`. Requires `Authorization: Bearer <api_key>`.","operationId":"GET__api_v3_cards_id_physical-sales","responses":{"200":{"description":"silphco-envelope.v1","content":{"application/json":{"schema":{"type":"object","properties":{"contract":{"type":"string","example":"physical-sales.v1"},"data":{"type":"object"}}}}}},"401":{"description":"Missing or invalid API key"}},"security":[{"bearerAuth":[]}]}},"/api/v3/cards/{id}/price-history":{"get":{"tags":["Cards","stable"],"summary":"Price history","description":"Response contract: `price-history.v2`. Requires `Authorization: Bearer <api_key>`.","operationId":"GET__api_v3_cards_id_price-history","responses":{"200":{"description":"silphco-envelope.v1","content":{"application/json":{"schema":{"type":"object","properties":{"contract":{"type":"string","example":"price-history.v2"},"data":{"type":"object"}}}}}},"401":{"description":"Missing or invalid API key"}},"security":[{"bearerAuth":[]}]}},"/api/v3/cards/{id}/sales":{"get":{"tags":["Cards","stable"],"summary":"On-chain sales for one card","description":"Response contract: `card-sales.v1`. Requires `Authorization: Bearer <api_key>`.","operationId":"GET__api_v3_cards_id_sales","responses":{"200":{"description":"silphco-envelope.v1","content":{"application/json":{"schema":{"type":"object","properties":{"contract":{"type":"string","example":"card-sales.v1"},"data":{"type":"object"}}}}}},"401":{"description":"Missing or invalid API key"}},"security":[{"bearerAuth":[]}]}},"/api/v3/cards/{id}/vwap":{"get":{"tags":["Cards","stable"],"summary":"Volume-weighted average price","description":"Response contract: `vwap.v1`. Requires `Authorization: Bearer <api_key>`.","operationId":"GET__api_v3_cards_id_vwap","responses":{"200":{"description":"silphco-envelope.v1","content":{"application/json":{"schema":{"type":"object","properties":{"contract":{"type":"string","example":"vwap.v1"},"data":{"type":"object"}}}}}},"401":{"description":"Missing or invalid API key"}},"security":[{"bearerAuth":[]}]}},"/api/v3/lookup":{"get":{"tags":["search"],"summary":"Typeahead card lookup (lookup.v1)","operationId":"lookup_api_v1_lookup_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"type":"string","maxLength":256,"default":"","title":"Q"}},{"name":"language","in":"query","required":false,"schema":{"anyOf":[{"type":"string","pattern":"^(en|ja)$"},{"type":"null"}],"title":"Language"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":25,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"title":"Response Lookup Api V1 Lookup Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/market/volume":{"get":{"tags":["market"],"summary":"Market volume leaderboard (market-volume.v1)","operationId":"market_volume_api_v1_market_volume_get","parameters":[{"name":"days","in":"query","required":false,"schema":{"type":"integer","default":90,"title":"Days"}},{"name":"language","in":"query","required":false,"schema":{"type":"string","default":"en","title":"Language"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"title":"Response Market Volume Api V1 Market Volume Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/populations/search":{"get":{"tags":["Search","stable"],"summary":"Search graded populations","description":"Response contract: `population-search.v1`. Requires `Authorization: Bearer <api_key>`.","operationId":"GET__api_v3_populations_search","responses":{"200":{"description":"silphco-envelope.v1","content":{"application/json":{"schema":{"type":"object","properties":{"contract":{"type":"string","example":"population-search.v1"},"data":{"type":"object"}}}}}},"401":{"description":"Missing or invalid API key"}},"security":[{"bearerAuth":[]}]}},"/api/v3/search":{"get":{"tags":["search"],"summary":"Full-text card search (search.v1)","operationId":"search_api_v1_search_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"type":"string","maxLength":256,"default":"","title":"Q"}},{"name":"language","in":"query","required":false,"schema":{"anyOf":[{"type":"string","pattern":"^(en|ja)$"},{"type":"null"}],"title":"Language"}},{"name":"set_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}],"title":"Set Id"}},{"name":"rarity","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}],"title":"Rarity"}},{"name":"variant","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}],"title":"Variant"}},{"name":"min_price","in":"query","required":false,"schema":{"anyOf":[{"type":"number","minimum":0},{"type":"null"}],"title":"Min Price"}},{"name":"max_price","in":"query","required":false,"schema":{"anyOf":[{"type":"number","minimum":0},{"type":"null"}],"title":"Max Price"}},{"name":"sort","in":"query","required":false,"schema":{"type":"string","pattern":"^(relevance|volume|name|price)$","default":"relevance","title":"Sort"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":25,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"title":"Response Search Api V1 Search Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/sets":{"get":{"tags":["sets"],"summary":"Paginated set list","operationId":"list_sets_api_v1_sets_get","parameters":[{"name":"sort","in":"query","required":false,"schema":{"type":"string","pattern":"^(release_date|release_date_asc|name|volume|card_count)$","default":"release_date","title":"Sort"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"title":"Response List Sets Api V1 Sets Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/sets/{id}":{"get":{"tags":["Sets","stable"],"summary":"Set detail","description":"Response contract: `set-gold.v3`. Requires `Authorization: Bearer <api_key>`.","operationId":"GET__api_v3_sets_id","responses":{"200":{"description":"silphco-envelope.v1","content":{"application/json":{"schema":{"type":"object","properties":{"contract":{"type":"string","example":"set-gold.v3"},"data":{"type":"object"}}}}}},"401":{"description":"Missing or invalid API key"}},"security":[{"bearerAuth":[]}]}},"/api/v3/sets/{id}/breakdown":{"get":{"tags":["Sets","stable"],"summary":"Set sales breakdown","description":"Response contract: `set-breakdown.v1`. Requires `Authorization: Bearer <api_key>`.","operationId":"GET__api_v3_sets_id_breakdown","responses":{"200":{"description":"silphco-envelope.v1","content":{"application/json":{"schema":{"type":"object","properties":{"contract":{"type":"string","example":"set-breakdown.v1"},"data":{"type":"object"}}}}}},"401":{"description":"Missing or invalid API key"}},"security":[{"bearerAuth":[]}]}},"/api/v3/sets/{id}/population":{"get":{"tags":["Sets","stable"],"summary":"Set population report","description":"Response contract: `set-population.v1`. Requires `Authorization: Bearer <api_key>`.","operationId":"GET__api_v3_sets_id_population","responses":{"200":{"description":"silphco-envelope.v1","content":{"application/json":{"schema":{"type":"object","properties":{"contract":{"type":"string","example":"set-population.v1"},"data":{"type":"object"}}}}}},"401":{"description":"Missing or invalid API key"}},"security":[{"bearerAuth":[]}]}},"/api/v3/sets/{id}/price-distribution":{"get":{"tags":["Sets","stable"],"summary":"Set price distribution","description":"Response contract: `set-price-distribution.v1`. Requires `Authorization: Bearer <api_key>`.","operationId":"GET__api_v3_sets_id_price-distribution","responses":{"200":{"description":"silphco-envelope.v1","content":{"application/json":{"schema":{"type":"object","properties":{"contract":{"type":"string","example":"set-price-distribution.v1"},"data":{"type":"object"}}}}}},"401":{"description":"Missing or invalid API key"}},"security":[{"bearerAuth":[]}]}},"/api/v3/sets/{id}/trending-cards":{"get":{"tags":["Sets","stable"],"summary":"Trending cards in a set","description":"Response contract: `set-trending-cards.v2`. Requires `Authorization: Bearer <api_key>`.","operationId":"GET__api_v3_sets_id_trending-cards","responses":{"200":{"description":"silphco-envelope.v1","content":{"application/json":{"schema":{"type":"object","properties":{"contract":{"type":"string","example":"set-trending-cards.v2"},"data":{"type":"object"}}}}}},"401":{"description":"Missing or invalid API key"}},"security":[{"bearerAuth":[]}]}},"/api/v3/sets/{id}/volume-history":{"get":{"tags":["Sets","stable"],"summary":"Set volume over time","description":"Response contract: `set-volume-history.v1`. Requires `Authorization: Bearer <api_key>`.","operationId":"GET__api_v3_sets_id_volume-history","responses":{"200":{"description":"silphco-envelope.v1","content":{"application/json":{"schema":{"type":"object","properties":{"contract":{"type":"string","example":"set-volume-history.v1"},"data":{"type":"object"}}}}}},"401":{"description":"Missing or invalid API key"}},"security":[{"bearerAuth":[]}]}},"/api/v3/trending":{"get":{"tags":["trending"],"summary":"Trending cards leaderboard","operationId":"trending_api_v1_trending_get","parameters":[{"name":"metric","in":"query","required":false,"schema":{"type":"string","pattern":"^(volume_pct|price_pct|composite|new_listings|volume_usd|sales_count|psa10_volume_pct|psa10_price_pct|psa10_composite|psa10_volume_usd|psa10_sales_count)$","default":"composite","title":"Metric"}},{"name":"window","in":"query","required":false,"schema":{"type":"string","pattern":"^(1d|7d|30d|90d|180d)$","default":"30d","title":"Window"}},{"name":"window_days","in":"query","required":false,"schema":{"anyOf":[{"type":"integer","maximum":365,"minimum":1},{"type":"null"}],"title":"Window Days"}},{"name":"language","in":"query","required":false,"schema":{"type":"string","pattern":"^(en|ja|all)$","default":"all","title":"Language"}},{"name":"direction","in":"query","required":false,"schema":{"type":"string","pattern":"^(asc|desc)$","default":"desc","title":"Direction"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}},{"name":"grader","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":16},{"type":"null"}],"title":"Grader"}},{"name":"grade_num","in":"query","required":false,"schema":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Grade Num"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"title":"Response Trending Api V1 Trending Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/cards/analytics/batch":{"post":{"tags":["Cards","stable"],"summary":"Batch card analytics","description":"Response contract: `cards-analytics-batch.v1`. Requires `Authorization: Bearer <api_key>`.","operationId":"POST__api_v3_cards_analytics_batch","responses":{"200":{"description":"silphco-envelope.v1","content":{"application/json":{"schema":{"type":"object","properties":{"contract":{"type":"string","example":"cards-analytics-batch.v1"},"data":{"type":"object"}}}}}},"401":{"description":"Missing or invalid API key"}},"security":[{"bearerAuth":[]}]}},"/api/v3/cards/batch":{"post":{"tags":["Cards","stable"],"summary":"Batch card lookup","description":"Response contract: `batch-cards.v1`. Requires `Authorization: Bearer <api_key>`.","operationId":"POST__api_v3_cards_batch","responses":{"200":{"description":"silphco-envelope.v1","content":{"application/json":{"schema":{"type":"object","properties":{"contract":{"type":"string","example":"batch-cards.v1"},"data":{"type":"object"}}}}}},"401":{"description":"Missing or invalid API key"}},"security":[{"bearerAuth":[]}]}},"/health":{"get":{"tags":["health"],"summary":"Health","operationId":"health_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":{"type":"string"},"type":"object","title":"Response Health Health Get"}}}}}}},"/health/data":{"get":{"tags":["health"],"summary":"Health Data","operationId":"health_data_health_data_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Health Data Health Data Get"}}}}}}},"/catalog":{"get":{"tags":["catalog"],"summary":"Catalog","operationId":"catalog_catalog_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Catalog Catalog Get"}}}}}}},"/api/v3/listings":{"get":{"tags":["listings"],"summary":"List Listings","operationId":"list_listings_api_v1_listings_get","parameters":[{"name":"pokemontcg_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Pokemontcg Id"}},{"name":"marketplace","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Marketplace"}},{"name":"grade_key","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Grade Key"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"minimum":1,"default":100,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Listings Api V1 Listings Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/sales":{"get":{"tags":["sales"],"summary":"List Sales","operationId":"list_sales_api_v1_sales_get","parameters":[{"name":"pokemontcg_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Pokemontcg Id"}},{"name":"marketplace","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Marketplace"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"minimum":1,"default":100,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Sales Api V1 Sales Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/sales/export.csv":{"get":{"tags":["sales"],"summary":"Export Sales Csv","operationId":"export_sales_csv_api_v1_sales_export_csv_get","parameters":[{"name":"pokemontcg_id","in":"query","required":true,"schema":{"type":"string","description":"Card ID to export sales for","title":"Pokemontcg Id"},"description":"Card ID to export sales for"},{"name":"grade","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Filter by grade_key","title":"Grade"},"description":"Filter by grade_key"},{"name":"marketplace","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Filter by marketplace","title":"Marketplace"},"description":"Filter by marketplace"},{"name":"url_only","in":"query","required":false,"schema":{"type":"boolean","description":"If true, only rows with non-NULL url","default":false,"title":"Url Only"},"description":"If true, only rows with non-NULL url"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":50000,"minimum":1,"default":5000,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/cards/{card_id}/price-history":{"get":{"tags":["cards"],"summary":"Get Card Price History","operationId":"get_card_price_history_api_v1_cards__card_id__price_history_get","parameters":[{"name":"card_id","in":"path","required":true,"schema":{"type":"string","title":"Card Id"}},{"name":"variant","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Variant"}},{"name":"language","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Language"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"minimum":1,"default":200,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"title":"Response Get Card Price History Api V1 Cards  Card Id  Price History Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/cards/{card_id}/physical-sales":{"get":{"tags":["cards"],"summary":"Get Card Physical Sales","operationId":"get_card_physical_sales_api_v1_cards__card_id__physical_sales_get","parameters":[{"name":"card_id","in":"path","required":true,"schema":{"type":"string","title":"Card Id"}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","description":"Opaque pagination cursor from a previous response.","default":"","title":"Cursor"},"description":"Opaque pagination cursor from a previous response."},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"title":"Response Get Card Physical Sales Api V1 Cards  Card Id  Physical Sales Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/cards/{card_id}/market-history":{"get":{"tags":["cards"],"summary":"Card market price history time-series","operationId":"get_card_market_history_api_v1_cards__card_id__market_history_get","parameters":[{"name":"card_id","in":"path","required":true,"schema":{"type":"string","title":"Card Id"}},{"name":"condition","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Condition"}},{"name":"source","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Source"}},{"name":"date_from","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Date From"}},{"name":"date_to","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Date To"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":2000,"minimum":1,"default":365,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"title":"Response Get Card Market History Api V1 Cards  Card Id  Market History Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/cards/{card_id}/population":{"get":{"tags":["cards"],"summary":"Card population overview","operationId":"get_card_population_api_v1_cards__card_id__population_get","parameters":[{"name":"card_id","in":"path","required":true,"schema":{"type":"string","pattern":"^[a-z0-9]+(?:-[a-zA-Z0-9_!?]+)*$","title":"Card Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"title":"Response Get Card Population Api V1 Cards  Card Id  Population Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/cards/{card_id}/sales/history":{"get":{"tags":["cards"],"summary":"Get Card Sales History","operationId":"get_card_sales_history_api_v1_cards__card_id__sales_history_get","parameters":[{"name":"card_id","in":"path","required":true,"schema":{"type":"string","title":"Card Id"}},{"name":"venue","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Venue"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":10,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"title":"Response Get Card Sales History Api V1 Cards  Card Id  Sales History Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/cards/{card_id}/grading_economics":{"get":{"tags":["cards"],"summary":"Card grading economics","operationId":"get_card_grading_economics_api_v1_cards__card_id__grading_economics_get","parameters":[{"name":"card_id","in":"path","required":true,"schema":{"type":"string","title":"Card Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"title":"Response Get Card Grading Economics Api V1 Cards  Card Id  Grading Economics Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/cards/{card_id}/paper_history":{"get":{"tags":["cards"],"summary":"Card paper market history","operationId":"get_card_paper_history_api_v1_cards__card_id__paper_history_get","parameters":[{"name":"card_id","in":"path","required":true,"schema":{"type":"string","title":"Card Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"title":"Response Get Card Paper History Api V1 Cards  Card Id  Paper History Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/cards/{card_id}/price-history-unified":{"get":{"tags":["cards"],"summary":"Unified card price history time-series (price-history.v2)","operationId":"get_card_price_history_unified_api_v1_cards__card_id__price_history_unified_get","parameters":[{"name":"card_id","in":"path","required":true,"schema":{"type":"string","title":"Card Id"}},{"name":"condition","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}],"title":"Condition"}},{"name":"source","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":32},{"type":"null"}],"title":"Source"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":2000,"minimum":1,"default":365,"title":"Limit"}},{"name":"date_from","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":10},{"type":"null"}],"title":"Date From"}},{"name":"date_to","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":10},{"type":"null"}],"title":"Date To"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"title":"Response Get Card Price History Unified Api V1 Cards  Card Id  Price History Unified Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/cards/{card_id}/sales":{"get":{"tags":["cards"],"summary":"Cursor-paginated on-chain sales for a card","operationId":"get_card_sales_cursor_api_v1_cards__card_id__sales_get","parameters":[{"name":"card_id","in":"path","required":true,"schema":{"type":"string","title":"Card Id"}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","maxLength":512,"default":"","title":"Cursor"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"title":"Response Get Card Sales Cursor Api V1 Cards  Card Id  Sales Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/sets/{set_id}/price-distribution":{"get":{"tags":["cards"],"summary":"Set price distribution histogram","operationId":"get_set_price_distribution_api_v1_sets__set_id__price_distribution_get","parameters":[{"name":"set_id","in":"path","required":true,"schema":{"type":"string","maxLength":64,"pattern":"^[a-z0-9]+(?:-[a-zA-Z0-9_!?]+)*$","title":"Set Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"title":"Response Get Set Price Distribution Api V1 Sets  Set Id  Price Distribution Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/sets/{set_id}/cards":{"get":{"tags":["cards"],"summary":"Cards within a set","description":"Return paginated cards belonging to a set (set-cards.v1 contract).","operationId":"get_set_cards_api_v1_sets__set_id__cards_get","parameters":[{"name":"set_id","in":"path","required":true,"schema":{"type":"string","maxLength":64,"pattern":"^[a-z0-9]+(?:-[a-zA-Z0-9_!?]+)*$","title":"Set Id"}},{"name":"language","in":"query","required":false,"schema":{"anyOf":[{"type":"string","pattern":"^(en|ja)$"},{"type":"null"}],"title":"Language"}},{"name":"rarity","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}],"title":"Rarity"}},{"name":"variant","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}],"title":"Variant"}},{"name":"sort","in":"query","required":false,"schema":{"type":"string","pattern":"^(?:liquidity|name|price|sales_count|sales_count_desc|volume|volume_desc)$","default":"name","title":"Sort"}},{"name":"order","in":"query","required":false,"schema":{"type":"string","pattern":"^(asc|desc)$","default":"desc","title":"Order"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"title":"Response Get Set Cards Api V1 Sets  Set Id  Cards Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/shop/listings":{"get":{"tags":["cards"],"summary":"Shop listings across platforms","operationId":"get_shop_listings_api_v1_shop_listings_get","parameters":[{"name":"platforms","in":"query","required":false,"schema":{"type":"string","default":"all","title":"Platforms"}},{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}},{"name":"card_id","in":"query","required":false,"schema":{"type":"string","default":"","title":"Card Id"}},{"name":"sort","in":"query","required":false,"schema":{"type":"string","default":"price_asc","title":"Sort"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"title":"Response Get Shop Listings Api V1 Shop Listings Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/cards/{card_id}/vwap":{"get":{"tags":["cards"],"summary":"Card volume-weighted average price","operationId":"get_card_vwap_api_v1_cards__card_id__vwap_get","parameters":[{"name":"card_id","in":"path","required":true,"schema":{"type":"string","title":"Card Id"}},{"name":"condition","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":32},{"type":"null"}],"title":"Condition"}},{"name":"grader","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":16},{"type":"null"}],"title":"Grader"}},{"name":"grade_num","in":"query","required":false,"schema":{"anyOf":[{"type":"number","maximum":10,"minimum":0},{"type":"null"}],"title":"Grade Num"}},{"name":"language","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":16},{"type":"null"}],"title":"Language"}},{"name":"window_days","in":"query","required":false,"schema":{"type":"integer","maximum":365,"minimum":1,"default":30,"title":"Window Days"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"title":"Response Get Card Vwap Api V1 Cards  Card Id  Vwap Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/cards/{card_id}/momentum":{"get":{"tags":["cards"],"summary":"Card SilphCo-Price momentum","operationId":"get_card_momentum_api_v1_cards__card_id__momentum_get","parameters":[{"name":"card_id","in":"path","required":true,"schema":{"type":"string","title":"Card Id"}},{"name":"grader","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":16},{"type":"null"}],"title":"Grader"}},{"name":"grade_num","in":"query","required":false,"schema":{"anyOf":[{"type":"number","maximum":10,"minimum":0},{"type":"null"}],"title":"Grade Num"}},{"name":"language","in":"query","required":false,"schema":{"anyOf":[{"type":"string","pattern":"^(en|ja)$"},{"type":"null"}],"title":"Language"}},{"name":"half_life_days","in":"query","required":false,"schema":{"anyOf":[{"type":"integer","maximum":365,"minimum":1},{"type":"null"}],"title":"Half Life Days"}},{"name":"window_days","in":"query","required":false,"schema":{"anyOf":[{"type":"integer","maximum":365,"minimum":1},{"type":"null"}],"title":"Window Days"}},{"name":"horizon_days","in":"query","required":false,"schema":{"anyOf":[{"type":"integer","maximum":365,"minimum":1},{"type":"null"}],"title":"Horizon Days"}},{"name":"min_fit_sales","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":2,"default":5,"title":"Min Fit Sales"}},{"name":"flat_t","in":"query","required":false,"schema":{"type":"number","maximum":10,"minimum":0,"default":1.5,"title":"Flat T"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"title":"Response Get Card Momentum Api V1 Cards  Card Id  Momentum Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/cards/{card_id}":{"get":{"tags":["cards"],"summary":"Get a single card (card-gold.v3)","operationId":"get_card_api_v1_cards__card_id__get","parameters":[{"name":"card_id","in":"path","required":true,"schema":{"type":"string","title":"Card Id"}},{"name":"include","in":"query","required":false,"schema":{"type":"string","description":"Comma-separated subresources: price_history, tvwap_history, tvwap_slots, grade_momentum, recent_sales, market_summary, physical_sales, grade_breakdown, population_overview, grading_economics","default":"","title":"Include"},"description":"Comma-separated subresources: price_history, tvwap_history, tvwap_slots, grade_momentum, recent_sales, market_summary, physical_sales, grade_breakdown, population_overview, grading_economics"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"title":"Response Get Card Api V1 Cards  Card Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/cards/{card_id}/analytics":{"get":{"tags":["cards"],"summary":"Single-card analytics dashboard (card-analytics.v1)","operationId":"get_card_analytics_api_v1_cards__card_id__analytics_get","parameters":[{"name":"card_id","in":"path","required":true,"schema":{"type":"string","title":"Card Id"}},{"name":"window","in":"query","required":false,"schema":{"type":"string","description":"Time window (1y, 6m, 3m, 1m, 1w, all)","default":"1y","title":"Window"},"description":"Time window (1y, 6m, 3m, 1m, 1w, all)"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"title":"Response Get Card Analytics Api V1 Cards  Card Id  Analytics Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/cards/{card_id}/gold-sales":{"get":{"tags":["cards"],"summary":"Get Card Gold Sales","operationId":"get_card_gold_sales_api_v1_cards__card_id__gold_sales_get","parameters":[{"name":"card_id","in":"path","required":true,"schema":{"type":"string","title":"Card Id"}},{"name":"lanes","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Comma-separated source values to filter by (e.g. ebay_sold,tcgplayer_history)","title":"Lanes"},"description":"Comma-separated source values to filter by (e.g. ebay_sold,tcgplayer_history)"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":5000,"minimum":1,"default":1000,"title":"Limit"}},{"name":"since","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"date"},{"type":"null"}],"description":"Filter rows where sale_date >= YYYY-MM-DD","title":"Since"},"description":"Filter rows where sale_date >= YYYY-MM-DD"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"title":"Response Get Card Gold Sales Api V1 Cards  Card Id  Gold Sales Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/market/daily":{"get":{"tags":["market"],"summary":"List Market Daily","operationId":"list_market_daily_api_v1_market_daily_get","parameters":[{"name":"marketplace","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Marketplace"}},{"name":"sale_date_from","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"date"},{"type":"null"}],"title":"Sale Date From"}},{"name":"sale_date_to","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"date"},{"type":"null"}],"title":"Sale Date To"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"minimum":1,"default":100,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Market Daily Api V1 Market Daily Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/cards/{pokemontcg_id}/market/daily":{"get":{"tags":["market"],"summary":"List Card Market Daily","operationId":"list_card_market_daily_api_v1_cards__pokemontcg_id__market_daily_get","parameters":[{"name":"pokemontcg_id","in":"path","required":true,"schema":{"type":"string","title":"Pokemontcg Id"}},{"name":"grade_key","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Grade Key"}},{"name":"marketplace","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Marketplace"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"minimum":1,"default":100,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Card Market Daily Api V1 Cards  Pokemontcg Id  Market Daily Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/platform/{lane}/leaderboard/traders":{"get":{"tags":["platform"],"summary":"List Trader Leaderboard","operationId":"list_trader_leaderboard_api_v1_platform__lane__leaderboard_traders_get","parameters":[{"name":"lane","in":"path","required":true,"schema":{"type":"string","title":"Lane"}},{"name":"window","in":"query","required":false,"schema":{"type":"string","default":"all","title":"Window"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"minimum":1,"default":100,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Trader Leaderboard Api V1 Platform  Lane  Leaderboard Traders Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/platform/{lane}/leaderboard/pulls":{"get":{"tags":["platform"],"summary":"List Pull Leaderboard","operationId":"list_pull_leaderboard_api_v1_platform__lane__leaderboard_pulls_get","parameters":[{"name":"lane","in":"path","required":true,"schema":{"type":"string","title":"Lane"}},{"name":"window","in":"query","required":false,"schema":{"type":"string","default":"all","title":"Window"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"minimum":1,"default":100,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Pull Leaderboard Api V1 Platform  Lane  Leaderboard Pulls Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/meta/freshness":{"get":{"tags":["meta"],"summary":"Meta Freshness","operationId":"meta_freshness_api_v1_meta_freshness_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Meta Freshness Api V1 Meta Freshness Get"}}}}}}},"/api/v3/sets/{set_id}":{"get":{"tags":["sets"],"summary":"Set detail","operationId":"get_set_api_v1_sets__set_id__get","parameters":[{"name":"set_id","in":"path","required":true,"schema":{"type":"string","maxLength":64,"pattern":"^[a-z0-9]+(?:-[a-zA-Z0-9_!?]+)*$","title":"Set Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"title":"Response Get Set Api V1 Sets  Set Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/sets/{set_id}/volume-history":{"get":{"tags":["sets"],"summary":"Set volume history","operationId":"set_volume_history_api_v1_sets__set_id__volume_history_get","parameters":[{"name":"set_id","in":"path","required":true,"schema":{"type":"string","maxLength":64,"pattern":"^[a-z0-9]+(?:-[a-zA-Z0-9_!?]+)*$","title":"Set Id"}},{"name":"start","in":"query","required":false,"schema":{"anyOf":[{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},{"type":"null"}],"title":"Start"}},{"name":"end","in":"query","required":false,"schema":{"anyOf":[{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},{"type":"null"}],"title":"End"}},{"name":"window","in":"query","required":false,"schema":{"type":"string","pattern":"^(daily|weekly)$","default":"weekly","title":"Window"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"title":"Response Set Volume History Api V1 Sets  Set Id  Volume History Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/sets/{set_id}/trending-cards":{"get":{"tags":["sets"],"summary":"Trending cards within a set","operationId":"set_trending_cards_api_v1_sets__set_id__trending_cards_get","parameters":[{"name":"set_id","in":"path","required":true,"schema":{"type":"string","maxLength":64,"pattern":"^[a-z0-9]+(?:-[a-zA-Z0-9_!?]+)*$","title":"Set Id"}},{"name":"language","in":"query","required":false,"schema":{"type":"string","pattern":"^(en|ja|all)$","default":"all","title":"Language"}},{"name":"sort_by","in":"query","required":false,"schema":{"type":"string","pattern":"^(volume|sales_count|psa10_volume|psa10_sales_count)$","default":"volume","title":"Sort By"}},{"name":"window","in":"query","required":false,"schema":{"type":"string","pattern":"^(7d|30d|90d|180d|all)$","default":"30d","title":"Window"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":20,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"title":"Response Set Trending Cards Api V1 Sets  Set Id  Trending Cards Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/sets/{set_id}/population":{"get":{"tags":["sets"],"summary":"Set graded population overview","operationId":"set_population_api_v1_sets__set_id__population_get","parameters":[{"name":"set_id","in":"path","required":true,"schema":{"type":"string","maxLength":64,"pattern":"^[a-z0-9]+(?:-[a-zA-Z0-9_!?]+)*$","title":"Set Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"title":"Response Set Population Api V1 Sets  Set Id  Population Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/sets/{set_id}/breakdown":{"get":{"tags":["sets"],"summary":"Set PSA10 breakdown","operationId":"set_breakdown_api_v1_sets__set_id__breakdown_get","parameters":[{"name":"set_id","in":"path","required":true,"schema":{"type":"string","maxLength":64,"pattern":"^[a-z0-9]+(?:-[a-zA-Z0-9_!?]+)*$","title":"Set Id"}},{"name":"days","in":"query","required":false,"schema":{"type":"integer","default":30,"title":"Days"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"title":"Response Set Breakdown Api V1 Sets  Set Id  Breakdown Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/sql":{"post":{"tags":["sql"],"summary":"Guarded read-only SQL over gold views (sql-query.v1)","operationId":"run_sql_api_v1_sql_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Payload"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"title":"Response Run Sql Api V1 Sql Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/research":{"post":{"tags":["research"],"summary":"Submit Research","operationId":"submit_research_api_v1_research_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResearchSubmitBody"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Submit Research Api V1 Research Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/cards/{card_id}/research":{"post":{"tags":["research"],"summary":"Submit Card Research","operationId":"submit_card_research_api_v1_cards__card_id__research_post","parameters":[{"name":"card_id","in":"path","required":true,"schema":{"type":"string","title":"Card Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CardScopedResearchBody"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Submit Card Research Api V1 Cards  Card Id  Research Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/research/{job_id}/sales":{"get":{"tags":["research"],"summary":"Export Research Sales","description":"Export card-scoped sales rows from the completed research job dataset.","operationId":"export_research_sales_api_v1_research__job_id__sales_get","parameters":[{"name":"job_id","in":"path","required":true,"schema":{"type":"string","title":"Job Id"}},{"name":"format","in":"query","required":false,"schema":{"type":"string","pattern":"^(parquet|csv)$","default":"parquet","title":"Format"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/research/{job_id}/timeseries.csv":{"get":{"tags":["research"],"summary":"Export Research Timeseries Csv","description":"Daily marketplace time series CSV for one card research job (one card per request).","operationId":"export_research_timeseries_csv_api_v1_research__job_id__timeseries_csv_get","parameters":[{"name":"job_id","in":"path","required":true,"schema":{"type":"string","title":"Job Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/research/queue":{"get":{"tags":["research"],"summary":"Get Research Queue","description":"Snapshot of active research jobs with queue timing (FIFO order).","operationId":"get_research_queue_api_v1_research_queue_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Get Research Queue Api V1 Research Queue Get"}}}}}}},"/api/v3/research/{job_id}":{"get":{"tags":["research"],"summary":"Get Research","operationId":"get_research_api_v1_research__job_id__get","parameters":[{"name":"job_id","in":"path","required":true,"schema":{"type":"string","title":"Job Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Research Api V1 Research  Job Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/obs/incidents":{"get":{"tags":["obs"],"summary":"Get Incidents","operationId":"get_incidents_api_v1_obs_incidents_get","parameters":[{"name":"since","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Since"}},{"name":"surface","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Surface"}},{"name":"signal","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Signal"}},{"name":"severity","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Severity"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Incidents Api V1 Obs Incidents Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/obs/incidents/{incident_id}":{"get":{"tags":["obs"],"summary":"Get Incident Detail","operationId":"get_incident_detail_api_v1_obs_incidents__incident_id__get","parameters":[{"name":"incident_id","in":"path","required":true,"schema":{"type":"string","title":"Incident Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Incident Detail Api V1 Obs Incidents  Incident Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/obs/incidents/{incident_id}/resolve":{"post":{"tags":["obs"],"summary":"Post Resolve","operationId":"post_resolve_api_v1_obs_incidents__incident_id__resolve_post","parameters":[{"name":"incident_id","in":"path","required":true,"schema":{"type":"string","title":"Incident Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResolveBody"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Post Resolve Api V1 Obs Incidents  Incident Id  Resolve Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/status":{"get":{"tags":["status"],"summary":"Get Status","operationId":"get_status_api_v1_status_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Get Status Api V1 Status Get"}}}}}}},"/api/v3/status/history":{"get":{"tags":["status"],"summary":"Get Status History","operationId":"get_status_history_api_v1_status_history_get","parameters":[{"name":"since","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Since"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Status History Api V1 Status History Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/status/sla":{"get":{"tags":["status"],"summary":"Get Status Sla","operationId":"get_status_sla_api_v1_status_sla_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Get Status Sla Api V1 Status Sla Get"}}}}}}},"/api/v3/agent/chat":{"post":{"tags":["agent"],"summary":"Stream agent responses as Server-Sent Events","description":"Stream agent responses as Server-Sent Events.\n\nRequest:\n    {\n        \"messages\": [{\"role\": \"user\", \"content\": \"Chart monthly sales volume\"}],\n        \"sessionId\": \"optional-existing-id\",\n        \"conversationId\": \"optional-persistent-conversation-id\"\n    }\n\nResponse: text/event-stream with JSON lines:\n    data: {\"type\": \"text\", \"delta\": \"Found...\"}\n    data: {\"type\": \"text\", \"delta\": \"...\", \"replace\": true}  # authoritative final text\n    data: {\"type\": \"widget\", \"widget\": {...}}\n    data: {\"type\": \"done\", \"sessionId\": \"...\"}","operationId":"agent_chat_api_v3_agent_chat_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChatRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/agent/results/{handle_id}":{"get":{"tags":["agent"],"summary":"Download materialized result","description":"Download a materialized result as CSV or Parquet.\n\nKnowing the unguessable full-UUID4 handle_id is sufficient for access.","operationId":"download_result_api_v3_agent_results__handle_id__get","parameters":[{"name":"handle_id","in":"path","required":true,"schema":{"type":"string","title":"Handle Id"}},{"name":"format","in":"query","required":false,"schema":{"type":"string","default":"csv","title":"Format"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/conversations":{"get":{"tags":["conversations"],"summary":"List conversations","operationId":"list_convs_api_v3_conversations_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"post":{"tags":["conversations"],"summary":"Create conversation","operationId":"create_conv_api_v3_conversations_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateConversationBody"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/conversations/{conversation_id}":{"get":{"tags":["conversations"],"summary":"Get conversation","operationId":"get_conv_api_v3_conversations__conversation_id__get","parameters":[{"name":"conversation_id","in":"path","required":true,"schema":{"type":"string","title":"Conversation Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["conversations"],"summary":"Delete conversation","operationId":"delete_conv_api_v3_conversations__conversation_id__delete","parameters":[{"name":"conversation_id","in":"path","required":true,"schema":{"type":"string","title":"Conversation Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/conversations/{conversation_id}/messages":{"post":{"tags":["conversations"],"summary":"Append messages","operationId":"append_msgs_api_v3_conversations__conversation_id__messages_post","parameters":[{"name":"conversation_id","in":"path","required":true,"schema":{"type":"string","title":"Conversation Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AppendMessagesBody"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/conversations/claim":{"post":{"tags":["conversations"],"summary":"Claim anon conversations after sign-in","description":"Re-key all anon:<uuid> conversations to the authenticated user's real user_id.\n\nRequires a valid Supabase JWT. Idempotent.","operationId":"claim_convs_api_v3_conversations_claim_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ClaimBody"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/keys":{"get":{"tags":["keys"],"summary":"Get Key Info","operationId":"get_key_info_keys_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Get Key Info Keys Get"}}}}}}},"/keys/generate":{"post":{"tags":["keys"],"summary":"Generate Key","operationId":"generate_key_keys_generate_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Generate Key Keys Generate Post"}}}}}}},"/keys/{key_id}":{"delete":{"tags":["keys"],"summary":"Revoke Key","operationId":"revoke_key_keys__key_id__delete","parameters":[{"name":"key_id","in":"path","required":true,"schema":{"type":"string","title":"Key Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Revoke Key Keys  Key Id  Delete"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/keys/usage":{"get":{"tags":["keys"],"summary":"Get Usage","operationId":"get_usage_keys_usage_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Get Usage Keys Usage Get"}}}}}}},"/auth/checkout":{"post":{"tags":["billing"],"summary":"Create Checkout","operationId":"create_checkout_auth_checkout_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Create Checkout Auth Checkout Post"}}}}}}},"/auth/subscription":{"get":{"tags":["billing"],"summary":"Get Subscription","operationId":"get_subscription_auth_subscription_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Get Subscription Auth Subscription Get"}}}}}}},"/auth/stripe-webhook":{"post":{"tags":["billing"],"summary":"Stripe Webhook","operationId":"stripe_webhook_auth_stripe_webhook_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Stripe Webhook Auth Stripe Webhook Post"}}}}}}},"/{full_path}":{"get":{"summary":" Spa Fallback","operationId":"_spa_fallback__full_path__get","parameters":[{"name":"full_path","in":"path","required":true,"schema":{"type":"string","title":"Full Path"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}},"components":{"schemas":{"AppendMessagesBody":{"properties":{"messages":{"items":{"$ref":"#/components/schemas/MessageTurn"},"type":"array","title":"Messages"}},"type":"object","required":["messages"],"title":"AppendMessagesBody"},"ChatMessage":{"properties":{"role":{"type":"string","enum":["user","agent"],"title":"Role"},"content":{"type":"string","title":"Content"}},"type":"object","required":["role","content"],"title":"ChatMessage"},"ChatRequest":{"properties":{"messages":{"items":{"$ref":"#/components/schemas/ChatMessage"},"type":"array","minItems":1,"title":"Messages"},"sessionId":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Sessionid"},"conversationId":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Conversationid"}},"type":"object","required":["messages"],"title":"ChatRequest"},"ClaimBody":{"properties":{"anon_session_id":{"type":"string","title":"Anon Session Id"}},"type":"object","required":["anon_session_id"],"title":"ClaimBody"},"CreateConversationBody":{"properties":{"first_message":{"type":"string","title":"First Message"}},"type":"object","required":["first_message"],"title":"CreateConversationBody"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"MessageTurn":{"properties":{"role":{"type":"string","enum":["user","agent"],"title":"Role"},"content":{"type":"string","title":"Content"},"metadata":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Metadata"}},"type":"object","required":["role","content"],"title":"MessageTurn"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"},"CardScopedResearchBody":{"properties":{"grades":{"items":{"type":"string"},"type":"array","title":"Grades"},"lanes":{"items":{"type":"string"},"type":"array","title":"Lanes"},"fixture_mode":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Fixture Mode"},"force_refresh":{"type":"boolean","title":"Force Refresh","default":false},"reuse_ttl_hours":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Reuse Ttl Hours"},"skip_if_queued":{"type":"boolean","title":"Skip If Queued","default":false},"enrich_items":{"type":"boolean","title":"Enrich Items","default":false},"items_boa_only_filter":{"type":"boolean","title":"Items Boa Only Filter","default":false}},"type":"object","title":"CardScopedResearchBody"},"ResearchSubmitBody":{"properties":{"pokemontcg_id":{"type":"string","minLength":3,"title":"Pokemontcg Id"},"grades":{"items":{"type":"string"},"type":"array","title":"Grades"},"lanes":{"items":{"type":"string"},"type":"array","title":"Lanes"},"fixture_mode":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Fixture Mode"},"force_refresh":{"type":"boolean","title":"Force Refresh","description":"If true, always run a new scrape even when fresh data exists","default":false},"reuse_ttl_hours":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Reuse Ttl Hours","description":"Per card+grade cooldown in hours before a new scrape (default 48 = 2 days)"},"skip_if_queued":{"type":"boolean","title":"Skip If Queued","description":"If true, return the existing pending/running job for this card+grades instead of enqueueing again","default":false},"enrich_items":{"type":"boolean","title":"Enrich Items","default":false},"items_boa_only_filter":{"type":"boolean","title":"Items Boa Only Filter","default":false}},"type":"object","required":["pokemontcg_id"],"title":"ResearchSubmitBody"},"ResolveBody":{"properties":{"fix_summary":{"type":"string","title":"Fix Summary"},"fix_pr_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Fix Pr Url"},"fix_commit_sha":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Fix Commit Sha"},"postmortem_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Postmortem Url"}},"type":"object","required":["fix_summary"],"title":"ResolveBody"}},"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","description":"API key from https://silphcoanalytics.xyz/dashboard"}}},"tags":[{"name":"Cards","description":"Card catalog, pricing, sales, and market history."},{"name":"Sets","description":"Set directories, volumes, and breakdowns."},{"name":"Search","description":"Text search, lookup, and trending."},{"name":"Sales","description":"Market volume and sales history."},{"name":"Analytics","description":"Card analytics and population search."},{"name":"SQL","description":"Direct SQL query endpoint (beta)."},{"name":"Meta","description":"Quota, feedback, and utilities."},{"name":"Cards","description":"Card catalog, pricing, sales, and market history."},{"name":"Sets","description":"Set directories, volumes, and breakdowns."},{"name":"Search","description":"Text search, typeahead lookup, and trending leaderboards."},{"name":"Sales","description":"Sales firehose, market volume, and event tracking."},{"name":"Analytics","description":"Card analytics, population search, and grade premiums."},{"name":"On-chain","description":"Collector Crypt, Phygitals, and on-chain listings."},{"name":"Meta","description":"Quota, feedback, debug, and internal utilities."},{"name":"SQL","description":"Direct DuckDB SQL query endpoint and table catalog."}],"servers":[{"url":"https://silphcoanalytics.xyz","description":"Production"}]}