Topolo Docs Topolo Platform
Open workspace

Get Inventory identity context

Return the verified Auth user and optional organization projection. This does not list, create or select Inventory workspaces; canonical workspace identity and discovery remain platform-owned.

Outcome

Return the verified Auth user and optional organization projection. This does not list, create or select Inventory workspaces; canonical workspace identity and discovery remain platform-owned.

Before you start

  • Verify the authenticated identity, exact environment and pinned approved organization context before preparing an action.
  • The published application permission is workspace:read. The credential context supplies identity and organization; bootstrap does not resolve a workspace.

Discover the target

topolo whoami --json
topolo actions get app_topolo_inventory.workspace.bootstrap --detail --json

Request

GET /api/bootstrap

Save action input as payload.json. Inspect the plan for the exact path, query and body.

Inspect and test this action in the signed action console, then perform the verification below.

Input fields

Supply an empty input object; credential and resource context are separate.

View the complete input schema in the action console. The same schema is available through CLI and MCP action discovery.

Effects

  • Returns the verified identity projections without changing Inventory data or resolving an app workspace.

Interpret the response

Use response path $.user.id for user. An empty list does not discover a target.

Check user.id and organization.id against the intended signed identity and organization. Use topolo workspaces list topolo-inventory and caller-specific policy for canonical workspace selection.

The success schema was checked against captured handler responses. Delegated Auth profile and canonical widget context fields can vary; exact Inventory projections and all six raw SQL export stores are source-reviewed. Error examples retain their actual refusal shapes.

View the complete success schema in the action console. The worked examples below retain complete captured responses; action discovery supplies the exact schema.

Worked examples

Captured exported Worker responses use both real local SQLite D1 databases with all six committed migrations, synthetic Auth/workspace grants and simulated Notify/Nexus/archive transport. They prove local handler shapes and scoped behavior, not live authorization, notification delivery, metering acceptance or environment deployment. Large 100-row list/capped-dashboard captures are retained in local evidence; committed tests verify those limits while worked guides use smaller complete responses. Refused examples demonstrate boundaries and must not be executed as successful workflows.

Successful request

Actual exported Worker response with both local SQLite D1 databases and all committed migrations; synthetic Auth/grants and simulated Notify/Nexus/archive transport. No live delivery, billing or environment deployment proof. Captured scenario: workspace.bootstrap.

Input · payload.json:

{}

CLI:

topolo actions validate app_topolo_inventory.workspace.bootstrap --data @payload.json --json
topolo actions plan app_topolo_inventory.workspace.bootstrap --data @payload.json --json
topolo actions call app_topolo_inventory.workspace.bootstrap --data @payload.json --json

MCP tool and arguments:

{
  "tool": "topolo_read_action",
  "arguments": {
    "actionId": "app_topolo_inventory.workspace.bootstrap",
    "input": {}
  }
}

Captured local response · HTTP 200:

{
  "user": {
    "id": "usr_inventory_fixture",
    "email": "operator@example.test",
    "orgId": "org_inventory_fixture",
    "role": "member",
    "permissions": [
      "*"
    ],
    "organization": {
      "id": "org_inventory_fixture",
      "slug": "inventory-fixture",
      "name": "Synthetic fixture"
    },
    "orgSlug": "inventory-fixture",
    "activeContextType": "organization",
    "activeContextId": "org_inventory_fixture"
  },
  "organization": {
    "id": "org_inventory_fixture",
    "slug": "inventory-fixture",
    "name": "Synthetic fixture"
  }
}

HTTP 200. Check user.id and organization.id against the intended signed identity and organization. Use topolo workspaces list topolo-inventory and caller-specific policy for canonical workspace selection.

Verify the result

  • Check user.id and organization.id against the intended signed identity and organization.
  • Use topolo workspaces list topolo-inventory and caller-specific policy for canonical workspace selection.

Errors and recovery

  • invalid_action_input (HTTP 400): Correct only the exact fields reported by the published schema validator. An invalid input can be refused before its handler.
  • action_permission_required (HTTP 403): Stop when the verified credential lacks the published action permission. Resource identifiers and organization ownership do not grant that permission.

Auth, action-input validation and platform resource resolution can refuse a request before its handler. Retain the exact error, request id and context; requesting another context is not a legitimate way to bypass a refusal.

Recovery boundary

The read does not change local inventory records. No local rollback is needed; do not perform a mutation merely to reverse a read.

  • List Inventory items: List all workspace items, including archived records, newest update first. Every quantityOnHand sums all signed ledger deltas across locations and review states; there is no pagination.

Evidence

Captured exported Worker responses use both real local SQLite D1 databases with all six committed migrations, synthetic Auth/workspace grants and simulated Notify/Nexus/archive transport. They prove local handler shapes and scoped behavior, not live authorization, notification delivery, metering acceptance or environment deployment. Large 100-row list/capped-dashboard captures are retained in local evidence; committed tests verify those limits while worked guides use smaller complete responses. Capture digests and test scenarios are retained in the source fixture records.