Skip to main content

BindingService

Source and message fields. Error family: binding.

ListBindings​

ListBindings is every hook of the installation with its binding state, and every binding whose hook no manifest declares any more.

  • Path: /backplane.console.v1.BindingService/ListBindings.
  • Input: ListBindingsRequest; output: ListBindingsResponse; mode: unary.
  • Errors: binding + common.
  • Read/validation: safe to retry after a transient failure.
// client: BindingServiceClient; request: ListBindingsRequest; signal: AbortSignal
const response = await client.listBindings(request, { signal });

GetBinding​

GetBinding is one version of a hook's binding: the current one by default.

  • Path: /backplane.console.v1.BindingService/GetBinding.
  • Input: GetBindingRequest; output: GetBindingResponse; mode: unary.
  • Errors: binding + common.
  • Read/validation: safe to retry after a transient failure.
// client: BindingServiceClient; request: GetBindingRequest; signal: AbortSignal
const response = await client.getBinding(request, { signal });

ListBindingVersions​

ListBindingVersions pages through a hook's versions, newest first.

  • Path: /backplane.console.v1.BindingService/ListBindingVersions.
  • Input: ListBindingVersionsRequest; output: ListBindingVersionsResponse; mode: unary.
  • Errors: binding + common.
  • Read/validation: safe to retry after a transient failure.
// client: BindingServiceClient; request: ListBindingVersionsRequest; signal: AbortSignal
const response = await client.listBindingVersions(request, { signal });

ValidateBinding​

ValidateBinding is SaveBinding without saving: the violations it would be rejected with.

  • Path: /backplane.console.v1.BindingService/ValidateBinding.
  • Input: ValidateBindingRequest; output: ValidateBindingResponse; mode: unary.
  • Errors: binding + common.
  • Read/validation: safe to retry after a transient failure.
// client: BindingServiceClient; request: ValidateBindingRequest; signal: AbortSignal
const response = await client.validateBinding(request, { signal });

SaveBinding​

SaveBinding validates the definition and, when valid, saves it as the next version of its hook's binding. Invalid: nothing is saved, violations say why.

  • Path: /backplane.console.v1.BindingService/SaveBinding.
  • Input: SaveBindingRequest; output: SaveBindingResponse; mode: unary.
  • Errors: binding + common.
  • Database mutation: never automatically replay after an ambiguous failure.
// client: BindingServiceClient; request: SaveBindingRequest; signal: AbortSignal
const response = await client.saveBinding(request, { signal });

RollbackBinding​

RollbackBinding saves a new version with the definition of an older one (rollback_of), validated as any save.

  • Path: /backplane.console.v1.BindingService/RollbackBinding.
  • Input: RollbackBindingRequest; output: RollbackBindingResponse; mode: unary.
  • Errors: binding + common.
  • Database mutation: never automatically replay after an ambiguous failure.
// client: BindingServiceClient; request: RollbackBindingRequest; signal: AbortSignal
const response = await client.rollbackBinding(request, { signal });

DeleteBinding​

DeleteBinding saves a tombstone version: the hook becomes unbound, the history stays.

  • Path: /backplane.console.v1.BindingService/DeleteBinding.
  • Input: DeleteBindingRequest; output: DeleteBindingResponse; mode: unary.
  • Errors: binding + common.
  • Database mutation: never automatically replay after an ambiguous failure.
// client: BindingServiceClient; request: DeleteBindingRequest; signal: AbortSignal
const response = await client.deleteBinding(request, { signal });

WatchBindings​

WatchBindings streams ListBindings: now, then again whenever it changes (a save on any replica, a manifest).

  • Path: /backplane.console.v1.BindingService/WatchBindings.
  • Input: WatchBindingsRequest; output: WatchBindingsResponse; mode: replacement snapshots.
  • Errors: binding + common.
  • Long-lived read; recovery follows its stream semantics.
// client: BindingServiceClient; request: WatchBindingsRequest; signal: AbortSignal
for await (const response of client.watchBindings(request, { signal })) {
console.log(response);
}

TestBinding​

TestBinding runs a binding on a sample input — the current version, an older one, or an unsaved definition compiled against the latest manifests — as the workflow a hook call runs (id test//), and waits for its end.

  • Path: /backplane.console.v1.BindingService/TestBinding.
  • Input: TestBindingRequest; output: TestBindingResponse; mode: unary.
  • Errors: binding + common.
  • External command: durable intent/result; never automatically replay. Additional audit statuses: Unavailable before dispatch, Aborted if result persistence fails.
// client: BindingServiceClient; request: TestBindingRequest; signal: AbortSignal
const response = await client.testBinding(request, { signal });

ListBindingRuns​

ListBindingRuns is a hook's runs, newest first (Temporal visibility, workflow id prefix binding// or test//).

  • Path: /backplane.console.v1.BindingService/ListBindingRuns.
  • Input: ListBindingRunsRequest; output: ListBindingRunsResponse; mode: unary.
  • Errors: binding + common.
  • Read/validation: safe to retry after a transient failure.
// client: BindingServiceClient; request: ListBindingRunsRequest; signal: AbortSignal
const response = await client.listBindingRuns(request, { signal });

GetBindingRun​

GetBindingRun is one run: status, input, result or failure, history, and the steps' timeline.

  • Path: /backplane.console.v1.BindingService/GetBindingRun.
  • Input: GetBindingRunRequest; output: GetBindingRunResponse; mode: unary.
  • Errors: binding + common.
  • Read/validation: safe to retry after a transient failure.
// client: BindingServiceClient; request: GetBindingRunRequest; signal: AbortSignal
const response = await client.getBindingRun(request, { signal });

CancelBindingRun​

CancelBindingRun requests cancellation of a run: steps in flight are canceled, completed ones compensated (undo), the run ends canceled.

  • Path: /backplane.console.v1.BindingService/CancelBindingRun.
  • Input: CancelBindingRunRequest; output: CancelBindingRunResponse; mode: unary.
  • Errors: binding + common.
  • External command: durable intent/result; never automatically replay. Additional audit statuses: Unavailable before dispatch, Aborted if result persistence fails.
// client: BindingServiceClient; request: CancelBindingRunRequest; signal: AbortSignal
const response = await client.cancelBindingRun(request, { signal });