{"ok":true,"schema_version":1,"data":{"contract_version":"2026-07-03.2","generated_at":"2026-09-20T12:26:49.169Z","name":"AdTAO","netuid":21,"schema_version":1,"slug":"sn-21","surfaces":[{"auth":{"location":"header","names":["X-Miner-Hotkey","X-Miner-Nonce","X-Miner-Signature"],"scheme":"signature","scopes_note":"Requires a hotkey-signed request: the X-Miner-Hotkey, X-Miner-Nonce, and X-Miner-Signature headers proving control of a registered hotkey (declared in the subnet's own OpenAPI spec; live-verified 2026-07-22 -- an unauthenticated request's HTTP 422 names X-Miner-Hotkey as missing). No bearer token or API key is accepted."},"auth_required":true,"authority":"community","curation_level":"candidate-discovered","id":"sn-21-adtao-episode-detail","key":"srf-2e37be1750dca6b6","kind":"subnet-api","last_verified_at":null,"name":"AdTAO epoch episode detail","netuid":21,"notes":"Per-miner validator read. The registered schema declares no security block for this operation, but live-verified 2026-07-21: an unauthenticated GET /v1/epochs/{epoch_id}/episodes/{episode_id} returns HTTP 422 naming a required per-miner identity request header (`X-Miner-` prefix) as missing, so it is gated in practice. Registered auth_required:true with probe disabled (not anonymously callable, unlike what the bare schema suggests).","probe":{"enabled":false,"expect":"json","method":"GET","timeout_ms":10000},"provider":"adtao","public_safe":true,"review":{"state":"community-submitted","submitted_by":"shin-core"},"source_urls":["https://validator.adtao.io/openapi.json","https://github.com/ippcteam/SN21-adtao"],"stale":null,"subnet_name":"AdTAO","subnet_slug":"sn-21","url":"https://validator.adtao.io/v1/epochs/%7Bepoch_id%7D/episodes/%7Bepisode_id%7D"},{"auth":{"location":"header","names":["X-Miner-Hotkey","X-Miner-Nonce","X-Miner-Signature"],"scheme":"signature","scopes_note":"Requires a hotkey-signed request: the X-Miner-Hotkey, X-Miner-Nonce, and X-Miner-Signature headers proving control of a registered hotkey (declared in the subnet's own OpenAPI spec; live-verified 2026-07-22 -- an unauthenticated request's HTTP 422 names X-Miner-Hotkey as missing). No bearer token or API key is accepted."},"auth_required":true,"authority":"community","curation_level":"candidate-discovered","id":"sn-21-adtao-episodes","key":"srf-f8bf814f5ef9a1f6","kind":"subnet-api","last_verified_at":null,"name":"AdTAO epoch episodes","netuid":21,"notes":"Per-miner validator read. The registered schema declares no security block for this operation, but live-verified 2026-07-21: an unauthenticated GET /v1/epochs/{epoch_id}/episodes returns HTTP 422 naming a required per-miner identity request header (`X-Miner-` prefix) as missing, so it is gated in practice. Registered auth_required:true with probe disabled (not anonymously callable, unlike what the bare schema suggests).","probe":{"enabled":false,"expect":"json","method":"GET","timeout_ms":10000},"provider":"adtao","public_safe":true,"review":{"state":"community-submitted","submitted_by":"shin-core"},"source_urls":["https://validator.adtao.io/openapi.json","https://github.com/ippcteam/SN21-adtao"],"stale":null,"subnet_name":"AdTAO","subnet_slug":"sn-21","url":"https://validator.adtao.io/v1/epochs/%7Bepoch_id%7D/episodes"},{"auth":{"location":"header","names":["X-Miner-Hotkey","X-Miner-Nonce","X-Miner-Signature"],"scheme":"signature","scopes_note":"Requires a hotkey-signed request: the X-Miner-Hotkey, X-Miner-Nonce, and X-Miner-Signature headers proving control of a registered hotkey (declared in the subnet's own OpenAPI spec; live-verified 2026-07-22 -- an unauthenticated request's HTTP 422 names X-Miner-Hotkey as missing). No bearer token or API key is accepted."},"auth_required":true,"authority":"community","curation_level":"candidate-discovered","id":"sn-21-adtao-episodes-batch","key":"srf-424296c31daf7630","kind":"subnet-api","last_verified_at":null,"name":"AdTAO epoch episodes batch","netuid":21,"notes":"Per-miner validator read. The registered schema declares no security block for this operation, but live-verified 2026-07-21: an unauthenticated GET /v1/epochs/{epoch_id}/episodes_batch returns HTTP 422 naming a required per-miner identity request header (`X-Miner-` prefix) as missing, so it is gated in practice. Registered auth_required:true with probe disabled (not anonymously callable, unlike what the bare schema suggests).","probe":{"enabled":false,"expect":"json","method":"GET","timeout_ms":10000},"provider":"adtao","public_safe":true,"review":{"state":"community-submitted","submitted_by":"shin-core"},"source_urls":["https://validator.adtao.io/openapi.json","https://github.com/ippcteam/SN21-adtao"],"stale":null,"subnet_name":"AdTAO","subnet_slug":"sn-21","url":"https://validator.adtao.io/v1/epochs/%7Bepoch_id%7D/episodes_batch"},{"auth_required":false,"authority":"community","curation_level":"candidate-discovered","id":"sn-21-adtao-epoch-commitment","key":"srf-b2c3b98401938ddc","kind":"subnet-api","last_verified_at":null,"name":"AdTAO epoch commitment","netuid":21,"notes":"Public no-auth per-epoch commitment read, taking an {epoch_id} path parameter. Live-verified 2026-07-21 with epoch_id=1: HTTP 404 {\"detail\":\"Epoch 1 not found\"} — a genuine epoch lookup, no auth gate. Probe disabled (needs a real epoch id).","probe":{"enabled":false,"expect":"json","method":"GET","timeout_ms":10000},"provider":"adtao","public_safe":true,"review":{"state":"community-submitted","submitted_by":"shin-core"},"source_urls":["https://validator.adtao.io/openapi.json","https://github.com/ippcteam/SN21-adtao"],"stale":null,"subnet_name":"AdTAO","subnet_slug":"sn-21","url":"https://validator.adtao.io/v1/epochs/%7Bepoch_id%7D/commitment"},{"auth_required":false,"authority":"community","curation_level":"candidate-discovered","id":"sn-21-adtao-epoch-episode-commitment","key":"srf-9f73f37cceadd9d0","kind":"subnet-api","last_verified_at":null,"name":"AdTAO epoch episode-commitment","netuid":21,"notes":"Public no-auth per-epoch episode-commitment read, taking an {epoch_id} path parameter. Live-verified 2026-07-21 with epoch_id=1: HTTP 404 {\"detail\":\"Epoch 1 not found\"} — a genuine epoch lookup, no auth gate. Probe disabled (needs a real epoch id).","probe":{"enabled":false,"expect":"json","method":"GET","timeout_ms":10000},"provider":"adtao","public_safe":true,"review":{"state":"community-submitted","submitted_by":"shin-core"},"source_urls":["https://validator.adtao.io/openapi.json","https://github.com/ippcteam/SN21-adtao"],"stale":null,"subnet_name":"AdTAO","subnet_slug":"sn-21","url":"https://validator.adtao.io/v1/epochs/%7Bepoch_id%7D/episode-commitment"},{"auth_required":false,"authority":"community","curation_level":"candidate-discovered","id":"sn-21-adtao-epoch-scores","key":"srf-1824653e63a41907","kind":"subnet-api","last_verified_at":null,"name":"AdTAO epoch scores (retired redirect)","netuid":21,"notes":"Documented-but-retired per-epoch scores read. Still declared in the registered schema and unauthenticated, but live-verified 2026-07-21 as functionally retired: HTTP 501 {\"detail\":\"GET /1/scores is no longer served via this API under the two-binary validator architecture. Use GET /1/verification for the chain-derived scoring commitment...\"}. Registered because it is real, documented surface, explicitly flagged here as a dead-end redirect rather than active data. Probe disabled.","probe":{"enabled":false,"expect":"json","method":"GET","timeout_ms":10000},"provider":"adtao","public_safe":true,"review":{"state":"community-submitted","submitted_by":"shin-core"},"source_urls":["https://validator.adtao.io/openapi.json","https://github.com/ippcteam/SN21-adtao"],"stale":null,"subnet_name":"AdTAO","subnet_slug":"sn-21","url":"https://validator.adtao.io/v1/epochs/%7Bepoch_id%7D/scores"},{"auth_required":false,"authority":"community","curation_level":"candidate-discovered","id":"sn-21-adtao-epoch-verification","key":"srf-98355159c464e00e","kind":"subnet-api","last_verified_at":null,"name":"AdTAO epoch verification","netuid":21,"notes":"Public no-auth chain-derived scoring-commitment read for one epoch, taking an {epoch_id} path parameter. Live-verified 2026-07-21 with epoch_id=1: HTTP 409 {\"detail\":\"9.C.2 post-scoring artifact for epoch_id=1 is not yet visible in RevealedCommitments for this validator ...\"} — a real epoch-state explanation, not an auth error. Path parameter in percent-encoded brace form; probe disabled (needs a real epoch id).","probe":{"enabled":false,"expect":"json","method":"GET","timeout_ms":10000},"provider":"adtao","public_safe":true,"review":{"state":"community-submitted","submitted_by":"shin-core"},"source_urls":["https://validator.adtao.io/openapi.json","https://github.com/ippcteam/SN21-adtao"],"stale":null,"subnet_name":"AdTAO","subnet_slug":"sn-21","url":"https://validator.adtao.io/v1/epochs/%7Bepoch_id%7D/verification"},{"auth":{"location":"header","names":["X-Miner-Hotkey","X-Miner-Nonce","X-Miner-Signature"],"scheme":"signature","scopes_note":"Requires a hotkey-signed request: the X-Miner-Hotkey, X-Miner-Nonce, and X-Miner-Signature headers proving control of a registered hotkey (declared in the subnet's own OpenAPI spec; live-verified 2026-07-22 -- an unauthenticated request's HTTP 422 names X-Miner-Hotkey as missing). No bearer token or API key is accepted."},"auth_required":true,"authority":"community","curation_level":"candidate-discovered","id":"sn-21-adtao-my-predictions","key":"srf-fd1839d7165e6b0b","kind":"subnet-api","last_verified_at":null,"name":"AdTAO epoch miner predictions","netuid":21,"notes":"Per-miner validator read. The registered schema declares no security block for this operation, but live-verified 2026-07-21: an unauthenticated GET /v1/epochs/{epoch_id}/my-predictions returns HTTP 422 naming a required per-miner identity request header (`X-Miner-` prefix) as missing, so it is gated in practice. Registered auth_required:true with probe disabled (not anonymously callable, unlike what the bare schema suggests).","probe":{"enabled":false,"expect":"json","method":"GET","timeout_ms":10000},"provider":"adtao","public_safe":true,"review":{"state":"community-submitted","submitted_by":"shin-core"},"source_urls":["https://validator.adtao.io/openapi.json","https://github.com/ippcteam/SN21-adtao"],"stale":null,"subnet_name":"AdTAO","subnet_slug":"sn-21","url":"https://validator.adtao.io/v1/epochs/%7Bepoch_id%7D/my-predictions"},{"auth":{"location":"header","names":["X-Miner-Hotkey","X-Miner-Nonce","X-Miner-Signature"],"scheme":"signature","scopes_note":"Requires a hotkey-signed request: the X-Miner-Hotkey, X-Miner-Nonce, and X-Miner-Signature headers proving control of a registered hotkey (declared in the subnet's own OpenAPI spec; live-verified 2026-07-22 -- an unauthenticated request's HTTP 422 names X-Miner-Hotkey as missing). No bearer token or API key is accepted."},"auth_required":true,"authority":"community","curation_level":"candidate-discovered","id":"sn-21-adtao-registration-status","key":"srf-3351d478c401fe62","kind":"subnet-api","last_verified_at":null,"name":"AdTAO miner registration status","netuid":21,"notes":"Per-miner validator read. The registered schema declares no security block for this operation, but live-verified 2026-07-21: an unauthenticated GET /v1/registration-status returns HTTP 422 naming a required per-miner identity request header (`X-Miner-` prefix) as missing, so it is gated in practice. Registered auth_required:true with probe disabled (not anonymously callable, unlike what the bare schema suggests).","probe":{"enabled":false,"expect":"json","method":"GET","timeout_ms":10000},"provider":"adtao","public_safe":true,"review":{"state":"community-submitted","submitted_by":"shin-core"},"source_urls":["https://validator.adtao.io/openapi.json","https://github.com/ippcteam/SN21-adtao"],"stale":null,"subnet_name":"AdTAO","subnet_slug":"sn-21","url":"https://validator.adtao.io/v1/registration-status"},{"auth_required":false,"authority":"official","curation_level":"maintainer-reviewed","id":"sn-21-adtao-source","key":"srf-e7b9495823fbe02c","kind":"source-repo","last_verified_at":"2026-06-08T10:10:00.000Z","name":"AdTAO source repository","netuid":21,"notes":"Official AdTAO source repository.","probe":{"enabled":true,"expect":"any","method":"HEAD","timeout_ms":10000},"provider":"adtao","public_safe":true,"source_urls":["https://github.com/ippcteam/SN21-adtao"],"stale":false,"subnet_name":"AdTAO","subnet_slug":"sn-21","url":"https://github.com/ippcteam/SN21-adtao"},{"auth_required":false,"authority":"community","curation_level":"machine-verified","id":"sn-21-adtao-training-episodes","key":"srf-6fd24e82ee2745e0","kind":"data-artifact","last_verified_at":"2026-09-20T04:31:09.312Z","name":"AdTAO training episodes sample dataset","netuid":21,"notes":"Public no-auth JSON dataset of bundled sample prediction episodes (account state, action context, and known outcomes) published in the official SN21 AdTAO source repository at data/training/. Documented in the repo README as the bundled sample data (10 episodes with known outcomes) and consumed by scripts/train_example_model.py for local baseline-model training.","probe":{"enabled":true,"expect":"json","method":"GET","timeout_ms":10000},"provider":"adtao","public_safe":true,"review":{"state":"community-submitted","submitted_by":"rust-toml"},"source_urls":["https://github.com/ippcteam/SN21-adtao/blob/main/README.md","https://github.com/ippcteam/SN21-adtao/blob/main/scripts/train_example_model.py"],"stale":false,"subnet_name":"AdTAO","subnet_slug":"sn-21","url":"https://raw.githubusercontent.com/ippcteam/SN21-adtao/main/data/training/training_episodes.json"},{"auth":{"location":"header","names":["X-Miner-Hotkey","X-Miner-Nonce","X-Miner-Signature"],"scheme":"signature","scopes_note":"Requires a hotkey-signed request: the X-Miner-Hotkey, X-Miner-Nonce, and X-Miner-Signature headers proving control of a registered hotkey (declared in the subnet's own OpenAPI spec; live-verified 2026-07-22 -- an unauthenticated request's HTTP 422 names X-Miner-Hotkey as missing). No bearer token or API key is accepted."},"auth_required":true,"authority":"community","curation_level":"candidate-discovered","id":"sn-21-adtao-training-episodes-api","key":"srf-12f1a5753c4003d5","kind":"subnet-api","last_verified_at":null,"name":"AdTAO training episodes feed","netuid":21,"notes":"Per-miner validator read. The registered schema declares no security block for this operation, but live-verified 2026-07-21: an unauthenticated GET /training/episodes returns HTTP 422 naming a required per-miner identity request header (`X-Miner-` prefix) as missing, so it is gated in practice. Registered auth_required:true with probe disabled (not anonymously callable, unlike what the bare schema suggests). Accepts page / page_size query parameters; registered with the fixed base URL, no query baked in.","probe":{"enabled":false,"expect":"json","method":"GET","timeout_ms":10000},"provider":"adtao","public_safe":true,"review":{"state":"community-submitted","submitted_by":"shin-core"},"source_urls":["https://validator.adtao.io/openapi.json","https://github.com/ippcteam/SN21-adtao"],"stale":null,"subnet_name":"AdTAO","subnet_slug":"sn-21","url":"https://validator.adtao.io/training/episodes"},{"auth":{"location":"header","names":["X-Miner-Hotkey","X-Miner-Nonce","X-Miner-Signature"],"scheme":"signature","scopes_note":"Requires a hotkey-signed request: the X-Miner-Hotkey, X-Miner-Nonce, and X-Miner-Signature headers proving control of a registered hotkey (declared in the subnet's own OpenAPI spec; live-verified 2026-07-22 -- an unauthenticated request's HTTP 422 names X-Miner-Hotkey as missing). No bearer token or API key is accepted."},"auth_required":true,"authority":"community","curation_level":"candidate-discovered","id":"sn-21-adtao-training-summary","key":"srf-5a90e11a766370a4","kind":"subnet-api","last_verified_at":null,"name":"AdTAO training summary","netuid":21,"notes":"Per-miner validator read. The registered schema declares no security block for this operation, but live-verified 2026-07-21: an unauthenticated GET /training/summary returns HTTP 422 naming a required per-miner identity request header (`X-Miner-` prefix) as missing, so it is gated in practice. Registered auth_required:true with probe disabled (not anonymously callable, unlike what the bare schema suggests).","probe":{"enabled":false,"expect":"json","method":"GET","timeout_ms":10000},"provider":"adtao","public_safe":true,"review":{"state":"community-submitted","submitted_by":"shin-core"},"source_urls":["https://validator.adtao.io/openapi.json","https://github.com/ippcteam/SN21-adtao"],"stale":null,"subnet_name":"AdTAO","subnet_slug":"sn-21","url":"https://validator.adtao.io/training/summary"},{"auth_required":false,"authority":"community","curation_level":"machine-verified","id":"sn-21-adtao-validator-api","key":"srf-34b5c51b4e147eef","kind":"subnet-api","last_verified_at":"2026-09-20T04:31:09.312Z","name":"AdTAO SN21 Validator API","netuid":21,"notes":"Official public AdTAO (SN21) validator API on the operator's validator.adtao.io host. An unauthenticated GET on /health returns live JSON service status (service, current epoch label, episodes loaded, submission window, deadline). The /v1/epochs routes are described in the linked OpenAPI schema. Live-verified 2026-07-22: HTTP 200 JSON status=ok for sn21-validator health.","probe":{"enabled":true,"expect":"json","method":"GET","timeout_ms":10000},"provider":"adtao","public_safe":true,"review":{"state":"community-submitted","submitted_by":"glorydavid03023"},"schema_status":"machine-readable","schema_url":"https://validator.adtao.io/openapi.json","source_urls":["https://github.com/ippcteam/SN21-adtao","https://validator.adtao.io/"],"stale":false,"subnet_name":"AdTAO","subnet_slug":"sn-21","url":"https://validator.adtao.io/health"},{"auth_required":false,"authority":"community","curation_level":"candidate-discovered","id":"sn-21-adtao-validator-openapi","key":"srf-48389e34faa23fe4","kind":"openapi","last_verified_at":null,"name":"AdTAO SN21 Validator OpenAPI schema","netuid":21,"notes":"Machine-readable OpenAPI 3.1.0 schema (title \"SN21 Validator\", version 0.1.0) served by the official AdTAO validator API on the operator's validator.adtao.io host. Documents the public epoch/episode, prediction, commitment, verification, scores, and training routes plus /health. Unauthenticated GET returns the full paths object. Live-verified 2026-07-22: GET returns OpenAPI 3.1.0 JSON (title SN21 Validator).","probe":{"enabled":true,"expect":"json","method":"GET","timeout_ms":10000},"provider":"adtao","public_safe":true,"review":{"state":"community-submitted","submitted_by":"glorydavid03023"},"schema_status":"machine-readable","schema_url":"https://validator.adtao.io/openapi.json","source_urls":["https://github.com/ippcteam/SN21-adtao","https://validator.adtao.io/openapi.json"],"stale":null,"subnet_name":"AdTAO","subnet_slug":"sn-21","url":"https://validator.adtao.io/openapi.json"},{"auth_required":false,"authority":"official","curation_level":"candidate-discovered","id":"sn-21-adtao-website","key":"srf-e2662f0841b1f2e9","kind":"website","last_verified_at":"2026-06-08T10:10:00.000Z","name":"AdTAO website","netuid":21,"notes":"Official AdTAO website.","probe":{"enabled":true,"expect":"html","method":"HEAD","timeout_ms":10000},"provider":"adtao","public_safe":true,"source_urls":["https://github.com/ippcteam/SN21-adtao"],"stale":true,"subnet_name":"AdTAO","subnet_slug":"sn-21","url":"https://adtao.io/"},{"auth_required":false,"authority":"registry-observed","curation_level":"candidate-discovered","id":"sn-21-backprop-dashboard","key":"srf-0481e3614e100ba2","kind":"dashboard","last_verified_at":null,"name":"AdTAO Backprop Finance dashboard","netuid":21,"notes":"Universal Backprop Finance dTAO subnet dashboard candidate. Third-party enrichment, not protocol authority.","probe":{"enabled":true,"expect":"any","method":"HEAD","timeout_ms":10000},"provider":"backprop-finance","public_safe":true,"quality_signals":{"content_type_matches_kind":true,"public_safe":true,"rate_limited":false,"redirected":true,"source_tier":"third-party-index","transient_failure":false},"rate_limit_notes":"Candidate only; no recurring probe is configured until maintainer review.","source_urls":["https://backprop.finance/dtao/subnets/21-adtao"],"stale":null,"subnet_name":"AdTAO","subnet_slug":"sn-21","url":"https://backprop.finance/dtao/subnets/21-adtao"},{"auth_required":false,"authority":"registry-observed","curation_level":"candidate-discovered","id":"sn-21-subnetradar-dashboard","key":"srf-1d9a54b17cb589c6","kind":"dashboard","last_verified_at":null,"name":"AdTAO SubnetRadar dashboard","netuid":21,"notes":"Universal SubnetRadar subnet dashboard candidate. Third-party risk/market analytics enrichment, not Metagraphed endpoint health authority.","probe":{"enabled":true,"expect":"any","method":"HEAD","timeout_ms":10000},"provider":"subnetradar","public_safe":true,"quality_signals":{"content_type_matches_kind":true,"public_safe":true,"rate_limited":false,"redirected":false,"source_tier":"third-party-index","transient_failure":false},"rate_limit_notes":"Candidate only; no recurring probe is configured until maintainer review.","source_urls":["https://subnetradar.com/subnet/21"],"stale":null,"subnet_name":"AdTAO","subnet_slug":"sn-21","url":"https://subnetradar.com/subnet/21"},{"auth_required":false,"authority":"registry-observed","curation_level":"candidate-discovered","id":"sn-21-taomarketcap-dashboard","key":"srf-0ad94daa618fa093","kind":"dashboard","last_verified_at":null,"name":"AdTAO TaoMarketCap dashboard","netuid":21,"notes":"Universal TaoMarketCap subnet dashboard candidate. Third-party enrichment, not protocol authority.","probe":{"enabled":true,"expect":"any","method":"HEAD","timeout_ms":10000},"provider":"taomarketcap","public_safe":true,"quality_signals":{"content_type_matches_kind":true,"public_safe":true,"rate_limited":false,"redirected":false,"source_tier":"third-party-index","transient_failure":false},"rate_limit_notes":"Candidate only; no recurring probe is configured until maintainer review.","source_urls":["https://api.taomarketcap.com/public/v1/subnets/21"],"stale":null,"subnet_name":"AdTAO","subnet_slug":"sn-21","url":"https://taomarketcap.com/subnets/21"},{"auth_required":false,"authority":"registry-observed","curation_level":"candidate-discovered","id":"sn-21-taopedia-article","key":"srf-52d416515d5af9a9","kind":"docs","last_verified_at":null,"name":"AdTAO Taopedia article","netuid":21,"notes":"Discovered from the public Taopedia article repository. Not verified as an operational interface.","probe":{"enabled":true,"expect":"any","method":"HEAD","timeout_ms":10000},"provider":"taopedia-articles","public_safe":true,"quality_signals":{"content_type_matches_kind":true,"public_safe":true,"rate_limited":false,"redirected":false,"source_tier":"community-docs","transient_failure":false},"rate_limit_notes":"Candidate only; no recurring probe is configured until maintainer review.","source_urls":["https://github.com/e35ventura/taopedia-articles/blob/main/content/pages/subnet_21/index.mdx"],"stale":null,"subnet_name":"AdTAO","subnet_slug":"sn-21","url":"https://github.com/e35ventura/taopedia-articles/blob/main/content/pages/subnet_21/index.mdx"},{"auth_required":false,"authority":"registry-observed","curation_level":"candidate-discovered","id":"sn-21-tensorplex-docs","key":"srf-b18d8c1ccbe82b7b","kind":"docs","last_verified_at":null,"name":"AdTAO Tensorplex subnet docs","netuid":21,"notes":"Discovered from Tensorplex subnet-docs. Useful as documentation enrichment, not verified operational authority.","probe":{"enabled":true,"expect":"any","method":"HEAD","timeout_ms":10000},"provider":"tensorplex-subnet-docs","public_safe":true,"quality_signals":{"content_type_matches_kind":true,"public_safe":true,"rate_limited":false,"redirected":false,"source_tier":"community-docs","transient_failure":false},"rate_limit_notes":"Candidate only; no recurring probe is configured until maintainer review.","source_urls":["https://github.com/tensorplex-labs/subnet-docs/blob/main/data/21/subnet.json"],"stale":null,"subnet_name":"AdTAO","subnet_slug":"sn-21","url":"https://github.com/tensorplex-labs/subnet-docs/tree/main/data/21"}]},"meta":{"artifact_path":"/metagraph/surfaces/21.json","cache":"standard","contract_version":"2026-07-03.2","generated_at":"2026-09-20T12:26:49.169Z","published_at":"2026-09-20T12:26:49.169Z","source":"r2","pagination":{"collection":"surfaces","total":21,"returned":21,"limit":21,"cursor":0,"next_cursor":null,"sort":null,"order":"asc"}}}