Topolo Docs Topolo Platform
Open workspace

Get workspace bootstrap

Read the authenticated actor and organization context used by the Contracts application shell.

Read the authenticated actor and organization context used by the Contracts application shell.

Access

Authenticate using the supported Contracts flow and intended organization. The declared action permission is app_topolo_contracts.workspace:read. Bootstrap returns verified actor/organization before workspace selection and grants no workspace access.

Steps

  1. Authenticate through the supported Contracts identity flow using your intended organization.
  2. Read user and organization from bootstrap; verify that the returned actor/context is the one intended.
  3. Discover/select a permitted workspace separately before accessing reviews, policies or documents.

Identifiers

  • The returned actor/organization come from verified auth, not from example ids or a caller-supplied workspaceId field.

Request

GET /api/bootstrap

Action: app_topolo_contracts.workspace.bootstrap.

Use the empty object {}. Resource/workspace selection belongs outside the action input; do not add undeclared fields.

Response and effects

  • Returns verified auth user/organization before the worker’s organization/workspace/storage/protection gates for the remaining application routes. It does not provision or grant a workspace.
  • The retained action declares workspace:read, but the reviewed bootstrap handler itself returns before requireWorkspace. A bootstrap response is not proof of any workspace permission or document access.
  • No credentials, tokens or secrets are needed in this guide’s illustrative response; actual identity fields are owned by Auth and can vary.

Examples

Example request and response

Request input:

{}

Illustrated response:

{
  "user": {
    "id": "user_documentation_fixture",
    "name": "Documentation fixture actor"
  },
  "organization": {
    "id": "org_documentation_fixture",
    "name": "Documentation fixture organization"
  }
}

HTTP 200 illustration. Hypothetical authorized operation only; inspect the action-specific fields and boundaries below.

Authentication refusal

If: The authentication credential is absent or invalid; verified authentication therefore does not succeed.

Request input:

{}

The worker delegates this case to the shared authError response. The retained catalogue declares HTTP 401/authentication_required; its exact externally returned body is not established by the reviewed handler.

Declared code excerpt, not a captured response body:

{
  "code": "authentication_required"
}

Refusal or dependency failure

If: Runtime application identity resolution throws before authentication or bootstrap handling. The worker returns this code and a message; no successful identity context is established.

Request input:

{}

Source error-code excerpt (HTTP 503):

{
  "error": "app_identity_unavailable"
}

The existing application identity owner must restore resolution before normal operation.

Same organization, another authorized actor

Request input:

{}

Illustrated response:

{
  "user": {
    "id": "user_other_documentation_fixture"
  },
  "organization": {
    "id": "org_documentation_fixture",
    "name": "Documentation fixture organization"
  }
}

HTTP 200 illustration. Actor identity can differ while organization is unchanged; no workspace grant is asserted.

Verify the result

  • Compare the actor and organization with the intended signed-in context, then use an explicitly authorized workspace operation for separate access verification.

Recovery

  • 401 authentication_required: Complete the supported authentication flow; the exact Auth error body is not established here.
  • 503 app_identity_unavailable: The existing application identity owner must restore resolution before normal operation.
  • 403 permission_denied: Outer authentication/authorization contract: Grant the credential permission workspace:read and the required resource binding. Reconcile uncertain earlier write effects before any retry.
  • 429 rate_limited: Outer authentication/authorization contract: Wait for Retry-After when present, then retry without parallel duplicate calls. Reconcile uncertain earlier write effects before any retry.

Read-only. Reauthenticate or resolve application identity through its owner; do not infer permission grants or create workspaces from bootstrap data.

Source and example limits — 21 October 2026: based on reviewed Contracts source 4bfd49a; current serving association is unverified. All requests, responses, approvals and document specimens shown are fictional and unrun. Offline schema/ZIP/XML checks do not prove application acceptance, legal completeness, provider outcomes or human approval.