Lightbulb developers · Generated from source

Complete Lightbulb Python SDK reference

Browse the exact public and candidate surfaces without relying on JavaScript. The candidate remains unreleased and default-deny.

Machine-readable JSON · Complete Markdown · Guides

Published PyPI · v0.25.6

Published package · governed capabilities

Exact Git revision: 82557dac210ddeef5592987684348ce1614d74c5
Source-tree SHA-256: 2804d203937453ddfec692221bebaffa16739824b7b151c33092e828ffadcbe1

  • 482 sync-client members and 488 async-client members (472 awaitable)
  • 575 typed modules, 9966 callable/type symbols, and 6413 class/resource methods
  • 15854 declared public exports (6176 root package)
  • 488 public MCP tools across 1 namespaces
MCP profiles (source projections)
  • backbone: 142 public tools
  • company-operator: 199 public tools
  • company-owner: 37 public tools
  • discovery: 4 public tools
  • progressive-discovery: 4 public tools
  • adaptive: 4 public tools
  • default: 488 public tools

Configured hosts determine actual availability.

Documentation coverage: full source docstrings: sdk.syncMethods, sdk.asyncMethods, sdk.modules, mcp.tools. Public declarations and owned inherited members are indexed. External inheritance, runtime schemas and privacy exclusions have explicit coverage limits in the complete JSON download.

Synchronous client

__init__

sync client declaration
def __init__(base_url: str, auth: AuthStrategy, *, enforce_https: bool=True, connect_timeout: float=_CONNECT_TIMEOUT, read_timeout: float=_READ_TIMEOUT, auth_refresh: 'Callable[[], AuthStrategy] | None'=None, outcome_recorder: Any=None) -> None

Source: lightbulb/client.py:2627

acknowledge_customer_recovery_task

sync client declaration
def acknowledge_customer_recovery_task(project_id, task_id)

Acknowledge as the assigned owner; acknowledgment does not resolve the effect.

Source: lightbulb/client.py:9636

activate_marketplace_action

sync client declaration
def activate_marketplace_action(installation_id: str, *, idempotency_key: str) -> Dict[str, Any]

Activate an installed action; this never approves execution policy.

Source: lightbulb/client.py:10882

activate_operator_policy

sync client declaration
def activate_operator_policy(policy_id: str, *, company_id: str | None=None) -> Dict[str, Any]

Activate a drafted policy. Only the named human approver may call this.

Full source documentation
Activate a drafted policy.  Only the named human approver may call this.

Activation mints exactly one amount-ceilinged approval preference per
auto-acceptable ceiling, owned by the approver, and returns their ids.  Ceilings
that require a second approver, and human-only ones, mint nothing: those
transitions always wait in the approver's inbox.

Source: lightbulb/client.py:9110

active_company_id

sync client declaration
@property
def active_company_id() -> str | None

The currently selected company context (needed for write operations).

Source: lightbulb/client.py:2730

active_company_id

sync client declaration
@active_company_id.setter
def active_company_id(value: str | None) -> None

Source: lightbulb/client.py:2735

add_project_coding_harness

sync client declaration
def add_project_coding_harness(project_id: str, harness: str, *, make_primary: bool=False) -> Dict[str, Any]

Attach another harness without removing any existing project harness.

Source: lightbulb/client.py:2992

admit_project_learning_run

sync client declaration
def admit_project_learning_run(project_id: str, learning_run_id: str, *, runtime: str, capacity_admission: Mapping[str, Any], operator_approved: bool=False, confirm_admission: bool=False, idempotency_key: str | None=None) -> Dict[str, Any]

Reserve budget and admit a queued run; this still executes no training.

Source: lightbulb/client.py:4318

advance_economic_spine_run

sync client declaration
def advance_economic_spine_run(project_id: str, run_ref: str, request: EconomicSpineRunTransition | Mapping[str, Any], *, company_id: str | None=None) -> EconomicSpineRun

Source: lightbulb/client.py:6664

advance_period_reconciliation_stage

sync client declaration
def advance_period_reconciliation_stage(project_id: str, run_ref: str, request: PeriodReconciliationStageRequest | Mapping[str, Any], *, company_id: str | None=None) -> PeriodReconciliationRunReceipt

Source: lightbulb/client.py:6505

advance_service_case_resolution

sync client declaration
def advance_service_case_resolution(project_id: str, run_ref: str, *, company_id: str | None=None) -> ServiceCaseResolutionRun

Ask Spring to consume at most one server-owned Service phase.

Source: lightbulb/client.py:6760

apply_aoc_tick

sync client declaration
def apply_aoc_tick(tick_id: str, body: Dict[str, Any] | None=None) -> Dict[str, Any]

Apply a previously-computed AutoCompany tick (committing its decisions).

Source: lightbulb/client.py:12190

apply_code_workspace_proposal

sync client declaration
def apply_code_workspace_proposal(workspace_id: str, proposal_id: str) -> Dict[str, Any]

Apply a previously-submitted proposal to the workspace files.

Source: lightbulb/client.py:11618

approve_procurement_matched_close

sync client declaration
def approve_procurement_matched_close(project_id: str, run_ref: str, request: ProcurementMatchedClose | Mapping[str, Any], *, company_id: str | None=None) -> ProcurementCommandReceipt

Source: lightbulb/client.py:13115

approve_procurement_spend_commitment

sync client declaration
def approve_procurement_spend_commitment(project_id: str, run_ref: str, request: ProcurementApprovalBinding | Mapping[str, Any], *, company_id: str | None=None) -> ProcurementCommandReceipt

Source: lightbulb/client.py:13018

approve_runtime_domain_action

sync client declaration
def approve_runtime_domain_action(runtime_action_id: str, *, project_id: str, company_id: str | None=None) -> Dict[str, Any]

Approve a reviewed action and return its governed recursive reference.

Full source documentation
Approve a reviewed action and return its governed recursive reference.

Approval does not activate ordinary domain dispatch. A response with
``recursive_spawnable=true`` may be placed in an explicit bounded
``RecursiveAgentPolicy.allowed_agent_ids`` using ``recursive_agent_id``.

Source: lightbulb/client.py:10543

approve_task

sync client declaration
def approve_task(task_id: str, *, comments: str='') -> Dict[str, Any]

Approve a pending HITL task.

Source: lightbulb/client.py:8832

approve_voice_action

sync client declaration
def approve_voice_action(execution_id: str, approval_task_id: str, *, comments: str='') -> Dict[str, Any]

Approve a pending in-call action (e.g. transfer, wire info, commit booking).

Source: lightbulb/client.py:11233

archive_marketplace_action

sync client declaration
def archive_marketplace_action(listing_id: str, *, idempotency_key: str, reason: str='') -> Dict[str, Any]

Archive a publisher-owned listing with a replay-safe mutation.

Source: lightbulb/client.py:10793

attach_contract_to_cash_cash_collected

sync client declaration
def attach_contract_to_cash_cash_collected(project_id: str, run_ref: str, request: ContractToCashRunRecordBinding | Mapping[str, Any], *, company_id: str | None=None) -> ContractToCashRun

Source: lightbulb/client.py:6364

attach_contract_to_cash_invoice_issued

sync client declaration
def attach_contract_to_cash_invoice_issued(project_id: str, run_ref: str, request: ContractToCashRunRecordBinding | Mapping[str, Any], *, company_id: str | None=None) -> ContractToCashRun

Source: lightbulb/client.py:6348

author_agentic_workflow

sync client declaration
def author_agentic_workflow(prompt: str, *, name: str | None=None, workflow_type: str | None=None, preferred_domains: List[str] | None=None, include_approval_gates: bool=True, publish: bool=True, company_id: str | None=None, site_project_id: str | None=None, definition: Mapping[str, Any] | None=None) -> Dict[str, Any]

Compile once, then publish its exact executable projection through governance.

Full source documentation
Compile once, then publish its exact executable projection through governance.

Passing ``definition`` makes its ordered steps, triggers, and bounded
defaults authoritative; they are never serialized back to prose or
recompiled. Rich source metadata remains in the returned client artifact
because the current server schema persists only that executable
projection. With ``publish=False`` the method returns a local draft and
performs no server-side authoring write.

Source: lightbulb/client.py:8643

author_workflow_definition

sync client declaration
def author_workflow_definition(definition: Mapping[str, Any], *, prompt: str='', name: str | None=None, workflow_type: str | None=None, site_project_id: str | None=None, category: str | None=None, change_notes: str | None=None, company_id: str | None=None) -> Dict[str, Any]

Publish one exact executable workflow projection through governance.

Full source documentation
Publish one exact executable workflow projection through governance.

The server creates the definition/version, validates it as the gate of
record, and publishes only a valid version. A validation rejection is a
useful 422 result, so this method returns that structured body instead of
converting it to an exception. JWT calls derive authority from the
authenticated principal; ApiKeyAuth calls use the internal endpoint and
its filter-validated tenant/company/user headers.

Source: lightbulb/client.py:8495

author_workflow_trigger

sync client declaration
def author_workflow_trigger(workflow_definition_id: str, *, trigger_type: str='schedule', schedule: str | None=None, event_type: str | None=None, event_filter: Mapping[str, Any] | None=None, name: str | None=None, description: str | None=None, site_project_id: str | None=None, configuration: Mapping[str, Any] | None=None, enabled: bool=False, company_id: str | None=None) -> Dict[str, Any]

Create a principal-scoped schedule or event trigger for a workflow.

Source: lightbulb/client.py:8550

backbone_execute

sync client declaration
def backbone_execute(objective: str, *, inputs: Dict[str, Any] | None=None) -> Dict[str, Any]

Execute a task through the backbone agent (research, analysis, code generation).

Source: lightbulb/client.py:5345

bind_procurement_xero_purchase_order_readback

sync client declaration
def bind_procurement_xero_purchase_order_readback(project_id: str, run_ref: str, request: ProcurementPurchaseOrderJournalBinding | Mapping[str, Any], *, company_id: str | None=None) -> ProcurementCommandReceipt

Bind opaque governed Xero write/readback journals; perform no provider call.

Source: lightbulb/client.py:13037

bind_project_mission_action

sync client declaration
def bind_project_mission_action(project_id: str, mission_run_receipt_id: Any, action_event_id: Any, *, confirm_bind: bool=False, binding_id: Any=None, note: Any=None, idempotency_key: str | None=None) -> Dict[str, Any]

Bind a later event to a mission; this proves timing and scope only.

Source: lightbulb/client.py:4142

build_durable_project_runtime

sync client declaration
def build_durable_project_runtime(project: Any, *, registry: Any=None, checkpoint_store: Any=None) -> Any

Build a durable runtime, using hosted checkpoints when possible.

Source: lightbulb/client.py:5561

build_dynamic_workflow_runtime

sync client declaration
def build_dynamic_workflow_runtime(*, project_ref: str, hosted_project_id: str | None=None, hosted_company_id: str | None=None, checkpoint_store: Any=None) -> Any

Build the local planner/builder/evaluator state-machine runtime.

Full source documentation
Build the local planner/builder/evaluator state-machine runtime.

Local harnesses use revisioned JSON state. Hosted dynamic workflows
require the dedicated server command/query authority; the generic SDK
project-checkpoint endpoint accepts caller-authored JSON and therefore
must never be presented as authoritative workflow control.

Source: lightbulb/client.py:7337

build_project_runtime

sync client declaration
def build_project_runtime(project: Any, *, registry: Any=None) -> Any

Build a runtime using authenticated reads and safe connector previews.

Source: lightbulb/client.py:5542

cancel_code_workspace_run

sync client declaration
def cancel_code_workspace_run(workspace_id: str, run_id: str) -> Dict[str, Any]

Cancel an in-flight coding run.

Source: lightbulb/client.py:11670

cancel_company_blueprint_certification

sync client declaration
def cancel_company_blueprint_certification(project_id: str, candidate_id: str, *, company_id: str | None=None) -> CompanyBlueprintCertificationStatus

Source: lightbulb/client.py:5775

cancel_contract_to_cash_before_invoice

sync client declaration
def cancel_contract_to_cash_before_invoice(project_id: str, run_ref: str, request: ContractToCashRunCancellation | Mapping[str, Any], *, company_id: str | None=None) -> ContractToCashRun

Source: lightbulb/client.py:6380

cancel_economic_spine_run

sync client declaration
def cancel_economic_spine_run(project_id: str, run_ref: str, request: EconomicSpineRunTransition | Mapping[str, Any], *, company_id: str | None=None) -> EconomicSpineRun

Source: lightbulb/client.py:6692

cancel_governed_communication_run

sync client declaration
def cancel_governed_communication_run(project_id: str, run_ref: str, *, company_id: str | None=None) -> GovernedCommunicationRun

Fence a cancellable communication run; execution remains worker-owned.

Source: lightbulb/client.py:6879

cancel_period_reconciliation_run

sync client declaration
def cancel_period_reconciliation_run(project_id: str, run_ref: str, request: PeriodReconciliationTerminalRequest | Mapping[str, Any], *, company_id: str | None=None) -> PeriodReconciliationRunReceipt

Source: lightbulb/client.py:6564

cancel_procurement_matched_close_run

sync client declaration
def cancel_procurement_matched_close_run(project_id: str, run_ref: str, request: ProcurementCancellation | Mapping[str, Any], *, company_id: str | None=None) -> ProcurementCommandReceipt

Source: lightbulb/client.py:13188

cancel_recursive_agent_execution

sync client declaration
def cancel_recursive_agent_execution(execution_id: str) -> Dict[str, Any]

Cancel one exact user-owned recursive execution tree.

Source: lightbulb/client.py:8470

cancel_service_case_resolution

sync client declaration
def cancel_service_case_resolution(project_id: str, run_ref: str, *, reason: str, company_id: str | None=None) -> ServiceCaseResolutionRun

Cancel an undecided Service run through its canonical ApprovalTask.

Source: lightbulb/client.py:6783

cancel_workflow_instance

sync client declaration
def cancel_workflow_instance(trace_id: str, *, company_id: str | None=None) -> Dict[str, Any]

Cancel a scoped workflow run, including one waiting for approval.

Source: lightbulb/client.py:8428

claim_project_coding_handoff

sync client declaration
def claim_project_coding_handoff(project_id: str, *, harness: str, handoff_payload_id: str, host_session_ref: str | None=None) -> Dict[str, Any]

Record routing of an approved handoff to the user's selected harness.

Source: lightbulb/client.py:3068

claim_sdk_project_checkpoint

sync client declaration
def claim_sdk_project_checkpoint(project_id: str, *, worker_ref: str, ready_at: str, lease_seconds: int=60, company_id: str | None=None, run_ref: str | None=None) -> Dict[str, Any] | None

Source: lightbulb/client.py:7536

claude_session_action

sync client declaration
def claude_session_action(workspace_id: str, session_id: str, action: str, body: Dict[str, Any] | None=None) -> Dict[str, Any]

Perform an action on a Claude SDK session.

Full source documentation
Perform an action on a Claude SDK session.

action: one of rename, tag, fork, delete, interrupt, mcp/reconnect,
        mcp/toggle, rewind, tasks/stop, compact

Source: lightbulb/client.py:11906

close_company

sync client declaration
def close_company(*, approval_task_id: str, resolution_sha256: str, company_id: str | None=None) -> Dict[str, Any]

Move the company WINDING_DOWN -> CLOSED and revoke everything it was connected to.

Full source documentation
Move the company WINDING_DOWN -> CLOSED and revoke everything it was connected to.

Same human-decision evidence as :meth:`wind_down_company`, for the
``wind_down_chain.close_accounts`` transition.  Closing revokes every OAuth
connection, disables every tenant connector and project connector binding, and
stops every open workflow checkpoint.  After it, every tool answers 410
``company_closed``.  Returns the same lifecycle receipt shape.

Source: lightbulb/client.py:9224

code_workspace_add_collaborator

sync client declaration
def code_workspace_add_collaborator(workspace_id: str, *, email: str | None=None, user_id: str | None=None, role: str='viewer') -> Dict[str, Any]

Add a collaborator to a code workspace (role: viewer | editor | admin).

Source: lightbulb/client.py:11396

code_workspace_add_note

sync client declaration
def code_workspace_add_note(workspace_id: str, content: str) -> Dict[str, Any]

Append a workspace note (visible to collaborators).

Source: lightbulb/client.py:11509

code_workspace_approve_access_request

sync client declaration
def code_workspace_approve_access_request(workspace_id: str, request_id: str) -> Dict[str, Any]

Approve a pending workspace access request.

Source: lightbulb/client.py:11483

code_workspace_chat

sync client declaration
def code_workspace_chat(workspace_id: str, message: str, **kwargs) -> Dict[str, Any]

Send a chat message to a code workspace.

Source: lightbulb/client.py:5303

code_workspace_clear_policy

sync client declaration
def code_workspace_clear_policy(workspace_id: str, request_family: str) -> Dict[str, Any]

Clear cached policy decisions for a request family.

Source: lightbulb/client.py:11849

code_workspace_collaboration

sync client declaration
def code_workspace_collaboration(workspace_id: str) -> Dict[str, Any]

Get collaboration info (members, share links, pending requests).

Source: lightbulb/client.py:11386

code_workspace_create_pull_request

sync client declaration
def code_workspace_create_pull_request(workspace_id: str, body: Dict[str, Any] | None=None) -> Dict[str, Any]

Open a GitHub pull request from the workspace branch.

Source: lightbulb/client.py:11644

code_workspace_deny_access_request

sync client declaration
def code_workspace_deny_access_request(workspace_id: str, request_id: str) -> Dict[str, Any]

Deny a pending workspace access request.

Source: lightbulb/client.py:11496

code_workspace_evals

sync client declaration
def code_workspace_evals(workspace_id: str) -> Dict[str, Any]

Get accumulated eval rollups for a workspace's runs.

Source: lightbulb/client.py:11826

code_workspace_invoke_tool

sync client declaration
def code_workspace_invoke_tool(workspace_id: str, tool_key: str, arguments: Dict[str, Any] | None=None) -> Dict[str, Any]

Invoke a workspace-scoped tool (read/write files, run commands, git ops).

Full source documentation
Invoke a workspace-scoped tool (read/write files, run commands, git ops).

Tool keys are registered in the workspace's runtime catalog. Common keys:
    - ``files.read`` — read a file by path
    - ``files.write`` — write a file
    - ``files.list`` — list directory contents
    - ``shell.run`` — execute a shell command
    - ``git.status`` — show git working-tree state
    - ``git.diff`` — produce a diff
    - ``git.commit`` — create a commit
Use :meth:`code_workspace_runtime_catalog` to discover what's available
for a specific workspace.

Source: lightbulb/client.py:11685

code_workspace_policy_replay

sync client declaration
def code_workspace_policy_replay(workspace_id: str, **filters: Any) -> Dict[str, Any]

Replay a policy decision over historical runs (debug helper).

Source: lightbulb/client.py:11836

code_workspace_preview

sync client declaration
def code_workspace_preview(workspace_id: str) -> Dict[str, Any]

Get the current preview state (URL, status, last build).

Source: lightbulb/client.py:11759

code_workspace_preview_proxy

sync client declaration
def code_workspace_preview_proxy(workspace_id: str, path: str='', *, method: str='GET', body: Any=None, headers: Dict[str, str] | None=None) -> httpx.Response

Proxy an HTTP call through the workspace preview.

Full source documentation
Proxy an HTTP call through the workspace preview.

Returns the raw httpx.Response so callers can inspect status/headers/body.
Use this for headless e2e tests against in-progress code.

Security: caller-supplied ``headers`` are merged BEFORE auth headers, so
a caller cannot overwrite ``Authorization`` / ``X-Tenant-Id`` /
``X-Internal-API-Key``. ``method`` and ``path`` are validated.

Source: lightbulb/client.py:11780

code_workspace_preview_start

sync client declaration
def code_workspace_preview_start(workspace_id: str, body: Dict[str, Any] | None=None) -> Dict[str, Any]

Start the workspace preview server (renders the in-progress code).

Source: lightbulb/client.py:11744

code_workspace_preview_stop

sync client declaration
def code_workspace_preview_stop(workspace_id: str) -> Dict[str, Any]

Stop the workspace preview server.

Source: lightbulb/client.py:11769

code_workspace_promote_policy

sync client declaration
def code_workspace_promote_policy(workspace_id: str, body: Dict[str, Any]) -> Dict[str, Any]

Promote workspace-scoped policy to a higher scope (company/tenant).

Source: lightbulb/client.py:11862

code_workspace_register_runtime_tools

sync client declaration
def code_workspace_register_runtime_tools(workspace_id: str, body: Dict[str, Any]) -> Dict[str, Any]

Register or update workspace runtime tools.

Source: lightbulb/client.py:11727

code_workspace_remove_collaborator

sync client declaration
def code_workspace_remove_collaborator(workspace_id: str, collaborator_id: str) -> None

Revoke a collaborator's access.

Source: lightbulb/client.py:11432

code_workspace_run_review

sync client declaration
def code_workspace_run_review(workspace_id: str, run_id: str, *, verdict: str, feedback: str='') -> Dict[str, Any]

Submit a human review verdict (accept | reject | request_changes) for a run.

Source: lightbulb/client.py:11563

code_workspace_run_review_apply

sync client declaration
def code_workspace_run_review_apply(workspace_id: str, run_id: str) -> Dict[str, Any]

Apply review-suggested changes to the workspace.

Source: lightbulb/client.py:11581

code_workspace_run_telemetry

sync client declaration
def code_workspace_run_telemetry(workspace_id: str, **filters: Any) -> Dict[str, Any]

Raw telemetry rows for a workspace's runs.

Source: lightbulb/client.py:11550

code_workspace_runs_insights

sync client declaration
def code_workspace_runs_insights(workspace_id: str) -> Dict[str, Any]

Aggregate run-quality insights for a workspace (cost, latency, success rate).

Source: lightbulb/client.py:11540

code_workspace_runtime_catalog

sync client declaration
def code_workspace_runtime_catalog(workspace_id: str) -> Dict[str, Any]

Read the workspace's runtime tool catalog (which tool keys are available).

Source: lightbulb/client.py:11717

code_workspace_update_collaborator

sync client declaration
def code_workspace_update_collaborator(workspace_id: str, collaborator_id: str, *, role: str) -> Dict[str, Any]

Change a collaborator's role.

Source: lightbulb/client.py:11419

codex_thread_action

sync client declaration
def codex_thread_action(workspace_id: str, thread_id: str, action: str, body: Dict[str, Any] | None=None) -> Dict[str, Any]

Perform a thread-level action (rename | archive | unarchive | compact | rollback).

Source: lightbulb/client.py:11966

codex_turn_action

sync client declaration
def codex_turn_action(workspace_id: str, thread_id: str, turn_id: str, action: str, body: Dict[str, Any] | None=None) -> Dict[str, Any]

Steer or interrupt a specific Codex turn (action: steer | interrupt).

Source: lightbulb/client.py:11990

compile_business_workflow

sync client declaration
def compile_business_workflow(objective: str, *, primitive_ids: List[str] | None=None, inputs: Dict[str, Any] | None=None, workflow_name: str | None=None, workflow_type: str | None=None, trigger_event: str | None=None, owner_role: str='workflow_owner', loop: bool=False, max_iterations: int | None=None, source: str='sdk') -> Dict[str, Any]

Compile a portable, governed workflow draft without network calls.

Source: lightbulb/client.py:7764

compose_business_workflow

sync client declaration
def compose_business_workflow(objective: str, *, primitive_ids: List[str] | None=None, inputs: Dict[str, Any] | None=None, loop: bool=False, max_iterations: int | None=None, workflow_name: str | None=None, workflow_type: str | None=None, trigger_event: str | None=None, owner_role: str='workflow_owner', publish: bool=False, source: str='sdk') -> Dict[str, Any]

Draft an Agent Builder workflow from business primitive blocks.

Source: lightbulb/client.py:7731

compute_aoc_tick

sync client declaration
def compute_aoc_tick(body: Dict[str, Any] | None=None) -> Dict[str, Any]

Run a one-shot AutoCompany tick computation.

Source: lightbulb/client.py:12179

configure_backbone_agent_surface

sync client declaration
def configure_backbone_agent_surface(backbone_surface: str, *, model_provider: str | None=None, model_id: str | None=None, provider_connection_id: str | None=None, scope: str='USER', company_id: str | None=None, request_overrides: Dict[str, Any] | None=None) -> Dict[str, Any]

Configure the preferred Backbone host surface, such as ChatGPT MCP.

Source: lightbulb/client.py:3351

configure_coding_agent_runtime

sync client declaration
def configure_coding_agent_runtime(runtime_backend: str, *, model_provider: str | None=None, model_id: str | None=None, provider_connection_id: str | None=None, use_codex_account: bool | None=None, scope: str='USER', company_id: str | None=None, request_overrides: Dict[str, Any] | None=None) -> Dict[str, Any]

Configure Codex, Claude Code, or another coding harness for this account.

Source: lightbulb/client.py:3310

context_archive

sync client declaration
def context_archive(context_ref: str, *, project_id: str | None=None, company_id: str | None=None) -> Dict[str, Any]

Archive a private Context Space and close its host bindings.

Source: lightbulb/client.py:10227

context_checkpoint

sync client declaration
def context_checkpoint(context_ref: str, *, binding_ref: str, base_revision: int, idempotency_key: str, events: Sequence[Mapping[str, Any]] | None=None, state: Mapping[str, Any] | None=None, project_id: str | None=None, company_id: str | None=None) -> Dict[str, Any]

Append host deltas and structured state with optimistic concurrency.

Source: lightbulb/client.py:10094

context_company_id

sync client declaration
@property
def context_company_id() -> str | None

Company used only by Context Broker calls; defaults to the active company.

Source: lightbulb/client.py:2741

context_company_id

sync client declaration
@context_company_id.setter
def context_company_id(value: str | None) -> None

Source: lightbulb/client.py:2750

context_delete

sync client declaration
def context_delete(context_ref: str, *, project_id: str | None=None, company_id: str | None=None) -> Dict[str, Any]

Request scoped physical deletion after the server's grace period.

Source: lightbulb/client.py:10250

context_export

sync client declaration
def context_export(context_ref: str, *, project_id: str | None=None, company_id: str | None=None, event_after_sequence: int=0, checkpoint_after_revision: int=0, limit: int=50, max_bytes: int=1048576) -> Dict[str, Any]

Export a bounded page from a private Context Space for user custody.

Source: lightbulb/client.py:10172

context_open

sync client declaration
def context_open(host: str, *, host_session_ref: str | None=None, model: str | None=None, context_ref: str | None=None, project_id: str | None=None, company_id: str | None=None, token_budget: int=_CONTEXT_TOKEN_BUDGET_DEFAULT, query: str | None=None, repository: Mapping[str, Any] | None=None) -> Dict[str, Any]

Open or resume a private cross-host context binding.

Full source documentation
Open or resume a private cross-host context binding.

Tenant and user scope come only from the authenticated SDK session. An
explicit ``company_id`` pins this request without changing selected
client state and remains subject to server-side access checks.
``context_ref`` and the returned binding reference are opaque public
handles, not caller-selectable identity fields.

Source: lightbulb/client.py:9909

context_pack

sync client declaration
def context_pack(context_ref: str, *, binding_ref: str | None=None, query: str | None=None, project_id: str | None=None, company_id: str | None=None, token_budget: int=_CONTEXT_TOKEN_BUDGET_DEFAULT, max_items: int=12) -> Dict[str, Any]

Build a bounded, prompt-aware working pack from durable context.

Source: lightbulb/client.py:9965

context_read

sync client declaration
def context_read(context_ref: str, refs: Sequence[str], *, project_id: str | None=None, company_id: str | None=None, token_budget: int=_CONTEXT_TOKEN_BUDGET_DEFAULT) -> Dict[str, Any]

Read exact opaque context items under a bounded token budget.

Source: lightbulb/client.py:10054

context_search

sync client declaration
def context_search(context_ref: str, query: str, *, project_id: str | None=None, company_id: str | None=None, token_budget: int=_CONTEXT_TOKEN_BUDGET_DEFAULT, max_items: int=10, kinds: Sequence[str] | None=None) -> Dict[str, Any]

Search a Context Space without placing its full corpus in-model.

Source: lightbulb/client.py:10004

context_status

sync client declaration
def context_status(context_ref: str, *, binding_ref: str | None=None, project_id: str | None=None, company_id: str | None=None) -> Dict[str, Any]

Inspect one Context Space or one exact host-session binding.

Source: lightbulb/client.py:10143

create_account_shell_customization_draft

sync client declaration
def create_account_shell_customization_draft(document: Mapping[str, Any], *, base_revision_id: str | None) -> Dict[str, Any]

Create an immutable draft from one exact base revision.

Source: lightbulb/client.py:10346

create_aoc_run

sync client declaration
def create_aoc_run(body: Dict[str, Any]) -> Dict[str, Any]

Create a new AutoCompany run.

Source: lightbulb/client.py:12032

create_aoc_task

sync client declaration
def create_aoc_task(body: Dict[str, Any]) -> Dict[str, Any]

Create an AutoCompany task.

Source: lightbulb/client.py:12085

create_approval_auto_accept

sync client declaration
def create_approval_auto_accept(task_id: str, body: Dict[str, Any] | None=None) -> Dict[str, Any]

Create an auto-accept rule keyed off the shape of an existing approval task.

Source: lightbulb/client.py:12540

create_code_workspace

sync client declaration
def create_code_workspace(*, source: str | None=None, repo_connection_id: str | None=None, branch: str | None=None, depth: int | None=None, label: str | None=None, metadata: Dict[str, Any] | None=None, company_id: str | None=None) -> Dict[str, Any]

Create a code workspace.

Source: lightbulb/client.py:5257

create_company

sync client declaration
def create_company(request: 'Dict[str, Any] | Any | None'=None, /, **fields: Any) -> Any

Create a company in the authenticated user's tenant through the guided flow.

Full source documentation
Create a company in the authenticated user's tenant through the guided flow.

Supported in Australia, Canada, the United States, the United Kingdom and New
Zealand: ``country`` accepts ``AU``, ``CA``, ``US``, ``UK`` (or ``GB``) and ``NZ``
and their names, and any other value is rejected before a request is made.
The tenant comes from the credential, never from the caller; Spring authorizes
the user as a tenant admin of that tenant and provisions the company.  Returns a
:class:`lightbulb.company_formation.CompanyFormationResult`.

Source: lightbulb/client.py:2912

create_conversation

sync client declaration
def create_conversation(domain: str) -> Dict[str, Any]

Create a new conversation for a domain.

Source: lightbulb/client.py:5010

create_crm_task

sync client declaration
def create_crm_task(body: Dict[str, Any], tenant_id: str | None=None) -> Dict[str, Any]

Create a CRM task.

Source: lightbulb/client.py:12489

create_document

sync client declaration
def create_document(title: str, body: str, *, format: str='docx', target_suite: str='internal_library') -> DispatchResult

Create a new document.

Source: lightbulb/client.py:5129

create_document_session

sync client declaration
def create_document_session(*, document_type: str='general', document_title: str='Untitled Document') -> Dict[str, Any]

Create a new document builder session.

Source: lightbulb/client.py:5029

create_operator_policy

sync client declaration
def create_operator_policy(body: 'Mapping[str, Any] | None'=None, *, operator_user_id: str, approver_user_id: str, company_id: str | None=None) -> Dict[str, Any]

Draft the AI operator's per-category authority ceilings for one company.

Full source documentation
Draft the AI operator's per-category authority ceilings for one company.

``body`` carries ``currency``, ``matrixDigest``, optional ``effectiveFrom`` and
``reviewMonths``, and the ``ceilings`` list (``category``, ``engine``, ``event``,
``maxAmountCents``, ``requiresSecondApprover``, ``segregation``).  The operator and
the approver are named explicitly and must differ: the platform refuses an operator
without the AI_OPERATOR role and an approver that is one.  The policy is created
``draft`` and grants nothing until the approver activates it; human-only categories
(people_change, wind_down, write_off) are forced human-only whatever is asked for.

Source: lightbulb/client.py:9078

create_page_builder_session

sync client declaration
def create_page_builder_session(brand_name: str='', initial_prompt: str='') -> Dict[str, Any]

Create a new page builder session.

Source: lightbulb/client.py:5182

create_project_from_preflight

sync client declaration
def create_project_from_preflight(receipt: ProjectCreationPreflightReceipt, *, coding_harness: str, confirm_create: bool=False, confirm_open_questions: bool=False, workspace_id: str | None=None, repo_connection_id: str | None=None, idempotency_key: str | None=None, play_style: str | None=None) -> Dict[str, Any]

Create exactly the draft bound to a validated preflight receipt.

Full source documentation
Create exactly the draft bound to a validated preflight receipt.

This method deliberately has no product-plan, scope, approval-state,
or arbitrary request-body argument. A separate, literal confirmation
and selected company context are required before the one POST occurs.

Source: lightbulb/client.py:4753

create_server_workflow_improvement_packet

sync client declaration
def create_server_workflow_improvement_packet(packet: Dict[str, Any], *, source_run_id: str | None=None) -> Dict[str, Any]

Source: lightbulb/client.py:8019

create_slide_deck

sync client declaration
def create_slide_deck(title: str, body: str='', *, target_suite: str='internal_library') -> DispatchResult

Create a new slide deck.

Source: lightbulb/client.py:5165

create_spreadsheet

sync client declaration
def create_spreadsheet(title: str, body: str='', *, target_suite: str='internal_library') -> DispatchResult

Create a new spreadsheet.

Source: lightbulb/client.py:5150

decide_project_learning_result_admission

sync client declaration
def decide_project_learning_result_admission(project_id: str, evaluation_receipt_id: str, *, decision: Any, rationale: Any, confirm_admission: bool=False, idempotency_key: str | None=None) -> Dict[str, Any]

Human admit/reject; never apply or promote the candidate.

Source: lightbulb/client.py:4375

decide_workflow_improvement_packet

sync client declaration
def decide_workflow_improvement_packet(packet_id: str, *, approval_scope: str, decision: str, rationale: str='', evidence: Dict[str, Any] | None=None) -> Dict[str, Any]

Source: lightbulb/client.py:8086

delete_approval_preference

sync client declaration
def delete_approval_preference(preference_id: str) -> Dict[str, Any]

Remove an auto-accept rule.

Source: lightbulb/client.py:12553

delete_conversation

sync client declaration
def delete_conversation(domain: str, conversation_id: str) -> None

Delete a conversation.

Source: lightbulb/client.py:5019

delete_crm_task

sync client declaration
def delete_crm_task(task_id: str, tenant_id: str | None=None) -> None

Delete a CRM task.

Source: lightbulb/client.py:12517

delete_workflow

sync client declaration
def delete_workflow(workflow_id: str, *, company_id: str | None=None) -> None

Soft-delete a workflow through the authenticated designer API.

Source: lightbulb/client.py:8412

deliver_exchange_document

sync client declaration
def deliver_exchange_document(to_address: str, document: 'Dict[str, Any]', *, company_id: str | None=None) -> Dict[str, Any]

Send one sealed commercial document to the company at ``to_address`` (``POST /api/company-exchange/deliveries``).

Full source documentation
Send one sealed commercial document to the company at ``to_address`` (``POST /api/company-exchange/deliveries``).

The platform recomputes the document's seal, requires its ``from_party`` to be this
company's published card and its ``to_party`` the recipient's, and answers a receipt
(``delivery_id``, ``receipt_digest``, ``status`` queued). Sending the same document
again answers the first receipt with ``replayed`` true: it is delivered once.

Source: lightbulb/client.py:9371

derive_procurement_three_way_match

sync client declaration
def derive_procurement_three_way_match(project_id: str, run_ref: str, request: ProcurementThreeWayMatch | Mapping[str, Any], *, company_id: str | None=None) -> ProcurementCustodyReceipt

Source: lightbulb/client.py:13096

dispatch

sync client declaration
def dispatch(domain: str, *, action: str='chat', message: str='', objective: str='', inputs: Dict[str, Any] | None=None, conversation_id: str | None=None, company_id: str | None=None, project_id: str | None=None, required_services: Sequence[str] | None=None) -> DispatchResult

Dispatch a one-shot action to a domain agent and wait for the result.

Source: lightbulb/client.py:3734

document_builder_add_collaborator

sync client declaration
def document_builder_add_collaborator(session_id: str, *, email: str | None=None, user_id: str | None=None, role: str='viewer') -> Dict[str, Any]

Add a collaborator to a document builder session.

Source: lightbulb/client.py:12789

document_builder_add_note

sync client declaration
def document_builder_add_note(session_id: str, content: str) -> Dict[str, Any]

Add a note to a document builder session.

Source: lightbulb/client.py:12962

document_builder_collaboration

sync client declaration
def document_builder_collaboration(session_id: str) -> Dict[str, Any]

Collaboration info for a document builder session.

Source: lightbulb/client.py:12779

document_builder_get_messages

sync client declaration
def document_builder_get_messages(session_id: str, **filters: Any) -> List[Dict[str, Any]]

Get the message history for a document builder session.

Source: lightbulb/client.py:12845

document_builder_save

sync client declaration
def document_builder_save(session_id: str, body: Dict[str, Any] | None=None) -> Dict[str, Any]

Save a document builder session's current state.

Source: lightbulb/client.py:12863

drain_runtime_outcomes

sync client declaration
def drain_runtime_outcomes() -> List[Dict[str, Any]]

Atomically consume outcomes in improvement-loop wire format.

Source: lightbulb/client.py:7847

dynamic_workflow_attach

sync client declaration
def dynamic_workflow_attach(*, company_ref: str, project_ref: str, run_ref: str, host: str, host_session_ref: str, host_role: str, expected_revision: int, idempotency_key: str) -> Dict[str, Any]

Attach fresh role custody to an existing authoritative run.

Source: lightbulb/client.py:7108

dynamic_workflow_cancel

sync client declaration
def dynamic_workflow_cancel(*, company_ref: str, project_ref: str, run_ref: str, host_binding_ref: str, session_receipt: str, host_role: str, expected_revision: int, idempotency_key: str, reason: str) -> Dict[str, Any]

Cancel a non-terminal workflow using exact optimistic concurrency.

Source: lightbulb/client.py:7308

dynamic_workflow_next_assignment

sync client declaration
def dynamic_workflow_next_assignment(*, company_ref: str, project_ref: str, run_ref: str, host_binding_ref: str, session_receipt: str, host_role: str, expected_revision: int, idempotency_key: str) -> Dict[str, Any]

Lease the next assignment from the dedicated workflow authority.

Source: lightbulb/client.py:7158

dynamic_workflow_start

sync client declaration
def dynamic_workflow_start(*, company_ref: str, project_ref: str, objective: str, acceptance_criteria: Sequence[Mapping[str, Any]], host: str, expected_revision: int, idempotency_key: str, host_session_ref: str | None=None, acceptance_policy: str='distinct_binding', workflow_spec: Mapping[str, Any] | None=None, inputs: Mapping[str, Any] | None=None) -> Dict[str, Any]

Start an authoritative planner/builder/evaluator workflow.

Source: lightbulb/client.py:7074

dynamic_workflow_status

sync client declaration
def dynamic_workflow_status(*, company_ref: str, project_ref: str, run_ref: str, host_binding_ref: str, session_receipt: str, host_role: str) -> Dict[str, Any]

Read bounded status using a role-bound continuation receipt.

Source: lightbulb/client.py:7135

dynamic_workflow_submit_builder_result

sync client declaration
def dynamic_workflow_submit_builder_result(*, company_ref: str, project_ref: str, run_ref: str, host_binding_ref: str, session_receipt: str, host_role: str, assignment_ref: str, assignment_receipt: str, expected_revision: int, idempotency_key: str, outcome: str, summary: str, plan_digest: str, iteration: int, evidence_refs: Sequence[Mapping[str, Any]], progress_digest: str) -> Dict[str, Any]

Submit content-addressed builder evidence under its assignment lease.

Source: lightbulb/client.py:7220

dynamic_workflow_submit_evaluator_verdict

sync client declaration
def dynamic_workflow_submit_evaluator_verdict(*, company_ref: str, project_ref: str, run_ref: str, host_binding_ref: str, session_receipt: str, host_role: str, assignment_ref: str, assignment_receipt: str, expected_revision: int, idempotency_key: str, decision: str, accepted: bool, summary: str, plan_digest: str, builder_result_digest: str, required_criterion_ids: Sequence[str], criterion_results: Sequence[Mapping[str, Any]]) -> Dict[str, Any]

Submit a default-fail evaluator verdict under fresh role custody.

Source: lightbulb/client.py:7263

dynamic_workflow_submit_plan

sync client declaration
def dynamic_workflow_submit_plan(*, company_ref: str, project_ref: str, run_ref: str, host_binding_ref: str, session_receipt: str, host_role: str, assignment_ref: str, assignment_receipt: str, expected_revision: int, idempotency_key: str, required_criterion_ids: Sequence[str], plan: Mapping[str, Any]) -> Dict[str, Any]

Submit a planner result under its exact assignment lease.

Source: lightbulb/client.py:7185

evaluate_period_reconciliation_run

sync client declaration
def evaluate_period_reconciliation_run(project_id: str, run_ref: str, request: PeriodReconciliationEvaluationRequest | Mapping[str, Any], *, company_id: str | None=None) -> PeriodReconciliationEvaluationReceipt

Source: lightbulb/client.py:6463

evaluate_project_offline_policy

sync client declaration
def evaluate_project_offline_policy(project_id: str, *, behavior_policy_id: Any, candidate_policy_id: Any, metric_id: Any, pairs: Sequence[Mapping[str, Any]], confirm_evaluate: bool=False, evaluation_id: Any=None, note: Any=None, idempotency_key: str | None=None) -> Dict[str, Any]

Estimate a candidate from verified receipts; never admit learning.

Source: lightbulb/client.py:4652

execute_contract_to_cash_invoice

sync client declaration
def execute_contract_to_cash_invoice(project_id: str, request: ContractToCashInvoiceExecutionRequest | Mapping[str, Any], *, company_id: str | None=None) -> ContractToCashInvoiceWriteReceipt

Consume an exact approval without treating provider acceptance as issuance.

Source: lightbulb/client.py:6199

execute_provisioning

sync client declaration
def execute_provisioning(company_id: str, journal_id: str, *, approval_ref: str) -> Dict[str, Any]

Mint the proposed instrument with the approval a human already granted.

Full source documentation
Mint the proposed instrument with the approval a human already granted.

Returns the durable ``lightbulb.company_provisioning_receipt.v1``; the
one-shot hosted-onboarding URL, when the instrument has one, is present in
this live response only and is never stored.

Source: lightbulb/client.py:2854

factory_app_signals

sync client declaration
def factory_app_signals(app_instance_id: str, *, company_id: str, since: str | None=None, limit: int=500) -> Dict[str, Any]

One generated app's signals since a moment, as the platform received them from its bridge module, in the shape the SDK's signals record takes (app_ref, signals).

Source: lightbulb/client.py:8970

factory_cancel

sync client declaration
def factory_cancel(grant_ref: str, *, company_id: str, reason: str | None=None) -> Dict[str, Any]

Revoke the grant, then ask its run to stop; nothing it left behind can be pushed.

Source: lightbulb/client.py:8923

factory_complete

sync client declaration
def factory_complete(grant_ref: str, *, company_id: str) -> Dict[str, Any]

The run has finished: the platform pushes its change and opens a draft pull request, each under its own durable claim (a retry returns the recorded receipt, never a second push), then charges the reservation. Completing a settled grant returns what it ended as.

Source: lightbulb/client.py:8919

factory_dispatch

sync client declaration
def factory_dispatch(grant_ref: str, *, company_id: str) -> Dict[str, Any]

Start the grant's one coding run in its workspace (no push: the platform pushes after the run); a second call returns the same run.

Source: lightbulb/client.py:8915

factory_feedback_outbox

sync client declaration
def factory_feedback_outbox(*, company_id: str, state: str | None=None) -> Dict[str, Any]

Where each generated-app submission's mirror into project feedback stands: pending, synced, failed_sync or unbound.

Source: lightbulb/client.py:8965

factory_grant

sync client declaration
def factory_grant(grant_ref: str, *, company_id: str) -> Dict[str, Any]

One grant as the platform holds it, its state, run and every ledger event.

Source: lightbulb/client.py:8957

factory_grant_lookup

sync client declaration
def factory_grant_lookup(*, company_id: str) -> 'Callable[[str], Dict[str, Any] | None]'

The authoritative lookup for :func:`lightbulb.execution_grant.verify_execution_grant`: the grant as the platform holds it while it is active, else nothing.

Source: lightbulb/client.py:8992

factory_issue_grant

sync client declaration
def factory_issue_grant(*, company_id: str, request: Mapping[str, Any], coding_budget: Any, workspace_id: str, decision: Mapping[str, Any] | None=None, currency: str | None=None, app_ref: str | None=None) -> Dict[str, Any]

Ask the platform for a run-scoped execution grant for one sealed SoftwareProductionRequest.

Full source documentation
Ask the platform for a run-scoped execution grant for one sealed SoftwareProductionRequest.

The platform recomputes the request's digest and refuses one changed after sealing, evaluates
the owner's mandate it holds (the decision passed is advisory and can only lower what is left
of the envelope), converts at its own operator-set rate (never one the caller supplies; a
currency it has no rate for is refused), reserves the coding budget, and returns the signed
grant (``issued``), the same grant again (``replayed``), or the mandate's answer when it is not
act (``issued`` false with ``code`` and ``reason``).  Verify the grant with
:func:`lightbulb.execution_grant.verify_execution_grant` and :meth:`factory_grant_lookup`.

Source: lightbulb/client.py:8885

factory_issue_signal_credential

sync client declaration
def factory_issue_signal_credential(app_instance_id: str, *, company_id: str) -> Dict[str, Any]

Issue or rotate the credential one generated app reports its signals with (an owner's act: needs software-factory.mandate.manage).

Full source documentation
Issue or rotate the credential one generated app reports its signals with (an owner's act: needs software-factory.mandate.manage).

The token (``lbsig_...``) is in this answer only. Store it as a server-side secret of the app's
backend, which sends it as ``X-Lightbulb-App-Token``; it authorizes that app's signal intake and
nothing else. On rotation the previous token keeps working until ``previous_valid_until``.

Source: lightbulb/client.py:8975

factory_reconcile

sync client declaration
def factory_reconcile(grant_ref: str, effect: str, *, company_id: str, applied: bool, receipt: Mapping[str, Any] | None=None) -> Dict[str, Any]

Settle an effect whose outcome was uncertain (``reconciliation_required``) after checking the remote side yourself.

Full source documentation
Settle an effect whose outcome was uncertain (``reconciliation_required``) after checking the remote side yourself.

``applied`` True says the push or pull request exists; ``receipt`` must then prove it — for
``branch_create`` the run's ``run_id``, its ``branch`` and the ``commit_hash``; for
``pull_request_open`` the ``pr_number`` and a matching ``pr_url`` in the workspace's repository.
The platform checks the receipt against the run and records the effect as executed.  ``applied``
False says nothing happened remotely: the effect becomes claimable again and a later completion
retries it.  This is the only way an uncertain effect moves.

Source: lightbulb/client.py:8928

factory_register_mandate

sync client declaration
def factory_register_mandate(mandate: Mapping[str, Any], *, company_id: str) -> Dict[str, Any]

Give the factory the owner's sealed mandate (lightbulb.owner_mandate.v1); the platform recomputes its digest and refuses it if it was changed after sealing. Needs the software-factory.mandate.manage permission. A new mandate revokes every grant issued under the old one.

Source: lightbulb/client.py:8877

factory_revoke_signal_credential

sync client declaration
def factory_revoke_signal_credential(app_instance_id: str, *, company_id: str) -> Dict[str, Any]

Revoke the app's signal credential; its reports are refused from now on.

Source: lightbulb/client.py:8988

factory_signal_credential

sync client declaration
def factory_signal_credential(app_instance_id: str, *, company_id: str) -> Dict[str, Any]

Whether the app has a live signal credential: ``state`` none, active or revoked, and its prefix (never the token).

Source: lightbulb/client.py:8984

factory_status

sync client declaration
def factory_status(*, company_id: str) -> Dict[str, Any]

Every grant for the company with its state, the month's coding budget, and the recent ledger events.

Source: lightbulb/client.py:8961

fail_economic_spine_run

sync client declaration
def fail_economic_spine_run(project_id: str, run_ref: str, request: EconomicSpineRunTransition | Mapping[str, Any], *, company_id: str | None=None) -> EconomicSpineRun

Source: lightbulb/client.py:6683

fail_period_reconciliation_run

sync client declaration
def fail_period_reconciliation_run(project_id: str, run_ref: str, request: PeriodReconciliationTerminalRequest | Mapping[str, Any], *, company_id: str | None=None) -> PeriodReconciliationRunReceipt

Source: lightbulb/client.py:6552

fail_procurement_matched_close_run

sync client declaration
def fail_procurement_matched_close_run(project_id: str, run_ref: str, request: ProcurementFailure | Mapping[str, Any], *, company_id: str | None=None) -> ProcurementCommandReceipt

Source: lightbulb/client.py:13169

feature_availability

sync client declaration
def feature_availability(required_services: Sequence[str], *, company_id: str | None=None) -> Any

Read fresh deployment prerequisites for one exact company, without changing selection.

Source: lightbulb/client.py:2755

finalize_company_blueprint_certification

sync client declaration
def finalize_company_blueprint_certification(project_id: str, candidate_id: str, *, company_id: str | None=None) -> CompanyBlueprintCertificationStatus

Source: lightbulb/client.py:5764

find_exchange_card

sync client declaration
def find_exchange_card(address: str, *, company_id: str | None=None) -> Dict[str, Any]

Another company's published card, by its exchange address: its party ref, sealed card and digest (never its tenant or company).

Source: lightbulb/client.py:9351

flush_runtime_outcomes

sync client declaration
def flush_runtime_outcomes(*, idempotency_key: str | None=None) -> Dict[str, Any]

Upload queued outcomes, restoring them locally when upload fails.

Source: lightbulb/client.py:7873

from_verified_envelope

sync client declaration
def from_verified_envelope(base_url: str, envelope: Any, *, enforce_https: bool=True, connect_timeout: float=_CONNECT_TIMEOUT, read_timeout: float=_READ_TIMEOUT, outcome_recorder: Any=None) -> 'LightbulbClient'

Build a worker-only client without a JWT or shared API credential.

Full source documentation
Build a worker-only client without a JWT or shared API credential.

The envelope must have a verified v2-or-newer signature and an exact
company/project runtime authority whose public claims match its signed
scope. Spring remains authoritative and verifies the HMAC token again.

Source: lightbulb/client.py:2670

get_account_shell_customization

sync client declaration
def get_account_shell_customization() -> Dict[str, Any]

Read the effective governed account-shell customization.

Source: lightbulb/client.py:10336

get_agent_runtime_config

sync client declaration
def get_agent_runtime_config(agent_type: str='coding', *, company_id: str | None=None) -> Dict[str, Any]

Get the effective Codex/Claude Code/Backbone runtime config for this account.

Source: lightbulb/client.py:3287

get_ai_metered_cost

sync client declaration
def get_ai_metered_cost(provider: str, *, window_start: str, window_end: str) -> Dict[str, Any]

Read native metering for the active company; this neither reconciles nor posts costs.

Source: lightbulb/client.py:2792

get_aoc_decision

sync client declaration
def get_aoc_decision(decision_id: str) -> Dict[str, Any]

Get a specific AutoCompany decision.

Source: lightbulb/client.py:12145

get_aoc_run

sync client declaration
def get_aoc_run(run_id: str) -> Dict[str, Any]

Get an AutoCompany run detail.

Source: lightbulb/client.py:12041

get_aoc_task

sync client declaration
def get_aoc_task(task_id: str) -> Dict[str, Any]

Get an AutoCompany task detail.

Source: lightbulb/client.py:12094

get_aoc_tick

sync client declaration
def get_aoc_tick(tick_id: str) -> Dict[str, Any]

Get a single AutoCompany tick.

Source: lightbulb/client.py:12169

get_approval

sync client declaration
def get_approval(task_id: str) -> Dict[str, Any]

Get full details of an approval task.

Source: lightbulb/client.py:8822

get_artifact

sync client declaration
def get_artifact(artifact_id: str) -> Dict[str, Any]

Get a specific artifact by ID.

Source: lightbulb/client.py:8280

get_assessment_workspace

sync client declaration
def get_assessment_workspace(project_id: str, run_ref: str) -> Dict[str, Any] | None

Load one saved assessment in the selected company; validate its exact seals.

Source: lightbulb/client.py:7406

get_autonomy_control

sync client declaration
def get_autonomy_control(*, company_id: str | None=None) -> Dict[str, Any]

The owner's stop for everything that runs on its own (``/api/autonomy/control``).

Full source documentation
The owner's stop for everything that runs on its own (``/api/autonomy/control``).

The platform's view: ``status`` running or stopped, ``halted_by`` (the global switch, a
tenant-wide stop or the company's own), both controls, and what runs on its own. The
autopilot reads it before it acts, so the owner's one stop holds it on every path.

Source: lightbulb/client.py:9282

get_code_workspace_active_run

sync client declaration
def get_code_workspace_active_run(workspace_id: str) -> Dict[str, Any] | None

Get the currently active run for a code workspace, if one exists.

Source: lightbulb/client.py:5321

get_code_workspace_claude_session

sync client declaration
def get_code_workspace_claude_session(workspace_id: str, session_id: str) -> Dict[str, Any]

Get a single Claude SDK session.

Source: lightbulb/client.py:11894

get_code_workspace_codex_thread

sync client declaration
def get_code_workspace_codex_thread(workspace_id: str, thread_id: str) -> Dict[str, Any]

Get a Codex thread (turns, status, metadata).

Source: lightbulb/client.py:11954

get_code_workspace_run

sync client declaration
def get_code_workspace_run(workspace_id: str, run_id: str) -> Dict[str, Any]

Get a specific code workspace run.

Source: lightbulb/client.py:5333

get_company_blueprint_certification_candidate

sync client declaration
def get_company_blueprint_certification_candidate(project_id: str, candidate_id: str, *, company_id: str | None=None) -> CompanyBlueprintCertificationStatus

Source: lightbulb/client.py:5812

get_company_blueprint_deployment

sync client declaration
def get_company_blueprint_deployment(project_id: str, deployment_id: str, *, company_id: str | None=None) -> CompanyBlueprintDeploymentStatus

Source: lightbulb/client.py:5868

get_company_blueprint_deployment_head

sync client declaration
def get_company_blueprint_deployment_head(project_id: str, *, company_id: str | None=None) -> CompanyBlueprintDeploymentHead | None

Source: lightbulb/client.py:5880

get_company_lifecycle

sync client declaration
def get_company_lifecycle(*, company_id: str | None=None) -> Dict[str, Any]

The company's lifecycle status and every transition receipt so far.

Full source documentation
The company's lifecycle status and every transition receipt so far.

``lifecycleStatus`` is ``ACTIVE``, ``WINDING_DOWN`` or ``CLOSED``.  A winding-down
company refuses selling writes (409 ``company_winding_down``) while keeping final
billing, refunds, notices, payroll and payables; a closed one refuses every tool
(410 ``company_closed``) and will not hand a worker any work.

Source: lightbulb/client.py:9172

get_contract_to_cash_cash_collection

sync client declaration
def get_contract_to_cash_cash_collection(project_id: str, record_id: str, *, company_id: str | None=None) -> ContractToCashCashCollectionRecord

Source: lightbulb/client.py:6301

get_contract_to_cash_invoice_issued

sync client declaration
def get_contract_to_cash_invoice_issued(project_id: str, record_id: str, *, company_id: str | None=None) -> ContractToCashInvoiceIssuedRecord

Read one exact provider-observed invoice issuance custody record.

Source: lightbulb/client.py:6255

get_contract_to_cash_run

sync client declaration
def get_contract_to_cash_run(project_id: str, run_ref: str, *, company_id: str | None=None) -> ContractToCashRun

Source: lightbulb/client.py:6337

get_conversation

sync client declaration
def get_conversation(domain: str, conversation_id: str) -> Dict[str, Any]

Get conversation history.

Source: lightbulb/client.py:5001

get_crm_task

sync client declaration
def get_crm_task(task_id: str, tenant_id: str | None=None) -> Dict[str, Any]

Get a single CRM task.

Source: lightbulb/client.py:12476

get_current_company_blueprint_certification

sync client declaration
def get_current_company_blueprint_certification(project_id: str, *, blueprint_version_id: str, environment_ref: str, company_id: str | None=None) -> CompanyBlueprintCertificationSpringRecord | None

Resolve the current exact Blueprint certificate using Spring's clock.

Source: lightbulb/client.py:5893

get_current_golden_loop_certification

sync client declaration
def get_current_golden_loop_certification(project_id: str, *, loop_ref: str, loop_version: str, environment_ref: str, company_id: str | None=None) -> GoldenLoopCertificationSpringRecord | None

Read the current exact-scope certificate, or ``None`` after expiry.

Source: lightbulb/client.py:6120

get_customer_referral_event

sync client declaration
def get_customer_referral_event(project_id: str, event_id: str, *, company_id: str | None=None) -> Dict[str, Any]

Read a referral intake record for the authenticated company, actor and project.

Source: lightbulb/client.py:7478

get_document_schemas

sync client declaration
def get_document_schemas(session_id: str) -> Dict[str, Any]

Get the document schemas for a session.

Source: lightbulb/client.py:5059

get_document_session

sync client declaration
def get_document_session(session_id: str) -> Dict[str, Any]

Get a document builder session.

Source: lightbulb/client.py:5051

get_economic_spine_run

sync client declaration
def get_economic_spine_run(project_id: str, run_ref: str, *, company_id: str | None=None) -> EconomicSpineRun

Source: lightbulb/client.py:6653

get_engine_inventory

sync client declaration
def get_engine_inventory(project_id: str, *, engine: str) -> Dict[str, Any]

Read an unfiltered engine inventory pinned to the active company; partial reads remain marked.

Source: lightbulb/client.py:9493

get_engine_state

sync client declaration
def get_engine_state(project_id: str, engine: str, entity_ref: str, *, company_id: str | None=None) -> Dict[str, Any] | None

Read one persisted engine state record, or ``None`` when it does not exist.

Source: lightbulb/client.py:9474

get_exchange_card

sync client declaration
def get_exchange_card(*, company_id: str | None=None) -> Dict[str, Any] | None

The company's card as the exchange directory holds it, with its address; ``None`` before it is published.

Source: lightbulb/client.py:9321

get_exchange_receipt_keys

sync client declaration
def get_exchange_receipt_keys(*, company_id: str | None=None) -> Dict[str, Any]

The Ed25519 keys the platform signs exchange receipts with (``/api/public/company-exchange/keys``): id, raw public key and status.

Source: lightbulb/client.py:9395

get_executed_commercial_agreement

sync client declaration
def get_executed_commercial_agreement(project_id: str, record_id: str, *, company_id: str | None=None) -> ExecutedCommercialAgreementRecord

Source: lightbulb/client.py:5950

get_finance_reconciliation_run

sync client declaration
def get_finance_reconciliation_run(run_id: str, *, company_id: str | None=None) -> FinanceReconciliationRunDetails

Get one exact reconciliation run and validate its stored envelope.

Source: lightbulb/client.py:3712

get_golden_loop_catalog_version

sync client declaration
def get_golden_loop_catalog_version(project_id: str, catalog_version_id: str, *, company_id: str | None=None) -> GoldenLoopCatalogVersion

Read one exact immutable catalog version and its declaration IDs.

Source: lightbulb/client.py:6017

get_golden_loop_certification_candidate

sync client declaration
def get_golden_loop_certification_candidate(project_id: str, candidate_id: str, *, company_id: str | None=None) -> GoldenLoopCertificationCandidateStatus

Read one exact certification candidate without raw retained evidence.

Source: lightbulb/client.py:6095

get_golden_loop_declaration_version

sync client declaration
def get_golden_loop_declaration_version(project_id: str, catalog_version_id: str, declaration_version_id: str, *, company_id: str | None=None) -> GoldenLoopDeclarationVersion

Read one exact declaration through its containing catalog version.

Source: lightbulb/client.py:6041

get_golden_loop_economic_closure

sync client declaration
def get_golden_loop_economic_closure(project_id: str, run_ref: str, *, company_id: str | None=None) -> GoldenLoopEconomicClosureProjection

Read Spring's canonical, non-mutating whole-run cost closure.

Source: lightbulb/client.py:6150

get_governed_communication_run

sync client declaration
def get_governed_communication_run(project_id: str, run_ref: str, *, company_id: str | None=None) -> GovernedCommunicationRun

Read one exact public ``gcr_`` run projection.

Source: lightbulb/client.py:6850

get_marketplace_action_publication

sync client declaration
def get_marketplace_action_publication(publication_id: str) -> Dict[str, Any]

Get governed publication and security-scan status by publication UUID.

Source: lightbulb/client.py:10751

get_marketplace_installation

sync client declaration
def get_marketplace_installation(installation_id: str) -> Dict[str, Any]

Get one marketplace installation for the selected active company.

Source: lightbulb/client.py:10842

get_marketplace_invocation_receipt

sync client declaration
def get_marketplace_invocation_receipt(invocation_id: str) -> Dict[str, Any]

Get the immutable audit receipt for one marketplace invocation.

Source: lightbulb/client.py:11019

get_marketplace_invocation_status

sync client declaration
def get_marketplace_invocation_status(invocation_id: str) -> Dict[str, Any]

Get current invocation state for the selected company.

Source: lightbulb/client.py:11007

get_marketplace_listing

sync client declaration
def get_marketplace_listing(listing_id: str, *, revision_id: str | None=None, include_inputs: bool=True) -> Dict[str, Any]

Get one persisted marketplace listing and optional immutable revision.

Source: lightbulb/client.py:10657

get_operator_policy

sync client declaration
def get_operator_policy(*, company_id: str | None=None) -> Dict[str, Any]

The company's active operator policy and its ceilings.

Full source documentation
The company's active operator policy and its ceilings.

Raises :class:`~lightbulb.errors.LightbulbError` (404) when no policy is active: also the
state in which every engine transition escalates to a human.

Source: lightbulb/client.py:9154

get_period_reconciliation_campaign_facts

sync client declaration
def get_period_reconciliation_campaign_facts(project_id: str, run_ref: str, *, company_id: str | None=None) -> tuple[PeriodReconciliationCampaignFact, ...]

Source: lightbulb/client.py:6543

get_period_reconciliation_outcomes

sync client declaration
def get_period_reconciliation_outcomes(project_id: str, run_ref: str, *, company_id: str | None=None) -> tuple[PeriodReconciliationOutcomeFact, ...]

Source: lightbulb/client.py:6534

get_period_reconciliation_run

sync client declaration
def get_period_reconciliation_run(project_id: str, run_ref: str, *, company_id: str | None=None) -> PeriodReconciliationRun

Source: lightbulb/client.py:6525

get_procurement_matched_close_outcomes

sync client declaration
def get_procurement_matched_close_outcomes(project_id: str, run_ref: str, *, company_id: str | None=None) -> ProcurementOutcomeReceipt

Source: lightbulb/client.py:13153

get_procurement_matched_close_run

sync client declaration
def get_procurement_matched_close_run(project_id: str, run_ref: str, *, company_id: str | None=None) -> ProcurementCommandReceipt

Source: lightbulb/client.py:13134

get_project_coding_handoff

sync client declaration
def get_project_coding_handoff(project_id: str, harness: str) -> Dict[str, Any]

Read the selected Project Agent handoff for a connected harness.

Source: lightbulb/client.py:3049

get_project_coding_harnesses

sync client declaration
def get_project_coding_harnesses(project_id: str) -> Dict[str, Any]

Read the durable additive harness selection for one project.

Source: lightbulb/client.py:2979

get_project_connector_route_descriptor

sync client declaration
def get_project_connector_route_descriptor(project_id: str, connector_account_ref: str, tool_name: str, *, company_id: str | None=None) -> Dict[str, Any]

Resolve exact governed execution coordinates for one project account Tool.

Full source documentation
Resolve exact governed execution coordinates for one project account Tool.

Spring authenticates tenant/company/project access and resolves the same
account, Tool, and Tenant Connector route used by governed execution.
The closed descriptor contains no OAuth connection or credential data.
Pass ``company_id`` to pin this read without changing selected-company
state.

Source: lightbulb/client.py:3233

get_project_game_snapshot

sync client declaration
def get_project_game_snapshot(project_id: str) -> Dict[str, Any]

Fetch one server-owned, exact-scoped project snapshot.

Full source documentation
Fetch one server-owned, exact-scoped project snapshot.

JWT users use the public project route. Trusted API-key workers use the
internal route so Spring's internal authentication filter remains the
sole service-auth boundary. The returned projection is orientation
only and is rejected if it widens scope or authority.

Source: lightbulb/client.py:3941

get_project_work_packet_run

sync client declaration
def get_project_work_packet_run(project_id: str, run_ref: str, *, company_id: str | None=None) -> ProjectWorkPacketRunRead

Read one owned Project work-packet run without harness custody.

Source: lightbulb/client.py:6908

get_provisioning

sync client declaration
def get_provisioning(company_id: str, journal_id: str) -> Dict[str, Any]

The provisioning journal row and its durable receipt, without live-only fields.

Source: lightbulb/client.py:2881

get_recursive_agent_execution_status

sync client declaration
def get_recursive_agent_execution_status(execution_id: str) -> Dict[str, Any]

Read privacy-minimized status for one exact user-owned recursive tree.

Source: lightbulb/client.py:8481

get_reference_company_onboarding_readiness

sync client declaration
def get_reference_company_onboarding_readiness(project_id: str, *, company_id: str | None=None) -> ReferenceCompanyOnboardingReadiness

Discover secret-free Project/Blueprint/connector onboarding choices.

Source: lightbulb/client.py:5664

get_runtime_domain_action

sync client declaration
def get_runtime_domain_action(runtime_action_id: str, *, project_id: str, company_id: str | None=None) -> Dict[str, Any]

Review one exact-scope registration without changing its lifecycle.

Source: lightbulb/client.py:10525

get_sdk_project_checkpoint

sync client declaration
def get_sdk_project_checkpoint(project_id: str, run_ref: str, *, company_id: str | None=None) -> Dict[str, Any] | None

Source: lightbulb/client.py:7501

get_server_workflow_improvement_packet

sync client declaration
def get_server_workflow_improvement_packet(packet_id: str) -> Dict[str, Any]

Read one exact tenant/company-scoped workflow improvement packet.

Source: lightbulb/client.py:8076

get_server_workflow_improvement_status

sync client declaration
def get_server_workflow_improvement_status() -> Dict[str, Any]

Source: lightbulb/client.py:8050

get_service_case_resolution

sync client declaration
def get_service_case_resolution(project_id: str, run_ref: str, *, company_id: str | None=None) -> ServiceCaseResolutionRun

Read one exact Spring-owned ``scr_`` run.

Source: lightbulb/client.py:6737

get_training_pair_status

sync client declaration
def get_training_pair_status(pair_handle: str, *, project_id: str | None=None) -> Dict[str, Any]

Read the privacy-minimized status for one exact owned pair handle.

Source: lightbulb/client.py:11167

get_voice_execution

sync client declaration
def get_voice_execution(execution_id: str) -> Dict[str, Any]

Get a voice execution detail (transcripts, status, agent decisions).

Source: lightbulb/client.py:11212

get_workflow

sync client declaration
def get_workflow(workflow_id: str) -> Dict[str, Any]

Get a workflow by ID.

Source: lightbulb/client.py:8346

get_workflow_improvement_audit

sync client declaration
def get_workflow_improvement_audit(packet_id: str) -> List[Dict[str, Any]]

Source: lightbulb/client.py:8111

get_workflow_improvement_delivery

sync client declaration
def get_workflow_improvement_delivery(delivery_id: str) -> Dict[str, Any]

Source: lightbulb/client.py:8166

get_workflow_improvement_status

sync client declaration
def get_workflow_improvement_status(output_dir: str | os.PathLike[str] | None=None) -> Dict[str, Any]

Read local continuous-improvement state without network calls.

Source: lightbulb/client.py:7905

get_workflow_instance

sync client declaration
def get_workflow_instance(trace_id: str, *, company_id: str | None=None) -> Dict[str, Any]

Get a workflow instance through the authenticated public API.

Source: lightbulb/client.py:3800

get_workflow_trigger_catalog

sync client declaration
def get_workflow_trigger_catalog() -> Dict[str, Any]

List the schedule literals and event types accepted by authoring.

Source: lightbulb/client.py:8630

grep_documents

sync client declaration
def grep_documents(pattern: str, *, regex: bool=True, case_sensitive: bool=False, folder_path: str | None=None, top_k: int=20) -> DispatchResult

Grep across document content using pattern matching.

Source: lightbulb/client.py:5087

hr_live_advance_application

sync client declaration
def hr_live_advance_application(application_id: str, *, body: Dict[str, Any] | None=None) -> Dict[str, Any]

Advance a Greenhouse candidate to the next stage (HITL-gated).

Source: lightbulb/client.py:11349

hr_live_cases

sync client declaration
def hr_live_cases(**filters: Any) -> Dict[str, Any]

HR case board items from Monday.com.

Source: lightbulb/client.py:11316

hr_live_health

sync client declaration
def hr_live_health() -> Dict[str, Any]

Health check for HR connector tokens (BambooHR / Greenhouse / Monday).

Source: lightbulb/client.py:11375

hr_live_leave_balance

sync client declaration
def hr_live_leave_balance(bamboo_employee_id: str) -> Dict[str, Any]

BambooHR leave balance for an employee.

Source: lightbulb/client.py:11296

hr_live_monday_onboarding_board

sync client declaration
def hr_live_monday_onboarding_board(checklist_id: str) -> Dict[str, Any]

Monday.com board view for an HR onboarding checklist.

Source: lightbulb/client.py:11306

hr_live_recruiting_applications

sync client declaration
def hr_live_recruiting_applications(**filters: Any) -> Dict[str, Any]

Greenhouse applications.

Source: lightbulb/client.py:11338

hr_live_recruiting_jobs

sync client declaration
def hr_live_recruiting_jobs(**filters: Any) -> Dict[str, Any]

Greenhouse job listings.

Source: lightbulb/client.py:11327

hr_live_reject_application

sync client declaration
def hr_live_reject_application(application_id: str, *, body: Dict[str, Any] | None=None) -> Dict[str, Any]

Reject a Greenhouse application (HITL-gated).

Source: lightbulb/client.py:11362

hr_live_whos_out

sync client declaration
def hr_live_whos_out(**filters: Any) -> Dict[str, Any]

BambooHR who's-out roster (current and upcoming time-off).

Source: lightbulb/client.py:11285

ingest_sdk_project_event

sync client declaration
def ingest_sdk_project_event(project_id: str, event: Dict[str, Any], *, company_id: str | None=None) -> Dict[str, Any]

Source: lightbulb/client.py:7583

inspect_project_creation_world_ready

sync client declaration
def inspect_project_creation_world_ready(name: str, instructions: str='', *, participant_role: str='agent_worker', experience_lens: str='agent_protocol', play_style: str='guided_human_in_the_loop') -> dict[str, Any]

Inspect project-review readiness locally without network activity.

Source: lightbulb/client.py:4692

inspect_project_game_campaign

sync client declaration
def inspect_project_game_campaign(*, project: dict[str, Any] | None=None, plan: dict[str, Any] | None=None, business_cockpit: dict[str, Any] | None=None) -> dict[str, Any]

Inspect the human/agent project campaign locally without network activity.

Source: lightbulb/client.py:3988

inspect_training_pair_input_custody

sync client declaration
def inspect_training_pair_input_custody(installation_id: str, revision_id: str, *, project_id: str | None=None) -> Dict[str, Any]

Inspect exact-owner input custody without returning raw evidence.

Full source documentation
Inspect exact-owner input custody without returning raw evidence.

This read-only POST cannot upload or associate a receipt and cannot
report training readiness, admission authority, or an execution surface.

Source: lightbulb/client.py:11065

inspect_training_pair_readiness

sync client declaration
def inspect_training_pair_readiness(installation_id: str, revision_id: str, *, project_id: str | None=None) -> Dict[str, Any]

Inspect structured source, authority, stage, and lane readiness.

Full source documentation
Inspect structured source, authority, stage, and lane readiness.

This call is read-only despite using POST. The v1 contract cannot
report admission or execution authority.

Source: lightbulb/client.py:11033

inspect_workflow_learning_candidate_attestation

sync client declaration
def inspect_workflow_learning_candidate_attestation(delivery_id: str) -> Dict[str, Any]

Revalidate the exact candidate producer attestation using current keys.

Source: lightbulb/client.py:8175

install_marketplace_action

sync client declaration
def install_marketplace_action(listing_id: str, revision_id: str, *, idempotency_key: str, deployment_targets: Sequence[str] | None=None) -> Dict[str, Any]

Install a pinned revision and bind its explicit agent targets.

Source: lightbulb/client.py:10854

invoke_marketplace_action

sync client declaration
def invoke_marketplace_action(installation_id: str, inputs: Dict[str, Any] | None=None, *, idempotency_key: str, message: str='', objective: str='', dry_run: bool=True, preview_invocation_id: str | None=None, confirm_live: bool=False) -> Dict[str, Any]

Preview an installed action, or explicitly confirm an exact preview for live use.

Source: lightbulb/client.py:10960

invoke_tool

sync client declaration
def invoke_tool(tool_name: str, arguments: Dict[str, Any], *, project_id: str | None=None, project_ref: str | None=None, connector_account_ref: str | None=None, idempotency_key: str | None=None, approval_ref: str | None=None, workflow_id: str | None=None, step_id: str | None=None, workflow_instance_id: str | None=None, workflow_step_generation: int | None=None, runtime_context: Dict[str, Any] | None=None, effect: str | None=None, _runtime_authority: Any=None) -> Dict[str, Any]

Invoke a platform tool by name (e.g. connector tools, utility tools).

Full source documentation
Invoke a platform tool by name (e.g. connector tools, utility tools).

Calls without governance arguments use the legacy endpoint only for
non-governed utility Tools. Once Spring's connector effect boundary is
enabled, catalogued connector reads and writes fail closed unless this
call supplies the exact governed project/account custody. Supplying an
effect, approval, idempotency key, project reference, or runtime
correlation uses Spring's Governed Connector Execution journal.
``effect`` is only a drift assertion; the server-owned Tool catalog is
authoritative. Private-response reads such as
``shopify.list_abandoned_checkouts`` and ``gmail.get_thread`` require
exact project/account/read custody and must omit ``idempotency_key`` so
Spring always returns fresh provider data.

Source: lightbulb/client.py:9660

it_ops_live_connector

sync client declaration
def it_ops_live_connector(connector: str, **filters: Any) -> Dict[str, Any]

Pass-through to a live IT-Ops connector (jira | slack | github | notion).

Source: lightbulb/client.py:12652

it_ops_mcp_manifest

sync client declaration
def it_ops_mcp_manifest() -> Dict[str, Any]

Get the IT-Ops workspace MCP manifest.

Source: lightbulb/client.py:12666

list_agent_runtime_options

sync client declaration
def list_agent_runtime_options(agent_type: str | None=None) -> Dict[str, Any]

List coding-agent runtimes and Backbone host surfaces available to the account.

Source: lightbulb/client.py:3271

list_all_engine_states

sync client declaration
def list_all_engine_states(project_id: str, *, engine: str | None=None, status: str | None=None, company_id: str | None=None) -> List[Dict[str, Any]]

Read all states from immutable scoped pages; reject partial, mixed or expired snapshots.

Full source documentation
Read all states from immutable scoped pages; reject partial, mixed or expired snapshots.

The host bounds snapshots to 10,000 rows and 32 MiB. An oversized scope
raises an error instead of silently returning its first page.

Source: lightbulb/client.py:9504

list_aoc_decisions

sync client declaration
def list_aoc_decisions(**filters: Any) -> List[Dict[str, Any]]

List AutoCompany decisions awaiting or post-resolution.

Source: lightbulb/client.py:12129

list_aoc_runs

sync client declaration
def list_aoc_runs(**filters: Any) -> List[Dict[str, Any]]

List AutoCompany cognitive-loop runs.

Source: lightbulb/client.py:12018

list_aoc_task_events

sync client declaration
def list_aoc_task_events(task_id: str) -> List[Dict[str, Any]]

List events recorded against an AutoCompany task.

Source: lightbulb/client.py:12103

list_aoc_tasks

sync client declaration
def list_aoc_tasks(**filters: Any) -> List[Dict[str, Any]]

List AutoCompany tasks.

Source: lightbulb/client.py:12071

list_aoc_ticks

sync client declaration
def list_aoc_ticks(**filters: Any) -> List[Dict[str, Any]]

List AutoCompany cognitive-loop ticks.

Source: lightbulb/client.py:12155

list_approval_preferences

sync client declaration
def list_approval_preferences() -> List[Dict[str, Any]]

List the user's HITL auto-accept rules.

Source: lightbulb/client.py:12529

list_artifacts

sync client declaration
def list_artifacts(**filters) -> List[Dict[str, Any]]

List artifacts (charts, reports, analyses, etc.).

Source: lightbulb/client.py:8264

list_available_project_connector_accounts

sync client declaration
def list_available_project_connector_accounts(project_id: str, provider: str, *, company_id: str | None=None) -> List[Dict[str, Any]]

List provider accounts eligible for binding to one accessible project.

Full source documentation
List provider accounts eligible for binding to one accessible project.

This mirrors Spring's account-selector contract. It returns connection
identity and display metadata needed by a trusted binding UI, but never
connector credentials. Project/company authorization is enforced by
Spring on every request.

Source: lightbulb/client.py:3197

list_business_primitives

sync client declaration
def list_business_primitives(*, category: str | None=None, query: str | None=None, include_inputs: bool=True) -> List[Dict[str, Any]]

List the SDK/MCP canonical primitive manifest entries.

Source: lightbulb/client.py:7630

list_code_workspace_claude_sessions

sync client declaration
def list_code_workspace_claude_sessions(workspace_id: str) -> List[Dict[str, Any]]

List Claude SDK sessions associated with a workspace.

Source: lightbulb/client.py:11877

list_code_workspace_codex_threads

sync client declaration
def list_code_workspace_codex_threads(workspace_id: str, **filters: Any) -> List[Dict[str, Any]]

List Codex runtime threads attached to a workspace.

Source: lightbulb/client.py:11936

list_code_workspace_proposals

sync client declaration
def list_code_workspace_proposals(workspace_id: str) -> List[Dict[str, Any]]

List code-change proposals submitted to the workspace.

Source: lightbulb/client.py:11594

list_code_workspace_runs

sync client declaration
def list_code_workspace_runs(workspace_id: str, **filters: Any) -> List[Dict[str, Any]]

List historical coding runs for a workspace.

Source: lightbulb/client.py:11524

list_code_workspaces

sync client declaration
def list_code_workspaces() -> List[Dict[str, Any]]

List code workspaces.

Source: lightbulb/client.py:5294

list_companies

sync client declaration
def list_companies() -> List[Dict[str, Any]]

List companies the user has access to within their tenant.

Source: lightbulb/client.py:2805

list_connected_integrations

sync client declaration
def list_connected_integrations(company_id: str | None=None) -> List[Dict[str, Any]]

List connected integrations (OAuth connections) for the current company scope.

Source: lightbulb/client.py:2774

list_connectors

sync client declaration
def list_connectors() -> List[Dict[str, Any]]

List connector catalogue entries, not tenant account connection health.

Full source documentation
List connector catalogue entries, not tenant account connection health.

A catalogue status of active does not verify credentials or live access.

Source: lightbulb/client.py:9586

list_contacts

sync client declaration
def list_contacts(**filters) -> List[Dict[str, Any]]

List CRM contacts.

Source: lightbulb/client.py:9863

list_conversations

sync client declaration
def list_conversations(domain: str) -> List[Dict[str, Any]]

List all conversations for a domain.

Source: lightbulb/client.py:4992

list_crm_tasks

sync client declaration
def list_crm_tasks(tenant_id: str | None=None, **filters: Any) -> List[Dict[str, Any]]

List CRM tasks scoped to a tenant (defaults to authed tenant).

Source: lightbulb/client.py:12459

list_customer_inbound_events

sync client declaration
def list_customer_inbound_events(project_id: str, *, start: str, end: str, cursor: dict | None=None, company_id: str | None=None) -> Dict[str, Any]

Read accepted inquiries in an exact company, actor, project and time window.

Source: lightbulb/client.py:7486

list_customer_webhook_hints

sync client declaration
def list_customer_webhook_hints(project_id: str, *, connector_account_ref: str, start: str, end: str, cursor: dict | None=None, company_id: str | None=None) -> Dict[str, Any]

Read scoped durable webhook wake hints; these do not authorize payment or effects.

Source: lightbulb/client.py:7451

list_deals

sync client declaration
def list_deals(**filters) -> List[Dict[str, Any]]

List CRM deals/opportunities.

Source: lightbulb/client.py:9875

list_document_sessions

sync client declaration
def list_document_sessions() -> List[Dict[str, Any]]

List document builder sessions.

Source: lightbulb/client.py:5043

list_domain_actions

sync client declaration
def list_domain_actions(domain: str) -> List[Dict[str, Any]]

List available actions for a specific domain agent.

Source: lightbulb/client.py:10323

list_domains

sync client declaration
def list_domains() -> Dict[str, Dict[str, Any]] | List[Dict[str, Any]]

List all available domain agents and their capabilities.

Source: lightbulb/client.py:10314

list_engine_states

sync client declaration
def list_engine_states(project_id: str, *, engine: str | None=None, status: str | None=None, limit: int=50, company_id: str | None=None) -> List[Dict[str, Any]]

List persisted engine state records for a project, newest first.

Source: lightbulb/client.py:9531

list_exchange_counterparties

sync client declaration
def list_exchange_counterparties(*, company_id: str | None=None) -> List[Dict[str, Any]]

The companies this one trades with or has blocked: address, current party ref, display name and status.

Source: lightbulb/client.py:9358

list_exchange_deliveries

sync client declaration
def list_exchange_deliveries(*, exchange_ref: str | None=None, limit: int=50, company_id: str | None=None) -> List[Dict[str, Any]]

What this company sent, newest first, each with its status: queued, received or refused (with the recipient's code).

Source: lightbulb/client.py:9386

list_exchange_inbox

sync client declaration
def list_exchange_inbox(*, limit: int=50, company_id: str | None=None) -> List[Dict[str, Any]]

What waits for this company, oldest first: each delivery with its sealed document and the sender's address and party.

Source: lightbulb/client.py:9401

list_executable_business_primitives

sync client declaration
def list_executable_business_primitives(*, query: str='', include_schemas: bool=True, offset: int=0, limit: int | None=None) -> Dict[str, Any]

List SDK primitive implementations from the canonical manifest.

Source: lightbulb/client.py:5365

list_finance_reconciliation_runs

sync client declaration
def list_finance_reconciliation_runs(*, company_id: str | None=None, limit: int=50) -> tuple[FinanceReconciliationRunSummary, ...]

List bounded reconciliation run summaries under one Spring scope.

Source: lightbulb/client.py:3688

list_folder

sync client declaration
def list_folder(folder_path: str='', *, source_system: str | None=None, max_items: int=100) -> DispatchResult

List documents in a folder.

Source: lightbulb/client.py:5112

list_governed_communication_sources

sync client declaration
def list_governed_communication_sources(project_id: str, *, limit: int=20, cursor: str | None=None, company_id: str | None=None) -> GovernedCommunicationSourcePage

List a bounded page of opaque, currently admissible Gmail sources.

Source: lightbulb/client.py:6810

list_marketplace_installations

sync client declaration
def list_marketplace_installations(*, status: str | None=None, cursor: str | None=None, limit: int=50) -> Dict[str, Any]

List marketplace installations for the selected active company.

Source: lightbulb/client.py:10819

list_marketplace_listings

sync client declaration
def list_marketplace_listings(*, query: str | None=None, kind: str | None=None, domain: str | None=None, cursor: str | None=None, limit: int=50, include_inputs: bool=True) -> Dict[str, Any]

List persisted lifecycle listings and authoritative UUID IDs.

Source: lightbulb/client.py:10625

list_notifications

sync client declaration
def list_notifications(**filters) -> List[Dict[str, Any]]

List notifications (HITL decisions, workflow alerts, system messages).

Source: lightbulb/client.py:9889

list_page_builder_sessions

sync client declaration
def list_page_builder_sessions() -> List[Dict[str, Any]]

List page builder sessions.

Source: lightbulb/client.py:5200

list_pending_approvals

sync client declaration
def list_pending_approvals() -> List[Dict[str, Any]]

List pending HITL approval tasks waiting for your decision.

Source: lightbulb/client.py:8813

list_project_business_outcomes

sync client declaration
def list_project_business_outcomes(project_id: str, *, limit: int=25) -> Dict[str, Any]

Read the authenticated score ledger for one accessible project.

Source: lightbulb/client.py:4486

list_project_connector_accounts

sync client declaration
def list_project_connector_accounts(project_id: str, *, company_id: str | None=None) -> List[Dict[str, Any]]

List connector accounts already bound to one accessible project.

Full source documentation
List connector accounts already bound to one accessible project.

Spring remains authoritative for tenant, company, project-sharing, and
RBAC checks. The response contains binding metadata, never OAuth access
or refresh credentials. Pass ``company_id`` to pin this read without
mutating the client's selected-company context.

Source: lightbulb/client.py:3166

list_project_learning_result_evaluations

sync client declaration
def list_project_learning_result_evaluations(project_id: str, *, limit: int=25) -> Dict[str, Any]

Read independent technical results and separate human decisions.

Source: lightbulb/client.py:4356

list_project_learning_reviews

sync client declaration
def list_project_learning_reviews(project_id: str, *, limit: int=25) -> Dict[str, Any]

Read human after-action decisions and admitted shadow observations.

Source: lightbulb/client.py:4178

list_project_learning_runs

sync client declaration
def list_project_learning_runs(project_id: str, *, limit: int=25) -> Dict[str, Any]

Read receipt-backed Training Quest state without inferring missing execution.

Source: lightbulb/client.py:4232

list_project_mission_runs

sync client declaration
def list_project_mission_runs(project_id: str, *, limit: int=25) -> Dict[str, Any]

Read briefing locks and action bindings for one accessible project.

Source: lightbulb/client.py:4084

list_project_policy_assignments

sync client declaration
def list_project_policy_assignments(project_id: str, *, limit: int=25) -> Dict[str, Any]

Read immutable decision-time probability assignments for one project.

Source: lightbulb/client.py:4560

list_project_policy_evaluations

sync client declaration
def list_project_policy_evaluations(project_id: str, *, limit: int=25) -> Dict[str, Any]

Read offline-policy receipts and their explicit truth boundary.

Source: lightbulb/client.py:4634

list_project_science_evidence

sync client declaration
def list_project_science_evidence(project_id: str, *, limit: int=50) -> Dict[str, Any]

Read the scope-verified hypothesis-to-policy context spine.

Source: lightbulb/client.py:4002

list_project_shadow_learner_updates

sync client declaration
def list_project_shadow_learner_updates(project_id: str, *, limit: int=25) -> Dict[str, Any]

Read bounded shadow update/rollback receipts; this grants no authority.

Source: lightbulb/client.py:4414

list_project_skill_matches

sync client declaration
def list_project_skill_matches(project_id: str, *, limit: int=25) -> Dict[str, Any]

Read the project's worker-verified shadow Training Arena ledger.

Source: lightbulb/client.py:4196

list_project_training_packs

sync client declaration
def list_project_training_packs(project_id: str, *, limit: int=25) -> Dict[str, Any]

Read exact Arena + human-lesson packs before any learning-run admission.

Source: lightbulb/client.py:4214

list_projects

sync client declaration
def list_projects(*, company_id: str | None=None) -> List[Dict[str, Any]]

List projects visible in one authenticated company scope.

Full source documentation
List projects visible in one authenticated company scope.

This is the discovery path used by host-neutral workflow adapters to
resolve a public ``project_ref`` before selecting the existing hosted
checkpoint store.  A caller-supplied company is applied only to this
request; it does not mutate the client's selected-company context.

Source: lightbulb/client.py:2949

list_ready_sdk_project_checkpoints

sync client declaration
def list_ready_sdk_project_checkpoints(project_id: str, *, ready_at: str, limit: int=100, company_id: str | None=None, run_ref: str | None=None) -> List[Dict[str, Any]]

Source: lightbulb/client.py:7517

list_runtime_domain_actions

sync client declaration
def list_runtime_domain_actions(*, project_id: str, status: str='pending_approval', company_id: str | None=None) -> Dict[str, Any]

List one explicit lifecycle state for the selected company.

Source: lightbulb/client.py:10506

list_runtime_outcomes

sync client declaration
def list_runtime_outcomes() -> List[Dict[str, Any]]

Return sanitized outcomes recorded by this SDK process.

Source: lightbulb/client.py:7843

list_server_workflow_improvement_packets

sync client declaration
def list_server_workflow_improvement_packets(*, status: str | None=None, limit: int=50) -> List[Dict[str, Any]]

Source: lightbulb/client.py:8058

list_tool_contracts

sync client declaration
def list_tool_contracts() -> List[Dict[str, Any]]

List hosted Tool schemas used for connector drift detection.

Source: lightbulb/client.py:9599

list_voice_executions

sync client declaration
def list_voice_executions(**filters: Any) -> List[Dict[str, Any]]

List voice agent executions (live and historical phone calls).

Source: lightbulb/client.py:11196

list_voice_pending_approvals

sync client declaration
def list_voice_pending_approvals() -> List[Dict[str, Any]]

List in-call HITL approvals waiting for caller-side decision.

Source: lightbulb/client.py:11222

list_workflow_improvement_packets

sync client declaration
def list_workflow_improvement_packets(output_dir: str | os.PathLike[str] | None=None, *, status: str | None=None) -> List[Dict[str, Any]]

List approval-gated workflow improvement packets.

Source: lightbulb/client.py:7914

list_workflows

sync client declaration
def list_workflows(*, company_id: str | None=None) -> List[Dict[str, Any]]

List active workflow definitions in the authenticated company scope.

Source: lightbulb/client.py:8334

lookup_connector_receipt

sync client declaration
def lookup_connector_receipt(request) -> Dict[str, Any]

Read the original governed receipt; this endpoint cannot dispatch a Tool.

Source: lightbulb/client.py:9645

mark_all_notifications_read

sync client declaration
def mark_all_notifications_read() -> Dict[str, Any]

Mark all notifications as read.

Source: lightbulb/client.py:12590

mark_economic_spine_effect_ambiguous

sync client declaration
def mark_economic_spine_effect_ambiguous(project_id: str, run_ref: str, request: EconomicSpineRunTransition | Mapping[str, Any], *, company_id: str | None=None) -> EconomicSpineRun

Source: lightbulb/client.py:6701

mark_notification_read

sync client declaration
def mark_notification_read(notification_id: str) -> Dict[str, Any]

Mark a single notification as read.

Source: lightbulb/client.py:12579

mark_procurement_purchase_order_ambiguous

sync client declaration
def mark_procurement_purchase_order_ambiguous(project_id: str, run_ref: str, request: ProcurementAmbiguity | Mapping[str, Any], *, company_id: str | None=None) -> ProcurementCommandReceipt

Source: lightbulb/client.py:13207

marketing_add_website_analytics_site

sync client declaration
def marketing_add_website_analytics_site(body: Dict[str, Any]) -> Dict[str, Any]

Register a website with the analytics setup.

Source: lightbulb/client.py:12902

marketing_content_configure_provider

sync client declaration
def marketing_content_configure_provider(provider: str, body: Dict[str, Any]) -> Dict[str, Any]

Configure a marketing-content provider (e.g. ga4, segment, plausible).

Source: lightbulb/client.py:12888

marketing_content_setup

sync client declaration
def marketing_content_setup() -> Dict[str, Any]

Get the marketing content connector setup state.

Source: lightbulb/client.py:12878

marketing_install_website_analytics

sync client declaration
def marketing_install_website_analytics(workspace_id: str, body: Dict[str, Any] | None=None) -> Dict[str, Any]

Install website analytics into a code workspace.

Source: lightbulb/client.py:12949

marketing_remove_website_analytics_site

sync client declaration
def marketing_remove_website_analytics_site(site_id: str) -> Dict[str, Any]

Remove a registered analytics site.

Source: lightbulb/client.py:12926

marketing_select_website_analytics_site

sync client declaration
def marketing_select_website_analytics_site(site_id: str) -> Dict[str, Any]

Activate a registered analytics site.

Source: lightbulb/client.py:12915

marketing_verify_website_analytics

sync client declaration
def marketing_verify_website_analytics(body: Dict[str, Any] | None=None) -> Dict[str, Any]

Verify the website analytics setup is wired correctly.

Source: lightbulb/client.py:12936

memory_add_skill

sync client declaration
def memory_add_skill(body: Dict[str, Any]) -> Dict[str, Any]

Record a new skill / capability.

Source: lightbulb/client.py:12448

memory_create_entry

sync client declaration
def memory_create_entry(body: Dict[str, Any]) -> Dict[str, Any]

Create a structured memory entry.

Source: lightbulb/client.py:12231

memory_create_identity

sync client declaration
def memory_create_identity(body: Dict[str, Any]) -> Dict[str, Any]

Create an identity record.

Source: lightbulb/client.py:12373

memory_get_entry

sync client declaration
def memory_get_entry(entry_id: str) -> Dict[str, Any]

Get a specific memory entry.

Source: lightbulb/client.py:12221

memory_get_identity

sync client declaration
def memory_get_identity(doc_id: str) -> Dict[str, Any]

Get an identity record by doc id.

Source: lightbulb/client.py:12382

memory_graph

sync client declaration
def memory_graph(**filters: Any) -> Dict[str, Any]

Full memory graph (or filtered subgraph).

Source: lightbulb/client.py:12341

memory_graph_node

sync client declaration
def memory_graph_node(node_id: str) -> Dict[str, Any]

Get a single node from the memory graph.

Source: lightbulb/client.py:12352

memory_list_entries

sync client declaration
def memory_list_entries(**filters: Any) -> List[Dict[str, Any]]

List memory entries (structured records).

Source: lightbulb/client.py:12205

memory_list_events

sync client declaration
def memory_list_events(**filters: Any) -> List[Dict[str, Any]]

List memory events (timeline of state changes).

Source: lightbulb/client.py:12392

memory_list_identity

sync client declaration
def memory_list_identity() -> List[Dict[str, Any]]

List identity records in the memory graph.

Source: lightbulb/client.py:12363

memory_list_skills

sync client declaration
def memory_list_skills() -> List[Dict[str, Any]]

List skills/capabilities recorded in memory.

Source: lightbulb/client.py:12438

memory_projection_memory

sync client declaration
def memory_projection_memory() -> Dict[str, Any]

Memory-structure projection of the agent.

Source: lightbulb/client.py:12258

memory_projection_soul

sync client declaration
def memory_projection_soul() -> Dict[str, Any]

Identity / personality projection of the agent.

Source: lightbulb/client.py:12249

memory_query

sync client declaration
def memory_query(body: Dict[str, Any]) -> Dict[str, Any]

Run a structured memory query (filters, time-windows, semantic).

Source: lightbulb/client.py:12240

memory_recall

sync client declaration
def memory_recall(key: str, *, namespace: str='default') -> Dict[str, Any]

Recall a value from agent memory.

Source: lightbulb/client.py:10288

memory_record_event

sync client declaration
def memory_record_event(body: Dict[str, Any]) -> Dict[str, Any]

Record a memory event.

Source: lightbulb/client.py:12408

memory_regulate

sync client declaration
def memory_regulate(*, idempotency_key: str | None=None, project_id: str | None=None, budget: int | None=None, categories: Sequence[str] | None=None, dry_run: bool=True, max_summary_chars: int=900, empirical_success_floor_ppm: int | None=None, empirical_success_min_samples: int=20, empirical_success_lookback_days: int=90, optimize_for_least_active_memory: bool=False, held_out_task_evaluation: Mapping[str, Any] | None=None) -> Dict[str, Any]

Preview or execute bounded, success-evidence-aware compaction.

Full source documentation
Preview or execute bounded, success-evidence-aware compaction.

Mutating calls require a caller-owned idempotency key. The raw key is
used only for request replay and is retained by the server as a digest.
An explicit empty ``categories`` sequence means select no categories;
``None`` means use the complete exact-owner scope.

Supplying ``empirical_success_floor_ppm`` gates mutation on the share of
Memory references from successful skill-execution receipts that remain
raw and active. ``optimize_for_least_active_memory`` asks the server to
select the smallest budget that clears that floor. This conservative
metric preserves empirical success evidence; it does not claim held-out
end-task success. ``held_out_task_evaluation`` instead carries a
promotion-grade policy plus authenticated aggregate receipts bound to
exact virtual compaction candidates. A dry run with candidate budgets
and no receipts returns the bindings an evaluator must execute.

Source: lightbulb/client.py:12286

memory_regulation_storage_status

sync client declaration
def memory_regulation_storage_status() -> Dict[str, Any]

Inspect finite company, tenant, and platform receipt admission.

Source: lightbulb/client.py:12276

memory_search

sync client declaration
def memory_search(query: str, *, namespace: str='default', top_k: int=5) -> List[Dict[str, Any]]

Search agent memory semantically.

Source: lightbulb/client.py:10298

memory_status

sync client declaration
def memory_status() -> Dict[str, Any]

Health / capacity status of the memory subsystem.

Source: lightbulb/client.py:12267

memory_store

sync client declaration
def memory_store(key: str, value: str, *, namespace: str='default') -> Dict[str, Any]

Store a value in agent memory.

Source: lightbulb/client.py:10275

migrate_engine_state

sync client declaration
def migrate_engine_state(project_id: str, engine: str, entity_ref: str, state: 'Dict[str, Any]', *, migration: 'Dict[str, Any]', company_id: str | None=None) -> Dict[str, Any]

Persist a state migrated to a new plan behind Spring's migration fence.

Full source documentation
Persist a state migrated to a new plan behind Spring's migration fence.

A migration keeps the persisted version and changes the plan digest; Spring
admits it only when ``migration`` (the sealed ``PlanMigration`` proof from
``lightbulb.company_plan_migration``) starts from the persisted state digest
and plan digest and ends at the supplied state. Anything else answers 409.

Source: lightbulb/client.py:9445

modify_voice_action

sync client declaration
def modify_voice_action(execution_id: str, approval_task_id: str, modifications: Dict[str, Any]) -> Dict[str, Any]

Approve a voice action with modifications to the proposed payload.

Source: lightbulb/client.py:11267

native_coding

sync client declaration
def native_coding(project_id: str) -> NativeCodingClient

Connect a user-owned Codex, Claude Code or Cursor runtime to Project tasks.

Source: lightbulb/client.py:3017

notify_owner_in_app

sync client declaration
def notify_owner_in_app(project_id: str, *, kind: str, notification_key: str, title: str, message: str, company_id: str | None=None) -> Dict[str, Any]

Deliver an in-app notification to the authenticated caller (the owner the agent works for).

Full source documentation
Deliver an in-app notification to the authenticated caller (the owner the agent works for).

Nothing leaves the platform and no recipient can be named: Spring always
notifies the caller, inside the path project's scope. ``kind`` is
``owner_digest`` or ``owner_action``; the SDK's owner action record makes
each delivery happen once. Returns the delivery receipt.

Source: lightbulb/client.py:9255

page_builder_capabilities

sync client declaration
def page_builder_capabilities(session_id: str) -> Dict[str, Any]

List page capabilities (forms, search, auth, etc.).

Source: lightbulb/client.py:12730

page_builder_deploy

sync client declaration
def page_builder_deploy(session_id: str, page_key: str='') -> Dict[str, Any]

Deploy a page builder session.

Source: lightbulb/client.py:5233

page_builder_get_preview

sync client declaration
def page_builder_get_preview(session_id: str) -> Dict[str, Any]

Get the preview URL for a page builder session.

Source: lightbulb/client.py:5245

page_builder_get_schemas

sync client declaration
def page_builder_get_schemas(session_id: str) -> Dict[str, Any]

Get the current page schemas for a session.

Source: lightbulb/client.py:5223

page_builder_install_artifact

sync client declaration
def page_builder_install_artifact(session_id: str, body: Dict[str, Any]) -> Dict[str, Any]

Install a component artifact into the page session.

Source: lightbulb/client.py:12717

page_builder_promote_install_bundle

sync client declaration
def page_builder_promote_install_bundle(session_id: str, body: Dict[str, Any]) -> Dict[str, Any]

Promote an install bundle to the workspace.

Source: lightbulb/client.py:12704

page_builder_promote_section

sync client declaration
def page_builder_promote_section(session_id: str, body: Dict[str, Any]) -> Dict[str, Any]

Promote a section artifact to the install bundle.

Source: lightbulb/client.py:12691

page_builder_save_backend_contract

sync client declaration
def page_builder_save_backend_contract(session_id: str, body: Dict[str, Any]) -> Dict[str, Any]

Define a backend contract for a page (data shape + agent binding).

Source: lightbulb/client.py:12753

page_builder_save_capability

sync client declaration
def page_builder_save_capability(session_id: str, body: Dict[str, Any]) -> Dict[str, Any]

Save a capability to the page session.

Source: lightbulb/client.py:12740

page_builder_send_message

sync client declaration
def page_builder_send_message(session_id: str, content: str) -> Dict[str, Any]

Send a message to a page builder session (non-streaming).

Source: lightbulb/client.py:5210

page_builder_unpublish

sync client declaration
def page_builder_unpublish(session_id: str) -> Dict[str, Any]

Unpublish a deployed page builder session.

Source: lightbulb/client.py:12766

page_builder_workspace_automation

sync client declaration
def page_builder_workspace_automation(session_id: str, body: Dict[str, Any] | None=None) -> Dict[str, Any]

Run the page-builder workspace automation (auto-wire pages → agents → backend).

Source: lightbulb/client.py:12678

pin_marketplace_action

sync client declaration
def pin_marketplace_action(installation_id: str, revision_id: str, *, idempotency_key: str, expected_revision_id: str | None=None) -> Dict[str, Any]

Pin an installation to an immutable listing revision.

Source: lightbulb/client.py:10931

post_aoc_task_event

sync client declaration
def post_aoc_task_event(task_id: str, body: Dict[str, Any]) -> Dict[str, Any]

Post a new event onto an AutoCompany task.

Source: lightbulb/client.py:12118

preflight_project_creation

sync client declaration
def preflight_project_creation(name: str, instructions: str='') -> ProjectCreationPreflightReceipt

Review a project draft without creating or mutating anything.

Full source documentation
Review a project draft without creating or mutating anything.

Only ``name`` and ``instructions`` are accepted. The request always
runs in shadow/read-only mode, and the returned receipt trusts an
execution UUID only when it arrived on the dedicated ``execution`` SSE
event.

Source: lightbulb/client.py:4714

preflight_training_pair

sync client declaration
def preflight_training_pair(installation_id: str, revision_id: str, *, project_id: str | None=None) -> Dict[str, Any]

Read readiness for one exact installed action revision.

Full source documentation
Read readiness for one exact installed action revision.

This call is read-only despite using POST. It never admits, schedules,
or launches training.

Source: lightbulb/client.py:11097

prepare_company_blueprint_native_proof

sync client declaration
def prepare_company_blueprint_native_proof(project_id: str, blueprint_version_id: str, golden_loop_certification_record_ids: Sequence[str], rollback_shadow_intent_id: str, *, company_id: str | None=None) -> dict[str, Any]

Ask Spring to derive the exact no-effect Blueprint proof set.

Source: lightbulb/client.py:5722

prepare_project_learning_run

sync client declaration
def prepare_project_learning_run(project_id: str, *, training_pack_receipt_id: Any, primary_metric: Any, runtime: str='automl', request_id: Any=None, direction: str='maximize', minimum_improvement: Any='0.010000', max_cost_usd: Any='0.000000', max_platform_cost_usd: Any='5.000000', max_gpu_seconds: Any=3600, max_tokens: Any=100000, max_steps: Any=10000, provider_account_fingerprint: Any=None, provider_binding_expires_at: Any=None, max_attempts: Any=3, lease_seconds: Any=300, preemptible: bool=True, confirm_prepare: bool=False, idempotency_key: str | None=None, check_deployment: bool=False) -> Dict[str, Any]

Publish exact dataset custody and create a queued durable Memory run.

Source: lightbulb/client.py:4250

prepare_workflow_learning_handoff

sync client declaration
def prepare_workflow_learning_handoff(packet_id: str, delivery_id: str, installation_id: str, revision_id: str, *, candidate_manifest: Dict[str, Any], episode_manifest: Dict[str, Any] | None=None, project_id: str | None=None) -> Dict[str, Any]

Bind a validated delivery to read-only paired-learning readiness.

Full source documentation
Bind a validated delivery to read-only paired-learning readiness.

This performs authenticated reads only. It cannot admit, fund, launch,
evaluate, promote, or serve either training lane.

Source: lightbulb/client.py:8191

preview_account_shell_customization

sync client declaration
def preview_account_shell_customization(draft_revision_id: str) -> Dict[str, Any]

Compile a draft into a non-publishing preview receipt.

Source: lightbulb/client.py:10372

preview_marketplace_action_publication

sync client declaration
def preview_marketplace_action_publication(*, slug: str, name: str, version: str, domain: str, action: str, visibility: str='PRIVATE', pricing_model: str='INCLUDED', changelog: str='') -> Dict[str, Any]

Preview a server-derived immutable action contract without publishing it.

Source: lightbulb/client.py:10680

preview_reference_company_onboarding

sync client declaration
def preview_reference_company_onboarding(project_id: str, blueprint_version_ref: str, *, connector_selections: Mapping[str, str], coding_harness: str | None=None, company_id: str | None=None) -> ReferenceCompanyOnboardingPreview

Validate one exact-scope reference-company setup without activating it.

Source: lightbulb/client.py:5621

propose_company_blueprint_certification

sync client declaration
def propose_company_blueprint_certification(project_id: str, candidate: CompanyBlueprintCertificationCandidate | Mapping[str, Any], *, evidence_target_id: str, idempotency_key: str, company_id: str | None=None) -> CompanyBlueprintCertificationStatus

Offer exact Blueprint evidence to Spring for independent review.

Source: lightbulb/client.py:5692

propose_company_blueprint_deployment

sync client declaration
def propose_company_blueprint_deployment(project_id: str, candidate: CompanyBlueprintDeploymentCandidate | Mapping[str, Any], *, idempotency_key: str, company_id: str | None=None) -> CompanyBlueprintDeploymentStatus

Source: lightbulb/client.py:5835

propose_contract_to_cash_invoice

sync client declaration
def propose_contract_to_cash_invoice(project_id: str, request: ContractToCashInvoiceProposalRequest | Mapping[str, Any], *, company_id: str | None=None) -> ContractToCashInvoiceProposalReceipt

Create or replay one exact Spring-owned invoice approval proposal.

Source: lightbulb/client.py:6171

propose_golden_loop_certification

sync client declaration
def propose_golden_loop_certification(project_id: str, request: GoldenLoopCertificationProposalRequest | Mapping[str, Any], *, company_id: str | None=None) -> GoldenLoopCertificationCandidateStatus

Submit one exact evidence-sealed candidate for independent review.

Source: lightbulb/client.py:6070

publish_account_shell_customization

sync client declaration
def publish_account_shell_customization(draft_revision_id: str, *, preview_receipt_id: str, expected_current_revision_id: str | None, idempotency_key: str) -> Dict[str, Any]

Publish the exact previewed draft with optimistic concurrency.

Source: lightbulb/client.py:10395

publish_exchange_card

sync client declaration
def publish_exchange_card(card: 'Dict[str, Any]', *, visibility: str='platform', listed: bool | None=None, company_id: str | None=None) -> Dict[str, Any]

Publish the company's sealed card in the platform's exchange directory (``PUT /api/company-exchange/card``).

Full source documentation
Publish the company's sealed card in the platform's exchange directory (``PUT /api/company-exchange/card``).

The platform checks the card's seal and keeps it under the company's exchange address
(``lbx_...``), the only name other companies use to find it and send to it. With
``visibility`` ``public`` anyone may also read it at
``/api/public/company-exchange/cards/{address}``. ``listed`` true puts it in the
directory's search (``search_exchange_directory``) and false takes it out; left out,
the listing stays as it was. Republishing keeps the address.

Source: lightbulb/client.py:9303

publish_marketplace_action

sync client declaration
def publish_marketplace_action(*, slug: str, name: str, version: str, domain: str, action: str, expected_contract_digest: str, idempotency_key: str, visibility: str='PRIVATE', pricing_model: str='INCLUDED', changelog: str='') -> Dict[str, Any]

Publish the exact action contract approved by a prior preview.

Source: lightbulb/client.py:10712

put_engine_state

sync client declaration
def put_engine_state(project_id: str, engine: str, entity_ref: str, state: 'Dict[str, Any]', *, expected_version: int | None, expected_state_digest: str | None, company_id: str | None=None) -> Dict[str, Any]

Persist one sealed company-engine state behind Spring's version and digest fences.

Full source documentation
Persist one sealed company-engine state behind Spring's version and digest fences.

``expected_version`` and ``expected_state_digest`` are the prior persisted
state's values (``0``/``None`` to create). Spring answers 409 when they are
stale, when the document does not advance exactly one version, when the
transition was already applied, or when the plan differs. The state carries
opaque refs only; scope comes from the session and the path project.

Source: lightbulb/client.py:9415

put_sdk_project_checkpoint

sync client declaration
def put_sdk_project_checkpoint(project_id: str, run_ref: str, checkpoint: Dict[str, Any], *, expected_revision: int | None, company_id: str | None=None) -> Dict[str, Any]

Source: lightbulb/client.py:7429

rag_query

sync client declaration
def rag_query(question: str, *, top_k: int=5, document_ids: List[str] | None=None) -> Dict[str, Any]

Query the RAG knowledge base directly.

Source: lightbulb/client.py:9556

rag_upload_document

sync client declaration
def rag_upload_document(filename: str, content: str, **metadata) -> Dict[str, Any]

Upload a document to the RAG library.

Source: lightbulb/client.py:9570

reconcile_economic_spine_run

sync client declaration
def reconcile_economic_spine_run(project_id: str, run_ref: str, request: EconomicSpineRunTransition | Mapping[str, Any], *, company_id: str | None=None) -> EconomicSpineRun

Source: lightbulb/client.py:6710

reconcile_procurement_purchase_order

sync client declaration
def reconcile_procurement_purchase_order(project_id: str, run_ref: str, request: ProcurementReconciliation | Mapping[str, Any], *, company_id: str | None=None) -> ProcurementCommandReceipt

Source: lightbulb/client.py:13226

record_procurement_goods_receipt

sync client declaration
def record_procurement_goods_receipt(project_id: str, run_ref: str, request: ProcurementGoodsReceipt | Mapping[str, Any], *, company_id: str | None=None) -> ProcurementCommandReceipt

Source: lightbulb/client.py:13058

record_procurement_supplier_invoice

sync client declaration
def record_procurement_supplier_invoice(project_id: str, run_ref: str, request: ProcurementSupplierInvoice | Mapping[str, Any], *, company_id: str | None=None) -> ProcurementCustodyReceipt

Source: lightbulb/client.py:13077

record_project_business_outcome

sync client declaration
def record_project_business_outcome(project_id: str, *, metric_id: Any, metric_label: Any, direction: Any, baseline_value: Any, observed_value: Any, confirm_record: bool=False, unit: Any=None, observed_at: Any=None, observation_id: Any=None, source_kind: str='human_attestation', source_event_id: Any=None, evidence_refs: Sequence[Any] | None=None, links: Mapping[str, Any] | None=None, note: Any=None, idempotency_key: str | None=None) -> Dict[str, Any]

Append one scoped metric observation; never admit learning or promotion.

Source: lightbulb/client.py:4505

record_project_coding_harness_result

sync client declaration
def record_project_coding_harness_result(project_id: str, *, harness: str, handoff_payload_id: str, status: str, summary: str, report_id: str | None=None, host_session_ref: str | None=None, changed_files: Sequence[str] | None=None, test_commands_and_results: Sequence[str] | None=None, unresolved_requirements_or_acceptance_gaps: str | None=None, pull_request_url: str | None=None, commit_sha: str | None=None) -> Dict[str, Any]

Return bounded coding evidence to the Project Agent delivery loop.

Source: lightbulb/client.py:3112

record_project_learning_review

sync client declaration
def record_project_learning_review(project_id: str, *, mission_run_receipt_id: Any, mission_action_receipt_id: Any, outcome_receipt_id: Any, decision: Any, skill_trial_arm: Any, selected_skill_ids: Sequence[Any] | None, label: Any, reason: Any, confirm_record: bool=False, review_id: Any=None, evidence_refs: Sequence[Any] | None=None, idempotency_key: str | None=None) -> Dict[str, Any]

Human-review one exact chain for shadow training; no live learner mutation.

Source: lightbulb/client.py:4438

record_project_policy_assignment

sync client declaration
def record_project_policy_assignment(project_id: str, *, metric_id: Any, direction: Any, actions: Sequence[Mapping[str, Any]], chosen_action_id: Any, behavior_policy: Mapping[str, Any], candidate_policies: Sequence[Mapping[str, Any]], confirm_record: bool=False, assignment_id: Any=None, unit: Any=None, decided_at: Any=None, source_kind: str='human_attestation', source_event_id: Any=None, evidence_refs: Sequence[Any] | None=None, links: Mapping[str, Any] | None=None, note: Any=None, idempotency_key: str | None=None) -> Dict[str, Any]

Log propensities before an outcome; this never executes an action.

Source: lightbulb/client.py:4578

record_project_science_evidence

sync client declaration
def record_project_science_evidence(project_id: str, *, stage: Any, summary: Any, business_metric_id: Any, expected_direction: Any, artifact_kind: Any, artifact_system: Any, artifact_reference: Any, artifact_digest_sha256: Any, producer_role: Any, confirm_record: bool=False, tool_names: Sequence[Any] | None=None, skill_ids: Sequence[Any] | None=None, parent_receipt_ids: Sequence[Any] | None=None, artifact_schema: Any=None, observed_at: Any=None, evidence_id: Any=None, source_kind: str='human_attestation', source_event_id: Any=None, evidence_refs: Sequence[Any] | None=None, idempotency_key: str | None=None) -> Dict[str, Any]

Append scientific lineage evidence; never authorize the underlying action.

Source: lightbulb/client.py:4020

record_server_runtime_outcomes

sync client declaration
def record_server_runtime_outcomes(outcomes: List[Dict[str, Any]], *, idempotency_key: str | None=None) -> Dict[str, Any]

Persist a batch in the authenticated tenant/company runtime ledger.

Source: lightbulb/client.py:7853

record_server_workflow_improvement_run

sync client declaration
def record_server_workflow_improvement_run(*, idempotency_key: str, contract_score: float, primitive_count: int, check_count: int, passed_check_count: int, trend_direction: str, source_run_id: str | None=None, outcomes: List[Dict[str, Any]] | None=None, metrics: Dict[str, Any] | None=None) -> Dict[str, Any]

Source: lightbulb/client.py:7986

record_workflow_improvement_delivery_event

sync client declaration
def record_workflow_improvement_delivery_event(delivery_id: str, event_type: str, *, rationale: str='', evidence: Dict[str, Any] | None=None) -> Dict[str, Any]

Source: lightbulb/client.py:8143

recover_assessment_workspace

sync client declaration
def recover_assessment_workspace(workspace: Any, *, run_ref: str, expected_revision: int) -> Dict[str, Any] | None

Read back an uncertain save; never retry or overwrite the checkpoint.

Source: lightbulb/client.py:7416

recursive_agent_execute

sync client declaration
def recursive_agent_execute(objective: str, *, inputs: Dict[str, Any] | None=None, policy: Any=None, execution_id: str | None=None) -> Dict[str, Any]

Run a governed recursive objective with finite subagent and REPL limits.

Source: lightbulb/client.py:8445

refine_project_creation_preflight

sync client declaration
def refine_project_creation_preflight(receipt: ProjectCreationPreflightReceipt, answer: str) -> ProjectCreationPreflightReceipt

Apply one explicit answer to the receipt's authoritative next question.

Source: lightbulb/client.py:4826

refresh_auth

sync client declaration
def refresh_auth() -> bool

Run the configured ``auth_refresh`` callback and swap in fresh auth.

Full source documentation
Run the configured ``auth_refresh`` callback and swap in fresh auth.

Returns ``True`` if a new ``AuthStrategy`` was installed. Callers
typically invoke this after catching :class:`AuthenticationError`,
then retry the failed request:

    try:
        client.dispatch("finance", action="chat", message="...")
    except AuthenticationError:
        if client.refresh_auth():
            client.dispatch("finance", action="chat", message="...")

Source: lightbulb/client.py:3473

register_contract_to_cash_cash_collection

sync client declaration
def register_contract_to_cash_cash_collection(project_id: str, request: ContractToCashCashCollectionRegistration | Mapping[str, Any], *, company_id: str | None=None) -> ContractToCashCashCollectionRecord

Seal independent accounting and payout evidence as collected cash.

Source: lightbulb/client.py:6276

register_contract_to_cash_invoice_issued

sync client declaration
def register_contract_to_cash_invoice_issued(project_id: str, request: ContractToCashInvoiceIssuedRegistration | Mapping[str, Any], *, company_id: str | None=None) -> ContractToCashInvoiceIssuedRecord

Seal one exact reconciled invoice write/readback pair into Spring custody.

Source: lightbulb/client.py:6227

register_executed_commercial_agreement

sync client declaration
def register_executed_commercial_agreement(project_id: str, candidate: ExecutedCommercialAgreementCustodyCandidate | Mapping[str, Any], *, company_id: str | None=None) -> ExecutedCommercialAgreementRecord

Seal completed-envelope and signed-document READs into Spring custody.

Source: lightbulb/client.py:5924

register_external_artifact

sync client declaration
def register_external_artifact(*, type: str, title: str='', summary: str='', uri: str='', content: str='', project_id: Optional[str]=None, source_agent: str='external_agent', metadata: Optional[Dict[str, Any]]=None, attach_workspace: bool=False) -> Dict[str, Any]

Register an external artifact (codebase/document/slide deck/spreadsheet/url) created by a general agent so Lightbulb domain agents can discover and work on it.

Full source documentation
Register an external artifact (codebase/document/slide deck/spreadsheet/url) created
by a general agent so Lightbulb domain agents can discover and work on it.

Either ``uri`` or ``content`` must be provided. For a ``codebase`` artifact with a repo
``uri``, set ``attach_workspace=True`` to also clone it into a Code Workspace so Lightbulb
agents can work on it.

Source: lightbulb/client.py:8289

register_golden_loop_catalog

sync client declaration
def register_golden_loop_catalog(project_id: str, request: GoldenLoopCatalogRegistrationRequest | Mapping[str, Any], *, company_id: str | None=None) -> GoldenLoopCatalogVersion

Register or replay one immutable, QUARANTINED catalog version.

Source: lightbulb/client.py:5993

register_runtime_domain_action

sync client declaration
def register_runtime_domain_action(domain: str, action: str, *, project_id: str, idempotency_key: str, description: str='', component_ids: Sequence[str] | None=None, agent_spec: Dict[str, Any] | None=None, execution_policy: Dict[str, Any] | None=None, company_id: str | None=None) -> Dict[str, Any]

Register a company-scoped action as ``pending_approval``.

Full source documentation
Register a company-scoped action as ``pending_approval``.

This method cannot set lifecycle status, approve the registration, or
execute the action. The selected company is carried only by the
authenticated ``X-Company-Id`` header.

Source: lightbulb/client.py:10464

reject_code_workspace_proposal

sync client declaration
def reject_code_workspace_proposal(workspace_id: str, proposal_id: str, *, reason: str='') -> Dict[str, Any]

Reject a proposal.

Source: lightbulb/client.py:11631

reject_runtime_domain_action

sync client declaration
def reject_runtime_domain_action(runtime_action_id: str, *, project_id: str, company_id: str | None=None) -> Dict[str, Any]

Reject one reviewed pending registration without executing it.

Source: lightbulb/client.py:10566

reject_task

sync client declaration
def reject_task(task_id: str, *, comments: str='') -> Dict[str, Any]

Reject a pending HITL task.

Source: lightbulb/client.py:8843

reject_voice_action

sync client declaration
def reject_voice_action(execution_id: str, approval_task_id: str, *, comments: str='') -> Dict[str, Any]

Reject a pending in-call action.

Source: lightbulb/client.py:11250

renew_sdk_project_checkpoint_lease

sync client declaration
def renew_sdk_project_checkpoint_lease(project_id: str, run_ref: str, *, worker_ref: str, expected_revision: int, lease_seconds: int=60, company_id: str | None=None) -> Dict[str, Any]

Source: lightbulb/client.py:7561

request_engine_transition_approval

sync client declaration
def request_engine_transition_approval(request: 'Dict[str, Any] | Any') -> Dict[str, Any]

Open a human approval for one sealed company-engine transition.

Full source documentation
Open a human approval for one sealed company-engine transition.

``request`` is a :class:`lightbulb.company_execution_bridge.EngineApprovalRequest`
(or its dict form).  The body carries the exact transition binding
(engine, entity, event, request and state digests); tenant and company
come from the session, never from the body.  Returns the platform
approval task; its ``id`` is the ``approval_ref`` once approved, and
:func:`lightbulb.company_execution_bridge.bind_approval` proves the
decision binds this request before it is placed on a command.

Source: lightbulb/client.py:9004

request_launch_gate_approval

sync client declaration
def request_launch_gate_approval(request: 'Dict[str, Any] | Any', *, approver_user_id: str | None=None) -> Dict[str, Any]

Open a human-only attestation for one ``company_launch`` step done outside Lightbulb.

Full source documentation
Open a human-only attestation for one ``company_launch`` step done outside Lightbulb.

Registrar filing, bank account/KYC, signature, insurance, licence, Stripe-hosted
payments onboarding and the kill-or-scale decision are performed by a person, not
the platform.  ``request`` is the sealed launch-gate binding (the launch engine's
command binding plus ``gate_kind``, ``evidence_sha256``, ``evidence_refs`` and
``attestation_sha256``) - an object exposing ``to_platform_body()`` or its dict
form.  Tenant and company come from the session, never from the body.

``approver_user_id`` optionally pins the decision to one named member of the
company; it is supplied by the MCP/CLI caller and never enters a sealed SDK model.
Spring registers the task as ``sdk_launch_gate`` with ``workflow_generated_hitl``
set, so no auto-accept preference applies and the requester cannot decide it.
Returns the platform approval task; read the decision back with
:meth:`get_approval`.

Source: lightbulb/client.py:9038

request_project_native_coding_handoff

sync client declaration
def request_project_native_coding_handoff(project_id: str, harness: str, *, expected_digest: str | None=None) -> Dict[str, Any]

Propose a human review, or export its exact approved native work packet.

Full source documentation
Propose a human review, or export its exact approved native work packet.

Omit expected_digest to prepare/review. Pass the reviewed digest to
export after the user decides the ApprovalTask. This never starts a
hosted coding agent or marks an external delivery as verified.

Source: lightbulb/client.py:3021

request_provisioning

sync client declaration
def request_provisioning(company_id: str, instrument: str, inputs: Dict[str, Any], *, idempotency_key: str, project_id: str | None=None) -> Dict[str, Any]

Propose one platform-minted instrument (Stripe Connect account, site, phone number).

Full source documentation
Propose one platform-minted instrument (Stripe Connect account, site, phone number).

Nothing is created here: Spring opens a provisioning journal and an
approval task a *different* human decides, and returns the proposal with
the human gates that instrument opens.  Execute it with
:meth:`execute_provisioning` once the task is approved.

Source: lightbulb/client.py:2821

request_training_pair_admission

sync client declaration
def request_training_pair_admission(installation_id: str, revision_id: str, *, idempotency_key: str, project_id: str | None=None) -> Dict[str, Any]

Request admission and preserve the gateway's structured hard 503.

Full source documentation
Request admission and preserve the gateway's structured hard 503.

Production currently has no admission, scheduler, or launcher. Only an
exact ``lightbulb.training_pair_admission.v1`` unavailable response is
returned normally for HTTP 503; every other error is raised.

Source: lightbulb/client.py:11129

resolve_executed_commercial_agreement

sync client declaration
def resolve_executed_commercial_agreement(project_id: str, agreement_ref: str, *, company_id: str | None=None) -> ExecutedCommercialAgreementRecord

Source: lightbulb/client.py:5970

restart_period_reconciliation_run

sync client declaration
def restart_period_reconciliation_run(project_id: str, request: PeriodReconciliationRestartRequest | Mapping[str, Any], *, company_id: str | None=None) -> PeriodReconciliationRunReceipt

Source: lightbulb/client.py:6426

retain_period_reconciliation_quickbooks_reads

sync client declaration
def retain_period_reconciliation_quickbooks_reads(project_id: str, run_ref: str, request: PeriodReconciliationQuickBooksReadSetRequest | Mapping[str, Any], *, company_id: str | None=None) -> PeriodReconciliationReadSetReceipt

Source: lightbulb/client.py:6441

retain_period_reconciliation_review

sync client declaration
def retain_period_reconciliation_review(project_id: str, run_ref: str, request: PeriodReconciliationReviewRequest | Mapping[str, Any], *, company_id: str | None=None) -> PeriodReconciliationReviewReceipt

Source: lightbulb/client.py:6485

retain_period_reconciliation_scope

sync client declaration
def retain_period_reconciliation_scope(project_id: str, request: PeriodReconciliationScopeRequest | Mapping[str, Any], *, company_id: str | None=None) -> PeriodReconciliationScopeReceipt

Source: lightbulb/client.py:6396

rollback_account_shell_customization

sync client declaration
def rollback_account_shell_customization(target_revision_id: str, *, expected_current_revision_id: str | None, idempotency_key: str) -> Dict[str, Any]

Roll back to an immutable revision with optimistic concurrency.

Source: lightbulb/client.py:10431

run_business_primitive

sync client declaration
def run_business_primitive(primitive_id: str, inputs: Dict[str, Any] | None=None, *, primitive_version: str | None=None, project_ref: str | None=None, project_id: str | None=None, approval_refs: Dict[str, str] | None=None, connector_account_refs: Dict[str, str] | None=None, run_ref: str | None=None, idempotency_key: str | None=None, source: str='sdk', mode: str | None=None, preview_only: bool=True, request: str='') -> Dict[str, Any]

Run the same canonical Executable Primitive contract as MCP.

Full source documentation
Run the same canonical Executable Primitive contract as MCP.

``source``, ``mode``, and ``request`` remain accepted for source
compatibility but cannot alter the primitive input or execution path.
Missing Project scope and unknown refs fail closed without a network
call. Spring remains the sole connector-write authority.

Source: lightbulb/client.py:7648

run_connector_conformance

sync client declaration
def run_connector_conformance(*, check_live_schemas: bool=False) -> Dict[str, Any]

Verify every primitive provider and optionally compare hosted schemas.

Source: lightbulb/client.py:9610

run_finance_reconciliation

sync client declaration
def run_finance_reconciliation(request: FinanceReconciliationRequest | Mapping[str, Any] | None=None, *, company_id: str | None=None) -> FinanceReconciliationResult

Run the governed Stripe/ledger reconciliation in Spring.

Full source documentation
Run the governed Stripe/ledger reconciliation in Spring.

The SDK validates and normalizes the request, while authenticated
Spring scope owns connector selection, persistence, and the run ID.

Source: lightbulb/client.py:3660

run_sdk_business_primitive

sync client declaration
def run_sdk_business_primitive(primitive_id: str, inputs: Dict[str, Any] | None=None, *, primitive_version: str | None=None, project_ref: str, project_id: str | None=None, preview_only: bool=True, approval_refs: Dict[str, str] | None=None, connector_account_refs: Dict[str, str] | None=None, run_ref: str | None=None, idempotency_key: str | None=None) -> Dict[str, Any]

Run SDK code with hosted reads, previews, and governed writes.

Full source documentation
Run SDK code with hosted reads, previews, and governed writes.

Preview mode uses the local typed runtime. Apply mode fails closed for
connector-backed primitives until retained certification activates the
manifest entry. Any future activated write still requires a Project UUID,
exact account binding, idempotency, and Spring-issued approval custody.

Source: lightbulb/client.py:5383

run_sdk_project_workflow

sync client declaration
def run_sdk_project_workflow(project: Any, workflow_key: str, inputs: Dict[str, Any] | None=None, *, preview_only: bool | None=None, approval_refs: Dict[str, str] | None=None, connector_account_refs: Dict[str, str] | None=None, run_ref: str | None=None, registry: Any=None) -> Dict[str, Any]

Run a project workflow; hosted connector writes remain fail-closed.

Source: lightbulb/client.py:7606

run_workflow_improvement_cycle

sync client declaration
def run_workflow_improvement_cycle(output_dir: str | os.PathLike[str] | None=None, *, observed_outcomes: List[Dict[str, Any]] | None=None) -> Dict[str, Any]

Evaluate local workflow contracts and persist proposal-only work packets.

Source: lightbulb/client.py:7818

save_assessment_workspace

sync client declaration
def save_assessment_workspace(workspace: Any, *, run_ref: str, expected_revision: int) -> Dict[str, Any]

Persist a draft assessment through the scoped, revision-checked project store.

Source: lightbulb/client.py:7394

search_agent_marketplace

sync client declaration
def search_agent_marketplace(*, query: str | None=None, kind: str | None=None, domain: str | None=None, limit: int=50, include_inputs: bool=True) -> Dict[str, Any]

Discover normalized Lightbulb action and worker listings.

Full source documentation
Discover normalized Lightbulb action and worker listings.

The result is discovery-only.  Static domain contracts are explicitly
unverified.  When ``domain`` is provided, exactly one authenticated,
tenant/company/RBAC-filtered action request overlays that domain; there
is no per-domain fan-out and execution still re-checks entitlement and
approval policy. Result IDs are stable synthetic references, not
persisted lifecycle UUIDs. Use ``list_marketplace_listings`` to obtain
the UUID listing and revision IDs accepted by lifecycle methods.

Source: lightbulb/client.py:10584

search_documents

sync client declaration
def search_documents(query: str, *, folder_path: str | None=None, top_k: int=10) -> DispatchResult

Search across all documents using semantic search.

Source: lightbulb/client.py:5069

search_exchange_directory

sync client declaration
def search_exchange_directory(query: str, *, currency: str | None=None, country: str | None=None, kind: str | None=None, limit: int=20, company_id: str | None=None) -> Dict[str, Any]

Listed companies whose cards match ``query`` (``GET /api/company-exchange/directory``), best first, never the searching company.

Full source documentation
Listed companies whose cards match ``query`` (``GET /api/company-exchange/directory``), best first, never the searching company.

Answers ``{"match": "all" | "any" | "none", "results": [...]}``: every word matched, or
failing that any word. Each result is a directory record (address, party_ref, the sealed
card) with the item refs of the offers the words matched (``matched_offers``).

Source: lightbulb/client.py:9335

set_approval_preference_state

sync client declaration
def set_approval_preference_state(preference_id: str, *, enabled: bool) -> Dict[str, Any]

Enable or disable an auto-accept rule.

Source: lightbulb/client.py:12564

set_exchange_counterparty

sync client declaration
def set_exchange_counterparty(address: str, *, status: str='active', note: str | None=None, company_id: str | None=None) -> Dict[str, Any]

Register a company to trade with (``active``, once its card is published) or refuse its documents (``blocked``).

Source: lightbulb/client.py:9364

settle_exchange_delivery

sync client declaration
def settle_exchange_delivery(delivery_id: str, *, status: str, refusal_code: str | None=None, company_id: str | None=None) -> Dict[str, Any]

Settle a received delivery: ``received`` once taken in, or ``refused`` with the code; the sender reads it as its receipt.

Source: lightbulb/client.py:9408

simulate_business_workflow

sync client declaration
def simulate_business_workflow(definition: Dict[str, Any], *, events: List[str] | None=None, approvals: Dict[str, Any] | None=None, loop_iterations: int | None=None) -> Dict[str, Any]

Dry-run a workflow within its bound without invoking live systems.

Source: lightbulb/client.py:7800

start_contract_to_cash_run

sync client declaration
def start_contract_to_cash_run(project_id: str, request: ContractToCashRunStart | Mapping[str, Any], *, company_id: str | None=None) -> ContractToCashRun

Start the Spring-owned Golden Loop from executed-agreement custody.

Source: lightbulb/client.py:6317

start_economic_spine_run

sync client declaration
def start_economic_spine_run(project_id: str, request: EconomicSpineRunStart | Mapping[str, Any], *, company_id: str | None=None) -> EconomicSpineRun

Start Spring's exact procurement, period-close, or improvement custody.

Source: lightbulb/client.py:6634

start_governed_communication_run

sync client declaration
def start_governed_communication_run(project_id: str, request: GovernedCommunicationAdmission | Mapping[str, Any], *, idempotency_key: str, company_id: str | None=None) -> GovernedCommunicationAdmissionResult

Admit one pre-approved CRM turn; this never dispatches communication.

Source: lightbulb/client.py:6960

start_period_reconciliation_run

sync client declaration
def start_period_reconciliation_run(project_id: str, request: PeriodReconciliationStartRequest | Mapping[str, Any], *, company_id: str | None=None) -> PeriodReconciliationRunReceipt

Source: lightbulb/client.py:6411

start_procurement_matched_close_run

sync client declaration
def start_procurement_matched_close_run(project_id: str, request: ProcurementStart | Mapping[str, Any], *, company_id: str | None=None) -> ProcurementCommandReceipt

Start Procurement 0.3 through Spring's exact scoped authority.

Source: lightbulb/client.py:12975

start_project_mission_run

sync client declaration
def start_project_mission_run(project_id: str, mission_briefing: Mapping[str, Any], *, confirm_start: bool=False, run_id: Any=None, play_style_id: Any=None, skill_trial_arm: Any=None, selected_skill_ids: Sequence[Any] | None=None, context_source_refs: Sequence[Any] | None=None, note: Any=None, idempotency_key: str | None=None) -> Dict[str, Any]

Lock an exact briefing before action; this never dispatches a worker.

Source: lightbulb/client.py:4102

start_project_work_packet

sync client declaration
def start_project_work_packet(project_id: str, *, company_id: str | None=None) -> ProjectWorkPacketStartResult

Propose or start Spring's exact approved Project work packet.

Source: lightbulb/client.py:7022

start_service_case_resolution

sync client declaration
def start_service_case_resolution(project_id: str, request: ServiceCaseResolutionStart | Mapping[str, Any], *, company_id: str | None=None) -> ServiceCaseResolutionRun

Admit one digest-bound candidate to Spring's Service authority.

Source: lightbulb/client.py:6932

start_workflow_improvement_delivery

sync client declaration
def start_workflow_improvement_delivery(packet_id: str, *, environment: str, repository_ref: str | None=None, base_branch: str='main') -> Dict[str, Any]

Source: lightbulb/client.py:8121

step_governed_sales_touch

sync client declaration
def step_governed_sales_touch(project_id: str, request: Mapping[str, Any], *, idempotency_key: str, company_id: str | None=None) -> Dict[str, Any]

Prepare or reconcile one exact sales touch through Communication authority.

Source: lightbulb/client.py:7003

stop_aoc_run

sync client declaration
def stop_aoc_run(run_id: str) -> Dict[str, Any]

Stop an in-flight AutoCompany cognitive-loop run.

Source: lightbulb/client.py:12050

stream_chat

sync client declaration
def stream_chat(domain: str, *, message: str, action: str | None=None, inputs: Dict[str, Any] | None=None, conversation_id: str | None=None, company_id: str | None=None) -> Generator[SSEEvent, None, None]

Stream a domain agent chat via Server-Sent Events.

Full source documentation
Stream a domain agent chat via Server-Sent Events.

Yields SSEEvent objects for each event (status, chat, artifact, complete, error).

Source: lightbulb/client.py:3847

stream_code_workspace_chat

sync client declaration
def stream_code_workspace_chat(workspace_id: str, message: str, **kwargs: Any) -> Generator[SSEEvent, None, None]

Stream a coding agent chat as Server-Sent Events.

Full source documentation
Stream a coding agent chat as Server-Sent Events.

Yields SSEEvent objects (status, token, tool_call, diff, complete, error).
The non-streaming counterpart is :meth:`code_workspace_chat`.

Source: lightbulb/client.py:4921

stream_document_builder_message

sync client declaration
def stream_document_builder_message(session_id: str, content: str) -> Generator[SSEEvent, None, None]

Stream a document builder message via SSE.

Source: lightbulb/client.py:4975

stream_page_builder_message

sync client declaration
def stream_page_builder_message(session_id: str, content: str) -> Generator[SSEEvent, None, None]

Stream a page builder message via SSE (token-by-token output).

Source: lightbulb/client.py:4946

stream_page_builder_workspace_automation

sync client declaration
def stream_page_builder_workspace_automation(session_id: str, body: Dict[str, Any] | None=None) -> Generator[SSEEvent, None, None]

Stream the page-builder workspace automation pipeline.

Source: lightbulb/client.py:4961

submit_code_workspace_proposal

sync client declaration
def submit_code_workspace_proposal(workspace_id: str, body: Dict[str, Any]) -> Dict[str, Any]

Submit a code-change proposal (diff + summary).

Source: lightbulb/client.py:11605

submit_customer_referral_event

sync client declaration
def submit_customer_referral_event(project_id: str, event: dict, *, company_id: str | None=None) -> Dict[str, Any]

Record an authenticated application referral claim, never payment evidence.

Source: lightbulb/client.py:7470

submit_procurement_requisition

sync client declaration
def submit_procurement_requisition(project_id: str, run_ref: str, request: ProcurementApprovalBinding | Mapping[str, Any], *, company_id: str | None=None) -> ProcurementCommandReceipt

Source: lightbulb/client.py:12999

submit_project_creation_preflight_feedback

sync client declaration
def submit_project_creation_preflight_feedback(receipt: ProjectCreationPreflightReceipt, *, helpfulness: SemanticFeedbackValue, calibrated_criticality: SemanticFeedbackValue, factual_grounding: SemanticFeedbackValue, idempotency_key: str) -> ProjectPreflightSemanticFeedbackReceipt

Submit one explicit human judgment for this preflight's episode.

Full source documentation
Submit one explicit human judgment for this preflight's episode.

Project creation or approval never calls this method automatically.
The server derives actor and scope; callers can supply only the exact
typed preflight receipt, three bounded judgments, and a stable retry
key. A successful receipt is a preference signal, not independent
factual or business-outcome proof.

Source: lightbulb/client.py:4870

suspend_operator_policy

sync client declaration
def suspend_operator_policy(policy_id: str, *, company_id: str | None=None) -> Dict[str, Any]

Suspend an active policy (the approver or a tenant admin).

Full source documentation
Suspend an active policy (the approver or a tenant admin).

Every minted preference is disabled before the status changes, so the operator
falls back to asking a person for every engine transition.

Source: lightbulb/client.py:9133

sync_customer_recovery_task

sync client declaration
def sync_customer_recovery_task(request, *, application_id, workspace_ref, action_ref, completed=False)

Create/reconcile the scoped CRM escalation; never resend the customer action.

Source: lightbulb/client.py:9619

sync_workflow_improvement_report

sync client declaration
def sync_workflow_improvement_report(report: Dict[str, Any], *, idempotency_key: str | None=None) -> Dict[str, Any]

Persist one local evaluator report in the authenticated scoped ledger.

Source: lightbulb/client.py:7925

test_agent_runtime_config

sync client declaration
def test_agent_runtime_config(agent_type: str='coding', *, message: str | None=None, company_id: str | None=None) -> Dict[str, Any]

Resolve the configured runtime path without performing code or connector writes.

Source: lightbulb/client.py:3389

transition_company_blueprint_deployment

sync client declaration
def transition_company_blueprint_deployment(project_id: str, deployment_id: str, *, action: str, company_id: str | None=None) -> CompanyBlueprintDeploymentStatus

Source: lightbulb/client.py:5850

trigger_workflow

sync client declaration
def trigger_workflow(workflow_type: str, objective: str, *, inputs: Dict[str, Any] | None=None, company_id: str | None=None) -> Dict[str, Any]

Run a published workflow resolved by its public ``workflowType`` ref.

Source: lightbulb/client.py:8357

uninstall_marketplace_action

sync client declaration
def uninstall_marketplace_action(installation_id: str, *, idempotency_key: str, reason: str='') -> Dict[str, Any]

Uninstall an action from the selected company.

Source: lightbulb/client.py:10905

update_crm_task

sync client declaration
def update_crm_task(task_id: str, body: Dict[str, Any], tenant_id: str | None=None) -> Dict[str, Any]

Update a CRM task.

Source: lightbulb/client.py:12503

validate_aoc_run_config

sync client declaration
def validate_aoc_run_config(run_id: str) -> Dict[str, Any]

Validate an AutoCompany run's configuration.

Source: lightbulb/client.py:12061

validate_business_workflow

sync client declaration
def validate_business_workflow(definition: Dict[str, Any]) -> Dict[str, Any]

Validate a portable workflow definition without network calls.

Source: lightbulb/client.py:7794

validate_sdk_project

sync client declaration
def validate_sdk_project(project: Any, *, registry: Any=None) -> Dict[str, Any]

Validate a custom project against executable primitive implementations.

Source: lightbulb/client.py:7598

wait_for_marketplace_action_publication

sync client declaration
def wait_for_marketplace_action_publication(publication_id: str, *, timeout_seconds: float=120.0, poll_interval_seconds: float=2.0) -> Dict[str, Any]

Poll until publication is READY, FAILED, or ARCHIVED, within hard bounds.

Source: lightbulb/client.py:10762

wait_for_workflow_instance

sync client declaration
def wait_for_workflow_instance(trace_id: str, *, company_id: str | None=None, timeout: float=300.0, poll_interval: float=1.0) -> Dict[str, Any]

Poll a workflow until it stops or requires human approval.

Source: lightbulb/client.py:3817

whoami

sync client declaration
def whoami() -> Dict[str, Any]

Get the current user's identity, role, tenant, company, and permissions.

Source: lightbulb/client.py:2767

wind_down_company

sync client declaration
def wind_down_company(*, approval_task_id: str, resolution_sha256: str, company_id: str | None=None) -> Dict[str, Any]

Move the company ACTIVE -> WINDING_DOWN and stop it selling.

Full source documentation
Move the company ACTIVE -> WINDING_DOWN and stop it selling.

``approval_task_id`` must name an APPROVED ``sdk_engine_transition`` task for
``wind_down_chain.decide`` that a human decided: the platform refuses an
auto-accepted task, a task decided by its own requester, a task decided by the
caller, and a task already spent.  ``resolution_sha256`` is the digest of the
members'/directors' resolution signed off the platform.  Only a human tenant admin
may call this: the AI operator principal is refused 403 unconditionally.

Returns the lifecycle receipt (``companyId``, ``lifecycleStatus``, ``eventId``,
``approvalTaskId``, ``resolutionSha256``, ``decidedBy``, ``occurredAt``) plus
``receiptSha256``, the SHA-256 of those seven fields as canonical JSON.

Source: lightbulb/client.py:9189

withdraw_exchange_card

sync client declaration
def withdraw_exchange_card(*, company_id: str | None=None) -> Dict[str, Any]

Leave the directory and stop receiving documents; the company keeps its address for when it republishes.

Source: lightbulb/client.py:9329

workspace_bundle

sync client declaration
def workspace_bundle(domain: str) -> Dict[str, Any]

Get a domain workspace data bundle (state, surfaces, recent runs).

Source: lightbulb/client.py:12603

workspace_conversation

sync client declaration
def workspace_conversation(domain: str, conversation_id: str) -> Dict[str, Any]

Get a domain workspace conversation.

Source: lightbulb/client.py:12625

workspace_surface

sync client declaration
def workspace_surface(domain: str, surface: str, **filters: Any) -> Dict[str, Any]

Read a domain workspace surface (e.g. internal_suite, live connector).

Source: lightbulb/client.py:12638

workspace_trace

sync client declaration
def workspace_trace(domain: str, trace_id: str) -> Dict[str, Any]

Get a workspace trace (full agent execution log).

Source: lightbulb/client.py:12614

Asynchronous client

__aenter__

async client declaration
async def __aenter__() -> 'AsyncLightbulbClient'

Source: lightbulb/async_client.py:232

__aexit__

async client declaration
async def __aexit__(exc_type, exc, tb) -> None

Source: lightbulb/async_client.py:236

__init__

async client declaration
def __init__(base_url: str, auth: AuthStrategy, *, enforce_https: bool=True, connect_timeout: float=_CONNECT_TIMEOUT, read_timeout: float=_READ_TIMEOUT, auth_refresh: 'Callable[[], AuthStrategy] | None'=None) -> None

Source: lightbulb/async_client.py:185

acknowledge_customer_recovery_task

async client declaration
async def acknowledge_customer_recovery_task(project_id, task_id)

Acknowledge as the assigned owner; acknowledgment does not resolve the effect.

Source: lightbulb/async_client.py:4174

activate_marketplace_action

async client declaration
async def activate_marketplace_action(installation_id: str, *, idempotency_key: str) -> Dict[str, Any]

Activate an installed action; this never approves execution policy.

Source: lightbulb/async_client.py:2010

activate_operator_policy

async client declaration
async def activate_operator_policy(policy_id: str, *, company_id: str | None=None) -> Dict[str, Any]

Activate a drafted policy. Only the named human approver may call this.

Full source documentation
Activate a drafted policy.  Only the named human approver may call this.

Activation mints exactly one amount-ceilinged approval preference per
auto-acceptable ceiling, owned by the approver, and returns their ids.  Ceilings
that require a second approver, and human-only ones, mint nothing: those
transitions always wait in the approver's inbox.

Source: lightbulb/client.py:9110

active_company_id

async client declaration
@property
def active_company_id() -> str | None

Source: lightbulb/async_client.py:276

active_company_id

async client declaration
@active_company_id.setter
def active_company_id(value: str | None) -> None

Source: lightbulb/async_client.py:280

add_project_coding_harness

async client declaration
async def add_project_coding_harness(project_id: str, harness: str, *, make_primary: bool=False) -> Dict[str, Any]

Attach another harness without removing existing project harnesses.

Source: lightbulb/async_client.py:851

admit_project_learning_run

async client declaration
async def admit_project_learning_run(project_id: str, learning_run_id: str, *, runtime: str, capacity_admission: Mapping[str, Any], operator_approved: bool=False, confirm_admission: bool=False, idempotency_key: str | None=None) -> Dict[str, Any]

Reserve budget and admit a queued run; this still executes no training.

Source: lightbulb/async_client.py:3091

advance_economic_spine_run

async client declaration
async def advance_economic_spine_run(project_id: str, run_ref: str, request: EconomicSpineRunTransition | Mapping[str, Any], *, company_id: str | None=None) -> EconomicSpineRun

Source: lightbulb/async_client.py:5402

advance_period_reconciliation_stage

async client declaration
async def advance_period_reconciliation_stage(project_id: str, run_ref: str, request: PeriodReconciliationStageRequest | Mapping[str, Any], *, company_id: str | None=None) -> PeriodReconciliationRunReceipt

Source: lightbulb/async_client.py:5242

advance_service_case_resolution

async client declaration
async def advance_service_case_resolution(project_id: str, run_ref: str, *, company_id: str | None=None) -> ServiceCaseResolutionRun

Source: lightbulb/async_client.py:5523

apply_aoc_tick

async client declaration
async def apply_aoc_tick(tick_id: str, body: Dict[str, Any] | None=None) -> Dict[str, Any]

Apply a previously-computed AutoCompany tick (committing its decisions).

Source: lightbulb/client.py:12190

apply_code_workspace_proposal

async client declaration
async def apply_code_workspace_proposal(workspace_id: str, proposal_id: str) -> Dict[str, Any]

Apply a previously-submitted proposal to the workspace files.

Source: lightbulb/client.py:11618

approve_procurement_matched_close

async client declaration
async def approve_procurement_matched_close(project_id: str, run_ref: str, request: Any, *, company_id: str | None=None) -> Any

Source: lightbulb/async_client.py:5844

approve_procurement_spend_commitment

async client declaration
async def approve_procurement_spend_commitment(project_id: str, run_ref: str, request: Any, *, company_id: str | None=None) -> Any

Source: lightbulb/async_client.py:5804

approve_runtime_domain_action

async client declaration
async def approve_runtime_domain_action(runtime_action_id: str, *, project_id: str, company_id: str | None=None) -> Dict[str, Any]

Approve a reviewed action and return its governed recursive reference.

Full source documentation
Approve a reviewed action and return its governed recursive reference.

Approval does not activate ordinary domain dispatch. A response with
``recursive_spawnable=true`` may be placed in an explicit bounded
``RecursiveAgentPolicy.allowed_agent_ids`` using ``recursive_agent_id``.

Source: lightbulb/async_client.py:1684

approve_task

async client declaration
async def approve_task(task_id: str, *, comments: str='') -> Dict[str, Any]

Source: lightbulb/async_client.py:3933

approve_voice_action

async client declaration
async def approve_voice_action(execution_id: str, approval_task_id: str, *, comments: str='') -> Dict[str, Any]

Source: lightbulb/async_client.py:4122

archive_marketplace_action

async client declaration
async def archive_marketplace_action(listing_id: str, *, idempotency_key: str, reason: str='') -> Dict[str, Any]

Archive a publisher-owned listing with a replay-safe mutation.

Source: lightbulb/async_client.py:1921

async_parity_report

async client declaration
def async_parity_report() -> Dict[str, Any]

Source: lightbulb/async_client.py:339

attach_contract_to_cash_cash_collected

async client declaration
async def attach_contract_to_cash_cash_collected(project_id: str, run_ref: str, request: ContractToCashRunRecordBinding | Mapping[str, Any], *, company_id: str | None=None) -> ContractToCashRun

Source: lightbulb/async_client.py:5099

attach_contract_to_cash_invoice_issued

async client declaration
async def attach_contract_to_cash_invoice_issued(project_id: str, run_ref: str, request: ContractToCashRunRecordBinding | Mapping[str, Any], *, company_id: str | None=None) -> ContractToCashRun

Source: lightbulb/async_client.py:5082

author_agentic_workflow

async client declaration
async def author_agentic_workflow(prompt: str, *, name: str | None=None, workflow_type: str | None=None, preferred_domains: List[str] | None=None, include_approval_gates: bool=True, publish: bool=True, company_id: str | None=None, site_project_id: str | None=None, definition: Mapping[str, Any] | None=None) -> Dict[str, Any]

Async compile-once authoring with exact executable-projection fidelity.

Source: lightbulb/async_client.py:1273

author_workflow_definition

async client declaration
async def author_workflow_definition(definition: Mapping[str, Any], *, prompt: str='', name: str | None=None, workflow_type: str | None=None, site_project_id: str | None=None, category: str | None=None, change_notes: str | None=None, company_id: str | None=None) -> Dict[str, Any]

Publish one exact executable workflow projection through governance.

Source: lightbulb/async_client.py:1125

author_workflow_trigger

async client declaration
async def author_workflow_trigger(workflow_definition_id: str, *, trigger_type: str='schedule', schedule: str | None=None, event_type: str | None=None, event_filter: Mapping[str, Any] | None=None, name: str | None=None, description: str | None=None, site_project_id: str | None=None, configuration: Mapping[str, Any] | None=None, enabled: bool=False, company_id: str | None=None) -> Dict[str, Any]

Create a principal-scoped schedule or event trigger for a workflow.

Source: lightbulb/async_client.py:1176

backbone_execute

async client declaration
async def backbone_execute(objective: str, *, inputs: Dict[str, Any] | None=None) -> Dict[str, Any]

Execute a task through the tenant-scoped backbone agent.

Source: lightbulb/async_client.py:3814

bind_procurement_xero_purchase_order_readback

async client declaration
async def bind_procurement_xero_purchase_order_readback(project_id: str, run_ref: str, request: Any, *, company_id: str | None=None) -> Any

Source: lightbulb/async_client.py:5812

bind_project_mission_action

async client declaration
async def bind_project_mission_action(project_id: str, mission_run_receipt_id: Any, action_event_id: Any, *, confirm_bind: bool=False, binding_id: Any=None, note: Any=None, idempotency_key: str | None=None) -> Dict[str, Any]

Bind a later event to a mission; this proves timing and scope only.

Source: lightbulb/async_client.py:2909

build_durable_project_runtime

async client declaration
async def build_durable_project_runtime(project: Any, *, registry: Any=None, checkpoint_store: Any=None) -> Any

Build a durable runtime, using hosted checkpoints when possible.

Source: lightbulb/client.py:5561

build_dynamic_workflow_runtime

async client declaration
async def build_dynamic_workflow_runtime(*, project_ref: str, hosted_project_id: str | None=None, hosted_company_id: str | None=None, checkpoint_store: Any=None) -> Any

Build the local planner/builder/evaluator state-machine runtime.

Full source documentation
Build the local planner/builder/evaluator state-machine runtime.

Local harnesses use revisioned JSON state. Hosted dynamic workflows
require the dedicated server command/query authority; the generic SDK
project-checkpoint endpoint accepts caller-authored JSON and therefore
must never be presented as authoritative workflow control.

Source: lightbulb/client.py:7337

build_project_runtime

async client declaration
async def build_project_runtime(project: Any, *, registry: Any=None) -> Any

Build a runtime using authenticated reads and safe connector previews.

Source: lightbulb/client.py:5542

cancel_code_workspace_run

async client declaration
async def cancel_code_workspace_run(workspace_id: str, run_id: str) -> Dict[str, Any]

Cancel an in-flight coding run.

Source: lightbulb/client.py:11670

cancel_codex_account_link

async client declaration
async def cancel_codex_account_link(session_id: str) -> Dict[str, Any]

Cancel a Codex device-auth session.

Source: lightbulb/client.py:3446

cancel_company_blueprint_certification

async client declaration
async def cancel_company_blueprint_certification(project_id: str, candidate_id: str, *, company_id: str | None=None) -> CompanyBlueprintCertificationStatus

Source: lightbulb/async_client.py:4502

cancel_contract_to_cash_before_invoice

async client declaration
async def cancel_contract_to_cash_before_invoice(project_id: str, run_ref: str, request: ContractToCashRunCancellation | Mapping[str, Any], *, company_id: str | None=None) -> ContractToCashRun

Source: lightbulb/async_client.py:5116

cancel_economic_spine_run

async client declaration
async def cancel_economic_spine_run(project_id: str, run_ref: str, request: EconomicSpineRunTransition | Mapping[str, Any], *, company_id: str | None=None) -> EconomicSpineRun

Source: lightbulb/async_client.py:5428

cancel_governed_communication_run

async client declaration
async def cancel_governed_communication_run(project_id: str, run_ref: str, *, company_id: str | None=None) -> GovernedCommunicationRun

Source: lightbulb/async_client.py:5699

cancel_period_reconciliation_run

async client declaration
async def cancel_period_reconciliation_run(project_id: str, run_ref: str, request: PeriodReconciliationTerminalRequest | Mapping[str, Any], *, company_id: str | None=None) -> PeriodReconciliationRunReceipt

Source: lightbulb/async_client.py:5301

cancel_procurement_matched_close_run

async client declaration
async def cancel_procurement_matched_close_run(project_id: str, run_ref: str, request: Any, *, company_id: str | None=None) -> Any

Source: lightbulb/async_client.py:5876

cancel_recursive_agent_execution

async client declaration
async def cancel_recursive_agent_execution(execution_id: str) -> Dict[str, Any]

Cancel one exact user-owned recursive execution tree.

Source: lightbulb/async_client.py:3863

cancel_service_case_resolution

async client declaration
async def cancel_service_case_resolution(project_id: str, run_ref: str, *, reason: str, company_id: str | None=None) -> ServiceCaseResolutionRun

Source: lightbulb/async_client.py:5545

cancel_workflow_instance

async client declaration
async def cancel_workflow_instance(trace_id: str, *, company_id: str | None=None) -> Dict[str, Any]

Cancel a scoped workflow run, including one waiting for approval.

Source: lightbulb/client.py:8428

claim_project_coding_handoff

async client declaration
async def claim_project_coding_handoff(project_id: str, *, harness: str, handoff_payload_id: str, host_session_ref: str | None=None) -> Dict[str, Any]

Record routing of an approved handoff to the selected harness.

Source: lightbulb/async_client.py:930

claim_sdk_project_checkpoint

async client declaration
async def claim_sdk_project_checkpoint(project_id: str, *, worker_ref: str, ready_at: str, lease_seconds: int=60, company_id: str | None=None, run_ref: str | None=None) -> Dict[str, Any] | None

Source: lightbulb/async_client.py:756

claude_session_action

async client declaration
async def claude_session_action(workspace_id: str, session_id: str, action: str, body: Dict[str, Any] | None=None) -> Dict[str, Any]

Perform an action on a Claude SDK session.

Full source documentation
Perform an action on a Claude SDK session.

action: one of rename, tag, fork, delete, interrupt, mcp/reconnect,
        mcp/toggle, rewind, tasks/stop, compact

Source: lightbulb/client.py:11906

close

async client declaration
async def close() -> None

Source: lightbulb/async_client.py:244

close_company

async client declaration
async def close_company(*, approval_task_id: str, resolution_sha256: str, company_id: str | None=None) -> Dict[str, Any]

Move the company WINDING_DOWN -> CLOSED and revoke everything it was connected to.

Full source documentation
Move the company WINDING_DOWN -> CLOSED and revoke everything it was connected to.

Same human-decision evidence as :meth:`wind_down_company`, for the
``wind_down_chain.close_accounts`` transition.  Closing revokes every OAuth
connection, disables every tenant connector and project connector binding, and
stops every open workflow checkpoint.  After it, every tool answers 410
``company_closed``.  Returns the same lifecycle receipt shape.

Source: lightbulb/client.py:9224

code_workspace_add_collaborator

async client declaration
async def code_workspace_add_collaborator(workspace_id: str, *, email: str | None=None, user_id: str | None=None, role: str='viewer') -> Dict[str, Any]

Add a collaborator to a code workspace (role: viewer | editor | admin).

Source: lightbulb/client.py:11396

code_workspace_add_note

async client declaration
async def code_workspace_add_note(workspace_id: str, content: str) -> Dict[str, Any]

Append a workspace note (visible to collaborators).

Source: lightbulb/client.py:11509

code_workspace_approve_access_request

async client declaration
async def code_workspace_approve_access_request(workspace_id: str, request_id: str) -> Dict[str, Any]

Approve a pending workspace access request.

Source: lightbulb/client.py:11483

code_workspace_chat

async client declaration
async def code_workspace_chat(workspace_id: str, message: str, **kwargs: Any) -> Dict[str, Any]

Source: lightbulb/async_client.py:3777

code_workspace_clear_policy

async client declaration
async def code_workspace_clear_policy(workspace_id: str, request_family: str) -> Dict[str, Any]

Clear cached policy decisions for a request family.

Source: lightbulb/client.py:11849

code_workspace_collaboration

async client declaration
async def code_workspace_collaboration(workspace_id: str) -> Dict[str, Any]

Get collaboration info (members, share links, pending requests).

Source: lightbulb/client.py:11386

code_workspace_create_pull_request

async client declaration
async def code_workspace_create_pull_request(workspace_id: str, body: Dict[str, Any] | None=None) -> Dict[str, Any]

Open a GitHub pull request from the workspace branch.

Source: lightbulb/client.py:11644

code_workspace_create_share_link

async client declaration
async def code_workspace_create_share_link(workspace_id: str, *, role: str='viewer', expires_in_seconds: int | None=None) -> Dict[str, Any]

Create a share-link token granting access to the workspace.

Source: lightbulb/client.py:11443

code_workspace_deny_access_request

async client declaration
async def code_workspace_deny_access_request(workspace_id: str, request_id: str) -> Dict[str, Any]

Deny a pending workspace access request.

Source: lightbulb/client.py:11496

code_workspace_evals

async client declaration
async def code_workspace_evals(workspace_id: str) -> Dict[str, Any]

Get accumulated eval rollups for a workspace's runs.

Source: lightbulb/client.py:11826

code_workspace_invoke_tool

async client declaration
async def code_workspace_invoke_tool(workspace_id: str, tool_key: str, arguments: Dict[str, Any] | None=None) -> Dict[str, Any]

Invoke a workspace-scoped tool (read/write files, run commands, git ops).

Full source documentation
Invoke a workspace-scoped tool (read/write files, run commands, git ops).

Tool keys are registered in the workspace's runtime catalog. Common keys:
    - ``files.read`` — read a file by path
    - ``files.write`` — write a file
    - ``files.list`` — list directory contents
    - ``shell.run`` — execute a shell command
    - ``git.status`` — show git working-tree state
    - ``git.diff`` — produce a diff
    - ``git.commit`` — create a commit
Use :meth:`code_workspace_runtime_catalog` to discover what's available
for a specific workspace.

Source: lightbulb/client.py:11685

code_workspace_link_repository

async client declaration
async def code_workspace_link_repository(workspace_id: str, body: Dict[str, Any]) -> Dict[str, Any]

Link a GitHub repository to the workspace.

Source: lightbulb/client.py:11657

code_workspace_policy_replay

async client declaration
async def code_workspace_policy_replay(workspace_id: str, **filters: Any) -> Dict[str, Any]

Replay a policy decision over historical runs (debug helper).

Source: lightbulb/client.py:11836

code_workspace_preview

async client declaration
async def code_workspace_preview(workspace_id: str) -> Dict[str, Any]

Get the current preview state (URL, status, last build).

Source: lightbulb/client.py:11759

code_workspace_preview_proxy

async client declaration
async def code_workspace_preview_proxy(workspace_id: str, path: str='', *, method: str='GET', body: Any=None, headers: Dict[str, str] | None=None) -> httpx.Response

Proxy an HTTP call through the workspace preview.

Full source documentation
Proxy an HTTP call through the workspace preview.

Returns the raw httpx.Response so callers can inspect status/headers/body.
Use this for headless e2e tests against in-progress code.

Security: caller-supplied ``headers`` are merged BEFORE auth headers, so
a caller cannot overwrite ``Authorization`` / ``X-Tenant-Id`` /
``X-Internal-API-Key``. ``method`` and ``path`` are validated.

Source: lightbulb/client.py:11780

code_workspace_preview_start

async client declaration
async def code_workspace_preview_start(workspace_id: str, body: Dict[str, Any] | None=None) -> Dict[str, Any]

Start the workspace preview server (renders the in-progress code).

Source: lightbulb/client.py:11744

code_workspace_preview_stop

async client declaration
async def code_workspace_preview_stop(workspace_id: str) -> Dict[str, Any]

Stop the workspace preview server.

Source: lightbulb/client.py:11769

code_workspace_promote_policy

async client declaration
async def code_workspace_promote_policy(workspace_id: str, body: Dict[str, Any]) -> Dict[str, Any]

Promote workspace-scoped policy to a higher scope (company/tenant).

Source: lightbulb/client.py:11862

code_workspace_redeem_share_link

async client declaration
async def code_workspace_redeem_share_link(token: str) -> Dict[str, Any]

Redeem a workspace share-link token to gain access.

Source: lightbulb/client.py:11472

code_workspace_register_runtime_tools

async client declaration
async def code_workspace_register_runtime_tools(workspace_id: str, body: Dict[str, Any]) -> Dict[str, Any]

Register or update workspace runtime tools.

Source: lightbulb/client.py:11727

code_workspace_remove_collaborator

async client declaration
async def code_workspace_remove_collaborator(workspace_id: str, collaborator_id: str) -> None

Revoke a collaborator's access.

Source: lightbulb/client.py:11432

code_workspace_revoke_share_link

async client declaration
async def code_workspace_revoke_share_link(workspace_id: str, link_id: str) -> None

Revoke a share link.

Source: lightbulb/client.py:11463

code_workspace_run_review

async client declaration
async def code_workspace_run_review(workspace_id: str, run_id: str, *, verdict: str, feedback: str='') -> Dict[str, Any]

Submit a human review verdict (accept | reject | request_changes) for a run.

Source: lightbulb/client.py:11563

code_workspace_run_review_apply

async client declaration
async def code_workspace_run_review_apply(workspace_id: str, run_id: str) -> Dict[str, Any]

Apply review-suggested changes to the workspace.

Source: lightbulb/client.py:11581

code_workspace_run_telemetry

async client declaration
async def code_workspace_run_telemetry(workspace_id: str, **filters: Any) -> Dict[str, Any]

Raw telemetry rows for a workspace's runs.

Source: lightbulb/client.py:11550

code_workspace_runs_insights

async client declaration
async def code_workspace_runs_insights(workspace_id: str) -> Dict[str, Any]

Aggregate run-quality insights for a workspace (cost, latency, success rate).

Source: lightbulb/client.py:11540

code_workspace_runtime_catalog

async client declaration
async def code_workspace_runtime_catalog(workspace_id: str) -> Dict[str, Any]

Read the workspace's runtime tool catalog (which tool keys are available).

Source: lightbulb/client.py:11717

code_workspace_update_collaborator

async client declaration
async def code_workspace_update_collaborator(workspace_id: str, collaborator_id: str, *, role: str) -> Dict[str, Any]

Change a collaborator's role.

Source: lightbulb/client.py:11419

codex_thread_action

async client declaration
async def codex_thread_action(workspace_id: str, thread_id: str, action: str, body: Dict[str, Any] | None=None) -> Dict[str, Any]

Perform a thread-level action (rename | archive | unarchive | compact | rollback).

Source: lightbulb/client.py:11966

codex_turn_action

async client declaration
async def codex_turn_action(workspace_id: str, thread_id: str, turn_id: str, action: str, body: Dict[str, Any] | None=None) -> Dict[str, Any]

Steer or interrupt a specific Codex turn (action: steer | interrupt).

Source: lightbulb/client.py:11990

compile_business_workflow

async client declaration
async def compile_business_workflow(objective: str, *, primitive_ids: List[str] | None=None, inputs: Dict[str, Any] | None=None, workflow_name: str | None=None, workflow_type: str | None=None, trigger_event: str | None=None, owner_role: str='workflow_owner', loop: bool=False, max_iterations: int | None=None, source: str='sdk') -> Dict[str, Any]

Compile a portable, governed workflow draft without network calls.

Source: lightbulb/client.py:7764

compose_business_workflow

async client declaration
async def compose_business_workflow(objective: str, *, primitive_ids: List[str] | None=None, inputs: Dict[str, Any] | None=None, loop: bool=False, max_iterations: int | None=None, workflow_name: str | None=None, workflow_type: str | None=None, trigger_event: str | None=None, owner_role: str='workflow_owner', publish: bool=False, source: str='sdk') -> Dict[str, Any]

Draft an Agent Builder workflow from business primitive blocks.

Source: lightbulb/client.py:7731

compute_aoc_tick

async client declaration
async def compute_aoc_tick(body: Dict[str, Any] | None=None) -> Dict[str, Any]

Run a one-shot AutoCompany tick computation.

Source: lightbulb/client.py:12179

configure_backbone_agent_surface

async client declaration
async def configure_backbone_agent_surface(backbone_surface: str, *, model_provider: str | None=None, model_id: str | None=None, provider_connection_id: str | None=None, scope: str='USER', company_id: str | None=None, request_overrides: Dict[str, Any] | None=None) -> Dict[str, Any]

Configure the preferred Backbone host surface, such as ChatGPT MCP.

Source: lightbulb/client.py:3351

configure_coding_agent_runtime

async client declaration
async def configure_coding_agent_runtime(runtime_backend: str, *, model_provider: str | None=None, model_id: str | None=None, provider_connection_id: str | None=None, use_codex_account: bool | None=None, scope: str='USER', company_id: str | None=None, request_overrides: Dict[str, Any] | None=None) -> Dict[str, Any]

Configure Codex, Claude Code, or another coding harness for this account.

Source: lightbulb/client.py:3310

context_archive

async client declaration
async def context_archive(context_ref: str, *, project_id: str | None=None, company_id: str | None=None) -> Dict[str, Any]

Archive a private Context Space and close its host bindings.

Source: lightbulb/client.py:10227

context_checkpoint

async client declaration
async def context_checkpoint(context_ref: str, *, binding_ref: str, base_revision: int, idempotency_key: str, events: Sequence[Mapping[str, Any]] | None=None, state: Mapping[str, Any] | None=None, project_id: str | None=None, company_id: str | None=None) -> Dict[str, Any]

Append host deltas and structured state with optimistic concurrency.

Source: lightbulb/client.py:10094

context_company_id

async client declaration
@property
def context_company_id() -> str | None

Company used only by forwarded Context Broker calls.

Source: lightbulb/async_client.py:286

context_company_id

async client declaration
@context_company_id.setter
def context_company_id(value: str | None) -> None

Source: lightbulb/async_client.py:295

context_delete

async client declaration
async def context_delete(context_ref: str, *, project_id: str | None=None, company_id: str | None=None) -> Dict[str, Any]

Request scoped physical deletion after the server's grace period.

Source: lightbulb/client.py:10250

context_export

async client declaration
async def context_export(context_ref: str, *, project_id: str | None=None, company_id: str | None=None, event_after_sequence: int=0, checkpoint_after_revision: int=0, limit: int=50, max_bytes: int=1048576) -> Dict[str, Any]

Export a bounded page from a private Context Space for user custody.

Source: lightbulb/client.py:10172

context_open

async client declaration
async def context_open(host: str, *, host_session_ref: str | None=None, model: str | None=None, context_ref: str | None=None, project_id: str | None=None, company_id: str | None=None, token_budget: int=_CONTEXT_TOKEN_BUDGET_DEFAULT, query: str | None=None, repository: Mapping[str, Any] | None=None) -> Dict[str, Any]

Open or resume a private cross-host context binding.

Full source documentation
Open or resume a private cross-host context binding.

Tenant and user scope come only from the authenticated SDK session. An
explicit ``company_id`` pins this request without changing selected
client state and remains subject to server-side access checks.
``context_ref`` and the returned binding reference are opaque public
handles, not caller-selectable identity fields.

Source: lightbulb/client.py:9909

context_pack

async client declaration
async def context_pack(context_ref: str, *, binding_ref: str | None=None, query: str | None=None, project_id: str | None=None, company_id: str | None=None, token_budget: int=_CONTEXT_TOKEN_BUDGET_DEFAULT, max_items: int=12) -> Dict[str, Any]

Build a bounded, prompt-aware working pack from durable context.

Source: lightbulb/client.py:9965

context_read

async client declaration
async def context_read(context_ref: str, refs: Sequence[str], *, project_id: str | None=None, company_id: str | None=None, token_budget: int=_CONTEXT_TOKEN_BUDGET_DEFAULT) -> Dict[str, Any]

Read exact opaque context items under a bounded token budget.

Source: lightbulb/client.py:10054

context_search

async client declaration
async def context_search(context_ref: str, query: str, *, project_id: str | None=None, company_id: str | None=None, token_budget: int=_CONTEXT_TOKEN_BUDGET_DEFAULT, max_items: int=10, kinds: Sequence[str] | None=None) -> Dict[str, Any]

Search a Context Space without placing its full corpus in-model.

Source: lightbulb/client.py:10004

context_status

async client declaration
async def context_status(context_ref: str, *, binding_ref: str | None=None, project_id: str | None=None, company_id: str | None=None) -> Dict[str, Any]

Inspect one Context Space or one exact host-session binding.

Source: lightbulb/client.py:10143

create_account_shell_customization_draft

async client declaration
async def create_account_shell_customization_draft(document: Mapping[str, Any], *, base_revision_id: str | None) -> Dict[str, Any]

Create an immutable draft from one exact base revision.

Source: lightbulb/async_client.py:1500

create_aoc_run

async client declaration
async def create_aoc_run(body: Dict[str, Any]) -> Dict[str, Any]

Create a new AutoCompany run.

Source: lightbulb/client.py:12032

create_aoc_task

async client declaration
async def create_aoc_task(body: Dict[str, Any]) -> Dict[str, Any]

Create an AutoCompany task.

Source: lightbulb/client.py:12085

create_approval_auto_accept

async client declaration
async def create_approval_auto_accept(task_id: str, body: Dict[str, Any] | None=None) -> Dict[str, Any]

Create an auto-accept rule keyed off the shape of an existing approval task.

Source: lightbulb/client.py:12540

create_code_workspace

async client declaration
async def create_code_workspace(*, source: str | None=None, repo_connection_id: str | None=None, branch: str | None=None, depth: int | None=None, label: str | None=None, metadata: Dict[str, Any] | None=None, company_id: str | None=None) -> Dict[str, Any]

Create a code workspace.

Source: lightbulb/client.py:5257

create_company

async client declaration
async def create_company(request: 'Dict[str, Any] | Any | None'=None, /, **fields: Any) -> Any

Async twin of :meth:`lightbulb.client.LightbulbClient.create_company` (AU, CA, US, UK or NZ).

Source: lightbulb/async_client.py:809

create_conversation

async client declaration
async def create_conversation(domain: str) -> Dict[str, Any]

Create a new conversation for a domain.

Source: lightbulb/client.py:5010

create_crm_task

async client declaration
async def create_crm_task(body: Dict[str, Any], tenant_id: str | None=None) -> Dict[str, Any]

Create a CRM task.

Source: lightbulb/client.py:12489

create_document

async client declaration
async def create_document(title: str, body: str, *, format: str='docx', target_suite: str='internal_library') -> DispatchResult

Create a new document.

Source: lightbulb/client.py:5129

create_document_session

async client declaration
async def create_document_session(*, document_type: str='general', document_title: str='Untitled Document') -> Dict[str, Any]

Create a new document builder session.

Source: lightbulb/client.py:5029

create_operator_policy

async client declaration
async def create_operator_policy(body: 'Mapping[str, Any] | None'=None, *, operator_user_id: str, approver_user_id: str, company_id: str | None=None) -> Dict[str, Any]

Draft the AI operator's per-category authority ceilings for one company.

Full source documentation
Draft the AI operator's per-category authority ceilings for one company.

``body`` carries ``currency``, ``matrixDigest``, optional ``effectiveFrom`` and
``reviewMonths``, and the ``ceilings`` list (``category``, ``engine``, ``event``,
``maxAmountCents``, ``requiresSecondApprover``, ``segregation``).  The operator and
the approver are named explicitly and must differ: the platform refuses an operator
without the AI_OPERATOR role and an approver that is one.  The policy is created
``draft`` and grants nothing until the approver activates it; human-only categories
(people_change, wind_down, write_off) are forced human-only whatever is asked for.

Source: lightbulb/client.py:9078

create_page_builder_session

async client declaration
async def create_page_builder_session(brand_name: str='', initial_prompt: str='') -> Dict[str, Any]

Create a new page builder session.

Source: lightbulb/client.py:5182

create_project_from_preflight

async client declaration
async def create_project_from_preflight(receipt: ProjectCreationPreflightReceipt, *, coding_harness: str, confirm_create: bool=False, confirm_open_questions: bool=False, workspace_id: str | None=None, repo_connection_id: str | None=None, idempotency_key: str | None=None, play_style: str | None=None) -> Dict[str, Any]

Create exactly the draft bound to a validated preflight receipt.

Source: lightbulb/async_client.py:3526

create_server_workflow_improvement_packet

async client declaration
async def create_server_workflow_improvement_packet(payload: Dict[str, Any]) -> Dict[str, Any]

Source: lightbulb/async_client.py:2327

create_slide_deck

async client declaration
async def create_slide_deck(title: str, body: str='', *, target_suite: str='internal_library') -> DispatchResult

Create a new slide deck.

Source: lightbulb/client.py:5165

create_spreadsheet

async client declaration
async def create_spreadsheet(title: str, body: str='', *, target_suite: str='internal_library') -> DispatchResult

Create a new spreadsheet.

Source: lightbulb/client.py:5150

decide_project_learning_result_admission

async client declaration
async def decide_project_learning_result_admission(project_id: str, evaluation_receipt_id: str, *, decision: Any, rationale: Any, confirm_admission: bool=False, idempotency_key: str | None=None) -> Dict[str, Any]

Human admit/reject; never apply or promote the candidate.

Source: lightbulb/async_client.py:3150

decide_workflow_improvement_packet

async client declaration
async def decide_workflow_improvement_packet(packet_id: str, *, approval_scope: str, decision: str, rationale: str='', evidence: Dict[str, Any] | None=None) -> Dict[str, Any]

Source: lightbulb/async_client.py:2375

delete_approval_preference

async client declaration
async def delete_approval_preference(preference_id: str) -> Dict[str, Any]

Remove an auto-accept rule.

Source: lightbulb/client.py:12553

delete_conversation

async client declaration
async def delete_conversation(domain: str, conversation_id: str) -> None

Delete a conversation.

Source: lightbulb/client.py:5019

delete_crm_task

async client declaration
async def delete_crm_task(task_id: str, tenant_id: str | None=None) -> None

Delete a CRM task.

Source: lightbulb/client.py:12517

delete_workflow

async client declaration
async def delete_workflow(workflow_id: str, *, company_id: str | None=None) -> None

Soft-delete a workflow through the authenticated designer API.

Source: lightbulb/client.py:8412

deliver_exchange_document

async client declaration
async def deliver_exchange_document(to_address: str, document: 'Dict[str, Any]', *, company_id: str | None=None) -> Dict[str, Any]

Send one sealed commercial document to the company at ``to_address`` (``POST /api/company-exchange/deliveries``).

Full source documentation
Send one sealed commercial document to the company at ``to_address`` (``POST /api/company-exchange/deliveries``).

The platform recomputes the document's seal, requires its ``from_party`` to be this
company's published card and its ``to_party`` the recipient's, and answers a receipt
(``delivery_id``, ``receipt_digest``, ``status`` queued). Sending the same document
again answers the first receipt with ``replayed`` true: it is delivered once.

Source: lightbulb/client.py:9371

derive_procurement_three_way_match

async client declaration
async def derive_procurement_three_way_match(project_id: str, run_ref: str, request: Any, *, company_id: str | None=None) -> Any

Source: lightbulb/async_client.py:5836

dispatch

async client declaration
async def dispatch(domain: str, *, action: str='chat', message: str='', objective: str='', inputs: Dict[str, Any] | None=None, conversation_id: str | None=None, company_id: str | None=None, project_id: str | None=None, required_services: Sequence[str] | None=None) -> DispatchResult

Source: lightbulb/async_client.py:2562

document_builder_add_collaborator

async client declaration
async def document_builder_add_collaborator(session_id: str, *, email: str | None=None, user_id: str | None=None, role: str='viewer') -> Dict[str, Any]

Add a collaborator to a document builder session.

Source: lightbulb/client.py:12789

document_builder_add_note

async client declaration
async def document_builder_add_note(session_id: str, content: str) -> Dict[str, Any]

Add a note to a document builder session.

Source: lightbulb/client.py:12962

document_builder_collaboration

async client declaration
async def document_builder_collaboration(session_id: str) -> Dict[str, Any]

Collaboration info for a document builder session.

Source: lightbulb/client.py:12779

document_builder_create_share_link

async client declaration
async def document_builder_create_share_link(session_id: str, *, role: str='viewer', expires_in_seconds: int | None=None) -> Dict[str, Any]

Create a share-link token for a document builder session.

Source: lightbulb/client.py:12812

document_builder_get_messages

async client declaration
async def document_builder_get_messages(session_id: str, **filters: Any) -> List[Dict[str, Any]]

Source: lightbulb/async_client.py:3911

document_builder_redeem_share_link

async client declaration
async def document_builder_redeem_share_link(session_id: str, token: str) -> Dict[str, Any]

Redeem a document builder share link.

Source: lightbulb/client.py:12832

document_builder_save

async client declaration
async def document_builder_save(session_id: str, body: Dict[str, Any] | None=None) -> Dict[str, Any]

Save a document builder session's current state.

Source: lightbulb/client.py:12863

drain_runtime_outcomes

async client declaration
async def drain_runtime_outcomes() -> List[Dict[str, Any]]

Atomically consume outcomes in improvement-loop wire format.

Source: lightbulb/client.py:7847

dynamic_workflow_attach

async client declaration
async def dynamic_workflow_attach(*, company_ref: str, project_ref: str, run_ref: str, host: str, host_session_ref: str, host_role: str, expected_revision: int, idempotency_key: str) -> Dict[str, Any]

Source: lightbulb/async_client.py:523

dynamic_workflow_cancel

async client declaration
async def dynamic_workflow_cancel(*, company_ref: str, project_ref: str, run_ref: str, host_binding_ref: str, session_receipt: str, host_role: str, expected_revision: int, idempotency_key: str, reason: str) -> Dict[str, Any]

Source: lightbulb/async_client.py:717

dynamic_workflow_next_assignment

async client declaration
async def dynamic_workflow_next_assignment(*, company_ref: str, project_ref: str, run_ref: str, host_binding_ref: str, session_receipt: str, host_role: str, expected_revision: int, idempotency_key: str) -> Dict[str, Any]

Source: lightbulb/async_client.py:571

dynamic_workflow_start

async client declaration
async def dynamic_workflow_start(*, company_ref: str, project_ref: str, objective: str, acceptance_criteria: Sequence[Mapping[str, Any]], host: str, expected_revision: int, idempotency_key: str, host_session_ref: str | None=None, acceptance_policy: str='distinct_binding', workflow_spec: Mapping[str, Any] | None=None, inputs: Mapping[str, Any] | None=None) -> Dict[str, Any]

Source: lightbulb/async_client.py:490

dynamic_workflow_status

async client declaration
async def dynamic_workflow_status(*, company_ref: str, project_ref: str, run_ref: str, host_binding_ref: str, session_receipt: str, host_role: str) -> Dict[str, Any]

Source: lightbulb/async_client.py:549

dynamic_workflow_submit_builder_result

async client declaration
async def dynamic_workflow_submit_builder_result(*, company_ref: str, project_ref: str, run_ref: str, host_binding_ref: str, session_receipt: str, host_role: str, assignment_ref: str, assignment_receipt: str, expected_revision: int, idempotency_key: str, outcome: str, summary: str, plan_digest: str, iteration: int, evidence_refs: Sequence[Mapping[str, Any]], progress_digest: str) -> Dict[str, Any]

Source: lightbulb/async_client.py:631

dynamic_workflow_submit_evaluator_verdict

async client declaration
async def dynamic_workflow_submit_evaluator_verdict(*, company_ref: str, project_ref: str, run_ref: str, host_binding_ref: str, session_receipt: str, host_role: str, assignment_ref: str, assignment_receipt: str, expected_revision: int, idempotency_key: str, decision: str, accepted: bool, summary: str, plan_digest: str, builder_result_digest: str, required_criterion_ids: Sequence[str], criterion_results: Sequence[Mapping[str, Any]]) -> Dict[str, Any]

Source: lightbulb/async_client.py:673

dynamic_workflow_submit_plan

async client declaration
async def dynamic_workflow_submit_plan(*, company_ref: str, project_ref: str, run_ref: str, host_binding_ref: str, session_receipt: str, host_role: str, assignment_ref: str, assignment_receipt: str, expected_revision: int, idempotency_key: str, required_criterion_ids: Sequence[str], plan: Mapping[str, Any]) -> Dict[str, Any]

Source: lightbulb/async_client.py:597

evaluate_period_reconciliation_run

async client declaration
async def evaluate_period_reconciliation_run(project_id: str, run_ref: str, request: PeriodReconciliationEvaluationRequest | Mapping[str, Any], *, company_id: str | None=None) -> PeriodReconciliationEvaluationReceipt

Source: lightbulb/async_client.py:5200

evaluate_project_offline_policy

async client declaration
async def evaluate_project_offline_policy(project_id: str, *, behavior_policy_id: Any, candidate_policy_id: Any, metric_id: Any, pairs: Sequence[Mapping[str, Any]], confirm_evaluate: bool=False, evaluation_id: Any=None, note: Any=None, idempotency_key: str | None=None) -> Dict[str, Any]

Estimate a candidate from verified receipts; never admit learning.

Source: lightbulb/async_client.py:3431

execute_contract_to_cash_invoice

async client declaration
async def execute_contract_to_cash_invoice(project_id: str, request: ContractToCashInvoiceExecutionRequest | Mapping[str, Any], *, company_id: str | None=None) -> ContractToCashInvoiceWriteReceipt

Consume an exact approval without treating provider acceptance as issuance.

Source: lightbulb/async_client.py:4931

execute_provisioning

async client declaration
async def execute_provisioning(company_id: str, journal_id: str, *, approval_ref: str) -> Dict[str, Any]

Mint the proposed instrument with the approval a human already granted.

Full source documentation
Mint the proposed instrument with the approval a human already granted.

Returns the durable ``lightbulb.company_provisioning_receipt.v1``; the
one-shot hosted-onboarding URL, when the instrument has one, is present in
this live response only and is never stored.

Source: lightbulb/client.py:2854

factory_app_signals

async client declaration
async def factory_app_signals(app_instance_id: str, *, company_id: str, since: str | None=None, limit: int=500) -> Dict[str, Any]

One generated app's signals since a moment, as the platform received them from its bridge module, in the shape the SDK's signals record takes (app_ref, signals).

Source: lightbulb/client.py:8970

factory_cancel

async client declaration
async def factory_cancel(grant_ref: str, *, company_id: str, reason: str | None=None) -> Dict[str, Any]

Revoke the grant, then ask its run to stop; nothing it left behind can be pushed.

Source: lightbulb/client.py:8923

factory_complete

async client declaration
async def factory_complete(grant_ref: str, *, company_id: str) -> Dict[str, Any]

The run has finished: the platform pushes its change and opens a draft pull request, each under its own durable claim (a retry returns the recorded receipt, never a second push), then charges the reservation. Completing a settled grant returns what it ended as.

Source: lightbulb/client.py:8919

factory_dispatch

async client declaration
async def factory_dispatch(grant_ref: str, *, company_id: str) -> Dict[str, Any]

Start the grant's one coding run in its workspace (no push: the platform pushes after the run); a second call returns the same run.

Source: lightbulb/client.py:8915

factory_feedback_outbox

async client declaration
async def factory_feedback_outbox(*, company_id: str, state: str | None=None) -> Dict[str, Any]

Where each generated-app submission's mirror into project feedback stands: pending, synced, failed_sync or unbound.

Source: lightbulb/client.py:8965

factory_grant

async client declaration
async def factory_grant(grant_ref: str, *, company_id: str) -> Dict[str, Any]

One grant as the platform holds it, its state, run and every ledger event.

Source: lightbulb/client.py:8957

factory_grant_lookup

async client declaration
async def factory_grant_lookup(*, company_id: str) -> 'Callable[[str], Dict[str, Any] | None]'

The authoritative lookup for :func:`lightbulb.execution_grant.verify_execution_grant`: the grant as the platform holds it while it is active, else nothing.

Source: lightbulb/client.py:8992

factory_issue_grant

async client declaration
async def factory_issue_grant(*, company_id: str, request: Mapping[str, Any], coding_budget: Any, workspace_id: str, decision: Mapping[str, Any] | None=None, currency: str | None=None, app_ref: str | None=None) -> Dict[str, Any]

Ask the platform for a run-scoped execution grant for one sealed SoftwareProductionRequest.

Full source documentation
Ask the platform for a run-scoped execution grant for one sealed SoftwareProductionRequest.

The platform recomputes the request's digest and refuses one changed after sealing, evaluates
the owner's mandate it holds (the decision passed is advisory and can only lower what is left
of the envelope), converts at its own operator-set rate (never one the caller supplies; a
currency it has no rate for is refused), reserves the coding budget, and returns the signed
grant (``issued``), the same grant again (``replayed``), or the mandate's answer when it is not
act (``issued`` false with ``code`` and ``reason``).  Verify the grant with
:func:`lightbulb.execution_grant.verify_execution_grant` and :meth:`factory_grant_lookup`.

Source: lightbulb/client.py:8885

factory_issue_signal_credential

async client declaration
async def factory_issue_signal_credential(app_instance_id: str, *, company_id: str) -> Dict[str, Any]

Issue or rotate the credential one generated app reports its signals with (an owner's act: needs software-factory.mandate.manage).

Full source documentation
Issue or rotate the credential one generated app reports its signals with (an owner's act: needs software-factory.mandate.manage).

The token (``lbsig_...``) is in this answer only. Store it as a server-side secret of the app's
backend, which sends it as ``X-Lightbulb-App-Token``; it authorizes that app's signal intake and
nothing else. On rotation the previous token keeps working until ``previous_valid_until``.

Source: lightbulb/client.py:8975

factory_reconcile

async client declaration
async def factory_reconcile(grant_ref: str, effect: str, *, company_id: str, applied: bool, receipt: Mapping[str, Any] | None=None) -> Dict[str, Any]

Settle an effect whose outcome was uncertain (``reconciliation_required``) after checking the remote side yourself.

Full source documentation
Settle an effect whose outcome was uncertain (``reconciliation_required``) after checking the remote side yourself.

``applied`` True says the push or pull request exists; ``receipt`` must then prove it — for
``branch_create`` the run's ``run_id``, its ``branch`` and the ``commit_hash``; for
``pull_request_open`` the ``pr_number`` and a matching ``pr_url`` in the workspace's repository.
The platform checks the receipt against the run and records the effect as executed.  ``applied``
False says nothing happened remotely: the effect becomes claimable again and a later completion
retries it.  This is the only way an uncertain effect moves.

Source: lightbulb/client.py:8928

factory_register_mandate

async client declaration
async def factory_register_mandate(mandate: Mapping[str, Any], *, company_id: str) -> Dict[str, Any]

Give the factory the owner's sealed mandate (lightbulb.owner_mandate.v1); the platform recomputes its digest and refuses it if it was changed after sealing. Needs the software-factory.mandate.manage permission. A new mandate revokes every grant issued under the old one.

Source: lightbulb/client.py:8877

factory_revoke_signal_credential

async client declaration
async def factory_revoke_signal_credential(app_instance_id: str, *, company_id: str) -> Dict[str, Any]

Revoke the app's signal credential; its reports are refused from now on.

Source: lightbulb/client.py:8988

factory_signal_credential

async client declaration
async def factory_signal_credential(app_instance_id: str, *, company_id: str) -> Dict[str, Any]

Whether the app has a live signal credential: ``state`` none, active or revoked, and its prefix (never the token).

Source: lightbulb/client.py:8984

factory_status

async client declaration
async def factory_status(*, company_id: str) -> Dict[str, Any]

Every grant for the company with its state, the month's coding budget, and the recent ledger events.

Source: lightbulb/client.py:8961

fail_economic_spine_run

async client declaration
async def fail_economic_spine_run(project_id: str, run_ref: str, request: EconomicSpineRunTransition | Mapping[str, Any], *, company_id: str | None=None) -> EconomicSpineRun

Source: lightbulb/async_client.py:5419

fail_period_reconciliation_run

async client declaration
async def fail_period_reconciliation_run(project_id: str, run_ref: str, request: PeriodReconciliationTerminalRequest | Mapping[str, Any], *, company_id: str | None=None) -> PeriodReconciliationRunReceipt

Source: lightbulb/async_client.py:5289

fail_procurement_matched_close_run

async client declaration
async def fail_procurement_matched_close_run(project_id: str, run_ref: str, request: Any, *, company_id: str | None=None) -> Any

Source: lightbulb/async_client.py:5868

feature_availability

async client declaration
async def feature_availability(required_services: Sequence[str], *, company_id: str | None=None) -> Any

Read fresh deployment prerequisites for one exact company, without changing selection.

Source: lightbulb/async_client.py:767

finalize_company_blueprint_certification

async client declaration
async def finalize_company_blueprint_certification(project_id: str, candidate_id: str, *, company_id: str | None=None) -> CompanyBlueprintCertificationStatus

Source: lightbulb/async_client.py:4491

find_exchange_card

async client declaration
async def find_exchange_card(address: str, *, company_id: str | None=None) -> Dict[str, Any]

Another company's published card, by its exchange address: its party ref, sealed card and digest (never its tenant or company).

Source: lightbulb/client.py:9351

flush_runtime_outcomes

async client declaration
async def flush_runtime_outcomes(*, idempotency_key: str | None=None) -> Dict[str, Any]

Upload queued outcomes, restoring them locally when upload fails.

Source: lightbulb/client.py:7873

forwarded_sync_methods

async client declaration
def forwarded_sync_methods() -> list[str]

Public sync operations supplied by the managed thread bridge.

Source: lightbulb/async_client.py:329

from_verified_envelope

async client declaration
async def from_verified_envelope(base_url: str, envelope: Any, *, enforce_https: bool=True, connect_timeout: float=_CONNECT_TIMEOUT, read_timeout: float=_READ_TIMEOUT, outcome_recorder: Any=None) -> 'LightbulbClient'

Build a worker-only client without a JWT or shared API credential.

Full source documentation
Build a worker-only client without a JWT or shared API credential.

The envelope must have a verified v2-or-newer signature and an exact
company/project runtime authority whose public claims match its signed
scope. Spring remains authoritative and verifies the HMAC token again.

Source: lightbulb/client.py:2670

get_account_shell_customization

async client declaration
async def get_account_shell_customization() -> Dict[str, Any]

Read the effective governed account-shell customization.

Source: lightbulb/async_client.py:1490

get_agent_runtime_config

async client declaration
async def get_agent_runtime_config(agent_type: str='coding', *, company_id: str | None=None) -> Dict[str, Any]

Get the effective Codex/Claude Code/Backbone runtime config for this account.

Source: lightbulb/client.py:3287

get_ai_metered_cost

async client declaration
async def get_ai_metered_cost(provider: str, *, window_start: str, window_end: str) -> Dict[str, Any]

Read native metering for the active company; this neither reconciles nor posts costs.

Source: lightbulb/async_client.py:785

get_aoc_decision

async client declaration
async def get_aoc_decision(decision_id: str) -> Dict[str, Any]

Get a specific AutoCompany decision.

Source: lightbulb/client.py:12145

get_aoc_run

async client declaration
async def get_aoc_run(run_id: str) -> Dict[str, Any]

Get an AutoCompany run detail.

Source: lightbulb/client.py:12041

get_aoc_task

async client declaration
async def get_aoc_task(task_id: str) -> Dict[str, Any]

Get an AutoCompany task detail.

Source: lightbulb/client.py:12094

get_aoc_tick

async client declaration
async def get_aoc_tick(tick_id: str) -> Dict[str, Any]

Get a single AutoCompany tick.

Source: lightbulb/client.py:12169

get_approval

async client declaration
async def get_approval(task_id: str) -> Dict[str, Any]

Read one approval task (async twin of :meth:`LightbulbClient.get_approval`).

Source: lightbulb/async_client.py:3956

get_artifact

async client declaration
async def get_artifact(artifact_id: str) -> Dict[str, Any]

Get a specific artifact by ID.

Source: lightbulb/client.py:8280

get_assessment_workspace

async client declaration
async def get_assessment_workspace(project_id: str, run_ref: str) -> Dict[str, Any] | None

Source: lightbulb/async_client.py:5776

get_autonomy_control

async client declaration
async def get_autonomy_control(*, company_id: str | None=None) -> Dict[str, Any]

The owner's stop for everything that runs on its own (``/api/autonomy/control``).

Full source documentation
The owner's stop for everything that runs on its own (``/api/autonomy/control``).

The platform's view: ``status`` running or stopped, ``halted_by`` (the global switch, a
tenant-wide stop or the company's own), both controls, and what runs on its own. The
autopilot reads it before it acts, so the owner's one stop holds it on every path.

Source: lightbulb/client.py:9282

get_code_workspace_active_run

async client declaration
async def get_code_workspace_active_run(workspace_id: str) -> Dict[str, Any] | None

Source: lightbulb/async_client.py:3801

get_code_workspace_claude_session

async client declaration
async def get_code_workspace_claude_session(workspace_id: str, session_id: str) -> Dict[str, Any]

Get a single Claude SDK session.

Source: lightbulb/client.py:11894

get_code_workspace_codex_thread

async client declaration
async def get_code_workspace_codex_thread(workspace_id: str, thread_id: str) -> Dict[str, Any]

Get a Codex thread (turns, status, metadata).

Source: lightbulb/client.py:11954

get_code_workspace_run

async client declaration
async def get_code_workspace_run(workspace_id: str, run_id: str) -> Dict[str, Any]

Source: lightbulb/async_client.py:3792

get_codex_account_link_status

async client declaration
async def get_codex_account_link_status(session_id: str) -> Dict[str, Any]

Poll a Codex device-auth session.

Source: lightbulb/client.py:3435

get_company_blueprint_certification_candidate

async client declaration
async def get_company_blueprint_certification_candidate(project_id: str, candidate_id: str, *, company_id: str | None=None) -> CompanyBlueprintCertificationStatus

Source: lightbulb/async_client.py:4540

get_company_blueprint_deployment

async client declaration
async def get_company_blueprint_deployment(project_id: str, deployment_id: str, *, company_id: str | None=None) -> CompanyBlueprintDeploymentStatus

Source: lightbulb/async_client.py:4631

get_company_blueprint_deployment_head

async client declaration
async def get_company_blueprint_deployment_head(project_id: str, *, company_id: str | None=None) -> CompanyBlueprintDeploymentHead | None

Source: lightbulb/async_client.py:4644

get_company_lifecycle

async client declaration
async def get_company_lifecycle(*, company_id: str | None=None) -> Dict[str, Any]

The company's lifecycle status and every transition receipt so far.

Full source documentation
The company's lifecycle status and every transition receipt so far.

``lifecycleStatus`` is ``ACTIVE``, ``WINDING_DOWN`` or ``CLOSED``.  A winding-down
company refuses selling writes (409 ``company_winding_down``) while keeping final
billing, refunds, notices, payroll and payables; a closed one refuses every tool
(410 ``company_closed``) and will not hand a worker any work.

Source: lightbulb/client.py:9172

get_contract_to_cash_cash_collection

async client declaration
async def get_contract_to_cash_cash_collection(project_id: str, record_id: str, *, company_id: str | None=None) -> ContractToCashCashCollectionRecord

Source: lightbulb/async_client.py:5037

get_contract_to_cash_invoice_issued

async client declaration
async def get_contract_to_cash_invoice_issued(project_id: str, record_id: str, *, company_id: str | None=None) -> ContractToCashInvoiceIssuedRecord

Read one exact provider-observed invoice issuance custody record.

Source: lightbulb/async_client.py:4989

get_contract_to_cash_run

async client declaration
async def get_contract_to_cash_run(project_id: str, run_ref: str, *, company_id: str | None=None) -> ContractToCashRun

Source: lightbulb/async_client.py:5070

get_conversation

async client declaration
async def get_conversation(domain: str, conversation_id: str) -> Dict[str, Any]

Get conversation history.

Source: lightbulb/client.py:5001

get_crm_task

async client declaration
async def get_crm_task(task_id: str, tenant_id: str | None=None) -> Dict[str, Any]

Get a single CRM task.

Source: lightbulb/client.py:12476

get_current_company_blueprint_certification

async client declaration
async def get_current_company_blueprint_certification(project_id: str, *, blueprint_version_id: str, environment_ref: str, company_id: str | None=None) -> CompanyBlueprintCertificationSpringRecord | None

Resolve the current exact Blueprint certificate using Spring's clock.

Source: lightbulb/async_client.py:4564

get_current_golden_loop_certification

async client declaration
async def get_current_golden_loop_certification(project_id: str, *, loop_ref: str, loop_version: str, environment_ref: str, company_id: str | None=None) -> GoldenLoopCertificationSpringRecord | None

Source: lightbulb/async_client.py:4851

get_customer_referral_event

async client declaration
async def get_customer_referral_event(project_id: str, event_id: str, *, company_id: str | None=None)

Source: lightbulb/async_client.py:5909

get_document_schemas

async client declaration
async def get_document_schemas(session_id: str) -> Dict[str, Any]

Get the document schemas for a session.

Source: lightbulb/client.py:5059

get_document_session

async client declaration
async def get_document_session(session_id: str) -> Dict[str, Any]

Get a document builder session.

Source: lightbulb/client.py:5051

get_economic_spine_run

async client declaration
async def get_economic_spine_run(project_id: str, run_ref: str, *, company_id: str | None=None) -> EconomicSpineRun

Source: lightbulb/async_client.py:5390

get_engine_inventory

async client declaration
async def get_engine_inventory(project_id: str, *, engine: str) -> Dict[str, Any]

Read an unfiltered engine inventory pinned to the active company; partial reads remain marked.

Source: lightbulb/async_client.py:4039

get_engine_state

async client declaration
async def get_engine_state(project_id: str, engine: str, entity_ref: str) -> Dict[str, Any] | None

Async twin of :meth:`lightbulb.client.LightbulbClient.get_engine_state`.

Source: lightbulb/async_client.py:4027

get_exchange_card

async client declaration
async def get_exchange_card(*, company_id: str | None=None) -> Dict[str, Any] | None

The company's card as the exchange directory holds it, with its address; ``None`` before it is published.

Source: lightbulb/client.py:9321

get_exchange_receipt_keys

async client declaration
async def get_exchange_receipt_keys(*, company_id: str | None=None) -> Dict[str, Any]

The Ed25519 keys the platform signs exchange receipts with (``/api/public/company-exchange/keys``): id, raw public key and status.

Source: lightbulb/client.py:9395

get_executed_commercial_agreement

async client declaration
async def get_executed_commercial_agreement(project_id: str, record_id: str, *, company_id: str | None=None) -> ExecutedCommercialAgreementRecord

Source: lightbulb/async_client.py:4683

get_finance_reconciliation_run

async client declaration
async def get_finance_reconciliation_run(run_id: str, *, company_id: str | None=None) -> FinanceReconciliationRunDetails

Get one exact reconciliation run and validate its stored envelope.

Source: lightbulb/client.py:3712

get_golden_loop_catalog_version

async client declaration
async def get_golden_loop_catalog_version(project_id: str, catalog_version_id: str, *, company_id: str | None=None) -> GoldenLoopCatalogVersion

Source: lightbulb/async_client.py:4751

get_golden_loop_certification_candidate

async client declaration
async def get_golden_loop_certification_candidate(project_id: str, candidate_id: str, *, company_id: str | None=None) -> GoldenLoopCertificationCandidateStatus

Source: lightbulb/async_client.py:4827

get_golden_loop_declaration_version

async client declaration
async def get_golden_loop_declaration_version(project_id: str, catalog_version_id: str, declaration_version_id: str, *, company_id: str | None=None) -> GoldenLoopDeclarationVersion

Source: lightbulb/async_client.py:4774

get_golden_loop_economic_closure

async client declaration
async def get_golden_loop_economic_closure(project_id: str, run_ref: str, *, company_id: str | None=None) -> GoldenLoopEconomicClosureProjection

Read Spring's canonical, non-mutating whole-run cost closure.

Source: lightbulb/async_client.py:4880

get_governed_communication_run

async client declaration
async def get_governed_communication_run(project_id: str, run_ref: str, *, company_id: str | None=None) -> GovernedCommunicationRun

Source: lightbulb/async_client.py:5671

get_marketplace_action_publication

async client declaration
async def get_marketplace_action_publication(publication_id: str) -> Dict[str, Any]

Get governed publication and security-scan status by publication UUID.

Source: lightbulb/async_client.py:1881

get_marketplace_installation

async client declaration
async def get_marketplace_installation(installation_id: str) -> Dict[str, Any]

Get one marketplace installation for the selected active company.

Source: lightbulb/async_client.py:1970

get_marketplace_invocation_receipt

async client declaration
async def get_marketplace_invocation_receipt(invocation_id: str) -> Dict[str, Any]

Get the immutable audit receipt for one marketplace invocation.

Source: lightbulb/async_client.py:2141

get_marketplace_invocation_status

async client declaration
async def get_marketplace_invocation_status(invocation_id: str) -> Dict[str, Any]

Get current invocation state for the selected company.

Source: lightbulb/async_client.py:2129

get_marketplace_listing

async client declaration
async def get_marketplace_listing(listing_id: str, *, revision_id: str | None=None, include_inputs: bool=True) -> Dict[str, Any]

Get one persisted marketplace listing and optional immutable revision.

Source: lightbulb/async_client.py:1789

get_operator_policy

async client declaration
async def get_operator_policy(*, company_id: str | None=None) -> Dict[str, Any]

The company's active operator policy and its ceilings.

Full source documentation
The company's active operator policy and its ceilings.

Raises :class:`~lightbulb.errors.LightbulbError` (404) when no policy is active: also the
state in which every engine transition escalates to a human.

Source: lightbulb/client.py:9154

get_period_reconciliation_campaign_facts

async client declaration
async def get_period_reconciliation_campaign_facts(project_id: str, run_ref: str, *, company_id: str | None=None) -> tuple[PeriodReconciliationCampaignFact, ...]

Source: lightbulb/async_client.py:5280

get_period_reconciliation_outcomes

async client declaration
async def get_period_reconciliation_outcomes(project_id: str, run_ref: str, *, company_id: str | None=None) -> tuple[PeriodReconciliationOutcomeFact, ...]

Source: lightbulb/async_client.py:5271

get_period_reconciliation_run

async client declaration
async def get_period_reconciliation_run(project_id: str, run_ref: str, *, company_id: str | None=None) -> PeriodReconciliationRun

Source: lightbulb/async_client.py:5262

get_procurement_matched_close_outcomes

async client declaration
async def get_procurement_matched_close_outcomes(project_id: str, run_ref: str, *, company_id: str | None=None) -> Any

Source: lightbulb/async_client.py:5860

get_procurement_matched_close_run

async client declaration
async def get_procurement_matched_close_run(project_id: str, run_ref: str, *, company_id: str | None=None) -> Any

Source: lightbulb/async_client.py:5852

get_project_coding_handoff

async client declaration
async def get_project_coding_handoff(project_id: str, harness: str) -> Dict[str, Any]

Read the selected Project Agent handoff for a connected harness.

Source: lightbulb/async_client.py:910

get_project_coding_harnesses

async client declaration
async def get_project_coding_harnesses(project_id: str) -> Dict[str, Any]

Read the durable additive harness selection for one project.

Source: lightbulb/async_client.py:837

get_project_connector_route_descriptor

async client declaration
async def get_project_connector_route_descriptor(project_id: str, connector_account_ref: str, tool_name: str, *, company_id: str | None=None) -> Dict[str, Any]

Resolve exact governed execution coordinates for one project account Tool.

Full source documentation
Resolve exact governed execution coordinates for one project account Tool.

Spring authenticates tenant/company/project access and resolves the same
account, Tool, and Tenant Connector route used by governed execution.
The closed descriptor contains no OAuth connection or credential data.
Pass ``company_id`` to pin this read without changing selected-company
state.

Source: lightbulb/client.py:3233

get_project_game_snapshot

async client declaration
async def get_project_game_snapshot(project_id: str) -> Dict[str, Any]

Fetch and validate one server-owned, exact-scoped project snapshot.

Source: lightbulb/async_client.py:2706

get_project_work_packet_run

async client declaration
async def get_project_work_packet_run(project_id: str, run_ref: str, *, company_id: str | None=None) -> ProjectWorkPacketRunRead

Read one owned Project work-packet run without harness custody.

Source: lightbulb/async_client.py:5744

get_provisioning

async client declaration
async def get_provisioning(company_id: str, journal_id: str) -> Dict[str, Any]

The provisioning journal row and its durable receipt, without live-only fields.

Source: lightbulb/client.py:2881

get_recursive_agent_execution_status

async client declaration
async def get_recursive_agent_execution_status(execution_id: str) -> Dict[str, Any]

Read privacy-minimized status for one exact user-owned recursive tree.

Source: lightbulb/async_client.py:3876

get_reference_company_onboarding_readiness

async client declaration
async def get_reference_company_onboarding_readiness(project_id: str, *, company_id: str | None=None) -> ReferenceCompanyOnboardingReadiness

Async secret-free reference-company readiness projection.

Source: lightbulb/async_client.py:4390

get_runtime_domain_action

async client declaration
async def get_runtime_domain_action(runtime_action_id: str, *, project_id: str, company_id: str | None=None) -> Dict[str, Any]

Review one exact-scope registration without changing its lifecycle.

Source: lightbulb/async_client.py:1666

get_sdk_project_checkpoint

async client declaration
async def get_sdk_project_checkpoint(project_id: str, run_ref: str, *, company_id: str | None=None) -> Dict[str, Any] | None

Source: lightbulb/client.py:7501

get_server_workflow_improvement_packet

async client declaration
async def get_server_workflow_improvement_packet(packet_id: str) -> Dict[str, Any]

Read one exact tenant/company-scoped workflow improvement packet.

Source: lightbulb/async_client.py:2362

get_server_workflow_improvement_status

async client declaration
async def get_server_workflow_improvement_status() -> Dict[str, Any]

Source: lightbulb/async_client.py:2337

get_service_case_resolution

async client declaration
async def get_service_case_resolution(project_id: str, run_ref: str, *, company_id: str | None=None) -> ServiceCaseResolutionRun

Source: lightbulb/async_client.py:5501

get_training_pair_status

async client declaration
async def get_training_pair_status(pair_handle: str, *, project_id: str | None=None) -> Dict[str, Any]

Read the privacy-minimized status for one exact owned pair handle.

Source: lightbulb/async_client.py:2272

get_voice_execution

async client declaration
async def get_voice_execution(execution_id: str) -> Dict[str, Any]

Get a voice execution detail (transcripts, status, agent decisions).

Source: lightbulb/client.py:11212

get_workflow

async client declaration
async def get_workflow(workflow_id: str) -> Dict[str, Any]

Get a workflow by ID.

Source: lightbulb/client.py:8346

get_workflow_improvement_audit

async client declaration
async def get_workflow_improvement_audit(packet_id: str) -> List[Dict[str, Any]]

Read the immutable scoped audit trail for one workflow packet.

Source: lightbulb/async_client.py:2445

get_workflow_improvement_delivery

async client declaration
async def get_workflow_improvement_delivery(delivery_id: str) -> Dict[str, Any]

Read one exact scoped workflow-improvement delivery.

Source: lightbulb/async_client.py:2459

get_workflow_improvement_status

async client declaration
async def get_workflow_improvement_status(output_dir: str | os.PathLike[str] | None=None) -> Dict[str, Any]

Read local continuous-improvement state without network calls.

Source: lightbulb/client.py:7905

get_workflow_instance

async client declaration
async def get_workflow_instance(trace_id: str, *, company_id: str | None=None) -> Dict[str, Any]

Get a workflow instance through the authenticated public API.

Source: lightbulb/async_client.py:2624

get_workflow_trigger_catalog

async client declaration
async def get_workflow_trigger_catalog() -> Dict[str, Any]

List the schedule literals and event types accepted by authoring.

Source: lightbulb/async_client.py:1260

grep_documents

async client declaration
async def grep_documents(pattern: str, *, regex: bool=True, case_sensitive: bool=False, folder_path: str | None=None, top_k: int=20) -> DispatchResult

Grep across document content using pattern matching.

Source: lightbulb/client.py:5087

hr_live_advance_application

async client declaration
async def hr_live_advance_application(application_id: str, *, body: Dict[str, Any] | None=None) -> Dict[str, Any]

Advance a Greenhouse candidate to the next stage (HITL-gated).

Source: lightbulb/client.py:11349

hr_live_cases

async client declaration
async def hr_live_cases(**filters: Any) -> Dict[str, Any]

HR case board items from Monday.com.

Source: lightbulb/client.py:11316

hr_live_health

async client declaration
async def hr_live_health() -> Dict[str, Any]

Health check for HR connector tokens (BambooHR / Greenhouse / Monday).

Source: lightbulb/client.py:11375

hr_live_leave_balance

async client declaration
async def hr_live_leave_balance(bamboo_employee_id: str) -> Dict[str, Any]

BambooHR leave balance for an employee.

Source: lightbulb/client.py:11296

hr_live_monday_onboarding_board

async client declaration
async def hr_live_monday_onboarding_board(checklist_id: str) -> Dict[str, Any]

Monday.com board view for an HR onboarding checklist.

Source: lightbulb/client.py:11306

hr_live_recruiting_applications

async client declaration
async def hr_live_recruiting_applications(**filters: Any) -> Dict[str, Any]

Greenhouse applications.

Source: lightbulb/client.py:11338

hr_live_recruiting_jobs

async client declaration
async def hr_live_recruiting_jobs(**filters: Any) -> Dict[str, Any]

Greenhouse job listings.

Source: lightbulb/client.py:11327

hr_live_reject_application

async client declaration
async def hr_live_reject_application(application_id: str, *, body: Dict[str, Any] | None=None) -> Dict[str, Any]

Reject a Greenhouse application (HITL-gated).

Source: lightbulb/client.py:11362

hr_live_whos_out

async client declaration
async def hr_live_whos_out(**filters: Any) -> Dict[str, Any]

BambooHR who's-out roster (current and upcoming time-off).

Source: lightbulb/client.py:11285

ingest_sdk_project_event

async client declaration
async def ingest_sdk_project_event(project_id: str, event: Dict[str, Any], *, company_id: str | None=None) -> Dict[str, Any]

Source: lightbulb/client.py:7583

inspect_project_creation_world_ready

async client declaration
def inspect_project_creation_world_ready(name: str, instructions: str='', *, participant_role: str='agent_worker', experience_lens: str='agent_protocol', play_style: str='guided_human_in_the_loop') -> dict[str, Any]

Inspect project-review readiness locally without network activity.

Source: lightbulb/async_client.py:3472

inspect_project_game_campaign

async client declaration
def inspect_project_game_campaign(*, project: dict[str, Any] | None=None, plan: dict[str, Any] | None=None, business_cockpit: dict[str, Any] | None=None) -> dict[str, Any]

Inspect the human/agent project campaign locally without network activity.

Source: lightbulb/async_client.py:2751

inspect_training_pair_input_custody

async client declaration
async def inspect_training_pair_input_custody(installation_id: str, revision_id: str, *, project_id: str | None=None) -> Dict[str, Any]

Inspect exact-owner input custody without widening authority.

Source: lightbulb/async_client.py:2183

inspect_training_pair_readiness

async client declaration
async def inspect_training_pair_readiness(installation_id: str, revision_id: str, *, project_id: str | None=None) -> Dict[str, Any]

Inspect structured readiness without admitting or launching training.

Source: lightbulb/async_client.py:2155

inspect_workflow_learning_candidate_attestation

async client declaration
async def inspect_workflow_learning_candidate_attestation(delivery_id: str) -> Dict[str, Any]

Revalidate the exact candidate producer attestation using current keys.

Source: lightbulb/async_client.py:2472

install_marketplace_action

async client declaration
async def install_marketplace_action(listing_id: str, revision_id: str, *, idempotency_key: str, deployment_targets: Sequence[str] | None=None) -> Dict[str, Any]

Install a pinned revision and bind its explicit agent targets.

Source: lightbulb/async_client.py:1982

invoke_marketplace_action

async client declaration
async def invoke_marketplace_action(installation_id: str, inputs: Dict[str, Any] | None=None, *, idempotency_key: str, message: str='', objective: str='', dry_run: bool=True, preview_invocation_id: str | None=None, confirm_live: bool=False) -> Dict[str, Any]

Preview an installed action, or explicitly confirm an exact preview for live use.

Source: lightbulb/async_client.py:2084

invoke_tool

async client declaration
async def invoke_tool(tool_name: str, arguments: Dict[str, Any], *, project_id: str | None=None, project_ref: str | None=None, connector_account_ref: str | None=None, idempotency_key: str | None=None, approval_ref: str | None=None, workflow_id: str | None=None, step_id: str | None=None, workflow_instance_id: str | None=None, workflow_step_generation: int | None=None, runtime_context: Dict[str, Any] | None=None, effect: str | None=None) -> Dict[str, Any]

Invoke a utility through legacy routing or a connector through exact custody.

Full source documentation
Invoke a utility through legacy routing or a connector through exact custody.

With Spring's connector effect boundary enabled, catalogued connector
reads and writes require the governed project/account arguments and fail
closed on the legacy endpoint. Private-response reads such as
``shopify.list_abandoned_checkouts`` and ``gmail.get_thread`` require
exact project/account/read custody and must omit ``idempotency_key`` so
every response contains fresh provider data.

Source: lightbulb/async_client.py:4198

it_ops_live_connector

async client declaration
async def it_ops_live_connector(connector: str, **filters: Any) -> Dict[str, Any]

Pass-through to a live IT-Ops connector (jira | slack | github | notion).

Source: lightbulb/client.py:12652

it_ops_mcp_manifest

async client declaration
async def it_ops_mcp_manifest() -> Dict[str, Any]

Get the IT-Ops workspace MCP manifest.

Source: lightbulb/client.py:12666

list_agent_runtime_options

async client declaration
async def list_agent_runtime_options(agent_type: str | None=None) -> Dict[str, Any]

List coding-agent runtimes and Backbone host surfaces available to the account.

Source: lightbulb/client.py:3271

list_all_engine_states

async client declaration
async def list_all_engine_states(project_id: str, *, engine: str | None=None, status: str | None=None, company_id: str | None=None) -> List[Dict[str, Any]]

Read all states from immutable scoped pages; reject partial, mixed or expired snapshots.

Full source documentation
Read all states from immutable scoped pages; reject partial, mixed or expired snapshots.

The host bounds snapshots to 10,000 rows and 32 MiB. An oversized scope
raises an error instead of silently returning its first page.

Source: lightbulb/async_client.py:4050

list_aoc_decisions

async client declaration
async def list_aoc_decisions(**filters: Any) -> List[Dict[str, Any]]

List AutoCompany decisions awaiting or post-resolution.

Source: lightbulb/client.py:12129

list_aoc_runs

async client declaration
async def list_aoc_runs(**filters: Any) -> List[Dict[str, Any]]

Source: lightbulb/async_client.py:4134

list_aoc_task_events

async client declaration
async def list_aoc_task_events(task_id: str) -> List[Dict[str, Any]]

List events recorded against an AutoCompany task.

Source: lightbulb/client.py:12103

list_aoc_tasks

async client declaration
async def list_aoc_tasks(**filters: Any) -> List[Dict[str, Any]]

List AutoCompany tasks.

Source: lightbulb/client.py:12071

list_aoc_ticks

async client declaration
async def list_aoc_ticks(**filters: Any) -> List[Dict[str, Any]]

List AutoCompany cognitive-loop ticks.

Source: lightbulb/client.py:12155

list_approval_preferences

async client declaration
async def list_approval_preferences() -> List[Dict[str, Any]]

List the user's HITL auto-accept rules.

Source: lightbulb/client.py:12529

list_artifacts

async client declaration
async def list_artifacts(**filters) -> List[Dict[str, Any]]

List artifacts (charts, reports, analyses, etc.).

Source: lightbulb/client.py:8264

list_available_project_connector_accounts

async client declaration
async def list_available_project_connector_accounts(project_id: str, provider: str, *, company_id: str | None=None) -> List[Dict[str, Any]]

List provider accounts eligible for binding to one accessible project.

Full source documentation
List provider accounts eligible for binding to one accessible project.

This mirrors Spring's account-selector contract. It returns connection
identity and display metadata needed by a trusted binding UI, but never
connector credentials. Project/company authorization is enforced by
Spring on every request.

Source: lightbulb/client.py:3197

list_business_primitives

async client declaration
async def list_business_primitives(*, category: str | None=None, query: str | None=None, include_inputs: bool=True) -> List[Dict[str, Any]]

List canonical primitive manifest entries without a network call.

Source: lightbulb/async_client.py:1026

list_code_workspace_claude_sessions

async client declaration
async def list_code_workspace_claude_sessions(workspace_id: str) -> List[Dict[str, Any]]

List Claude SDK sessions associated with a workspace.

Source: lightbulb/client.py:11877

list_code_workspace_codex_threads

async client declaration
async def list_code_workspace_codex_threads(workspace_id: str, **filters: Any) -> List[Dict[str, Any]]

List Codex runtime threads attached to a workspace.

Source: lightbulb/client.py:11936

list_code_workspace_proposals

async client declaration
async def list_code_workspace_proposals(workspace_id: str) -> List[Dict[str, Any]]

List code-change proposals submitted to the workspace.

Source: lightbulb/client.py:11594

list_code_workspace_runs

async client declaration
async def list_code_workspace_runs(workspace_id: str, **filters: Any) -> List[Dict[str, Any]]

List historical coding runs for a workspace.

Source: lightbulb/client.py:11524

list_code_workspaces

async client declaration
async def list_code_workspaces() -> List[Dict[str, Any]]

Source: lightbulb/async_client.py:3771

list_companies

async client declaration
async def list_companies() -> List[Dict[str, Any]]

Source: lightbulb/async_client.py:798

list_connected_integrations

async client declaration
async def list_connected_integrations(company_id: str | None=None) -> List[Dict[str, Any]]

Source: lightbulb/async_client.py:2301

list_connectors

async client declaration
async def list_connectors() -> List[Dict[str, Any]]

List connector catalogue entries, not tenant account connection health.

Full source documentation
List connector catalogue entries, not tenant account connection health.

A catalogue status of active does not verify credentials or live access.

Source: lightbulb/client.py:9586

list_contacts

async client declaration
async def list_contacts(**filters) -> List[Dict[str, Any]]

List CRM contacts.

Source: lightbulb/client.py:9863

list_conversations

async client declaration
async def list_conversations(domain: str) -> List[Dict[str, Any]]

List all conversations for a domain.

Source: lightbulb/client.py:4992

list_crm_tasks

async client declaration
async def list_crm_tasks(tenant_id: str | None=None, **filters: Any) -> List[Dict[str, Any]]

List CRM tasks scoped to a tenant (defaults to authed tenant).

Source: lightbulb/client.py:12459

list_customer_inbound_events

async client declaration
async def list_customer_inbound_events(project_id: str, *, start: str, end: str, cursor: dict | None=None, company_id: str | None=None) -> Dict[str, Any]

Source: lightbulb/async_client.py:5912

list_customer_webhook_hints

async client declaration
async def list_customer_webhook_hints(project_id: str, *, connector_account_ref: str, start: str, end: str, cursor: dict | None=None, company_id: str | None=None) -> Dict[str, Any]

Source: lightbulb/async_client.py:5900

list_deals

async client declaration
async def list_deals(**filters) -> List[Dict[str, Any]]

List CRM deals/opportunities.

Source: lightbulb/client.py:9875

list_document_sessions

async client declaration
async def list_document_sessions() -> List[Dict[str, Any]]

List document builder sessions.

Source: lightbulb/client.py:5043

list_domain_actions

async client declaration
async def list_domain_actions(domain: str) -> List[Dict[str, Any]]

List authenticated, RBAC-visible actions for one domain.

Source: lightbulb/async_client.py:1425

list_domains

async client declaration
async def list_domains() -> Dict[str, Dict[str, Any]] | List[Dict[str, Any]]

Source: lightbulb/async_client.py:1416

list_engine_states

async client declaration
async def list_engine_states(project_id: str, *, engine: str | None=None, status: str | None=None, limit: int=50) -> List[Dict[str, Any]]

Async twin of :meth:`lightbulb.client.LightbulbClient.list_engine_states`.

Source: lightbulb/async_client.py:4077

list_exchange_counterparties

async client declaration
async def list_exchange_counterparties(*, company_id: str | None=None) -> List[Dict[str, Any]]

The companies this one trades with or has blocked: address, current party ref, display name and status.

Source: lightbulb/client.py:9358

list_exchange_deliveries

async client declaration
async def list_exchange_deliveries(*, exchange_ref: str | None=None, limit: int=50, company_id: str | None=None) -> List[Dict[str, Any]]

What this company sent, newest first, each with its status: queued, received or refused (with the recipient's code).

Source: lightbulb/client.py:9386

list_exchange_inbox

async client declaration
async def list_exchange_inbox(*, limit: int=50, company_id: str | None=None) -> List[Dict[str, Any]]

What waits for this company, oldest first: each delivery with its sealed document and the sender's address and party.

Source: lightbulb/client.py:9401

list_executable_business_primitives

async client declaration
async def list_executable_business_primitives(*, query: str='', include_schemas: bool=True, offset: int=0, limit: int | None=None) -> Dict[str, Any]

Return the same canonical manifest page as the synchronous SDK.

Source: lightbulb/async_client.py:1043

list_finance_reconciliation_runs

async client declaration
async def list_finance_reconciliation_runs(*, company_id: str | None=None, limit: int=50) -> tuple[FinanceReconciliationRunSummary, ...]

List bounded reconciliation run summaries under one Spring scope.

Source: lightbulb/client.py:3688

list_folder

async client declaration
async def list_folder(folder_path: str='', *, source_system: str | None=None, max_items: int=100) -> DispatchResult

List documents in a folder.

Source: lightbulb/client.py:5112

list_governed_communication_sources

async client declaration
async def list_governed_communication_sources(project_id: str, *, limit: int=20, cursor: str | None=None, company_id: str | None=None) -> GovernedCommunicationSourcePage

Source: lightbulb/async_client.py:5571

list_marketplace_installations

async client declaration
async def list_marketplace_installations(*, status: str | None=None, cursor: str | None=None, limit: int=50) -> Dict[str, Any]

List marketplace installations for the selected active company.

Source: lightbulb/async_client.py:1947

list_marketplace_listings

async client declaration
async def list_marketplace_listings(*, query: str | None=None, kind: str | None=None, domain: str | None=None, cursor: str | None=None, limit: int=50, include_inputs: bool=True) -> Dict[str, Any]

List persisted lifecycle listings and authoritative UUID IDs.

Source: lightbulb/async_client.py:1757

list_notifications

async client declaration
async def list_notifications(**filters) -> List[Dict[str, Any]]

List notifications (HITL decisions, workflow alerts, system messages).

Source: lightbulb/client.py:9889

list_page_builder_sessions

async client declaration
async def list_page_builder_sessions() -> List[Dict[str, Any]]

List page builder sessions.

Source: lightbulb/client.py:5200

list_pending_approvals

async client declaration
async def list_pending_approvals() -> List[Dict[str, Any]]

Source: lightbulb/async_client.py:3924

list_project_business_outcomes

async client declaration
async def list_project_business_outcomes(project_id: str, *, limit: int=25) -> Dict[str, Any]

Read the authenticated score ledger for one accessible project.

Source: lightbulb/async_client.py:3264

list_project_connector_accounts

async client declaration
async def list_project_connector_accounts(project_id: str, *, company_id: str | None=None) -> List[Dict[str, Any]]

List connector accounts already bound to one accessible project.

Full source documentation
List connector accounts already bound to one accessible project.

Spring remains authoritative for tenant, company, project-sharing, and
RBAC checks. The response contains binding metadata, never OAuth access
or refresh credentials. Pass ``company_id`` to pin this read without
mutating the client's selected-company context.

Source: lightbulb/client.py:3166

list_project_learning_result_evaluations

async client declaration
async def list_project_learning_result_evaluations(project_id: str, *, limit: int=25) -> Dict[str, Any]

Read independent technical results and separate human decisions.

Source: lightbulb/async_client.py:3130

list_project_learning_reviews

async client declaration
async def list_project_learning_reviews(project_id: str, *, limit: int=25) -> Dict[str, Any]

Read human after-action decisions and admitted shadow observations.

Source: lightbulb/async_client.py:2946

list_project_learning_runs

async client declaration
async def list_project_learning_runs(project_id: str, *, limit: int=25) -> Dict[str, Any]

Read receipt-backed Training Quest state without inferring missing execution.

Source: lightbulb/async_client.py:3003

list_project_mission_runs

async client declaration
async def list_project_mission_runs(project_id: str, *, limit: int=25) -> Dict[str, Any]

Read briefing locks and action bindings for one accessible project.

Source: lightbulb/async_client.py:2847

list_project_policy_assignments

async client declaration
async def list_project_policy_assignments(project_id: str, *, limit: int=25) -> Dict[str, Any]

Read immutable decision-time probability assignments for one project.

Source: lightbulb/async_client.py:3336

list_project_policy_evaluations

async client declaration
async def list_project_policy_evaluations(project_id: str, *, limit: int=25) -> Dict[str, Any]

Read offline-policy receipts and their explicit truth boundary.

Source: lightbulb/async_client.py:3412

list_project_science_evidence

async client declaration
async def list_project_science_evidence(project_id: str, *, limit: int=50) -> Dict[str, Any]

Read the scope-verified hypothesis-to-policy context spine.

Source: lightbulb/async_client.py:2765

list_project_shadow_learner_updates

async client declaration
async def list_project_shadow_learner_updates(project_id: str, *, limit: int=25) -> Dict[str, Any]

Read bounded shadow update/rollback receipts; this grants no authority.

Source: lightbulb/async_client.py:3190

list_project_skill_matches

async client declaration
async def list_project_skill_matches(project_id: str, *, limit: int=25) -> Dict[str, Any]

Read the project's worker-verified shadow Training Arena ledger.

Source: lightbulb/async_client.py:2965

list_project_training_packs

async client declaration
async def list_project_training_packs(project_id: str, *, limit: int=25) -> Dict[str, Any]

Read exact Arena + human-lesson packs before any learning-run admission.

Source: lightbulb/async_client.py:2984

list_projects

async client declaration
async def list_projects(*, company_id: str | None=None) -> List[Dict[str, Any]]

List projects visible in one authenticated company scope.

Full source documentation
List projects visible in one authenticated company scope.

This is the discovery path used by host-neutral workflow adapters to
resolve a public ``project_ref`` before selecting the existing hosted
checkpoint store.  A caller-supplied company is applied only to this
request; it does not mutate the client's selected-company context.

Source: lightbulb/client.py:2949

list_ready_sdk_project_checkpoints

async client declaration
async def list_ready_sdk_project_checkpoints(project_id: str, *, ready_at: str, limit: int=100, company_id: str | None=None, run_ref: str | None=None) -> List[Dict[str, Any]]

Source: lightbulb/async_client.py:747

list_runtime_domain_actions

async client declaration
async def list_runtime_domain_actions(*, project_id: str, status: str='pending_approval', company_id: str | None=None) -> Dict[str, Any]

List one explicit lifecycle state for the selected company.

Source: lightbulb/async_client.py:1647

list_runtime_outcomes

async client declaration
async def list_runtime_outcomes() -> List[Dict[str, Any]]

Return sanitized outcomes recorded by this SDK process.

Source: lightbulb/client.py:7843

list_server_workflow_improvement_packets

async client declaration
async def list_server_workflow_improvement_packets(*, status: str | None=None, limit: int=50) -> List[Dict[str, Any]]

Source: lightbulb/async_client.py:2346

list_tool_contracts

async client declaration
async def list_tool_contracts() -> List[Dict[str, Any]]

List hosted Tool schemas used for connector drift detection.

Source: lightbulb/client.py:9599

list_voice_executions

async client declaration
async def list_voice_executions(**filters: Any) -> List[Dict[str, Any]]

Source: lightbulb/async_client.py:4101

list_voice_pending_approvals

async client declaration
async def list_voice_pending_approvals() -> List[Dict[str, Any]]

Source: lightbulb/async_client.py:4112

list_workflow_improvement_packets

async client declaration
async def list_workflow_improvement_packets(output_dir: str | os.PathLike[str] | None=None, *, status: str | None=None) -> List[Dict[str, Any]]

List approval-gated workflow improvement packets.

Source: lightbulb/client.py:7914

list_workflows

async client declaration
async def list_workflows(*, company_id: str | None=None) -> List[Dict[str, Any]]

List active workflow definitions in the authenticated company scope.

Source: lightbulb/client.py:8334

lookup_connector_receipt

async client declaration
async def lookup_connector_receipt(request) -> Dict[str, Any]

Read the original governed receipt; this endpoint cannot dispatch a Tool.

Source: lightbulb/async_client.py:4183

mark_all_notifications_read

async client declaration
async def mark_all_notifications_read() -> Dict[str, Any]

Mark all notifications as read.

Source: lightbulb/client.py:12590

mark_economic_spine_effect_ambiguous

async client declaration
async def mark_economic_spine_effect_ambiguous(project_id: str, run_ref: str, request: EconomicSpineRunTransition | Mapping[str, Any], *, company_id: str | None=None) -> EconomicSpineRun

Source: lightbulb/async_client.py:5437

mark_notification_read

async client declaration
async def mark_notification_read(notification_id: str) -> Dict[str, Any]

Mark a single notification as read.

Source: lightbulb/client.py:12579

mark_procurement_purchase_order_ambiguous

async client declaration
async def mark_procurement_purchase_order_ambiguous(project_id: str, run_ref: str, request: Any, *, company_id: str | None=None) -> Any

Source: lightbulb/async_client.py:5884

marketing_add_website_analytics_site

async client declaration
async def marketing_add_website_analytics_site(body: Dict[str, Any]) -> Dict[str, Any]

Register a website with the analytics setup.

Source: lightbulb/client.py:12902

marketing_content_configure_provider

async client declaration
async def marketing_content_configure_provider(provider: str, body: Dict[str, Any]) -> Dict[str, Any]

Configure a marketing-content provider (e.g. ga4, segment, plausible).

Source: lightbulb/client.py:12888

marketing_content_setup

async client declaration
async def marketing_content_setup() -> Dict[str, Any]

Get the marketing content connector setup state.

Source: lightbulb/client.py:12878

marketing_install_website_analytics

async client declaration
async def marketing_install_website_analytics(workspace_id: str, body: Dict[str, Any] | None=None) -> Dict[str, Any]

Install website analytics into a code workspace.

Source: lightbulb/client.py:12949

marketing_remove_website_analytics_site

async client declaration
async def marketing_remove_website_analytics_site(site_id: str) -> Dict[str, Any]

Remove a registered analytics site.

Source: lightbulb/client.py:12926

marketing_select_website_analytics_site

async client declaration
async def marketing_select_website_analytics_site(site_id: str) -> Dict[str, Any]

Activate a registered analytics site.

Source: lightbulb/client.py:12915

marketing_verify_website_analytics

async client declaration
async def marketing_verify_website_analytics(body: Dict[str, Any] | None=None) -> Dict[str, Any]

Verify the website analytics setup is wired correctly.

Source: lightbulb/client.py:12936

memory_add_skill

async client declaration
async def memory_add_skill(body: Dict[str, Any]) -> Dict[str, Any]

Record a new skill / capability.

Source: lightbulb/client.py:12448

memory_create_entry

async client declaration
async def memory_create_entry(body: Dict[str, Any]) -> Dict[str, Any]

Create a structured memory entry.

Source: lightbulb/client.py:12231

memory_create_identity

async client declaration
async def memory_create_identity(body: Dict[str, Any]) -> Dict[str, Any]

Create an identity record.

Source: lightbulb/client.py:12373

memory_create_link

async client declaration
async def memory_create_link(body: Dict[str, Any]) -> Dict[str, Any]

Create a memory link between two entities.

Source: lightbulb/client.py:12429

memory_get_entry

async client declaration
async def memory_get_entry(entry_id: str) -> Dict[str, Any]

Get a specific memory entry.

Source: lightbulb/client.py:12221

memory_get_identity

async client declaration
async def memory_get_identity(doc_id: str) -> Dict[str, Any]

Get an identity record by doc id.

Source: lightbulb/client.py:12382

memory_graph

async client declaration
async def memory_graph(**filters: Any) -> Dict[str, Any]

Full memory graph (or filtered subgraph).

Source: lightbulb/client.py:12341

memory_graph_node

async client declaration
async def memory_graph_node(node_id: str) -> Dict[str, Any]

Get a single node from the memory graph.

Source: lightbulb/client.py:12352

memory_list_entries

async client declaration
async def memory_list_entries(**filters: Any) -> List[Dict[str, Any]]

List memory entries (structured records).

Source: lightbulb/client.py:12205

memory_list_events

async client declaration
async def memory_list_events(**filters: Any) -> List[Dict[str, Any]]

List memory events (timeline of state changes).

Source: lightbulb/client.py:12392

memory_list_identity

async client declaration
async def memory_list_identity() -> List[Dict[str, Any]]

List identity records in the memory graph.

Source: lightbulb/client.py:12363

memory_list_links

async client declaration
async def memory_list_links(**filters: Any) -> List[Dict[str, Any]]

List entity links in the memory graph.

Source: lightbulb/client.py:12417

memory_list_skills

async client declaration
async def memory_list_skills() -> List[Dict[str, Any]]

List skills/capabilities recorded in memory.

Source: lightbulb/client.py:12438

memory_projection_memory

async client declaration
async def memory_projection_memory() -> Dict[str, Any]

Memory-structure projection of the agent.

Source: lightbulb/client.py:12258

memory_projection_soul

async client declaration
async def memory_projection_soul() -> Dict[str, Any]

Identity / personality projection of the agent.

Source: lightbulb/client.py:12249

memory_query

async client declaration
async def memory_query(body: Dict[str, Any]) -> Dict[str, Any]

Run a structured memory query (filters, time-windows, semantic).

Source: lightbulb/client.py:12240

memory_recall

async client declaration
async def memory_recall(key: str, *, namespace: str='default') -> Dict[str, Any]

Recall a value from agent memory.

Source: lightbulb/client.py:10288

memory_record_event

async client declaration
async def memory_record_event(body: Dict[str, Any]) -> Dict[str, Any]

Record a memory event.

Source: lightbulb/client.py:12408

memory_regulate

async client declaration
async def memory_regulate(*, idempotency_key: str | None=None, project_id: str | None=None, budget: int | None=None, categories: Sequence[str] | None=None, dry_run: bool=True, max_summary_chars: int=900, empirical_success_floor_ppm: int | None=None, empirical_success_min_samples: int=20, empirical_success_lookback_days: int=90, optimize_for_least_active_memory: bool=False, held_out_task_evaluation: Mapping[str, Any] | None=None) -> Dict[str, Any]

Preview or execute success-evidence-aware Memory compaction.

Source: lightbulb/async_client.py:1448

memory_regulation_storage_status

async client declaration
async def memory_regulation_storage_status() -> Dict[str, Any]

Inspect finite compaction-receipt admission without mutation.

Source: lightbulb/async_client.py:1438

memory_search

async client declaration
async def memory_search(query: str, *, namespace: str='default', top_k: int=5) -> List[Dict[str, Any]]

Search agent memory semantically.

Source: lightbulb/client.py:10298

memory_status

async client declaration
async def memory_status() -> Dict[str, Any]

Health / capacity status of the memory subsystem.

Source: lightbulb/client.py:12267

memory_store

async client declaration
async def memory_store(key: str, value: str, *, namespace: str='default') -> Dict[str, Any]

Store a value in agent memory.

Source: lightbulb/client.py:10275

migrate_engine_state

async client declaration
async def migrate_engine_state(project_id: str, engine: str, entity_ref: str, state: 'Dict[str, Any]', *, migration: 'Dict[str, Any]') -> Dict[str, Any]

Async twin of :meth:`lightbulb.client.LightbulbClient.migrate_engine_state`.

Source: lightbulb/async_client.py:4008

mint_onboarding_link

async client declaration
async def mint_onboarding_link(company_id: str, journal_id: str) -> Dict[str, Any]

A fresh one-shot hosted-onboarding link for an already-minted instrument.

Full source documentation
A fresh one-shot hosted-onboarding link for an already-minted instrument.

Hosted onboarding is the account owner's own legal act (identity, bank
account, the Stripe Connected Account Agreement).  Show the URL once with
its expiry and never store it; only ``stripe.observe_account_readiness``
may report the instrument ready.

Source: lightbulb/client.py:2893

modify_voice_action

async client declaration
async def modify_voice_action(execution_id: str, approval_task_id: str, modifications: Dict[str, Any]) -> Dict[str, Any]

Approve a voice action with modifications to the proposed payload.

Source: lightbulb/client.py:11267

native_async_methods

async client declaration
def native_async_methods() -> list[str]

Public operations implemented directly with async I/O.

Source: lightbulb/async_client.py:319

native_coding

async client declaration
def native_coding(project_id: str) -> AsyncNativeCodingClient

Connect a user-owned Codex, Claude Code or Cursor runtime to Project tasks.

Source: lightbulb/async_client.py:877

notify_owner_in_app

async client declaration
async def notify_owner_in_app(project_id: str, *, kind: str, notification_key: str, title: str, message: str, company_id: str | None=None) -> Dict[str, Any]

Deliver an in-app notification to the authenticated caller (the owner the agent works for).

Full source documentation
Deliver an in-app notification to the authenticated caller (the owner the agent works for).

Nothing leaves the platform and no recipient can be named: Spring always
notifies the caller, inside the path project's scope. ``kind`` is
``owner_digest`` or ``owner_action``; the SDK's owner action record makes
each delivery happen once. Returns the delivery receipt.

Source: lightbulb/client.py:9255

page_builder_capabilities

async client declaration
async def page_builder_capabilities(session_id: str) -> Dict[str, Any]

List page capabilities (forms, search, auth, etc.).

Source: lightbulb/client.py:12730

page_builder_deploy

async client declaration
async def page_builder_deploy(session_id: str, page_key: str='') -> Dict[str, Any]

Deploy a page builder session.

Source: lightbulb/client.py:5233

page_builder_get_preview

async client declaration
async def page_builder_get_preview(session_id: str) -> Dict[str, Any]

Get the preview URL for a page builder session.

Source: lightbulb/client.py:5245

page_builder_get_schemas

async client declaration
async def page_builder_get_schemas(session_id: str) -> Dict[str, Any]

Get the current page schemas for a session.

Source: lightbulb/client.py:5223

page_builder_install_artifact

async client declaration
async def page_builder_install_artifact(session_id: str, body: Dict[str, Any]) -> Dict[str, Any]

Install a component artifact into the page session.

Source: lightbulb/client.py:12717

page_builder_promote_install_bundle

async client declaration
async def page_builder_promote_install_bundle(session_id: str, body: Dict[str, Any]) -> Dict[str, Any]

Promote an install bundle to the workspace.

Source: lightbulb/client.py:12704

page_builder_promote_section

async client declaration
async def page_builder_promote_section(session_id: str, body: Dict[str, Any]) -> Dict[str, Any]

Promote a section artifact to the install bundle.

Source: lightbulb/client.py:12691

page_builder_save_backend_contract

async client declaration
async def page_builder_save_backend_contract(session_id: str, body: Dict[str, Any]) -> Dict[str, Any]

Define a backend contract for a page (data shape + agent binding).

Source: lightbulb/client.py:12753

page_builder_save_capability

async client declaration
async def page_builder_save_capability(session_id: str, body: Dict[str, Any]) -> Dict[str, Any]

Save a capability to the page session.

Source: lightbulb/client.py:12740

page_builder_send_message

async client declaration
async def page_builder_send_message(session_id: str, content: str) -> Dict[str, Any]

Source: lightbulb/async_client.py:3901

page_builder_unpublish

async client declaration
async def page_builder_unpublish(session_id: str) -> Dict[str, Any]

Unpublish a deployed page builder session.

Source: lightbulb/client.py:12766

page_builder_workspace_automation

async client declaration
async def page_builder_workspace_automation(session_id: str, body: Dict[str, Any] | None=None) -> Dict[str, Any]

Run the page-builder workspace automation (auto-wire pages → agents → backend).

Source: lightbulb/client.py:12678

pin_marketplace_action

async client declaration
async def pin_marketplace_action(installation_id: str, revision_id: str, *, idempotency_key: str, expected_revision_id: str | None=None) -> Dict[str, Any]

Pin an installation to an immutable listing revision.

Source: lightbulb/async_client.py:2055

post_aoc_task_event

async client declaration
async def post_aoc_task_event(task_id: str, body: Dict[str, Any]) -> Dict[str, Any]

Post a new event onto an AutoCompany task.

Source: lightbulb/client.py:12118

preflight_project_creation

async client declaration
async def preflight_project_creation(name: str, instructions: str='') -> ProjectCreationPreflightReceipt

Run the typed, shadow/read-only project-creation preflight.

Source: lightbulb/async_client.py:3494

preflight_training_pair

async client declaration
async def preflight_training_pair(installation_id: str, revision_id: str, *, project_id: str | None=None) -> Dict[str, Any]

Read readiness without admitting, scheduling, or launching training.

Source: lightbulb/async_client.py:2211

prepare_company_blueprint_native_proof

async client declaration
async def prepare_company_blueprint_native_proof(project_id: str, blueprint_version_id: str, golden_loop_certification_record_ids: Sequence[str], rollback_shadow_intent_id: str, *, company_id: str | None=None) -> dict[str, Any]

Ask Spring to derive the exact no-effect Blueprint proof set.

Source: lightbulb/async_client.py:4448

prepare_project_learning_run

async client declaration
async def prepare_project_learning_run(project_id: str, *, training_pack_receipt_id: Any, primary_metric: Any, runtime: str='automl', request_id: Any=None, direction: str='maximize', minimum_improvement: Any='0.010000', max_cost_usd: Any='0.000000', max_platform_cost_usd: Any='5.000000', max_gpu_seconds: Any=3600, max_tokens: Any=100000, max_steps: Any=10000, provider_account_fingerprint: Any=None, provider_binding_expires_at: Any=None, max_attempts: Any=3, lease_seconds: Any=300, preemptible: bool=True, confirm_prepare: bool=False, idempotency_key: str | None=None, check_deployment: bool=False) -> Dict[str, Any]

Publish exact dataset custody and create a queued durable Memory run.

Source: lightbulb/async_client.py:3022

prepare_workflow_learning_handoff

async client declaration
async def prepare_workflow_learning_handoff(packet_id: str, delivery_id: str, installation_id: str, revision_id: str, *, candidate_manifest: Dict[str, Any], episode_manifest: Dict[str, Any] | None=None, project_id: str | None=None) -> Dict[str, Any]

Bind a validated delivery to read-only paired-learning readiness.

Source: lightbulb/async_client.py:2491

preview_account_shell_customization

async client declaration
async def preview_account_shell_customization(draft_revision_id: str) -> Dict[str, Any]

Compile a draft into a non-publishing preview receipt.

Source: lightbulb/async_client.py:1524

preview_marketplace_action_publication

async client declaration
async def preview_marketplace_action_publication(*, slug: str, name: str, version: str, domain: str, action: str, visibility: str='PRIVATE', pricing_model: str='INCLUDED', changelog: str='') -> Dict[str, Any]

Preview a server-derived immutable action contract without publishing it.

Source: lightbulb/async_client.py:1810

preview_reference_company_onboarding

async client declaration
async def preview_reference_company_onboarding(project_id: str, blueprint_version_ref: str, *, connector_selections: Mapping[str, str], coding_harness: str | None=None, company_id: str | None=None) -> ReferenceCompanyOnboardingPreview

Validate one exact-scope reference-company setup without activating it.

Source: lightbulb/async_client.py:4346

propose_company_blueprint_certification

async client declaration
async def propose_company_blueprint_certification(project_id: str, candidate: CompanyBlueprintCertificationCandidate | Mapping[str, Any], *, evidence_target_id: str, idempotency_key: str, company_id: str | None=None) -> CompanyBlueprintCertificationStatus

Source: lightbulb/async_client.py:4419

propose_company_blueprint_deployment

async client declaration
async def propose_company_blueprint_deployment(project_id: str, candidate: CompanyBlueprintDeploymentCandidate | Mapping[str, Any], *, idempotency_key: str, company_id: str | None=None) -> CompanyBlueprintDeploymentStatus

Source: lightbulb/async_client.py:4596

propose_contract_to_cash_invoice

async client declaration
async def propose_contract_to_cash_invoice(project_id: str, request: ContractToCashInvoiceProposalRequest | Mapping[str, Any], *, company_id: str | None=None) -> ContractToCashInvoiceProposalReceipt

Create or replay one exact Spring-owned invoice approval proposal.

Source: lightbulb/async_client.py:4902

propose_golden_loop_certification

async client declaration
async def propose_golden_loop_certification(project_id: str, request: GoldenLoopCertificationProposalRequest | Mapping[str, Any], *, company_id: str | None=None) -> GoldenLoopCertificationCandidateStatus

Source: lightbulb/async_client.py:4802

publish_account_shell_customization

async client declaration
async def publish_account_shell_customization(draft_revision_id: str, *, preview_receipt_id: str, expected_current_revision_id: str | None, idempotency_key: str) -> Dict[str, Any]

Publish the exact previewed draft with optimistic concurrency.

Source: lightbulb/async_client.py:1545

publish_exchange_card

async client declaration
async def publish_exchange_card(card: 'Dict[str, Any]', *, visibility: str='platform', listed: bool | None=None, company_id: str | None=None) -> Dict[str, Any]

Publish the company's sealed card in the platform's exchange directory (``PUT /api/company-exchange/card``).

Full source documentation
Publish the company's sealed card in the platform's exchange directory (``PUT /api/company-exchange/card``).

The platform checks the card's seal and keeps it under the company's exchange address
(``lbx_...``), the only name other companies use to find it and send to it. With
``visibility`` ``public`` anyone may also read it at
``/api/public/company-exchange/cards/{address}``. ``listed`` true puts it in the
directory's search (``search_exchange_directory``) and false takes it out; left out,
the listing stays as it was. Republishing keeps the address.

Source: lightbulb/client.py:9303

publish_marketplace_action

async client declaration
async def publish_marketplace_action(*, slug: str, name: str, version: str, domain: str, action: str, expected_contract_digest: str, idempotency_key: str, visibility: str='PRIVATE', pricing_model: str='INCLUDED', changelog: str='') -> Dict[str, Any]

Publish the exact action contract approved by a prior preview.

Source: lightbulb/async_client.py:1842

put_engine_state

async client declaration
async def put_engine_state(project_id: str, engine: str, entity_ref: str, state: 'Dict[str, Any]', *, expected_version: int | None, expected_state_digest: str | None) -> Dict[str, Any]

Async twin of :meth:`lightbulb.client.LightbulbClient.put_engine_state`.

Source: lightbulb/async_client.py:3988

put_sdk_project_checkpoint

async client declaration
async def put_sdk_project_checkpoint(project_id: str, run_ref: str, checkpoint: Dict[str, Any], *, expected_revision: int | None, company_id: str | None=None) -> Dict[str, Any]

Source: lightbulb/client.py:7429

rag_query

async client declaration
async def rag_query(question: str, *, top_k: int=5, document_ids: List[str] | None=None) -> Dict[str, Any]

Query the RAG knowledge base directly.

Source: lightbulb/client.py:9556

rag_upload_document

async client declaration
async def rag_upload_document(filename: str, content: str, **metadata) -> Dict[str, Any]

Upload a document to the RAG library.

Source: lightbulb/client.py:9570

reconcile_economic_spine_run

async client declaration
async def reconcile_economic_spine_run(project_id: str, run_ref: str, request: EconomicSpineRunTransition | Mapping[str, Any], *, company_id: str | None=None) -> EconomicSpineRun

Source: lightbulb/async_client.py:5446

reconcile_procurement_purchase_order

async client declaration
async def reconcile_procurement_purchase_order(project_id: str, run_ref: str, request: Any, *, company_id: str | None=None) -> Any

Source: lightbulb/async_client.py:5892

record_procurement_goods_receipt

async client declaration
async def record_procurement_goods_receipt(project_id: str, run_ref: str, request: Any, *, company_id: str | None=None) -> Any

Source: lightbulb/async_client.py:5820

record_procurement_supplier_invoice

async client declaration
async def record_procurement_supplier_invoice(project_id: str, run_ref: str, request: Any, *, company_id: str | None=None) -> Any

Source: lightbulb/async_client.py:5828

record_project_business_outcome

async client declaration
async def record_project_business_outcome(project_id: str, *, metric_id: Any, metric_label: Any, direction: Any, baseline_value: Any, observed_value: Any, confirm_record: bool=False, unit: Any=None, observed_at: Any=None, observation_id: Any=None, source_kind: str='human_attestation', source_event_id: Any=None, evidence_refs: Sequence[Any] | None=None, links: Mapping[str, Any] | None=None, note: Any=None, idempotency_key: str | None=None) -> Dict[str, Any]

Append one scoped metric observation; never admit learning or promotion.

Source: lightbulb/async_client.py:3283

record_project_coding_harness_result

async client declaration
async def record_project_coding_harness_result(project_id: str, *, harness: str, handoff_payload_id: str, status: str, summary: str, report_id: str | None=None, host_session_ref: str | None=None, changed_files: Sequence[str] | None=None, test_commands_and_results: Sequence[str] | None=None, unresolved_requirements_or_acceptance_gaps: str | None=None, pull_request_url: str | None=None, commit_sha: str | None=None) -> Dict[str, Any]

Return bounded coding evidence to the Project Agent delivery loop.

Source: lightbulb/async_client.py:973

record_project_learning_review

async client declaration
async def record_project_learning_review(project_id: str, *, mission_run_receipt_id: Any, mission_action_receipt_id: Any, outcome_receipt_id: Any, decision: Any, skill_trial_arm: Any, selected_skill_ids: Sequence[Any] | None, label: Any, reason: Any, confirm_record: bool=False, review_id: Any=None, evidence_refs: Sequence[Any] | None=None, idempotency_key: str | None=None) -> Dict[str, Any]

Human-review one exact chain for shadow training; no live learner mutation.

Source: lightbulb/async_client.py:3215

record_project_policy_assignment

async client declaration
async def record_project_policy_assignment(project_id: str, *, metric_id: Any, direction: Any, actions: Sequence[Mapping[str, Any]], chosen_action_id: Any, behavior_policy: Mapping[str, Any], candidate_policies: Sequence[Mapping[str, Any]], confirm_record: bool=False, assignment_id: Any=None, unit: Any=None, decided_at: Any=None, source_kind: str='human_attestation', source_event_id: Any=None, evidence_refs: Sequence[Any] | None=None, links: Mapping[str, Any] | None=None, note: Any=None, idempotency_key: str | None=None) -> Dict[str, Any]

Log propensities before an outcome; this never executes an action.

Source: lightbulb/async_client.py:3355

record_project_science_evidence

async client declaration
async def record_project_science_evidence(project_id: str, *, stage: Any, summary: Any, business_metric_id: Any, expected_direction: Any, artifact_kind: Any, artifact_system: Any, artifact_reference: Any, artifact_digest_sha256: Any, producer_role: Any, confirm_record: bool=False, tool_names: Sequence[Any] | None=None, skill_ids: Sequence[Any] | None=None, parent_receipt_ids: Sequence[Any] | None=None, artifact_schema: Any=None, observed_at: Any=None, evidence_id: Any=None, source_kind: str='human_attestation', source_event_id: Any=None, evidence_refs: Sequence[Any] | None=None, idempotency_key: str | None=None) -> Dict[str, Any]

Append scientific lineage evidence; never authorize the underlying action.

Source: lightbulb/async_client.py:2784

record_server_runtime_outcomes

async client declaration
async def record_server_runtime_outcomes(outcomes: List[Dict[str, Any]], *, idempotency_key: str | None=None) -> Dict[str, Any]

Persist a batch in the authenticated tenant/company runtime ledger.

Source: lightbulb/client.py:7853

record_server_workflow_improvement_run

async client declaration
async def record_server_workflow_improvement_run(payload: Dict[str, Any]) -> Dict[str, Any]

Persist a pre-sanitized evaluator run in the authenticated company scope.

Source: lightbulb/async_client.py:2316

record_workflow_improvement_delivery_event

async client declaration
async def record_workflow_improvement_delivery_event(delivery_id: str, event_type: str, *, rationale: str='', evidence: Dict[str, Any] | None=None) -> Dict[str, Any]

Source: lightbulb/async_client.py:2425

recover_assessment_workspace

async client declaration
async def recover_assessment_workspace(workspace: Any, *, run_ref: str, expected_revision: int) -> Dict[str, Any] | None

Source: lightbulb/async_client.py:5779

recursive_agent_execute

async client declaration
async def recursive_agent_execute(objective: str, *, inputs: Dict[str, Any] | None=None, policy: Any=None, execution_id: str | None=None) -> Dict[str, Any]

Run a governed recursive objective with finite subagent and REPL limits.

Source: lightbulb/async_client.py:3839

refine_project_creation_preflight

async client declaration
async def refine_project_creation_preflight(receipt: ProjectCreationPreflightReceipt, answer: str) -> ProjectCreationPreflightReceipt

Async parity for one explicit, receipt-bound preflight answer.

Source: lightbulb/async_client.py:3588

refresh_auth

async client declaration
async def refresh_auth() -> bool

Async equivalent of :meth:`LightbulbClient.refresh_auth`.

Source: lightbulb/async_client.py:254

register_contract_to_cash_cash_collection

async client declaration
async def register_contract_to_cash_cash_collection(project_id: str, request: ContractToCashCashCollectionRegistration | Mapping[str, Any], *, company_id: str | None=None) -> ContractToCashCashCollectionRecord

Seal independent accounting and payout evidence as collected cash.

Source: lightbulb/async_client.py:5011

register_contract_to_cash_invoice_issued

async client declaration
async def register_contract_to_cash_invoice_issued(project_id: str, request: ContractToCashInvoiceIssuedRegistration | Mapping[str, Any], *, company_id: str | None=None) -> ContractToCashInvoiceIssuedRecord

Seal one exact reconciled invoice write/readback pair into Spring custody.

Source: lightbulb/async_client.py:4960

register_executed_commercial_agreement

async client declaration
async def register_executed_commercial_agreement(project_id: str, candidate: ExecutedCommercialAgreementCustodyCandidate | Mapping[str, Any], *, company_id: str | None=None) -> ExecutedCommercialAgreementRecord

Source: lightbulb/async_client.py:4658

register_external_artifact

async client declaration
async def register_external_artifact(*, type: str, title: str='', summary: str='', uri: str='', content: str='', project_id: Optional[str]=None, source_agent: str='external_agent', metadata: Optional[Dict[str, Any]]=None, attach_workspace: bool=False) -> Dict[str, Any]

Register an external artifact (codebase/document/slide deck/spreadsheet/url) created by a general agent so Lightbulb domain agents can discover and work on it.

Full source documentation
Register an external artifact (codebase/document/slide deck/spreadsheet/url) created
by a general agent so Lightbulb domain agents can discover and work on it.

Either ``uri`` or ``content`` must be provided. For a ``codebase`` artifact with a repo
``uri``, set ``attach_workspace=True`` to also clone it into a Code Workspace so Lightbulb
agents can work on it.

Source: lightbulb/client.py:8289

register_golden_loop_catalog

async client declaration
async def register_golden_loop_catalog(project_id: str, request: GoldenLoopCatalogRegistrationRequest | Mapping[str, Any], *, company_id: str | None=None) -> GoldenLoopCatalogVersion

Source: lightbulb/async_client.py:4728

register_runtime_domain_action

async client declaration
async def register_runtime_domain_action(domain: str, action: str, *, project_id: str, idempotency_key: str, description: str='', component_ids: Sequence[str] | None=None, agent_spec: Dict[str, Any] | None=None, execution_policy: Dict[str, Any] | None=None, company_id: str | None=None) -> Dict[str, Any]

Register a company-scoped action as ``pending_approval`` only.

Source: lightbulb/async_client.py:1610

reject_code_workspace_proposal

async client declaration
async def reject_code_workspace_proposal(workspace_id: str, proposal_id: str, *, reason: str='') -> Dict[str, Any]

Reject a proposal.

Source: lightbulb/client.py:11631

reject_runtime_domain_action

async client declaration
async def reject_runtime_domain_action(runtime_action_id: str, *, project_id: str, company_id: str | None=None) -> Dict[str, Any]

Reject one reviewed pending registration without executing it.

Source: lightbulb/async_client.py:1707

reject_task

async client declaration
async def reject_task(task_id: str, *, comments: str='') -> Dict[str, Any]

Source: lightbulb/async_client.py:3943

reject_voice_action

async client declaration
async def reject_voice_action(execution_id: str, approval_task_id: str, *, comments: str='') -> Dict[str, Any]

Reject a pending in-call action.

Source: lightbulb/client.py:11250

renew_sdk_project_checkpoint_lease

async client declaration
async def renew_sdk_project_checkpoint_lease(project_id: str, run_ref: str, *, worker_ref: str, expected_revision: int, lease_seconds: int=60, company_id: str | None=None) -> Dict[str, Any]

Source: lightbulb/client.py:7561

request_engine_transition_approval

async client declaration
async def request_engine_transition_approval(request: 'Dict[str, Any] | Any') -> Dict[str, Any]

Async twin of :meth:`lightbulb.client.LightbulbClient.request_engine_transition_approval`.

Source: lightbulb/async_client.py:3966

request_launch_gate_approval

async client declaration
async def request_launch_gate_approval(request: 'Dict[str, Any] | Any', *, approver_user_id: str | None=None) -> Dict[str, Any]

Open a human-only attestation for one ``company_launch`` step done outside Lightbulb.

Full source documentation
Open a human-only attestation for one ``company_launch`` step done outside Lightbulb.

Registrar filing, bank account/KYC, signature, insurance, licence, Stripe-hosted
payments onboarding and the kill-or-scale decision are performed by a person, not
the platform.  ``request`` is the sealed launch-gate binding (the launch engine's
command binding plus ``gate_kind``, ``evidence_sha256``, ``evidence_refs`` and
``attestation_sha256``) - an object exposing ``to_platform_body()`` or its dict
form.  Tenant and company come from the session, never from the body.

``approver_user_id`` optionally pins the decision to one named member of the
company; it is supplied by the MCP/CLI caller and never enters a sealed SDK model.
Spring registers the task as ``sdk_launch_gate`` with ``workflow_generated_hitl``
set, so no auto-accept preference applies and the requester cannot decide it.
Returns the platform approval task; read the decision back with
:meth:`get_approval`.

Source: lightbulb/client.py:9038

request_project_native_coding_handoff

async client declaration
async def request_project_native_coding_handoff(project_id: str, harness: str, *, expected_digest: str | None=None) -> Dict[str, Any]

Propose a human review, or export its exact approved native work packet.

Full source documentation
Propose a human review, or export its exact approved native work packet.

Omit expected_digest to prepare/review. Pass the reviewed digest to
export after the user decides the ApprovalTask. This never starts a
hosted coding agent or marks an external delivery as verified.

Source: lightbulb/async_client.py:881

request_provisioning

async client declaration
async def request_provisioning(company_id: str, instrument: str, inputs: Dict[str, Any], *, idempotency_key: str, project_id: str | None=None) -> Dict[str, Any]

Propose one platform-minted instrument (Stripe Connect account, site, phone number).

Full source documentation
Propose one platform-minted instrument (Stripe Connect account, site, phone number).

Nothing is created here: Spring opens a provisioning journal and an
approval task a *different* human decides, and returns the proposal with
the human gates that instrument opens.  Execute it with
:meth:`execute_provisioning` once the task is approved.

Source: lightbulb/client.py:2821

request_training_pair_admission

async client declaration
async def request_training_pair_admission(installation_id: str, revision_id: str, *, idempotency_key: str, project_id: str | None=None) -> Dict[str, Any]

Request admission while preserving only the structured hard-503 body.

Source: lightbulb/async_client.py:2239

resolve_executed_commercial_agreement

async client declaration
async def resolve_executed_commercial_agreement(project_id: str, agreement_ref: str, *, company_id: str | None=None) -> ExecutedCommercialAgreementRecord

Source: lightbulb/async_client.py:4704

restart_period_reconciliation_run

async client declaration
async def restart_period_reconciliation_run(project_id: str, request: PeriodReconciliationRestartRequest | Mapping[str, Any], *, company_id: str | None=None) -> PeriodReconciliationRunReceipt

Source: lightbulb/async_client.py:5163

retain_period_reconciliation_quickbooks_reads

async client declaration
async def retain_period_reconciliation_quickbooks_reads(project_id: str, run_ref: str, request: PeriodReconciliationQuickBooksReadSetRequest | Mapping[str, Any], *, company_id: str | None=None) -> PeriodReconciliationReadSetReceipt

Source: lightbulb/async_client.py:5178

retain_period_reconciliation_review

async client declaration
async def retain_period_reconciliation_review(project_id: str, run_ref: str, request: PeriodReconciliationReviewRequest | Mapping[str, Any], *, company_id: str | None=None) -> PeriodReconciliationReviewReceipt

Source: lightbulb/async_client.py:5222

retain_period_reconciliation_scope

async client declaration
async def retain_period_reconciliation_scope(project_id: str, request: PeriodReconciliationScopeRequest | Mapping[str, Any], *, company_id: str | None=None) -> PeriodReconciliationScopeReceipt

Source: lightbulb/async_client.py:5133

rollback_account_shell_customization

async client declaration
async def rollback_account_shell_customization(target_revision_id: str, *, expected_current_revision_id: str | None, idempotency_key: str) -> Dict[str, Any]

Roll back to an immutable revision with optimistic concurrency.

Source: lightbulb/async_client.py:1579

run_business_primitive

async client declaration
async def run_business_primitive(primitive_id: str, inputs: Dict[str, Any] | None=None, *, primitive_version: str | None=None, project_ref: str | None=None, project_id: str | None=None, approval_refs: Dict[str, str] | None=None, connector_account_refs: Dict[str, str] | None=None, run_ref: str | None=None, idempotency_key: str | None=None, source: str='sdk', mode: str | None=None, preview_only: bool=True, request: str='') -> Dict[str, Any]

Execute the canonical generic primitive path on its managed thread.

Source: lightbulb/async_client.py:1090

run_connector_conformance

async client declaration
async def run_connector_conformance(*, check_live_schemas: bool=False) -> Dict[str, Any]

Verify every primitive provider and optionally compare hosted schemas.

Source: lightbulb/client.py:9610

run_finance_reconciliation

async client declaration
async def run_finance_reconciliation(request: FinanceReconciliationRequest | Mapping[str, Any] | None=None, *, company_id: str | None=None) -> FinanceReconciliationResult

Run the governed Stripe/ledger reconciliation in Spring.

Full source documentation
Run the governed Stripe/ledger reconciliation in Spring.

The SDK validates and normalizes the request, while authenticated
Spring scope owns connector selection, persistence, and the run ID.

Source: lightbulb/client.py:3660

run_sdk_business_primitive

async client declaration
async def run_sdk_business_primitive(primitive_id: str, inputs: Dict[str, Any] | None=None, *, primitive_version: str | None=None, project_ref: str, project_id: str | None=None, preview_only: bool=True, approval_refs: Dict[str, str] | None=None, connector_account_refs: Dict[str, str] | None=None, run_ref: str | None=None, idempotency_key: str | None=None) -> Dict[str, Any]

Execute through the synchronous canonical runtime on its managed thread.

Source: lightbulb/async_client.py:1061

run_sdk_project_workflow

async client declaration
async def run_sdk_project_workflow(project: Any, workflow_key: str, inputs: Dict[str, Any] | None=None, *, preview_only: bool | None=None, approval_refs: Dict[str, str] | None=None, connector_account_refs: Dict[str, str] | None=None, run_ref: str | None=None, registry: Any=None) -> Dict[str, Any]

Run a project workflow; hosted connector writes remain fail-closed.

Source: lightbulb/client.py:7606

run_workflow_improvement_cycle

async client declaration
async def run_workflow_improvement_cycle(output_dir: str | os.PathLike[str] | None=None, *, observed_outcomes: List[Dict[str, Any]] | None=None) -> Dict[str, Any]

Evaluate local workflow contracts and persist proposal-only work packets.

Source: lightbulb/client.py:7818

save_assessment_workspace

async client declaration
async def save_assessment_workspace(workspace: Any, *, run_ref: str, expected_revision: int) -> Dict[str, Any]

Source: lightbulb/async_client.py:5769

search_agent_marketplace

async client declaration
async def search_agent_marketplace(*, query: str | None=None, kind: str | None=None, domain: str | None=None, limit: int=50, include_inputs: bool=True) -> Dict[str, Any]

Discover synthetic rows; use the persisted list for lifecycle UUIDs.

Source: lightbulb/async_client.py:1725

search_documents

async client declaration
async def search_documents(query: str, *, top_k: int=10) -> Dict[str, Any]

Source: lightbulb/async_client.py:3892

search_exchange_directory

async client declaration
async def search_exchange_directory(query: str, *, currency: str | None=None, country: str | None=None, kind: str | None=None, limit: int=20, company_id: str | None=None) -> Dict[str, Any]

Listed companies whose cards match ``query`` (``GET /api/company-exchange/directory``), best first, never the searching company.

Full source documentation
Listed companies whose cards match ``query`` (``GET /api/company-exchange/directory``), best first, never the searching company.

Answers ``{"match": "all" | "any" | "none", "results": [...]}``: every word matched, or
failing that any word. Each result is a directory record (address, party_ref, the sealed
card) with the item refs of the offers the words matched (``matched_offers``).

Source: lightbulb/client.py:9335

set_approval_preference_state

async client declaration
async def set_approval_preference_state(preference_id: str, *, enabled: bool) -> Dict[str, Any]

Enable or disable an auto-accept rule.

Source: lightbulb/client.py:12564

set_exchange_counterparty

async client declaration
async def set_exchange_counterparty(address: str, *, status: str='active', note: str | None=None, company_id: str | None=None) -> Dict[str, Any]

Register a company to trade with (``active``, once its card is published) or refuse its documents (``blocked``).

Source: lightbulb/client.py:9364

settle_exchange_delivery

async client declaration
async def settle_exchange_delivery(delivery_id: str, *, status: str, refusal_code: str | None=None, company_id: str | None=None) -> Dict[str, Any]

Settle a received delivery: ``received`` once taken in, or ``refused`` with the code; the sender reads it as its receipt.

Source: lightbulb/client.py:9408

simulate_business_workflow

async client declaration
async def simulate_business_workflow(definition: Dict[str, Any], *, events: List[str] | None=None, approvals: Dict[str, Any] | None=None, loop_iterations: int | None=None) -> Dict[str, Any]

Dry-run a workflow within its bound without invoking live systems.

Source: lightbulb/client.py:7800

start_codex_account_link

async client declaration
async def start_codex_account_link(*, company_id: str | None=None) -> Dict[str, Any]

Start the Codex device-auth flow for the current Lightbulb account.

Source: lightbulb/client.py:3418

start_contract_to_cash_run

async client declaration
async def start_contract_to_cash_run(project_id: str, request: ContractToCashRunStart | Mapping[str, Any], *, company_id: str | None=None) -> ContractToCashRun

Source: lightbulb/async_client.py:5054

start_economic_spine_run

async client declaration
async def start_economic_spine_run(project_id: str, request: EconomicSpineRunStart | Mapping[str, Any], *, company_id: str | None=None) -> EconomicSpineRun

Source: lightbulb/async_client.py:5373

start_governed_communication_run

async client declaration
async def start_governed_communication_run(project_id: str, request: GovernedCommunicationAdmission | Mapping[str, Any], *, idempotency_key: str, company_id: str | None=None) -> GovernedCommunicationAdmissionResult

Source: lightbulb/async_client.py:5610

start_period_reconciliation_run

async client declaration
async def start_period_reconciliation_run(project_id: str, request: PeriodReconciliationStartRequest | Mapping[str, Any], *, company_id: str | None=None) -> PeriodReconciliationRunReceipt

Source: lightbulb/async_client.py:5148

start_procurement_matched_close_run

async client declaration
async def start_procurement_matched_close_run(project_id: str, request: Any, *, company_id: str | None=None) -> Any

Source: lightbulb/async_client.py:5786

start_project_mission_run

async client declaration
async def start_project_mission_run(project_id: str, mission_briefing: Mapping[str, Any], *, confirm_start: bool=False, run_id: Any=None, play_style_id: Any=None, skill_trial_arm: Any=None, selected_skill_ids: Sequence[Any] | None=None, context_source_refs: Sequence[Any] | None=None, note: Any=None, idempotency_key: str | None=None) -> Dict[str, Any]

Lock an exact briefing before action; this never dispatches a worker.

Source: lightbulb/async_client.py:2866

start_project_work_packet

async client declaration
async def start_project_work_packet(project_id: str, *, company_id: str | None=None) -> ProjectWorkPacketStartResult

Propose or start Spring's exact approved Project work packet.

Source: lightbulb/async_client.py:5727

start_service_case_resolution

async client declaration
async def start_service_case_resolution(project_id: str, request: ServiceCaseResolutionStart | Mapping[str, Any], *, company_id: str | None=None) -> ServiceCaseResolutionRun

Source: lightbulb/async_client.py:5474

start_workflow_improvement_delivery

async client declaration
async def start_workflow_improvement_delivery(packet_id: str, *, environment: str, repository_ref: str | None=None, base_branch: str='main') -> Dict[str, Any]

Source: lightbulb/async_client.py:2401

step_governed_sales_touch

async client declaration
async def step_governed_sales_touch(project_id: str, request: Mapping[str, Any], *, idempotency_key: str, company_id: str | None=None) -> Dict[str, Any]

Prepare or reconcile one exact sales touch through Communication authority.

Source: lightbulb/async_client.py:5651

stop_aoc_run

async client declaration
async def stop_aoc_run(run_id: str) -> Dict[str, Any]

Source: lightbulb/async_client.py:4145

stream_chat

async client declaration
def stream_chat(domain: str, *, message: str, action: str | None=None, inputs: Dict[str, Any] | None=None, conversation_id: str | None=None, company_id: str | None=None) -> AsyncGenerator[SSEEvent, None]

Source: lightbulb/async_client.py:2674

stream_code_workspace_chat

async client declaration
def stream_code_workspace_chat(workspace_id: str, message: str, **kwargs: Any) -> AsyncGenerator[SSEEvent, None]

Source: lightbulb/async_client.py:3675

stream_document_builder_message

async client declaration
def stream_document_builder_message(session_id: str, content: str) -> AsyncGenerator[SSEEvent, None]

Source: lightbulb/async_client.py:3704

stream_page_builder_message

async client declaration
def stream_page_builder_message(session_id: str, content: str) -> AsyncGenerator[SSEEvent, None]

Source: lightbulb/async_client.py:3693

stream_page_builder_workspace_automation

async client declaration
def stream_page_builder_workspace_automation(session_id: str, body: Dict[str, Any] | None=None) -> Generator[SSEEvent, None, None]

Stream the page-builder workspace automation pipeline.

Source: lightbulb/client.py:4961

submit_code_workspace_proposal

async client declaration
async def submit_code_workspace_proposal(workspace_id: str, body: Dict[str, Any]) -> Dict[str, Any]

Submit a code-change proposal (diff + summary).

Source: lightbulb/client.py:11605

submit_customer_referral_event

async client declaration
async def submit_customer_referral_event(project_id: str, event: dict, *, company_id: str | None=None)

Source: lightbulb/async_client.py:5906

submit_procurement_requisition

async client declaration
async def submit_procurement_requisition(project_id: str, run_ref: str, request: Any, *, company_id: str | None=None) -> Any

Source: lightbulb/async_client.py:5796

submit_project_creation_preflight_feedback

async client declaration
async def submit_project_creation_preflight_feedback(receipt: ProjectCreationPreflightReceipt, *, helpfulness: SemanticFeedbackValue, calibrated_criticality: SemanticFeedbackValue, factual_grounding: SemanticFeedbackValue, idempotency_key: str) -> ProjectPreflightSemanticFeedbackReceipt

Async parity for explicit project-preflight semantic feedback.

Source: lightbulb/async_client.py:3632

suspend_operator_policy

async client declaration
async def suspend_operator_policy(policy_id: str, *, company_id: str | None=None) -> Dict[str, Any]

Suspend an active policy (the approver or a tenant admin).

Full source documentation
Suspend an active policy (the approver or a tenant admin).

Every minted preference is disabled before the status changes, so the operator
falls back to asking a person for every engine transition.

Source: lightbulb/client.py:9133

sync_customer_recovery_task

async client declaration
async def sync_customer_recovery_task(request, *, application_id, workspace_ref, action_ref, completed=False)

Create/reconcile the scoped CRM escalation; never resend the customer action.

Source: lightbulb/async_client.py:4157

sync_workflow_improvement_report

async client declaration
async def sync_workflow_improvement_report(report: Dict[str, Any], *, idempotency_key: str | None=None) -> Dict[str, Any]

Persist one local evaluator report in the authenticated scoped ledger.

Source: lightbulb/client.py:7925

test_agent_runtime_config

async client declaration
async def test_agent_runtime_config(agent_type: str='coding', *, message: str | None=None, company_id: str | None=None) -> Dict[str, Any]

Resolve the configured runtime path without performing code or connector writes.

Source: lightbulb/client.py:3389

transition_company_blueprint_deployment

async client declaration
async def transition_company_blueprint_deployment(project_id: str, deployment_id: str, *, action: str, company_id: str | None=None) -> CompanyBlueprintDeploymentStatus

Source: lightbulb/async_client.py:4612

trigger_workflow

async client declaration
async def trigger_workflow(workflow_type: str, objective: str, *, inputs: Dict[str, Any] | None=None, company_id: str | None=None) -> Dict[str, Any]

Run a published workflow resolved by its public ``workflowType`` ref.

Source: lightbulb/client.py:8357

uninstall_marketplace_action

async client declaration
async def uninstall_marketplace_action(installation_id: str, *, idempotency_key: str, reason: str='') -> Dict[str, Any]

Uninstall an action from the selected company.

Source: lightbulb/async_client.py:2031

update_crm_task

async client declaration
async def update_crm_task(task_id: str, body: Dict[str, Any], tenant_id: str | None=None) -> Dict[str, Any]

Update a CRM task.

Source: lightbulb/client.py:12503

validate_aoc_run_config

async client declaration
async def validate_aoc_run_config(run_id: str) -> Dict[str, Any]

Validate an AutoCompany run's configuration.

Source: lightbulb/client.py:12061

validate_business_workflow

async client declaration
async def validate_business_workflow(definition: Dict[str, Any]) -> Dict[str, Any]

Validate a portable workflow definition without network calls.

Source: lightbulb/client.py:7794

validate_sdk_project

async client declaration
async def validate_sdk_project(project: Any, *, registry: Any=None) -> Dict[str, Any]

Validate a custom project against executable primitive implementations.

Source: lightbulb/client.py:7598

wait_for_marketplace_action_publication

async client declaration
async def wait_for_marketplace_action_publication(publication_id: str, *, timeout_seconds: float=120.0, poll_interval_seconds: float=2.0) -> Dict[str, Any]

Poll until publication is READY, FAILED, or ARCHIVED, within hard bounds.

Source: lightbulb/async_client.py:1892

wait_for_workflow_instance

async client declaration
async def wait_for_workflow_instance(trace_id: str, *, company_id: str | None=None, timeout: float=300.0, poll_interval: float=1.0) -> Dict[str, Any]

Poll a workflow until it stops or requires human approval.

Source: lightbulb/async_client.py:2643

whoami

async client declaration
async def whoami() -> Dict[str, Any]

Source: lightbulb/async_client.py:779

wind_down_company

async client declaration
async def wind_down_company(*, approval_task_id: str, resolution_sha256: str, company_id: str | None=None) -> Dict[str, Any]

Move the company ACTIVE -> WINDING_DOWN and stop it selling.

Full source documentation
Move the company ACTIVE -> WINDING_DOWN and stop it selling.

``approval_task_id`` must name an APPROVED ``sdk_engine_transition`` task for
``wind_down_chain.decide`` that a human decided: the platform refuses an
auto-accepted task, a task decided by its own requester, a task decided by the
caller, and a task already spent.  ``resolution_sha256`` is the digest of the
members'/directors' resolution signed off the platform.  Only a human tenant admin
may call this: the AI operator principal is refused 403 unconditionally.

Returns the lifecycle receipt (``companyId``, ``lifecycleStatus``, ``eventId``,
``approvalTaskId``, ``resolutionSha256``, ``decidedBy``, ``occurredAt``) plus
``receiptSha256``, the SHA-256 of those seven fields as canonical JSON.

Source: lightbulb/client.py:9189

withdraw_exchange_card

async client declaration
async def withdraw_exchange_card(*, company_id: str | None=None) -> Dict[str, Any]

Leave the directory and stop receiving documents; the company keeps its address for when it republishes.

Source: lightbulb/client.py:9329

workspace_bundle

async client declaration
async def workspace_bundle(domain: str) -> Dict[str, Any]

Get a domain workspace data bundle (state, surfaces, recent runs).

Source: lightbulb/client.py:12603

workspace_conversation

async client declaration
async def workspace_conversation(domain: str, conversation_id: str) -> Dict[str, Any]

Get a domain workspace conversation.

Source: lightbulb/client.py:12625

workspace_surface

async client declaration
async def workspace_surface(domain: str, surface: str, **filters: Any) -> Dict[str, Any]

Read a domain workspace surface (e.g. internal_suite, live connector).

Source: lightbulb/client.py:12638

workspace_trace

async client declaration
async def workspace_trace(domain: str, trace_id: str) -> Dict[str, Any]

Get a workspace trace (full agent execution log).

Source: lightbulb/client.py:12614

Modules

Declared public exports

Generated 2026-10-13 · Schema lightbulb.developer_reference.v1