application · active
TopoloOne
Unified personal and organization live workspace, personal-profile family management, authenticated app catalog, worker-backed pricing, owner-linked subscription billing, content, growth, and developer-acquisition surfaces for TopoloOne.
Documentation map
- Topolo Director — Public overview of Director as the Topolo workspace for proof-driven product demo runbooks and readiness gates.
- Topolo Forecast — Public overview of the forecasting product for cash-flow, P&L, KPI, and multi-scenario planning workflows.
- TopoloOne — Public overview of the TopoloOne dashboard, worker-backed growth surfaces, and the public developer-acquisition funnel.
- Quick Start — Fast onboarding path for developers integrating with Topolo services.
- API Keys — Central API key model, scope ownership, and resource binding behavior across Topolo services.
- Platform Architecture — Top-level platform shape, authority boundaries, and how the unified documentation platform maps onto the codebase.
Authority and runtime
- System ID
topolo-one- App IDs
- app_topolo_one
- Owners
- platform-experience
- Repositories
- apps/TopoloOne
- Hosts
- https://one.topolo.app, https://topolo.app, https://www.topolo.app, https://one.stg.topolo.us, https://api.one.stg.topolo.us, https://topolo.io, https://www.topolo.io, https://one.topolo.io, ios-app://io.topolo.topoloOne, android-app://io.topolo.topolo_one
- Dependencies
- topolo-auth, topolo-nexus, topolo-developers, topolo-p2p, applications-packages, topolo-agent
Security and data ownership
- Risk tier
- critical
- Tenant isolation
- mixed
- Privacy classification
- restricted
- Storage
- d1, external_provider, kv
- Export and deletion
- planned
- Enterprise ready
- no
Source-derived capability inventory
Source revisions: apps/TopoloOne@a6c9fe5faa3e4cea7302101db6f6c1df60495711
Declared actions: 24 · API routes: 31 · UI routes: 9
{
"id": "topolo-one",
"name": "TopoloOne",
"slug": "topolo-one",
"kind": "application",
"visibility": "public",
"repo_paths": [
"apps/TopoloOne"
],
"source_revisions": [
{
"source_path": "apps/TopoloOne",
"repository": "apps/TopoloOne",
"revision": "a6c9fe5faa3e4cea7302101db6f6c1df60495711",
"ref": "origin/staging"
}
],
"source_counts": {
"source_files": 340,
"test_files": 186,
"test_cases": 0,
"migration_files": 5,
"database_tables": 0,
"manifests": 1,
"deploy_targets": 3,
"actions": 24,
"mobile_contracts": 1,
"notifications": 0,
"package_manifests": 5,
"deployment_configs": 0
},
"manifests": [
{
"source_path": "apps/TopoloOne/topolo.app.json",
"service_slug": "topolo-one",
"name": "TopoloOne",
"app_id": "app_topolo_one",
"compatibility_date": "2026-04-10",
"primary_target": "web",
"environments": [
"development",
"production",
"staging"
],
"targets": [
{
"name": "web",
"kind": "worker",
"directory": "apps/web",
"main": "src/worker.ts",
"worker_name": "topolo-one",
"subdomain": null,
"healthcheck_path": "/health",
"variable_names": [
"AUTH_API_URL"
],
"secret_names": [],
"bindings": [
{
"kind": "services",
"binding": "API",
"target": null
},
{
"kind": "services",
"binding": "API",
"target": null
},
{
"kind": "services",
"binding": "API",
"target": null
}
]
},
{
"name": "marketing",
"kind": "worker",
"directory": "apps/marketing",
"main": "worker/index.js",
"worker_name": "topolo-one-website",
"subdomain": null,
"healthcheck_path": "/health",
"variable_names": [
"BLOG_API_BASE_URL",
"ENVIRONMENT",
"INSIGHTS_API_BASE_URL",
"INSIGHTS_WORKSPACE_ID",
"NEXT_PUBLIC_AUTH_URL",
"NEXT_PUBLIC_DEVELOPER_PORTAL_URL",
"NEXT_PUBLIC_DOCS_URL",
"NEXT_PUBLIC_ONE_URL",
"NEXT_PUBLIC_SIGNUP_MODE",
"NEXT_PUBLIC_SITE_URL",
"NEXT_PUBLIC_TOPOLO_CONSENT_BASE_URL",
"NEXT_PUBLIC_TOPOLO_CONSENT_SDK_KEY",
"NEXT_PUBLIC_TURNSTILE_SITE_KEY",
"NEXUS_GATEWAY_URL",
"NEXUS_ORGANIZATION_ID",
"TOPOLO_AGENT_PUBLIC_CHAT_URL",
"TOPOLO_ONE_BILLING_URL",
"TOPOLO_PAY_URL"
],
"secret_names": [],
"bindings": [
{
"kind": "d1",
"binding": "BILLING_DB",
"target": null
},
{
"kind": "kv",
"binding": "WAITLIST_KV",
"target": null
},
{
"kind": "kv",
"binding": "BOOKING_KV",
"target": null
},
{
"kind": "kv",
"binding": "SUBS_KV",
"target": null
}
]
},
{
"name": "api",
"kind": "worker",
"directory": "apps/api",
"main": "dist/index.js",
"worker_name": "topolo-one-api",
"subdomain": null,
"healthcheck_path": "/health",
"variable_names": [
"ALLOWED_ORIGINS",
"AUTH_API_URL",
"ENVIRONMENT",
"LOG_LEVEL",
"NODE_ENV",
"SERVICE_NAME",
"STORE_API_BASE_URL",
"TOPOLO_PAY_URL",
"TOPOLO_SEED_APP_ID"
],
"secret_names": [],
"bindings": [
{
"kind": "d1",
"binding": "CATALOG_DB",
"target": null
},
{
"kind": "d1",
"binding": "LAUNCH_DB",
"target": null
},
{
"kind": "d1",
"binding": "PUSH_DB",
"target": null
},
{
"kind": "d1",
"binding": "BILLING_DB",
"target": null
},
{
"kind": "kv",
"binding": "ONECLICK_KV",
"target": null
},
{
"kind": "services",
"binding": "DASHBOARD_APP",
"target": null
},
{
"kind": "services",
"binding": "DASHBOARD_APP",
"target": null
},
{
"kind": "services",
"binding": "DASHBOARD_APP",
"target": null
}
]
}
],
"notifications": [],
"notification_contract": {
"source_path": null,
"role": "consumer_only",
"schema_version": null,
"owner_app_id": null,
"events": []
},
"actions": [
{
"name": "workspaces.delete",
"title": "Archive workspace",
"description": "Archive an empty workspace: TopoloOne confirms it holds no data, then the platform archives the record.",
"method": "DELETE",
"path": "/api/workspaces/{workspaceId}",
"permission": "workspace:delete",
"authorizationMode": "static",
"readOnly": false,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"workspaceId": {
"type": "string",
"minLength": 1
}
},
"required": [
"workspaceId"
],
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"additionalProperties": true
},
"destructive": true,
"requiresConfirmation": true,
"agentAccess": "confirm",
"documentation": {
"example_input": {
"workspaceId": "example"
},
"cli_example": [
"topolo actions --service topolo-one --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --confirm --json"
],
"http_example": {
"method": "DELETE",
"path": "/api/workspaces/example",
"body": null
},
"effects": "May change state through DELETE /api/workspaces/{workspaceId}. Inspect the plan and honor the published confirmation policy.",
"verification": [
"Check the structured action result.",
"Read the affected resource back through the corresponding get or list action."
],
"recovery": [
"Do not retry an ambiguous mutation until a read confirms whether it applied.",
"Use a published inverse, update, archive, or delete action only after inspecting its contract."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "DELETE /api/workspaces/*",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "organizations.data.export",
"title": "Export organization data",
"description": "Export TopoloOne-owned launch, push, billing, cache, and workspace-mirror data for the authenticated organization with credential fields redacted.",
"method": "GET",
"path": "/api/organizations/{organizationId}/data",
"permission": "settings:read",
"authorizationMode": "static",
"readOnly": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"organizationId": {
"type": "string",
"minLength": 1
}
},
"required": [
"organizationId"
],
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"additionalProperties": true
},
"destructive": false,
"requiresConfirmation": false,
"agentAccess": "auto",
"documentation": {
"example_input": {
"organizationId": "example"
},
"cli_example": [
"topolo actions --service topolo-one --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --json"
],
"http_example": {
"method": "GET",
"path": "/api/organizations/example/data",
"body": null
},
"effects": "Reads state through GET /api/organizations/{organizationId}/data without a declared mutation.",
"verification": [
"Check the structured action result and pagination or resource identifiers before using it downstream."
],
"recovery": [
"Correct identity, resource context, permission, or input validation failures, then retry the read."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "GET /api/organizations/*/data",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "organizations.data.erase",
"title": "Erase organization data",
"description": "Erase TopoloOne-owned organization data after refusing active billing subscriptions, with explicit pending verification for eventually consistent KV.",
"method": "DELETE",
"path": "/api/organizations/{organizationId}/data",
"permission": "settings:write",
"authorizationMode": "static",
"readOnly": false,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"organizationId": {
"type": "string",
"minLength": 1
}
},
"required": [
"organizationId"
],
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"additionalProperties": true
},
"destructive": true,
"requiresConfirmation": true,
"agentAccess": "confirm",
"documentation": {
"example_input": {
"organizationId": "example"
},
"cli_example": [
"topolo actions --service topolo-one --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --confirm --json"
],
"http_example": {
"method": "DELETE",
"path": "/api/organizations/example/data",
"body": null
},
"effects": "May change state through DELETE /api/organizations/{organizationId}/data. Inspect the plan and honor the published confirmation policy.",
"verification": [
"Check the structured action result.",
"Read the affected resource back through the corresponding get or list action."
],
"recovery": [
"Do not retry an ambiguous mutation until a read confirms whether it applied.",
"Use a published inverse, update, archive, or delete action only after inspecting its contract."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "DELETE /api/organizations/*/data",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "widget.get",
"title": "Get widget summary",
"description": "Get the TopoloOne widget summary for this service.",
"method": "GET",
"path": "/api/widget",
"readOnly": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"additionalProperties": true
},
"target": "api",
"destructive": false,
"requiresConfirmation": false,
"agentAccess": "auto",
"authorizationMode": "runtime",
"documentation": {
"example_input": {},
"cli_example": [
"topolo actions --service topolo-one --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --json"
],
"http_example": {
"method": "GET",
"path": "/api/widget",
"body": null
},
"effects": "Reads state through GET /api/widget without a declared mutation.",
"verification": [
"Check the structured action result and pagination or resource identifiers before using it downstream."
],
"recovery": [
"Correct identity, resource context, permission, or input validation failures, then retry the read."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "GET /api/widget",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "apps.list",
"title": "List launcher apps",
"description": "List apps visible in TopoloOne.",
"method": "GET",
"path": "/api/apps",
"permission": "apps:read",
"readOnly": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {},
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by List launcher apps.",
"additionalProperties": true
},
"destructive": false,
"requiresConfirmation": false,
"agentAccess": "auto",
"authorizationMode": "static",
"documentation": {
"example_input": {},
"cli_example": [
"topolo actions --service topolo-one --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --json"
],
"http_example": {
"method": "GET",
"path": "/api/apps",
"body": null
},
"effects": "Reads state through GET /api/apps without a declared mutation.",
"verification": [
"Check the structured action result and pagination or resource identifiers before using it downstream."
],
"recovery": [
"Correct identity, resource context, permission, or input validation failures, then retry the read."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "GET /api/apps",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "dashboard.get",
"title": "Get composed dashboard",
"description": "Get the current organization launcher catalog, preferences, users, and canonical store icons.",
"method": "GET",
"path": "/api/dashboard",
"readOnly": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"org_id": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
},
"target": "api",
"destructive": false,
"requiresConfirmation": false,
"agentAccess": "auto",
"outputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"services": {
"type": "array",
"items": {}
},
"availableServices": {
"type": "array",
"items": {}
}
},
"required": [
"services",
"availableServices"
],
"additionalProperties": {}
}
},
"required": [
"data"
],
"additionalProperties": false
},
"authorizationMode": "runtime",
"documentation": {
"example_input": {
"org_id": "00000000-0000-4000-8000-000000000000"
},
"cli_example": [
"topolo actions --service topolo-one --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --json"
],
"http_example": {
"method": "GET",
"path": "/api/dashboard",
"body": null
},
"effects": "Reads state through GET /api/dashboard without a declared mutation.",
"verification": [
"Check the structured action result and pagination or resource identifiers before using it downstream."
],
"recovery": [
"Correct identity, resource context, permission, or input validation failures, then retry the read."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "GET /api/dashboard",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "checkout.quote",
"title": "Quote checkout",
"description": "Quote a cart checkout.",
"method": "POST",
"path": "/api/cart/quote",
"permission": "entitlements:read",
"readOnly": false,
"requiresConfirmation": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"slug": {
"type": "string",
"minLength": 1
},
"seats": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
}
},
"required": [
"slug"
],
"additionalProperties": false
}
},
"appSlugs": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
}
},
"seats": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"billing": {
"type": "string",
"enum": [
"monthly",
"annual"
]
}
},
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by Quote checkout.",
"additionalProperties": true
},
"destructive": false,
"agentAccess": "confirm",
"authorizationMode": "static",
"documentation": {
"example_input": {
"items": [
{
"slug": "example"
}
],
"appSlugs": [
"example"
],
"seats": 1
},
"cli_example": [
"topolo actions --service topolo-one --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --confirm --json"
],
"http_example": {
"method": "POST",
"path": "/api/cart/quote",
"body": {
"items": [
{
"slug": "example"
}
],
"appSlugs": [
"example"
],
"seats": 1
}
},
"effects": "May change state through POST /api/cart/quote. Inspect the plan and honor the published confirmation policy.",
"verification": [
"Check the structured action result.",
"Read the affected resource back through the corresponding get or list action."
],
"recovery": [
"Do not retry an ambiguous mutation until a read confirms whether it applied.",
"Use a published inverse, update, archive, or delete action only after inspecting its contract."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "POST /api/cart/quote",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "checkout.create",
"title": "Create checkout",
"description": "Create a checkout session.",
"method": "POST",
"path": "/api/cart/checkout",
"permission": "workflows:write",
"readOnly": false,
"requiresConfirmation": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"slug": {
"type": "string",
"minLength": 1
},
"seats": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
}
},
"required": [
"slug"
],
"additionalProperties": false
}
},
"appSlugs": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
}
},
"seats": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"billing": {
"type": "string",
"enum": [
"monthly",
"annual"
]
}
},
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by Create checkout.",
"additionalProperties": true
},
"destructive": false,
"agentAccess": "confirm",
"authorizationMode": "static",
"documentation": {
"example_input": {
"items": [
{
"slug": "example"
}
],
"appSlugs": [
"example"
],
"seats": 1
},
"cli_example": [
"topolo actions --service topolo-one --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --confirm --json"
],
"http_example": {
"method": "POST",
"path": "/api/cart/checkout",
"body": {
"items": [
{
"slug": "example"
}
],
"appSlugs": [
"example"
],
"seats": 1
}
},
"effects": "May change state through POST /api/cart/checkout. Inspect the plan and honor the published confirmation policy.",
"verification": [
"Check the structured action result.",
"Read the affected resource back through the corresponding get or list action."
],
"recovery": [
"Do not retry an ambiguous mutation until a read confirms whether it applied.",
"Use a published inverse, update, archive, or delete action only after inspecting its contract."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "POST /api/cart/checkout",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "widgets.aggregate",
"title": "Widgets Aggregate",
"description": "Call POST /api/widgets.",
"method": "POST",
"path": "/api/widgets",
"requiresConfirmation": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"contextKey": {
"type": "string",
"minLength": 1
},
"services": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"minLength": 1
},
"name": {
"type": "string",
"minLength": 1
},
"base_url": {
"type": "string",
"minLength": 1
},
"settings": {},
"category": {
"type": "string",
"minLength": 1
},
"status": {
"type": "string",
"minLength": 1
},
"supportedContexts": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
}
},
"isInstalled": {
"type": "boolean"
},
"widgetEndpoint": {
"type": "string",
"minLength": 1
},
"widget_endpoint": {
"type": "string",
"minLength": 1
},
"widgetOrigin": {
"type": "string",
"minLength": 1
},
"widget_origin": {
"type": "string",
"minLength": 1
},
"widgetsEnabled": {
"type": "boolean"
},
"widget_enabled": {
"type": "boolean"
},
"refreshInterval": {
"type": "number"
}
},
"required": [
"id"
],
"additionalProperties": {}
}
}
},
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by Widgets Aggregate.",
"additionalProperties": true
},
"readOnly": false,
"destructive": false,
"agentAccess": "confirm",
"authorizationMode": "runtime",
"documentation": {
"example_input": {
"contextKey": "example",
"services": [
{
"id": "00000000-0000-4000-8000-000000000000"
}
]
},
"cli_example": [
"topolo actions --service topolo-one --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --confirm --json"
],
"http_example": {
"method": "POST",
"path": "/api/widgets",
"body": {
"contextKey": "example",
"services": [
{
"id": "00000000-0000-4000-8000-000000000000"
}
]
}
},
"effects": "May change state through POST /api/widgets. Inspect the plan and honor the published confirmation policy.",
"verification": [
"Check the structured action result.",
"Read the affected resource back through the corresponding get or list action."
],
"recovery": [
"Do not retry an ambiguous mutation until a read confirms whether it applied.",
"Use a published inverse, update, archive, or delete action only after inspecting its contract."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "POST /api/widgets",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "widget_snapshots.create",
"title": "Widget Snapshots Create",
"description": "Call POST /api/widget-snapshots.",
"method": "POST",
"path": "/api/widget-snapshots",
"permission": "widgets:read",
"requiresConfirmation": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"preset": {
"type": "string",
"minLength": 1
},
"contextKey": {
"type": "string",
"minLength": 1
},
"appId": {
"type": "string",
"minLength": 1
},
"service": {
"anyOf": [
{
"type": "object",
"properties": {
"id": {
"type": "string",
"minLength": 1
},
"name": {
"type": "string",
"minLength": 1
},
"base_url": {
"type": "string",
"minLength": 1
},
"settings": {},
"category": {
"type": "string",
"minLength": 1
},
"status": {
"type": "string",
"minLength": 1
},
"supportedContexts": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
}
},
"isInstalled": {
"type": "boolean"
},
"widgetEndpoint": {
"type": "string",
"minLength": 1
},
"widget_endpoint": {
"type": "string",
"minLength": 1
},
"widgetOrigin": {
"type": "string",
"minLength": 1
},
"widget_origin": {
"type": "string",
"minLength": 1
},
"widgetsEnabled": {
"type": "boolean"
},
"widget_enabled": {
"type": "boolean"
},
"refreshInterval": {
"type": "number"
}
},
"required": [
"id"
],
"additionalProperties": {}
},
{
"type": "null"
}
]
},
"services": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"minLength": 1
},
"name": {
"type": "string",
"minLength": 1
},
"base_url": {
"type": "string",
"minLength": 1
},
"settings": {},
"category": {
"type": "string",
"minLength": 1
},
"status": {
"type": "string",
"minLength": 1
},
"supportedContexts": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
}
},
"isInstalled": {
"type": "boolean"
},
"widgetEndpoint": {
"type": "string",
"minLength": 1
},
"widget_endpoint": {
"type": "string",
"minLength": 1
},
"widgetOrigin": {
"type": "string",
"minLength": 1
},
"widget_origin": {
"type": "string",
"minLength": 1
},
"widgetsEnabled": {
"type": "boolean"
},
"widget_enabled": {
"type": "boolean"
},
"refreshInterval": {
"type": "number"
}
},
"required": [
"id"
],
"additionalProperties": {}
}
},
"metricKeys": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
}
}
},
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by Widget Snapshots Create.",
"additionalProperties": true
},
"readOnly": false,
"destructive": false,
"agentAccess": "confirm",
"authorizationMode": "static",
"documentation": {
"example_input": {
"preset": "example",
"contextKey": "example",
"appId": "example"
},
"cli_example": [
"topolo actions --service topolo-one --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --confirm --json"
],
"http_example": {
"method": "POST",
"path": "/api/widget-snapshots",
"body": {
"preset": "example",
"contextKey": "example",
"appId": "example"
}
},
"effects": "May change state through POST /api/widget-snapshots. Inspect the plan and honor the published confirmation policy.",
"verification": [
"Check the structured action result.",
"Read the affected resource back through the corresponding get or list action."
],
"recovery": [
"Do not retry an ambiguous mutation until a read confirms whether it applied.",
"Use a published inverse, update, archive, or delete action only after inspecting its contract."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "POST /api/widget-snapshots",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "apps.create",
"title": "Apps Create",
"description": "Call POST /api/apps.",
"method": "POST",
"path": "/api/apps",
"permission": "apps:write",
"requiresConfirmation": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"id": {
"type": "string",
"minLength": 1
},
"name": {
"type": "string",
"minLength": 1
},
"description": {
"type": "string",
"minLength": 1
},
"icon": {
"type": "string",
"minLength": 1
},
"category": {
"type": "string",
"minLength": 1
},
"developer": {
"type": "string",
"minLength": 1
},
"version": {
"type": "string",
"minLength": 1
},
"base_url": {
"type": "string",
"minLength": 1
},
"launch_url_template": {
"type": "string",
"minLength": 1
},
"required_permissions": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
}
},
"optional_permissions": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
}
},
"status": {
"type": "string",
"enum": [
"active",
"inactive",
"maintenance"
]
},
"is_system_app": {
"type": "boolean"
}
},
"required": [
"id",
"name",
"base_url"
],
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by Apps Create.",
"additionalProperties": true
},
"readOnly": false,
"destructive": false,
"agentAccess": "confirm",
"authorizationMode": "static",
"documentation": {
"example_input": {
"id": "00000000-0000-4000-8000-000000000000",
"name": "example",
"base_url": "https://example.com"
},
"cli_example": [
"topolo actions --service topolo-one --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --confirm --json"
],
"http_example": {
"method": "POST",
"path": "/api/apps",
"body": {
"id": "00000000-0000-4000-8000-000000000000",
"name": "example",
"base_url": "https://example.com"
}
},
"effects": "May change state through POST /api/apps. Inspect the plan and honor the published confirmation policy.",
"verification": [
"Check the structured action result.",
"Read the affected resource back through the corresponding get or list action."
],
"recovery": [
"Do not retry an ambiguous mutation until a read confirms whether it applied.",
"Use a published inverse, update, archive, or delete action only after inspecting its contract."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "POST /api/apps",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "apps.update",
"title": "Apps Update",
"description": "Call PATCH /api/apps/{id}.",
"method": "PATCH",
"path": "/api/apps/{id}",
"permission": "apps:write",
"requiresConfirmation": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"id": {
"type": "string",
"minLength": 1
},
"name": {
"type": "string",
"minLength": 1
},
"description": {
"type": "string",
"minLength": 1
},
"icon": {
"type": "string",
"minLength": 1
},
"required_permissions": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
}
},
"optional_permissions": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
}
},
"base_url": {
"type": "string",
"minLength": 1
},
"launch_url_template": {
"type": "string",
"minLength": 1
},
"category": {
"type": "string",
"minLength": 1
},
"status": {
"type": "string",
"enum": [
"active",
"inactive",
"maintenance"
]
},
"is_system_app": {
"type": "boolean"
}
},
"required": [
"id"
],
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by Apps Update.",
"additionalProperties": true
},
"readOnly": false,
"destructive": false,
"agentAccess": "confirm",
"authorizationMode": "static",
"documentation": {
"example_input": {
"id": "00000000-0000-4000-8000-000000000000"
},
"cli_example": [
"topolo actions --service topolo-one --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --confirm --json"
],
"http_example": {
"method": "PATCH",
"path": "/api/apps/00000000-0000-4000-8000-000000000000",
"body": {
"id": "00000000-0000-4000-8000-000000000000"
}
},
"effects": "May change state through PATCH /api/apps/{id}. Inspect the plan and honor the published confirmation policy.",
"verification": [
"Check the structured action result.",
"Read the affected resource back through the corresponding get or list action."
],
"recovery": [
"Do not retry an ambiguous mutation until a read confirms whether it applied.",
"Use a published inverse, update, archive, or delete action only after inspecting its contract."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "PATCH /api/apps/*",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "apps.delete",
"title": "Apps Delete",
"description": "Call DELETE /api/apps/{id}.",
"method": "DELETE",
"path": "/api/apps/{id}",
"permission": "apps:write",
"requiresConfirmation": true,
"destructive": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"id": {
"type": "string",
"minLength": 1
}
},
"required": [
"id"
],
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by Apps Delete.",
"additionalProperties": true
},
"readOnly": false,
"agentAccess": "confirm",
"authorizationMode": "static",
"documentation": {
"example_input": {
"id": "00000000-0000-4000-8000-000000000000"
},
"cli_example": [
"topolo actions --service topolo-one --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --confirm --json"
],
"http_example": {
"method": "DELETE",
"path": "/api/apps/00000000-0000-4000-8000-000000000000",
"body": null
},
"effects": "May change state through DELETE /api/apps/{id}. Inspect the plan and honor the published confirmation policy.",
"verification": [
"Check the structured action result.",
"Read the affected resource back through the corresponding get or list action."
],
"recovery": [
"Do not retry an ambiguous mutation until a read confirms whether it applied.",
"Use a published inverse, update, archive, or delete action only after inspecting its contract."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "DELETE /api/apps/*",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "billing.organization_preview",
"title": "Billing Organization Preview",
"description": "Call POST /api/billing/organizations/{orgId}/preview.",
"method": "POST",
"path": "/api/billing/organizations/{orgId}/preview",
"requiresConfirmation": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"orgId": {
"type": "string",
"minLength": 1
},
"organizationId": {
"type": "string",
"minLength": 1
},
"targetSeatQuantity": {
"anyOf": [
{
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
{
"type": "null"
}
]
},
"seatSummary": {}
},
"required": [
"orgId"
],
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by Billing Organization Preview.",
"additionalProperties": true
},
"readOnly": false,
"destructive": false,
"agentAccess": "confirm",
"authorizationMode": "service",
"allowedServices": [
"topolo-auth"
],
"documentation": {
"example_input": {
"orgId": "example"
},
"cli_example": [
"topolo actions --service topolo-one --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --confirm --json"
],
"http_example": {
"method": "POST",
"path": "/api/billing/organizations/example/preview",
"body": {
"orgId": "example"
}
},
"effects": "May change state through POST /api/billing/organizations/{orgId}/preview. Inspect the plan and honor the published confirmation policy.",
"verification": [
"Check the structured action result.",
"Read the affected resource back through the corresponding get or list action."
],
"recovery": [
"Do not retry an ambiguous mutation until a read confirms whether it applied.",
"Use a published inverse, update, archive, or delete action only after inspecting its contract."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "POST /api/billing/organizations/*/preview",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "push_subscriptions.create",
"title": "Push Subscriptions Create",
"description": "Call POST /api/push/subscriptions.",
"method": "POST",
"path": "/api/push/subscriptions",
"permission": "notifications:write",
"requiresConfirmation": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"endpoint": {
"type": "string",
"minLength": 1
},
"keys": {
"type": "object",
"properties": {
"p256dh": {
"type": "string",
"minLength": 1
},
"auth": {
"type": "string",
"minLength": 1
}
},
"required": [
"p256dh",
"auth"
],
"additionalProperties": false
}
},
"required": [
"endpoint",
"keys"
],
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by Push Subscriptions Create.",
"additionalProperties": true
},
"readOnly": false,
"destructive": false,
"agentAccess": "confirm",
"authorizationMode": "static",
"documentation": {
"example_input": {
"endpoint": "example",
"keys": {
"p256dh": "example",
"auth": "example"
}
},
"cli_example": [
"topolo actions --service topolo-one --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --confirm --json"
],
"http_example": {
"method": "POST",
"path": "/api/push/subscriptions",
"body": {
"endpoint": "example",
"keys": {
"p256dh": "example",
"auth": "example"
}
}
},
"effects": "May change state through POST /api/push/subscriptions. Inspect the plan and honor the published confirmation policy.",
"verification": [
"Check the structured action result.",
"Read the affected resource back through the corresponding get or list action."
],
"recovery": [
"Do not retry an ambiguous mutation until a read confirms whether it applied.",
"Use a published inverse, update, archive, or delete action only after inspecting its contract."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "POST /api/push/subscriptions",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "push_subscriptions.delete",
"title": "Push Subscriptions Delete",
"description": "Call DELETE /api/push/subscriptions.",
"method": "DELETE",
"path": "/api/push/subscriptions",
"permission": "notifications:write",
"requiresConfirmation": true,
"destructive": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"endpoint": {
"type": "string",
"minLength": 1
}
},
"required": [
"endpoint"
],
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by Push Subscriptions Delete.",
"additionalProperties": true
},
"readOnly": false,
"agentAccess": "confirm",
"authorizationMode": "static",
"documentation": {
"example_input": {
"endpoint": "example"
},
"cli_example": [
"topolo actions --service topolo-one --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --confirm --json"
],
"http_example": {
"method": "DELETE",
"path": "/api/push/subscriptions",
"body": null
},
"effects": "May change state through DELETE /api/push/subscriptions. Inspect the plan and honor the published confirmation policy.",
"verification": [
"Check the structured action result.",
"Read the affected resource back through the corresponding get or list action."
],
"recovery": [
"Do not retry an ambiguous mutation until a read confirms whether it applied.",
"Use a published inverse, update, archive, or delete action only after inspecting its contract."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "DELETE /api/push/subscriptions",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "push.vapid_key.get",
"title": "Push Vapid Key Get",
"description": "Call GET /api/push/vapid-key.",
"method": "GET",
"path": "/api/push/vapid-key",
"readOnly": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {},
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by Push Vapid Key Get.",
"additionalProperties": true
},
"destructive": false,
"requiresConfirmation": false,
"agentAccess": "auto",
"authorizationMode": "public",
"documentation": {
"example_input": {},
"cli_example": [
"topolo actions --service topolo-one --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --json"
],
"http_example": {
"method": "GET",
"path": "/api/push/vapid-key",
"body": null
},
"effects": "Reads state through GET /api/push/vapid-key without a declared mutation.",
"verification": [
"Check the structured action result and pagination or resource identifiers before using it downstream."
],
"recovery": [
"Correct identity, resource context, permission, or input validation failures, then retry the read."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "GET /api/push/vapid-key",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "launch.get",
"title": "Launch Get",
"description": "Call GET /api/launch/{appId}.",
"method": "GET",
"path": "/api/launch/{appId}",
"permission": "launcher:read",
"readOnly": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"appId": {
"type": "string",
"minLength": 1
}
},
"required": [
"appId"
],
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by Launch Get.",
"additionalProperties": true
},
"destructive": false,
"requiresConfirmation": false,
"agentAccess": "auto",
"authorizationMode": "static",
"documentation": {
"example_input": {
"appId": "example"
},
"cli_example": [
"topolo actions --service topolo-one --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --json"
],
"http_example": {
"method": "GET",
"path": "/api/launch/example",
"body": null
},
"effects": "Reads state through GET /api/launch/{appId} without a declared mutation.",
"verification": [
"Check the structured action result and pagination or resource identifiers before using it downstream."
],
"recovery": [
"Correct identity, resource context, permission, or input validation failures, then retry the read."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "GET /api/launch/*",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "launch.create",
"title": "Launch Create",
"description": "Call POST /api/launch/{appId}.",
"method": "POST",
"path": "/api/launch/{appId}",
"permission": "launches:read",
"requiresConfirmation": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"appId": {
"type": "string",
"minLength": 1
}
},
"required": [
"appId"
],
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by Launch Create.",
"additionalProperties": true
},
"readOnly": false,
"destructive": false,
"agentAccess": "confirm",
"authorizationMode": "static",
"documentation": {
"example_input": {
"appId": "example"
},
"cli_example": [
"topolo actions --service topolo-one --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --confirm --json"
],
"http_example": {
"method": "POST",
"path": "/api/launch/example",
"body": {
"appId": "example"
}
},
"effects": "May change state through POST /api/launch/{appId}. Inspect the plan and honor the published confirmation policy.",
"verification": [
"Check the structured action result.",
"Read the affected resource back through the corresponding get or list action."
],
"recovery": [
"Do not retry an ambiguous mutation until a read confirms whether it applied.",
"Use a published inverse, update, archive, or delete action only after inspecting its contract."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "POST /api/launch/*",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "launch.secure_token.create",
"title": "Launch Secure Token Create",
"description": "Call POST /api/launch/secure-token.",
"method": "POST",
"path": "/api/launch/secure-token",
"permission": "launches:read",
"requiresConfirmation": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"appId": {
"type": "string",
"minLength": 1
},
"callbackUrl": {
"type": "string",
"minLength": 1
}
},
"required": [
"appId",
"callbackUrl"
],
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by Launch Secure Token Create.",
"additionalProperties": true
},
"readOnly": false,
"destructive": false,
"agentAccess": "confirm",
"authorizationMode": "static",
"documentation": {
"example_input": {
"appId": "example",
"callbackUrl": "https://example.com"
},
"cli_example": [
"topolo actions --service topolo-one --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --confirm --json"
],
"http_example": {
"method": "POST",
"path": "/api/launch/secure-token",
"body": {
"appId": "example",
"callbackUrl": "https://example.com"
}
},
"effects": "May change state through POST /api/launch/secure-token. Inspect the plan and honor the published confirmation policy.",
"verification": [
"Check the structured action result.",
"Read the affected resource back through the corresponding get or list action."
],
"recovery": [
"Do not retry an ambiguous mutation until a read confirms whether it applied.",
"Use a published inverse, update, archive, or delete action only after inspecting its contract."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "POST /api/launch/secure-token",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "track.create",
"title": "Track Create",
"description": "Call POST /api/track.",
"method": "POST",
"path": "/api/track",
"permission": "dashboard:read",
"requiresConfirmation": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"appId": {
"type": "string",
"minLength": 1
},
"metadata": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
}
},
"required": [
"appId"
],
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by Track Create.",
"additionalProperties": true
},
"readOnly": false,
"destructive": false,
"agentAccess": "confirm",
"authorizationMode": "static",
"documentation": {
"example_input": {
"appId": "example"
},
"cli_example": [
"topolo actions --service topolo-one --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --confirm --json"
],
"http_example": {
"method": "POST",
"path": "/api/track",
"body": {
"appId": "example"
}
},
"effects": "May change state through POST /api/track. Inspect the plan and honor the published confirmation policy.",
"verification": [
"Check the structured action result.",
"Read the affected resource back through the corresponding get or list action."
],
"recovery": [
"Do not retry an ambiguous mutation until a read confirms whether it applied.",
"Use a published inverse, update, archive, or delete action only after inspecting its contract."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "POST /api/track",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "admin.status.get",
"title": "Admin Status Get",
"description": "Call GET /api/admin/status.",
"method": "GET",
"path": "/api/admin/status",
"permission": "settings:read",
"readOnly": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {},
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by Admin Status Get.",
"additionalProperties": true
},
"destructive": false,
"requiresConfirmation": false,
"agentAccess": "auto",
"authorizationMode": "static",
"documentation": {
"example_input": {},
"cli_example": [
"topolo actions --service topolo-one --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --json"
],
"http_example": {
"method": "GET",
"path": "/api/admin/status",
"body": null
},
"effects": "Reads state through GET /api/admin/status without a declared mutation.",
"verification": [
"Check the structured action result and pagination or resource identifiers before using it downstream."
],
"recovery": [
"Correct identity, resource context, permission, or input validation failures, then retry the read."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "GET /api/admin/status",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "admin.apps.list",
"title": "Admin Apps List",
"description": "Call GET /api/admin/apps.",
"method": "GET",
"path": "/api/admin/apps",
"permission": "apps:read",
"readOnly": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {},
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by Admin Apps List.",
"additionalProperties": true
},
"destructive": false,
"requiresConfirmation": false,
"agentAccess": "auto",
"authorizationMode": "static",
"documentation": {
"example_input": {},
"cli_example": [
"topolo actions --service topolo-one --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --json"
],
"http_example": {
"method": "GET",
"path": "/api/admin/apps",
"body": null
},
"effects": "Reads state through GET /api/admin/apps without a declared mutation.",
"verification": [
"Check the structured action result and pagination or resource identifiers before using it downstream."
],
"recovery": [
"Correct identity, resource context, permission, or input validation failures, then retry the read."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "GET /api/admin/apps",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "admin.categories.list",
"title": "Admin Categories List",
"description": "Call GET /api/admin/categories.",
"method": "GET",
"path": "/api/admin/categories",
"permission": "apps:read",
"readOnly": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {},
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by Admin Categories List.",
"additionalProperties": true
},
"destructive": false,
"requiresConfirmation": false,
"agentAccess": "auto",
"authorizationMode": "static",
"documentation": {
"example_input": {},
"cli_example": [
"topolo actions --service topolo-one --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --json"
],
"http_example": {
"method": "GET",
"path": "/api/admin/categories",
"body": null
},
"effects": "Reads state through GET /api/admin/categories without a declared mutation.",
"verification": [
"Check the structured action result and pagination or resource identifiers before using it downstream."
],
"recovery": [
"Correct identity, resource context, permission, or input validation failures, then retry the read."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "GET /api/admin/categories",
"evidence": "Matched to a served route extracted from canonical staging source."
}
}
],
"action_coverage": {
"status": "ok",
"served_routes": 31,
"matched_actions": 24,
"declared_unserved_actions": [],
"coverage_excluded_actions": [],
"uncatalogued_routes": [],
"ignored_routes": 7,
"configured_exclusions": 5,
"configuration_findings": [],
"notes": [
"analyzed source for api (manifest points at dist build)"
]
},
"runtime_contract_audit": {
"status": "verified",
"actions": 24,
"contracts": 24,
"contract_module": "topolo.action-contracts.mjs",
"validator_sources": [
"apps/api/src/index.ts"
],
"authorization_sources": [
"apps/api/src/index.ts"
],
"findings": []
}
}
],
"mobile_contracts": [
{
"source_path": "apps/TopoloOne/topolo.mobile-experience.json",
"contract": {
"version": "2026-07-03",
"status": "approved",
"mode": "native_capability",
"appId": "app_topolo_one",
"localizationNamespace": "one",
"permissions": [
"apps:read",
"dashboard:read"
],
"offlinePolicy": "read_through_cache",
"fallbackPath": "/apps",
"auth": {
"audience": "topolo-one",
"scopes": [
"apps:read",
"dashboard:read"
],
"orgContext": "required"
},
"routes": [
{
"path": "/apps",
"apiPath": "/api/apps",
"title": "Apps",
"titleKey": "one.mobile.routes.apps.title",
"template": "record.list",
"dataSource": "one.apps.list",
"detailRoute": "/apps/:slug"
},
{
"path": "/apps/:slug",
"apiPath": "/api/apps/:slug",
"title": "App",
"titleKey": "one.mobile.routes.appDetail.title",
"template": "record.detail",
"dataSource": "one.apps.detail"
},
{
"path": "/dashboard",
"apiPath": "/api/widget",
"title": "Dashboard",
"titleKey": "one.mobile.routes.dashboard.title",
"template": "record.detail",
"dataSource": "one.dashboard.detail"
}
]
}
}
],
"package_manifests": [],
"deployment_configs": [],
"source_signals": {
"api_routes": [
{
"method": "LITERAL",
"path": "/health",
"source_path": "apps/TopoloOne/apps/api/src/middleware/rate-limit.ts"
},
{
"method": "GET",
"path": "/health",
"source_path": "apps/TopoloOne/apps/api/src/router.ts"
},
{
"method": "GET",
"path": "/",
"source_path": "apps/TopoloOne/apps/api/src/router.ts"
},
{
"method": "GET",
"path": "/api",
"source_path": "apps/TopoloOne/apps/api/src/router.ts"
},
{
"method": "GET",
"path": "/api/dashboard",
"source_path": "apps/TopoloOne/apps/api/src/router.ts"
},
{
"method": "GET",
"path": "/api/apps",
"source_path": "apps/TopoloOne/apps/api/src/router.ts"
},
{
"method": "DELETE",
"path": "/api/workspaces/:workspaceId",
"source_path": "apps/TopoloOne/apps/api/src/router.ts"
},
{
"method": "GET",
"path": "/api/organizations/:organizationId/data",
"source_path": "apps/TopoloOne/apps/api/src/router.ts"
},
{
"method": "DELETE",
"path": "/api/organizations/:organizationId/data",
"source_path": "apps/TopoloOne/apps/api/src/router.ts"
},
{
"method": "GET",
"path": "/api/widget",
"source_path": "apps/TopoloOne/apps/api/src/router.ts"
},
{
"method": "POST",
"path": "/api/widgets",
"source_path": "apps/TopoloOne/apps/api/src/router.ts"
},
{
"method": "POST",
"path": "/api/widget-snapshots",
"source_path": "apps/TopoloOne/apps/api/src/router.ts"
},
{
"method": "POST",
"path": "/api/apps",
"source_path": "apps/TopoloOne/apps/api/src/router.ts"
},
{
"method": "DELETE",
"path": "/api/apps/:id",
"source_path": "apps/TopoloOne/apps/api/src/router.ts"
},
{
"method": "POST",
"path": "/api/cart/quote",
"source_path": "apps/TopoloOne/apps/api/src/router.ts"
},
{
"method": "POST",
"path": "/api/cart/checkout",
"source_path": "apps/TopoloOne/apps/api/src/router.ts"
},
{
"method": "POST",
"path": "/api/billing/organizations/:orgId/preview",
"source_path": "apps/TopoloOne/apps/api/src/router.ts"
},
{
"method": "POST",
"path": "/api/logout",
"source_path": "apps/TopoloOne/apps/api/src/router.ts"
},
{
"method": "POST",
"path": "/api/push/subscriptions",
"source_path": "apps/TopoloOne/apps/api/src/router.ts"
},
{
"method": "DELETE",
"path": "/api/push/subscriptions",
"source_path": "apps/TopoloOne/apps/api/src/router.ts"
},
{
"method": "GET",
"path": "/api/push/vapid-key",
"source_path": "apps/TopoloOne/apps/api/src/router.ts"
},
{
"method": "GET",
"path": "/api/launch/:appId",
"source_path": "apps/TopoloOne/apps/api/src/router.ts"
},
{
"method": "POST",
"path": "/api/launch/secure-token",
"source_path": "apps/TopoloOne/apps/api/src/router.ts"
},
{
"method": "POST",
"path": "/api/launch/:appId",
"source_path": "apps/TopoloOne/apps/api/src/router.ts"
},
{
"method": "POST",
"path": "/api/track",
"source_path": "apps/TopoloOne/apps/api/src/router.ts"
},
{
"method": "GET",
"path": "/api/admin/status",
"source_path": "apps/TopoloOne/apps/api/src/router.ts"
},
{
"method": "PATCH",
"path": "/api/apps/:id",
"source_path": "apps/TopoloOne/apps/api/src/router.ts"
},
{
"method": "GET",
"path": "/api/admin/apps",
"source_path": "apps/TopoloOne/apps/api/src/router.ts"
},
{
"method": "GET",
"path": "/api/admin/categories",
"source_path": "apps/TopoloOne/apps/api/src/router.ts"
},
{
"method": "GET",
"path": "/test/bindings",
"source_path": "apps/TopoloOne/apps/api/src/router.ts"
},
{
"method": "ALL",
"path": "*",
"source_path": "apps/TopoloOne/apps/api/src/router.ts"
}
],
"ui_routes": [
{
"path": "/dashboard",
"source_path": "apps/TopoloOne/apps/web/src/App.tsx"
},
{
"path": "/apps",
"source_path": "apps/TopoloOne/apps/web/src/App.tsx"
},
{
"path": "/apps/:slug",
"source_path": "apps/TopoloOne/apps/web/src/App.tsx"
},
{
"path": "/cart",
"source_path": "apps/TopoloOne/apps/web/src/App.tsx"
},
{
"path": "/actions",
"source_path": "apps/TopoloOne/apps/web/src/App.tsx"
},
{
"path": "/getting-started",
"source_path": "apps/TopoloOne/apps/web/src/App.tsx"
},
{
"path": "/settings/*",
"source_path": "apps/TopoloOne/apps/web/src/App.tsx"
},
{
"path": "/onboarding",
"source_path": "apps/TopoloOne/apps/web/src/App.tsx"
},
{
"path": "/error/:code?",
"source_path": "apps/TopoloOne/apps/web/src/App.tsx"
}
],
"test_cases": [],
"database_tables": []
},
"documentation": {
"declared_paths": [
"applications/one",
"internal/apps/topolo-one",
"internal/platform/application-entry-and-admission"
],
"present_paths": [
"applications/one",
"internal/apps/topolo-one",
"internal/platform/application-entry-and-admission"
],
"missing_paths": [],
"human_reference": "/systems/topolo-one",
"machine_reference": "/machine/systems/topolo-one.json",
"action_examples": 24,
"action_schemas": 24
},
"source_findings": []
}