WJb Docs - Reference

Browse APIs, configuration options, interfaces, and implementation details.

⚡ Actions
🔀 Workflow
📦 Jobs
⚙️ Runtime
💾 Persistence
🗄 Storage
🧩 Workflow Metadata
🛠 Extensions & Helpers

JobEnvelope

Represents a job together with the information required for execution.

JobEnvelope acts as a transport model between the runtime, stores, and workers.

Purpose

JobEnvelope packages all information required to execute a job.

Store
  ↓
JobEnvelope
  ↓
Worker
  ↓
Execution

Responsibilities

A job envelope typically contains:

  • Job information
  • Action information
  • Execution context
  • Payload data
  • Runtime metadata

Execution Flow

Job Retrieved
      ↓
 JobEnvelope
      ↓
 Action Resolution
      ↓
   Execution

Workers receive a job envelope and use its contents to execute the appropriate action.

Why JobEnvelope Exists

Separating the execution package from individual models simplifies communication between runtime components.

JobInfo
   +
Payload
   +
Metadata
   ↓
JobEnvelope

This allows the runtime to work with a single execution object.

Runtime Usage

JobEnvelope is typically used by:

  • IWJb
  • IJobExecutor
  • Workers
  • Stores
Application code rarely needs to create job envelopes directly.

Best Practices

Treat as Runtime Infrastructure

JobEnvelope is primarily a runtime model.

Business logic should generally work with payloads and actions rather than job envelopes.

Avoid Business Data Coupling

Keep business logic independent from envelope internals whenever possible.

Prefer Higher-Level APIs

Most workflows should use:

  • IAction
  • JobAction
  • Results
  • JobCommand
instead of manipulating envelopes directly.

Relationship to JobInfo

JobInfo describes a job.

JobEnvelope provides the execution package used by the runtime.

JobInfo
    ↓
JobEnvelope
    ↓
Execution

Related Types

  • JobInfo
  • JobOptions
  • JobCommand
  • IWJb
  • IJobExecutor

See Also

  • JobInfo
  • JobOptions
  • IJobExecutor
  • IWJb
An unhandled error has occurred. Reload 🗙

Rejoining the server...

Rejoin failed... trying again in seconds.

Failed to rejoin.
Please retry or reload the page.

The session has been paused by the server.

Failed to resume the session.
Please retry or reload the page.