{"ok":true,"schema_version":1,"data":{"agent_readiness":{"blocker_level":"missing-data","blockers":[{"code":"missing-schema","field":"schemas","message":"At least one callable service exists, but no captured schema artifact is available.","next_action":"Capture an official OpenAPI/Swagger/JSON Schema source or document that no schema exists.","severity":"missing-data"},{"code":"missing-docs","field":"docs_url","message":"No public documentation link is recorded.","next_action":"Add an official docs URL or document that no public docs exist.","severity":"missing-data"}],"missing_fields":["docs_url","schemas"],"status":"callable"},"categories":["baseline-augmented","baseline-curated","finance","identity-reviewed","official-source-repo","official-website"],"completeness_score":79,"contract_version":"2026-07-03.2","example_count":0,"examples":[],"generated_at":"2026-09-10T12:15:44.147Z","integration_readiness":83,"name":"NeverPlayAlone","netuid":98,"readiness":{"components":{"active_lifecycle":true,"auth_clarity":true,"callable_now":true,"documented":false,"has_callable_api":true,"has_candidate_api":true,"has_public_docs":false,"has_source_repo":true,"profile_complete":true},"readiness_tier":"buildable","readiness_version":2,"score":83,"readiness_verified":true},"schema_version":1,"service_count":4,"services":[{"auth":null,"auth_required":false,"auth_schemes":[],"authority":"community","base_url":"https://raw.githubusercontent.com/SN98-ForeverMoney/forever-money/7acfc5422a4e1714670275bf8dc2b32c1f815756/validator/utils/abis/LiquidityManager.json","capability":"ForeverMoney LiquidityManager contract ABI","description":"Public no-auth machine-readable JSON ABI for the on-chain LiquidityManager smart contract loaded by the SN98 ForeverMoney validator, committed in the official SN98-ForeverMoney/forever-money repository at validator/utils/abis/LiquidityManager.json. Describes the constructor, functions, and events of the core liquidity-management contract the subnet's validator interacts with. Pinned to an immutable commit. Distinct from the min_compute hardware spec already registered.","eligibility":{"callable":true,"reasons":["not-bittensor-base-layer"],"live_status":"ok"},"fixture_status":{"artifact_path":null,"captured_at":null,"reason":"non-json response","status":"capture-failed"},"health":{"status":"ok","classification":"live","latency_ms":200,"last_ok":"2026-09-11T03:00:12.650Z","last_checked":"2026-09-11T03:00:12.650Z","stale":false,"observed_by":"live-cron-prober"},"kind":"data-artifact","provider":"forevermoney","schema_artifact":null,"schema_source":null,"schema_status":null,"schema_url":null,"snippets":{"curl":"curl -sS 'https://raw.githubusercontent.com/SN98-ForeverMoney/forever-money/7acfc5422a4e1714670275bf8dc2b32c1f815756/validator/utils/abis/LiquidityManager.json'","python":"import requests\n\nresp = requests.get(\"https://raw.githubusercontent.com/SN98-ForeverMoney/forever-money/7acfc5422a4e1714670275bf8dc2b32c1f815756/validator/utils/abis/LiquidityManager.json\")\nresp.raise_for_status()\nprint(resp.json())","typescript":"const resp = await fetch(\"https://raw.githubusercontent.com/SN98-ForeverMoney/forever-money/7acfc5422a4e1714670275bf8dc2b32c1f815756/validator/utils/abis/LiquidityManager.json\");\nif (!resp.ok) throw new Error(`HTTP ${resp.status}`);\nconst data = await resp.json();"},"surface_id":"sn-98-forevermoney-liquidity-manager-abi"},{"auth":null,"auth_required":false,"auth_schemes":[],"authority":"community","base_url":"https://raw.githubusercontent.com/SN98-ForeverMoney/forever-money/main/min_compute.yml","capability":"ForeverMoney minimum compute requirements","description":"Public no-auth YAML miner and validator minimum hardware specification published at the root of the official SN98-ForeverMoney/forever-money repository as min_compute.yml. Documents baseline CPU, memory, storage, and network bandwidth requirements for SN98 ForeverMoney miners and validators.","eligibility":{"callable":true,"reasons":["not-bittensor-base-layer"],"live_status":"ok"},"fixture_status":{"artifact_path":null,"captured_at":null,"reason":"non-json response","status":"capture-failed"},"health":{"status":"ok","classification":"live","latency_ms":235,"last_ok":"2026-09-11T03:00:12.650Z","last_checked":"2026-09-11T03:00:12.650Z","stale":false,"observed_by":"live-cron-prober"},"kind":"data-artifact","provider":"forevermoney","schema_artifact":null,"schema_source":null,"schema_status":null,"schema_url":null,"snippets":{"curl":"curl -sS 'https://raw.githubusercontent.com/SN98-ForeverMoney/forever-money/main/min_compute.yml'","python":"import requests\n\nresp = requests.get(\"https://raw.githubusercontent.com/SN98-ForeverMoney/forever-money/main/min_compute.yml\")\nresp.raise_for_status()\nprint(resp.json())","typescript":"const resp = await fetch(\"https://raw.githubusercontent.com/SN98-ForeverMoney/forever-money/main/min_compute.yml\");\nif (!resp.ok) throw new Error(`HTTP ${resp.status}`);\nconst data = await resp.json();"},"surface_id":"sn-98-forevermoney-min-compute-spec"},{"auth":null,"auth_required":false,"auth_schemes":[],"authority":"community","base_url":"https://dashboard.forevermoney.ai/api/vaults/tvl","capability":"ForeverMoney vault TVL API","description":"Public no-auth GET returning vault TVL aggregates grouped by trading pair on the official ForeverMoney Insights dashboard API host.","eligibility":{"callable":true,"reasons":["not-bittensor-base-layer","status-degraded"],"live_status":"degraded"},"fixture_status":{"artifact_path":null,"captured_at":null,"reason":"http 530","status":"capture-failed"},"health":{"status":"degraded","classification":"transient","latency_ms":null,"last_ok":null,"last_checked":"2026-09-11T03:00:12.650Z","stale":false,"observed_by":"live-cron-prober"},"kind":"subnet-api","provider":"forevermoney","schema_artifact":null,"schema_source":null,"schema_status":null,"schema_url":null,"snippets":{"curl":"curl -sS 'https://dashboard.forevermoney.ai/api/vaults/tvl'","python":"import requests\n\nresp = requests.get(\"https://dashboard.forevermoney.ai/api/vaults/tvl\")\nresp.raise_for_status()\nprint(resp.json())","typescript":"const resp = await fetch(\"https://dashboard.forevermoney.ai/api/vaults/tvl\");\nif (!resp.ok) throw new Error(`HTTP ${resp.status}`);\nconst data = await resp.json();"},"surface_id":"sn-98-forevermoney-vaults-tvl-api"},{"auth":null,"auth_required":false,"auth_schemes":[],"authority":"registry-observed","base_url":"https://api.neverplayalone.ai/openapi.json","capability":"NeverPlayAlone OpenAPI schema","description":"OpenAPI/Swagger document confirmed by a safe probe (validated spec structure) at a conventional path. Requires maintainer review before promotion.","eligibility":{"callable":false,"reasons":["not-bittensor-base-layer","status-degraded"],"live_status":"unknown"},"fixture":{"artifact_path":"/metagraph/fixtures/sn-98-openapi-probe-api-neverplayalone-ai.json","captured_at":"2026-09-10T12:15:45.054Z","request":{"method":"GET","url":"https://api.neverplayalone.ai/openapi.json"},"response":{"content_type":"application/json","status":200}},"fixture_status":{"artifact_path":"/metagraph/fixtures/sn-98-openapi-probe-api-neverplayalone-ai.json","captured_at":"2026-09-10T12:15:45.054Z","reason":null,"status":"available"},"health":{"status":"unknown","classification":null,"latency_ms":null,"last_ok":null,"last_checked":null,"stale":false,"observed_by":"unavailable"},"kind":"openapi","provider":"forevermoney","schema_artifact":null,"schema_source":{"artifact":null,"hash":null,"match":"surface-id","observed_at":null,"status":"not-found","surface_id":"sn-98-openapi-probe-api-neverplayalone-ai","url":"https://api.neverplayalone.ai/openapi.json"},"schema_status":"machine-readable","schema_url":"https://api.neverplayalone.ai/openapi.json","snippets":{"curl":"curl -sS 'https://api.neverplayalone.ai/openapi.json'","python":"import requests\n\nresp = requests.get(\"https://api.neverplayalone.ai/openapi.json\")\nresp.raise_for_status()\nprint(resp.json())","typescript":"const resp = await fetch(\"https://api.neverplayalone.ai/openapi.json\");\nif (!resp.ok) throw new Error(`HTTP ${resp.status}`);\nconst data = await resp.json();"},"surface_id":"sn-98-openapi-probe-api-neverplayalone-ai"}],"slug":"sn-98","subnet_type":"application","operational_observed_at":"2026-09-11T03:00:12.650Z","health_source":"live-cron-prober"},"meta":{"artifact_path":"/metagraph/agent-catalog/98.json","cache":"standard","contract_version":"2026-07-03.2","generated_at":"2026-09-10T12:15:44.147Z","published_at":"2026-09-10T12:15:44.147Z","source":"live-cron-prober","operational_observed_at":"2026-09-11T03:00:12.650Z"}}