Skip to main content
Start with the exact command, exit status, and effective context. A successful login establishes an identity; the requested resource still needs to be accessible to that identity. CLI command syntax in these docs targets version 0.6.134. For supported installation environments, see installation.

Establish what failed

Run these reads using the same profile and environment as the failing command:
context show reports effective local settings; it does not prove the API is reachable. auth whoami makes an authenticated API request. After selecting an authorized organization from the response, discover its projects:
Use the discovered organization and project explicitly when reproducing the resource read. Projects and profiles explains setting precedence. A shell, scheduled process, or managed workspace can use a different profile, credential, or environment from your interactive terminal.

Diagnose by symptom

These are diagnostic starting points, not a universal error schema for every deployed endpoint. Preserve the actual response privately when further diagnosis is needed.

A user can read, but an Agent cannot

Compare the successful and failing environments, rather than assuming they share credentials:
  1. Verify the API base URL and effective organization/project IDs.
  2. Inspect the identity using auth whoami in each environment. A managed workspace may use workspace delegation instead of the user’s interactive credential.
  3. Confirm that the failing identity can discover the required organization/project and perform a small read of the intended resource.
  4. Ask the administrator to check that identity’s access to the named operation and resource. Use the deployment’s actual permission vocabulary; there is no documented universal permission flag that fixes every endpoint.
Reading a project does not establish permission to upload files, start a job, invoke an Agent, or change a database row. Request the access needed for the actual workflow. Bundled local Agent skills teach commands; installing them does not grant platform permissions.

Recover an uncertain write or run

A timeout or interrupted terminal can occur after the service accepted a request. Capture a returned operation/resource ID if one is available. Then inspect the resource or execution status using the appropriate read commands in execution workflows. For a create without a returned ID, inspect the relevant collection and reconcile candidate resources using your intended attributes and context before deciding whether to submit again. A second create or run may duplicate work. A failure in output projection with --query can also happen after a write succeeded. Removing the projection and reading current state helps establish what happened. An expired polling timeout is a limit on how long your client waited; it is not evidence that the remote operation was canceled. Inspect its current status before starting another run.

Share a useful diagnostic report

Include the client version, command path and option names, operation and approximate time, exit status, HTTP status if present, and the expected versus observed behavior. Include a request/correlation identifier only when the service supplies one; the client does not guarantee a common field across all APIs. Redact access tokens, SAS query strings, credentials, private paths, resource contents, and sensitive error bodies before sharing logs. For reproducible scripting, see scripting and output. Python callers should catch the documented SDK exceptions rather than assume CLI exit codes apply to Python.