{"ok":true,"schema_version":1,"data":{"agent_readiness":{"blocker_level":"missing-data","blockers":[{"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"],"status":"callable"},"categories":["baseline-augmented","baseline-curated","identity-reviewed","language","official-source-repo","official-website"],"completeness_score":93,"contract_version":"2026-07-03.2","example_count":0,"examples":[],"generated_at":"2026-07-27T10:51:25.049Z","integration_readiness":100,"name":"Babelbit","netuid":59,"readiness":{"components":{"active_lifecycle":true,"auth_clarity":true,"callable_now":true,"documented":true,"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":100,"readiness_verified":true},"schema_version":1,"service_count":18,"services":[{"auth":{"location":"header","name":"Authorization","scheme":"bearer","value_format":"Bearer <token>"},"auth_required":true,"auth_schemes":["http"],"authority":"community","base_url":"https://api.babelbit.ai/auth","capability":"Babelbit auth","description":"Authenticate operation on the Babelbit API (POST /auth), declared in the subnet's own OpenAPI spec at https://api.babelbit.ai/openapi.json. The spec declares no security on it; it is a state-changing POST and not probe-safe, so the probe is disabled and no auth requirement is asserted without evidence.","eligibility":{"callable":false,"reasons":["not-bittensor-base-layer","status-unknown"],"live_status":"unknown"},"fixture_status":{"artifact_path":null,"captured_at":null,"reason":"fixture capture skips credentialed services","status":"auth-required"},"health":{"status":"unknown","classification":null,"latency_ms":null,"last_ok":null,"last_checked":null,"stale":false,"observed_by":"unavailable"},"kind":"subnet-api","provider":"babelbit","schema_artifact":"/metagraph/schemas/sn-59-babelbit-openapi.json","schema_source":{"artifact":"/metagraph/schemas/sn-59-babelbit-openapi.json","hash":"3bc12b2b9a14db246fde6372a975931175832e4d1f2bdf250c482193ae826798","match":"same-origin-openapi","observed_at":"2026-07-27T10:51:25.372Z","status":"captured","surface_id":"sn-59-babelbit-openapi","url":"https://api.babelbit.ai/openapi.json"},"schema_status":"machine-readable","schema_url":"https://api.babelbit.ai/openapi.json","snippets":{"curl":"curl -sS 'https://api.babelbit.ai/auth' \\\n  -H 'Authorization: Bearer <token>'","python":"import requests\n\nresp = requests.get(\"https://api.babelbit.ai/auth\", headers={\"Authorization\": \"Bearer <token>\"})\nresp.raise_for_status()\nprint(resp.json())","typescript":"const resp = await fetch(\"https://api.babelbit.ai/auth\", {\n  headers: { \"Authorization\": \"Bearer <token>\" },\n});\nif (!resp.ok) throw new Error(`HTTP ${resp.status}`);\nconst data = await resp.json();"},"surface_id":"sn-59-babelbit-auth"},{"auth":{"location":"header","name":"Authorization","scheme":"bearer","value_format":"Bearer <token>"},"auth_required":true,"auth_schemes":["http"],"authority":"community","base_url":"https://api.babelbit.ai/auth/verify","capability":"Babelbit auth verify","description":"Verify Authentication operation on the Babelbit API (POST /auth/verify), declared in the subnet's own OpenAPI spec at https://api.babelbit.ai/openapi.json. The spec declares no security on it; it is a state-changing POST and not probe-safe, so the probe is disabled and no auth requirement is asserted without evidence.","eligibility":{"callable":false,"reasons":["not-bittensor-base-layer","status-unknown"],"live_status":"unknown"},"fixture_status":{"artifact_path":null,"captured_at":null,"reason":"fixture capture skips credentialed services","status":"auth-required"},"health":{"status":"unknown","classification":null,"latency_ms":null,"last_ok":null,"last_checked":null,"stale":false,"observed_by":"unavailable"},"kind":"subnet-api","provider":"babelbit","schema_artifact":"/metagraph/schemas/sn-59-babelbit-openapi.json","schema_source":{"artifact":"/metagraph/schemas/sn-59-babelbit-openapi.json","hash":"3bc12b2b9a14db246fde6372a975931175832e4d1f2bdf250c482193ae826798","match":"same-origin-openapi","observed_at":"2026-07-27T10:51:25.372Z","status":"captured","surface_id":"sn-59-babelbit-openapi","url":"https://api.babelbit.ai/openapi.json"},"schema_status":"machine-readable","schema_url":"https://api.babelbit.ai/openapi.json","snippets":{"curl":"curl -sS 'https://api.babelbit.ai/auth/verify' \\\n  -H 'Authorization: Bearer <token>'","python":"import requests\n\nresp = requests.get(\"https://api.babelbit.ai/auth/verify\", headers={\"Authorization\": \"Bearer <token>\"})\nresp.raise_for_status()\nprint(resp.json())","typescript":"const resp = await fetch(\"https://api.babelbit.ai/auth/verify\", {\n  headers: { \"Authorization\": \"Bearer <token>\" },\n});\nif (!resp.ok) throw new Error(`HTTP ${resp.status}`);\nconst data = await resp.json();"},"surface_id":"sn-59-babelbit-auth-verify"},{"auth":{"location":"header","name":"Authorization","scheme":"bearer","scopes_note":"Derived from the subnet's own OpenAPI securitySchemes (HTTPBearer), declared per-operation.","value_format":"Bearer <token>"},"auth_required":true,"auth_schemes":["http"],"authority":"community","base_url":"https://api.babelbit.ai/challenge","capability":"Babelbit challenge","description":"Get Active Challenge View operation on the Babelbit API (GET /challenge), declared in the subnet's own OpenAPI spec at https://api.babelbit.ai/openapi.json. The spec declares the HTTPBearer security scheme on it, so it is registered auth_required:true with probe.enabled:false (Phase 3). Live-verified 2026-07-21: an unauthenticated GET returns HTTP 401 {\"detail\":\"Not authenticated\"}, confirming the gate.","eligibility":{"callable":false,"reasons":["not-bittensor-base-layer","status-unknown","auth-required"],"live_status":"unknown"},"fixture_status":{"artifact_path":null,"captured_at":null,"reason":"fixture capture skips credentialed services","status":"auth-required"},"health":{"status":"unknown","classification":null,"latency_ms":null,"last_ok":null,"last_checked":null,"stale":false,"observed_by":"unavailable"},"kind":"subnet-api","provider":"babelbit","schema_artifact":"/metagraph/schemas/sn-59-babelbit-openapi.json","schema_source":{"artifact":"/metagraph/schemas/sn-59-babelbit-openapi.json","hash":"3bc12b2b9a14db246fde6372a975931175832e4d1f2bdf250c482193ae826798","match":"same-origin-openapi","observed_at":"2026-07-27T10:51:25.372Z","status":"captured","surface_id":"sn-59-babelbit-openapi","url":"https://api.babelbit.ai/openapi.json"},"schema_status":"machine-readable","schema_url":"https://api.babelbit.ai/openapi.json","snippets":{"curl":"curl -sS 'https://api.babelbit.ai/challenge' \\\n  -H 'Authorization: Bearer <token>'","python":"import requests\n\nresp = requests.get(\"https://api.babelbit.ai/challenge\", headers={\"Authorization\": \"Bearer <token>\"})\nresp.raise_for_status()\nprint(resp.json())","typescript":"const resp = await fetch(\"https://api.babelbit.ai/challenge\", {\n  headers: { \"Authorization\": \"Bearer <token>\" },\n});\nif (!resp.ok) throw new Error(`HTTP ${resp.status}`);\nconst data = await resp.json();"},"surface_id":"sn-59-babelbit-challenge"},{"auth":{"location":"header","name":"Authorization","scheme":"bearer","scopes_note":"Derived from the subnet's own OpenAPI securitySchemes (HTTPBearer), declared per-operation.","value_format":"Bearer <token>"},"auth_required":true,"auth_schemes":["http"],"authority":"community","base_url":"https://api.babelbit.ai/challenge/%7Bchallenge_uid%7D/n_utterances","capability":"Babelbit challenge challenge uid n utterances","description":"Get Challenge Utterance Count operation on the Babelbit API (GET /challenge/{challenge_uid}/n_utterances), declared in the subnet's own OpenAPI spec at https://api.babelbit.ai/openapi.json. The spec declares the HTTPBearer security scheme on it, so it is registered auth_required:true with probe.enabled:false (Phase 3). Path-parameterized on {challenge_uid}, so there is no single fixed callable URL; the template is registered per the registry's catalog-everything policy (Phase 2).","eligibility":{"callable":false,"reasons":["not-bittensor-base-layer","status-unknown","auth-required"],"live_status":"unknown"},"fixture_status":{"artifact_path":null,"captured_at":null,"reason":"fixture capture skips credentialed services","status":"auth-required"},"health":{"status":"unknown","classification":null,"latency_ms":null,"last_ok":null,"last_checked":null,"stale":false,"observed_by":"unavailable"},"kind":"subnet-api","provider":"babelbit","schema_artifact":"/metagraph/schemas/sn-59-babelbit-openapi.json","schema_source":{"artifact":"/metagraph/schemas/sn-59-babelbit-openapi.json","hash":"3bc12b2b9a14db246fde6372a975931175832e4d1f2bdf250c482193ae826798","match":"same-origin-openapi","observed_at":"2026-07-27T10:51:25.372Z","status":"captured","surface_id":"sn-59-babelbit-openapi","url":"https://api.babelbit.ai/openapi.json"},"schema_status":"machine-readable","schema_url":"https://api.babelbit.ai/openapi.json","snippets":{"curl":"curl -sS 'https://api.babelbit.ai/challenge/%7Bchallenge_uid%7D/n_utterances' \\\n  -H 'Authorization: Bearer <token>'","python":"import requests\n\nresp = requests.get(\"https://api.babelbit.ai/challenge/%7Bchallenge_uid%7D/n_utterances\", headers={\"Authorization\": \"Bearer <token>\"})\nresp.raise_for_status()\nprint(resp.json())","typescript":"const resp = await fetch(\"https://api.babelbit.ai/challenge/%7Bchallenge_uid%7D/n_utterances\", {\n  headers: { \"Authorization\": \"Bearer <token>\" },\n});\nif (!resp.ok) throw new Error(`HTTP ${resp.status}`);\nconst data = await resp.json();"},"surface_id":"sn-59-babelbit-challenge-challenge-uid-n-utterances"},{"auth":{"location":"header","name":"Authorization","scheme":"bearer","value_format":"Bearer <token>"},"auth_required":true,"auth_schemes":["http"],"authority":"official","base_url":"https://api.babelbit.ai/debug/network","capability":"Babelbit network debug info","description":"Public no-auth GET /debug/network on api.babelbit.ai returning chain connectivity status, network name, total neuron count, and a sample of already-public on-chain hotkeys/validator permits. Discovered via a full diff of the subnet's own OpenAPI schema for undiscovered public GET endpoints.","eligibility":{"callable":true,"reasons":["not-bittensor-base-layer"],"live_status":"ok"},"fixture":{"artifact_path":"/metagraph/fixtures/sn-59-babelbit-debug-network.json","captured_at":"2026-07-27T10:51:25.372Z","request":{"method":"GET","url":"https://api.babelbit.ai/debug/network"},"response":{"content_type":"application/json","status":200}},"fixture_status":{"artifact_path":"/metagraph/fixtures/sn-59-babelbit-debug-network.json","captured_at":"2026-07-27T10:51:25.372Z","reason":null,"status":"available"},"health":{"status":"ok","classification":"live","latency_ms":358,"last_ok":"2026-07-27T23:00:18.289Z","last_checked":"2026-07-27T23:00:18.289Z","stale":false,"observed_by":"live-cron-prober"},"kind":"subnet-api","provider":"babelbit","schema_artifact":"/metagraph/schemas/sn-59-babelbit-openapi.json","schema_source":{"artifact":"/metagraph/schemas/sn-59-babelbit-openapi.json","hash":"3bc12b2b9a14db246fde6372a975931175832e4d1f2bdf250c482193ae826798","match":"same-origin-openapi","observed_at":"2026-07-27T10:51:25.372Z","status":"captured","surface_id":"sn-59-babelbit-openapi","url":"https://api.babelbit.ai/openapi.json"},"schema_status":"machine-readable","schema_url":"https://api.babelbit.ai/openapi.json","snippets":{"curl":"curl -sS 'https://api.babelbit.ai/debug/network' \\\n  -H 'Authorization: Bearer <token>'","python":"import requests\n\nresp = requests.get(\"https://api.babelbit.ai/debug/network\", headers={\"Authorization\": \"Bearer <token>\"})\nresp.raise_for_status()\nprint(resp.json())","typescript":"const resp = await fetch(\"https://api.babelbit.ai/debug/network\", {\n  headers: { \"Authorization\": \"Bearer <token>\" },\n});\nif (!resp.ok) throw new Error(`HTTP ${resp.status}`);\nconst data = await resp.json();"},"surface_id":"sn-59-babelbit-debug-network"},{"auth":{"location":"header","name":"Authorization","scheme":"bearer","value_format":"Bearer <token>"},"auth_required":true,"auth_schemes":["http"],"authority":"community","base_url":"https://api.babelbit.ai/health","capability":"Babelbit utterance engine health","description":"Public no-auth GET /health on api.babelbit.ai returning utterance-engine liveness JSON. Documented as a no-security operation in the registered OpenAPI schema on the same host; distinct from validator-authenticated challenge endpoints. Rejects HEAD (405); probe uses GET.","eligibility":{"callable":true,"reasons":["not-bittensor-base-layer"],"live_status":"ok"},"fixture":{"artifact_path":"/metagraph/fixtures/sn-59-babelbit-health.json","captured_at":"2026-07-27T10:51:25.372Z","request":{"method":"GET","url":"https://api.babelbit.ai/health"},"response":{"content_type":"application/json","status":200}},"fixture_status":{"artifact_path":"/metagraph/fixtures/sn-59-babelbit-health.json","captured_at":"2026-07-27T10:51:25.372Z","reason":null,"status":"available"},"health":{"status":"ok","classification":"live","latency_ms":86,"last_ok":"2026-07-27T23:00:18.289Z","last_checked":"2026-07-27T23:00:18.289Z","stale":false,"observed_by":"live-cron-prober"},"kind":"subnet-api","provider":"babelbit","schema_artifact":"/metagraph/schemas/sn-59-babelbit-openapi.json","schema_source":{"artifact":"/metagraph/schemas/sn-59-babelbit-openapi.json","hash":"3bc12b2b9a14db246fde6372a975931175832e4d1f2bdf250c482193ae826798","match":"same-origin-openapi","observed_at":"2026-07-27T10:51:25.372Z","status":"captured","surface_id":"sn-59-babelbit-openapi","url":"https://api.babelbit.ai/openapi.json"},"schema_status":"machine-readable","schema_url":"https://api.babelbit.ai/openapi.json","snippets":{"curl":"curl -sS 'https://api.babelbit.ai/health' \\\n  -H 'Authorization: Bearer <token>'","python":"import requests\n\nresp = requests.get(\"https://api.babelbit.ai/health\", headers={\"Authorization\": \"Bearer <token>\"})\nresp.raise_for_status()\nprint(resp.json())","typescript":"const resp = await fetch(\"https://api.babelbit.ai/health\", {\n  headers: { \"Authorization\": \"Bearer <token>\" },\n});\nif (!resp.ok) throw new Error(`HTTP ${resp.status}`);\nconst data = await resp.json();"},"surface_id":"sn-59-babelbit-health"},{"auth":null,"auth_required":false,"auth_schemes":[],"authority":"community","base_url":"https://raw.githubusercontent.com/babelbit/babelbit_subnet/main/min_compute.yml","capability":"Babelbit minimum compute requirements","description":"Public no-auth YAML miner and validator minimum hardware specification published at the root of the official babelbit/babelbit_subnet repository as min_compute.yml. Documents benchmark-based CPU, GPU, memory, storage, and bandwidth floors for SN59 utterance-engine 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":227,"last_ok":"2026-07-27T23:00:18.289Z","last_checked":"2026-07-27T23:00:18.289Z","stale":false,"observed_by":"live-cron-prober"},"kind":"data-artifact","provider":"babelbit","schema_artifact":null,"schema_source":null,"schema_status":null,"schema_url":null,"snippets":{"curl":"curl -sS 'https://raw.githubusercontent.com/babelbit/babelbit_subnet/main/min_compute.yml'","python":"import requests\n\nresp = requests.get(\"https://raw.githubusercontent.com/babelbit/babelbit_subnet/main/min_compute.yml\")\nresp.raise_for_status()\nprint(resp.json())","typescript":"const resp = await fetch(\"https://raw.githubusercontent.com/babelbit/babelbit_subnet/main/min_compute.yml\");\nif (!resp.ok) throw new Error(`HTTP ${resp.status}`);\nconst data = await resp.json();"},"surface_id":"sn-59-babelbit-min-compute-spec"},{"auth":{"location":"header","name":"Authorization","scheme":"bearer","value_format":"Bearer <token>"},"auth_required":true,"auth_schemes":["http"],"authority":"community","base_url":"https://api.babelbit.ai/openapi.json","capability":"Babelbit Utterance Engine OpenAPI","description":"Machine-readable OpenAPI schema for the Babelbit utterance engine API; the official README points validators at api.babelbit.ai and the hosted Swagger UI loads this schema.","eligibility":{"callable":false,"reasons":["not-bittensor-base-layer"],"live_status":"unknown"},"fixture":{"artifact_path":"/metagraph/fixtures/sn-59-babelbit-openapi.json","captured_at":"2026-07-27T10:51:25.372Z","request":{"method":"GET","url":"https://api.babelbit.ai/openapi.json"},"response":{"content_type":"application/json","status":200}},"fixture_status":{"artifact_path":"/metagraph/fixtures/sn-59-babelbit-openapi.json","captured_at":"2026-07-27T10:51:25.372Z","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":"babelbit","schema_artifact":"/metagraph/schemas/sn-59-babelbit-openapi.json","schema_source":{"artifact":"/metagraph/schemas/sn-59-babelbit-openapi.json","hash":"3bc12b2b9a14db246fde6372a975931175832e4d1f2bdf250c482193ae826798","match":"surface-id","observed_at":"2026-07-27T10:51:25.372Z","status":"captured","surface_id":"sn-59-babelbit-openapi","url":"https://api.babelbit.ai/openapi.json"},"schema_status":"machine-readable","schema_url":"https://api.babelbit.ai/openapi.json","snippets":{"curl":"curl -sS 'https://api.babelbit.ai/openapi.json' \\\n  -H 'Authorization: Bearer <token>'","python":"import requests\n\nresp = requests.get(\"https://api.babelbit.ai/openapi.json\", headers={\"Authorization\": \"Bearer <token>\"})\nresp.raise_for_status()\nprint(resp.json())","typescript":"const resp = await fetch(\"https://api.babelbit.ai/openapi.json\", {\n  headers: { \"Authorization\": \"Bearer <token>\" },\n});\nif (!resp.ok) throw new Error(`HTTP ${resp.status}`);\nconst data = await resp.json();"},"surface_id":"sn-59-babelbit-openapi"},{"auth":{"location":"header","name":"Authorization","scheme":"bearer","value_format":"Bearer <token>"},"auth_required":true,"auth_schemes":["http"],"authority":"community","base_url":"https://api.babelbit.ai/","capability":"Babelbit service info","description":"Public no-auth GET returning the service self-description (service, version, description, authentication requirements). Documented in the subnet's own OpenAPI schema.","eligibility":{"callable":true,"reasons":["not-bittensor-base-layer"],"live_status":"ok"},"fixture":{"artifact_path":"/metagraph/fixtures/sn-59-babelbit-service-info.json","captured_at":"2026-07-27T10:51:25.372Z","request":{"method":"GET","url":"https://api.babelbit.ai/"},"response":{"content_type":"application/json","status":200}},"fixture_status":{"artifact_path":"/metagraph/fixtures/sn-59-babelbit-service-info.json","captured_at":"2026-07-27T10:51:25.372Z","reason":null,"status":"available"},"health":{"status":"ok","classification":"live","latency_ms":355,"last_ok":"2026-07-27T23:00:18.289Z","last_checked":"2026-07-27T23:00:18.289Z","stale":false,"observed_by":"live-cron-prober"},"kind":"subnet-api","provider":"babelbit","schema_artifact":"/metagraph/schemas/sn-59-babelbit-openapi.json","schema_source":{"artifact":"/metagraph/schemas/sn-59-babelbit-openapi.json","hash":"3bc12b2b9a14db246fde6372a975931175832e4d1f2bdf250c482193ae826798","match":"same-origin-openapi","observed_at":"2026-07-27T10:51:25.372Z","status":"captured","surface_id":"sn-59-babelbit-openapi","url":"https://api.babelbit.ai/openapi.json"},"schema_status":"machine-readable","schema_url":"https://api.babelbit.ai/openapi.json","snippets":{"curl":"curl -sS 'https://api.babelbit.ai/' \\\n  -H 'Authorization: Bearer <token>'","python":"import requests\n\nresp = requests.get(\"https://api.babelbit.ai/\", headers={\"Authorization\": \"Bearer <token>\"})\nresp.raise_for_status()\nprint(resp.json())","typescript":"const resp = await fetch(\"https://api.babelbit.ai/\", {\n  headers: { \"Authorization\": \"Bearer <token>\" },\n});\nif (!resp.ok) throw new Error(`HTTP ${resp.status}`);\nconst data = await resp.json();"},"surface_id":"sn-59-babelbit-service-info"},{"auth":{"location":"header","name":"Authorization","scheme":"bearer","scopes_note":"Derived from the subnet's own OpenAPI securitySchemes (HTTPBearer), declared per-operation.","value_format":"Bearer <token>"},"auth_required":true,"auth_schemes":["http"],"authority":"community","base_url":"https://api.babelbit.ai/solo/next","capability":"Babelbit solo next","description":"Next Solo Audio Utterance operation on the Babelbit API (POST /solo/next), declared in the subnet's own OpenAPI spec at https://api.babelbit.ai/openapi.json. The spec declares the HTTPBearer security scheme on it, so it is registered auth_required:true with probe.enabled:false (Phase 3).","eligibility":{"callable":false,"reasons":["not-bittensor-base-layer","status-unknown","auth-required"],"live_status":"unknown"},"fixture_status":{"artifact_path":null,"captured_at":null,"reason":"fixture capture skips credentialed services","status":"auth-required"},"health":{"status":"unknown","classification":null,"latency_ms":null,"last_ok":null,"last_checked":null,"stale":false,"observed_by":"unavailable"},"kind":"subnet-api","provider":"babelbit","schema_artifact":"/metagraph/schemas/sn-59-babelbit-openapi.json","schema_source":{"artifact":"/metagraph/schemas/sn-59-babelbit-openapi.json","hash":"3bc12b2b9a14db246fde6372a975931175832e4d1f2bdf250c482193ae826798","match":"same-origin-openapi","observed_at":"2026-07-27T10:51:25.372Z","status":"captured","surface_id":"sn-59-babelbit-openapi","url":"https://api.babelbit.ai/openapi.json"},"schema_status":"machine-readable","schema_url":"https://api.babelbit.ai/openapi.json","snippets":{"curl":"curl -sS 'https://api.babelbit.ai/solo/next' \\\n  -H 'Authorization: Bearer <token>'","python":"import requests\n\nresp = requests.get(\"https://api.babelbit.ai/solo/next\", headers={\"Authorization\": \"Bearer <token>\"})\nresp.raise_for_status()\nprint(resp.json())","typescript":"const resp = await fetch(\"https://api.babelbit.ai/solo/next\", {\n  headers: { \"Authorization\": \"Bearer <token>\" },\n});\nif (!resp.ok) throw new Error(`HTTP ${resp.status}`);\nconst data = await resp.json();"},"surface_id":"sn-59-babelbit-solo-next"},{"auth":{"location":"header","name":"Authorization","scheme":"bearer","scopes_note":"Derived from the subnet's own OpenAPI securitySchemes (HTTPBearer), declared per-operation.","value_format":"Bearer <token>"},"auth_required":true,"auth_schemes":["http"],"authority":"community","base_url":"https://api.babelbit.ai/solo/session/%7Bsession_id%7D","capability":"Babelbit solo session session id","description":"Delete Solo Session operation on the Babelbit API (DELETE /solo/session/{session_id}), declared in the subnet's own OpenAPI spec at https://api.babelbit.ai/openapi.json. The spec declares the HTTPBearer security scheme on it, so it is registered auth_required:true with probe.enabled:false (Phase 3). Path-parameterized on {session_id}, so there is no single fixed callable URL; the template is registered per the registry's catalog-everything policy (Phase 2).","eligibility":{"callable":false,"reasons":["not-bittensor-base-layer","status-unknown","auth-required"],"live_status":"unknown"},"fixture_status":{"artifact_path":null,"captured_at":null,"reason":"fixture capture skips credentialed services","status":"auth-required"},"health":{"status":"unknown","classification":null,"latency_ms":null,"last_ok":null,"last_checked":null,"stale":false,"observed_by":"unavailable"},"kind":"subnet-api","provider":"babelbit","schema_artifact":"/metagraph/schemas/sn-59-babelbit-openapi.json","schema_source":{"artifact":"/metagraph/schemas/sn-59-babelbit-openapi.json","hash":"3bc12b2b9a14db246fde6372a975931175832e4d1f2bdf250c482193ae826798","match":"same-origin-openapi","observed_at":"2026-07-27T10:51:25.372Z","status":"captured","surface_id":"sn-59-babelbit-openapi","url":"https://api.babelbit.ai/openapi.json"},"schema_status":"machine-readable","schema_url":"https://api.babelbit.ai/openapi.json","snippets":{"curl":"curl -sS 'https://api.babelbit.ai/solo/session/%7Bsession_id%7D' \\\n  -H 'Authorization: Bearer <token>'","python":"import requests\n\nresp = requests.get(\"https://api.babelbit.ai/solo/session/%7Bsession_id%7D\", headers={\"Authorization\": \"Bearer <token>\"})\nresp.raise_for_status()\nprint(resp.json())","typescript":"const resp = await fetch(\"https://api.babelbit.ai/solo/session/%7Bsession_id%7D\", {\n  headers: { \"Authorization\": \"Bearer <token>\" },\n});\nif (!resp.ok) throw new Error(`HTTP ${resp.status}`);\nconst data = await resp.json();"},"surface_id":"sn-59-babelbit-solo-session-session-id"},{"auth":{"location":"header","name":"Authorization","scheme":"bearer","scopes_note":"Derived from the subnet's own OpenAPI securitySchemes (HTTPBearer), declared per-operation.","value_format":"Bearer <token>"},"auth_required":true,"auth_schemes":["http"],"authority":"community","base_url":"https://api.babelbit.ai/solo/sessions","capability":"Babelbit solo sessions","description":"List Solo Sessions operation on the Babelbit API (GET /solo/sessions), declared in the subnet's own OpenAPI spec at https://api.babelbit.ai/openapi.json. The spec declares the HTTPBearer security scheme on it, so it is registered auth_required:true with probe.enabled:false (Phase 3). Live-verified 2026-07-21: an unauthenticated GET returns HTTP 401 {\"detail\":\"Not authenticated\"}, confirming the gate.","eligibility":{"callable":false,"reasons":["not-bittensor-base-layer","status-unknown","auth-required"],"live_status":"unknown"},"fixture_status":{"artifact_path":null,"captured_at":null,"reason":"fixture capture skips credentialed services","status":"auth-required"},"health":{"status":"unknown","classification":null,"latency_ms":null,"last_ok":null,"last_checked":null,"stale":false,"observed_by":"unavailable"},"kind":"subnet-api","provider":"babelbit","schema_artifact":"/metagraph/schemas/sn-59-babelbit-openapi.json","schema_source":{"artifact":"/metagraph/schemas/sn-59-babelbit-openapi.json","hash":"3bc12b2b9a14db246fde6372a975931175832e4d1f2bdf250c482193ae826798","match":"same-origin-openapi","observed_at":"2026-07-27T10:51:25.372Z","status":"captured","surface_id":"sn-59-babelbit-openapi","url":"https://api.babelbit.ai/openapi.json"},"schema_status":"machine-readable","schema_url":"https://api.babelbit.ai/openapi.json","snippets":{"curl":"curl -sS 'https://api.babelbit.ai/solo/sessions' \\\n  -H 'Authorization: Bearer <token>'","python":"import requests\n\nresp = requests.get(\"https://api.babelbit.ai/solo/sessions\", headers={\"Authorization\": \"Bearer <token>\"})\nresp.raise_for_status()\nprint(resp.json())","typescript":"const resp = await fetch(\"https://api.babelbit.ai/solo/sessions\", {\n  headers: { \"Authorization\": \"Bearer <token>\" },\n});\nif (!resp.ok) throw new Error(`HTTP ${resp.status}`);\nconst data = await resp.json();"},"surface_id":"sn-59-babelbit-solo-sessions"},{"auth":{"location":"header","name":"Authorization","scheme":"bearer","scopes_note":"Derived from the subnet's own OpenAPI securitySchemes (HTTPBearer), declared per-operation.","value_format":"Bearer <token>"},"auth_required":true,"auth_schemes":["http"],"authority":"community","base_url":"https://api.babelbit.ai/solo/start","capability":"Babelbit solo start","description":"Start Solo Session operation on the Babelbit API (GET /solo/start), declared in the subnet's own OpenAPI spec at https://api.babelbit.ai/openapi.json. The spec declares the HTTPBearer security scheme on it, so it is registered auth_required:true with probe.enabled:false (Phase 3). Live-verified 2026-07-21: an unauthenticated GET returns HTTP 401 {\"detail\":\"Not authenticated\"}, confirming the gate.","eligibility":{"callable":false,"reasons":["not-bittensor-base-layer","status-unknown","auth-required"],"live_status":"unknown"},"fixture_status":{"artifact_path":null,"captured_at":null,"reason":"fixture capture skips credentialed services","status":"auth-required"},"health":{"status":"unknown","classification":null,"latency_ms":null,"last_ok":null,"last_checked":null,"stale":false,"observed_by":"unavailable"},"kind":"subnet-api","provider":"babelbit","schema_artifact":"/metagraph/schemas/sn-59-babelbit-openapi.json","schema_source":{"artifact":"/metagraph/schemas/sn-59-babelbit-openapi.json","hash":"3bc12b2b9a14db246fde6372a975931175832e4d1f2bdf250c482193ae826798","match":"same-origin-openapi","observed_at":"2026-07-27T10:51:25.372Z","status":"captured","surface_id":"sn-59-babelbit-openapi","url":"https://api.babelbit.ai/openapi.json"},"schema_status":"machine-readable","schema_url":"https://api.babelbit.ai/openapi.json","snippets":{"curl":"curl -sS 'https://api.babelbit.ai/solo/start' \\\n  -H 'Authorization: Bearer <token>'","python":"import requests\n\nresp = requests.get(\"https://api.babelbit.ai/solo/start\", headers={\"Authorization\": \"Bearer <token>\"})\nresp.raise_for_status()\nprint(resp.json())","typescript":"const resp = await fetch(\"https://api.babelbit.ai/solo/start\", {\n  headers: { \"Authorization\": \"Bearer <token>\" },\n});\nif (!resp.ok) throw new Error(`HTTP ${resp.status}`);\nconst data = await resp.json();"},"surface_id":"sn-59-babelbit-solo-start"},{"auth":{"location":"header","name":"Authorization","scheme":"bearer","scopes_note":"Derived from the subnet's own OpenAPI securitySchemes (HTTPBearer), declared per-operation.","value_format":"Bearer <token>"},"auth_required":true,"auth_schemes":["http"],"authority":"community","base_url":"https://api.babelbit.ai/source-audio/next","capability":"Babelbit source audio next","description":"Next Source Audio Utterance operation on the Babelbit API (POST /source-audio/next), declared in the subnet's own OpenAPI spec at https://api.babelbit.ai/openapi.json. The spec declares the HTTPBearer security scheme on it, so it is registered auth_required:true with probe.enabled:false (Phase 3).","eligibility":{"callable":false,"reasons":["not-bittensor-base-layer","status-unknown","auth-required"],"live_status":"unknown"},"fixture_status":{"artifact_path":null,"captured_at":null,"reason":"fixture capture skips credentialed services","status":"auth-required"},"health":{"status":"unknown","classification":null,"latency_ms":null,"last_ok":null,"last_checked":null,"stale":false,"observed_by":"unavailable"},"kind":"subnet-api","provider":"babelbit","schema_artifact":"/metagraph/schemas/sn-59-babelbit-openapi.json","schema_source":{"artifact":"/metagraph/schemas/sn-59-babelbit-openapi.json","hash":"3bc12b2b9a14db246fde6372a975931175832e4d1f2bdf250c482193ae826798","match":"same-origin-openapi","observed_at":"2026-07-27T10:51:25.372Z","status":"captured","surface_id":"sn-59-babelbit-openapi","url":"https://api.babelbit.ai/openapi.json"},"schema_status":"machine-readable","schema_url":"https://api.babelbit.ai/openapi.json","snippets":{"curl":"curl -sS 'https://api.babelbit.ai/source-audio/next' \\\n  -H 'Authorization: Bearer <token>'","python":"import requests\n\nresp = requests.get(\"https://api.babelbit.ai/source-audio/next\", headers={\"Authorization\": \"Bearer <token>\"})\nresp.raise_for_status()\nprint(resp.json())","typescript":"const resp = await fetch(\"https://api.babelbit.ai/source-audio/next\", {\n  headers: { \"Authorization\": \"Bearer <token>\" },\n});\nif (!resp.ok) throw new Error(`HTTP ${resp.status}`);\nconst data = await resp.json();"},"surface_id":"sn-59-babelbit-source-audio-next"},{"auth":{"location":"header","name":"Authorization","scheme":"bearer","scopes_note":"Derived from the subnet's own OpenAPI securitySchemes (HTTPBearer), declared per-operation.","value_format":"Bearer <token>"},"auth_required":true,"auth_schemes":["http"],"authority":"community","base_url":"https://api.babelbit.ai/source-audio/start","capability":"Babelbit source audio start","description":"Start Source Audio Session operation on the Babelbit API (POST /source-audio/start), declared in the subnet's own OpenAPI spec at https://api.babelbit.ai/openapi.json. The spec declares the HTTPBearer security scheme on it, so it is registered auth_required:true with probe.enabled:false (Phase 3).","eligibility":{"callable":false,"reasons":["not-bittensor-base-layer","status-unknown","auth-required"],"live_status":"unknown"},"fixture_status":{"artifact_path":null,"captured_at":null,"reason":"fixture capture skips credentialed services","status":"auth-required"},"health":{"status":"unknown","classification":null,"latency_ms":null,"last_ok":null,"last_checked":null,"stale":false,"observed_by":"unavailable"},"kind":"subnet-api","provider":"babelbit","schema_artifact":"/metagraph/schemas/sn-59-babelbit-openapi.json","schema_source":{"artifact":"/metagraph/schemas/sn-59-babelbit-openapi.json","hash":"3bc12b2b9a14db246fde6372a975931175832e4d1f2bdf250c482193ae826798","match":"same-origin-openapi","observed_at":"2026-07-27T10:51:25.372Z","status":"captured","surface_id":"sn-59-babelbit-openapi","url":"https://api.babelbit.ai/openapi.json"},"schema_status":"machine-readable","schema_url":"https://api.babelbit.ai/openapi.json","snippets":{"curl":"curl -sS 'https://api.babelbit.ai/source-audio/start' \\\n  -H 'Authorization: Bearer <token>'","python":"import requests\n\nresp = requests.get(\"https://api.babelbit.ai/source-audio/start\", headers={\"Authorization\": \"Bearer <token>\"})\nresp.raise_for_status()\nprint(resp.json())","typescript":"const resp = await fetch(\"https://api.babelbit.ai/source-audio/start\", {\n  headers: { \"Authorization\": \"Bearer <token>\" },\n});\nif (!resp.ok) throw new Error(`HTTP ${resp.status}`);\nconst data = await resp.json();"},"surface_id":"sn-59-babelbit-source-audio-start"},{"auth":{"location":"header","name":"Authorization","scheme":"bearer","scopes_note":"Derived from the subnet's own OpenAPI securitySchemes (HTTPBearer), declared per-operation.","value_format":"Bearer <token>"},"auth_required":true,"auth_schemes":["http"],"authority":"community","base_url":"https://api.babelbit.ai/target-audio/next","capability":"Babelbit target audio next","description":"Next Target Audio Utterance operation on the Babelbit API (POST /target-audio/next), declared in the subnet's own OpenAPI spec at https://api.babelbit.ai/openapi.json. The spec declares the HTTPBearer security scheme on it, so it is registered auth_required:true with probe.enabled:false (Phase 3).","eligibility":{"callable":false,"reasons":["not-bittensor-base-layer","status-unknown","auth-required"],"live_status":"unknown"},"fixture_status":{"artifact_path":null,"captured_at":null,"reason":"fixture capture skips credentialed services","status":"auth-required"},"health":{"status":"unknown","classification":null,"latency_ms":null,"last_ok":null,"last_checked":null,"stale":false,"observed_by":"unavailable"},"kind":"subnet-api","provider":"babelbit","schema_artifact":"/metagraph/schemas/sn-59-babelbit-openapi.json","schema_source":{"artifact":"/metagraph/schemas/sn-59-babelbit-openapi.json","hash":"3bc12b2b9a14db246fde6372a975931175832e4d1f2bdf250c482193ae826798","match":"same-origin-openapi","observed_at":"2026-07-27T10:51:25.372Z","status":"captured","surface_id":"sn-59-babelbit-openapi","url":"https://api.babelbit.ai/openapi.json"},"schema_status":"machine-readable","schema_url":"https://api.babelbit.ai/openapi.json","snippets":{"curl":"curl -sS 'https://api.babelbit.ai/target-audio/next' \\\n  -H 'Authorization: Bearer <token>'","python":"import requests\n\nresp = requests.get(\"https://api.babelbit.ai/target-audio/next\", headers={\"Authorization\": \"Bearer <token>\"})\nresp.raise_for_status()\nprint(resp.json())","typescript":"const resp = await fetch(\"https://api.babelbit.ai/target-audio/next\", {\n  headers: { \"Authorization\": \"Bearer <token>\" },\n});\nif (!resp.ok) throw new Error(`HTTP ${resp.status}`);\nconst data = await resp.json();"},"surface_id":"sn-59-babelbit-target-audio-next"},{"auth":{"location":"header","name":"Authorization","scheme":"bearer","scopes_note":"Derived from the subnet's own OpenAPI securitySchemes (HTTPBearer), declared per-operation.","value_format":"Bearer <token>"},"auth_required":true,"auth_schemes":["http"],"authority":"community","base_url":"https://api.babelbit.ai/target-audio/start","capability":"Babelbit target audio start","description":"Start Target Audio Session operation on the Babelbit API (POST /target-audio/start), declared in the subnet's own OpenAPI spec at https://api.babelbit.ai/openapi.json. The spec declares the HTTPBearer security scheme on it, so it is registered auth_required:true with probe.enabled:false (Phase 3).","eligibility":{"callable":false,"reasons":["not-bittensor-base-layer","status-unknown","auth-required"],"live_status":"unknown"},"fixture_status":{"artifact_path":null,"captured_at":null,"reason":"fixture capture skips credentialed services","status":"auth-required"},"health":{"status":"unknown","classification":null,"latency_ms":null,"last_ok":null,"last_checked":null,"stale":false,"observed_by":"unavailable"},"kind":"subnet-api","provider":"babelbit","schema_artifact":"/metagraph/schemas/sn-59-babelbit-openapi.json","schema_source":{"artifact":"/metagraph/schemas/sn-59-babelbit-openapi.json","hash":"3bc12b2b9a14db246fde6372a975931175832e4d1f2bdf250c482193ae826798","match":"same-origin-openapi","observed_at":"2026-07-27T10:51:25.372Z","status":"captured","surface_id":"sn-59-babelbit-openapi","url":"https://api.babelbit.ai/openapi.json"},"schema_status":"machine-readable","schema_url":"https://api.babelbit.ai/openapi.json","snippets":{"curl":"curl -sS 'https://api.babelbit.ai/target-audio/start' \\\n  -H 'Authorization: Bearer <token>'","python":"import requests\n\nresp = requests.get(\"https://api.babelbit.ai/target-audio/start\", headers={\"Authorization\": \"Bearer <token>\"})\nresp.raise_for_status()\nprint(resp.json())","typescript":"const resp = await fetch(\"https://api.babelbit.ai/target-audio/start\", {\n  headers: { \"Authorization\": \"Bearer <token>\" },\n});\nif (!resp.ok) throw new Error(`HTTP ${resp.status}`);\nconst data = await resp.json();"},"surface_id":"sn-59-babelbit-target-audio-start"},{"auth":{"location":"header","name":"Authorization","scheme":"bearer","scopes_note":"Derived from the subnet's own OpenAPI securitySchemes (HTTPBearer), declared per-operation.","value_format":"Bearer <token>"},"auth_required":true,"auth_schemes":["http"],"authority":"community","base_url":"https://api.babelbit.ai/transcription","capability":"Babelbit transcription","description":"Get Active Challenge Transcription View operation on the Babelbit API (GET /transcription), declared in the subnet's own OpenAPI spec at https://api.babelbit.ai/openapi.json. The spec declares the HTTPBearer security scheme on it, so it is registered auth_required:true with probe.enabled:false (Phase 3). Live-verified 2026-07-21: an unauthenticated GET returns HTTP 401 {\"detail\":\"Not authenticated\"}, confirming the gate.","eligibility":{"callable":false,"reasons":["not-bittensor-base-layer","status-unknown","auth-required"],"live_status":"unknown"},"fixture_status":{"artifact_path":null,"captured_at":null,"reason":"fixture capture skips credentialed services","status":"auth-required"},"health":{"status":"unknown","classification":null,"latency_ms":null,"last_ok":null,"last_checked":null,"stale":false,"observed_by":"unavailable"},"kind":"subnet-api","provider":"babelbit","schema_artifact":"/metagraph/schemas/sn-59-babelbit-openapi.json","schema_source":{"artifact":"/metagraph/schemas/sn-59-babelbit-openapi.json","hash":"3bc12b2b9a14db246fde6372a975931175832e4d1f2bdf250c482193ae826798","match":"same-origin-openapi","observed_at":"2026-07-27T10:51:25.372Z","status":"captured","surface_id":"sn-59-babelbit-openapi","url":"https://api.babelbit.ai/openapi.json"},"schema_status":"machine-readable","schema_url":"https://api.babelbit.ai/openapi.json","snippets":{"curl":"curl -sS 'https://api.babelbit.ai/transcription' \\\n  -H 'Authorization: Bearer <token>'","python":"import requests\n\nresp = requests.get(\"https://api.babelbit.ai/transcription\", headers={\"Authorization\": \"Bearer <token>\"})\nresp.raise_for_status()\nprint(resp.json())","typescript":"const resp = await fetch(\"https://api.babelbit.ai/transcription\", {\n  headers: { \"Authorization\": \"Bearer <token>\" },\n});\nif (!resp.ok) throw new Error(`HTTP ${resp.status}`);\nconst data = await resp.json();"},"surface_id":"sn-59-babelbit-transcription"}],"slug":"sn-59","subnet_type":"application","operational_observed_at":"2026-07-27T23:00:18.289Z","health_source":"live-cron-prober"},"meta":{"artifact_path":"/metagraph/agent-catalog/59.json","cache":"standard","contract_version":"2026-07-03.2","generated_at":"2026-07-27T10:51:25.049Z","published_at":"2026-07-27T10:51:25.049Z","source":"live-cron-prober","operational_observed_at":"2026-07-27T23:00:18.289Z"}}