Axon Docs
GitHub Quickstart

Docs / API Reference

Axon.Core

GoAxon.Core — shared models and enums used by both Axon.Client and Axon.Server, with no dependency on either.

JobInfo

Class
Axon.Core.Models.JobInfo

The wire representation of a job: a method reference (assembly, declaring type, method name) plus JSON-serialized arguments. Built internally by IAxonClient from an expression tree — you don't construct this directly.

  • RetryPolicy AxonRetryPolicy? — overrides Axon.Server's default retry behavior for this job. Null uses the default.
  • Priority JobPriority — shifts this job's effective dispatch order. Defaults to Medium.
  • QueueName string — the named queue this job is dispatched through. Defaults to "default", which every server instance serves implicitly.
  • ConcurrencyKey string? — groups jobs for the MaxConcurrent limit. Null means no concurrency limit is enforced for this job.
  • MaxConcurrent int? — maximum jobs sharing this ConcurrencyKey allowed to be Processing at once, fleet-wide.

AxonEnqueueOptions

Class
Axon.Core.Models.AxonEnqueueOptions

Optional per-call settings for IAxonClient.EnqueueAsync/ScheduleAsync/ContinueWithAsync. Bundled into one object rather than one parameter per setting, so adding a new option later doesn't grow every overload's parameter list.

  • RetryPolicy AxonRetryPolicy? — overrides Axon.Server's default retry/backoff schedule for this job only.
  • Priority JobPriority — defaults to JobPriority.Medium.
  • QueueName string? — null resolves to "default".
  • ConcurrencyKey string? — an explicit value here always overrides an AxonConcurrencyLimitAttribute on the method, if both are present. Null falls back to that attribute, if any.
  • MaxConcurrent int? — enforced atomically by the job store, not just locally. Ignored if ConcurrencyKey ends up null.
  • CancellationToken CancellationToken — cancels the enqueue/schedule request itself; has no effect once the server has durably stored the job.

AxonRetryPolicy

Class
Axon.Core.Models.AxonRetryPolicy

Per-job retry configuration. When null on a job, Axon.Server falls back to its built-in default (3 attempts, 10s/30s/2min backoff).

  • MaxAttempts int — total attempts allowed, including the first. Must be at least 1.
  • RetryDelaysSeconds List<int> — delay before each retry, indexed by attempt number (0-based). If there are more retries than entries, the last entry is reused for every subsequent retry.

JobPriority

Enum
Axon.Core.Enums.JobPriority

Medium (default) · Low · High · Critical

See Priority and queues for the boost/scoring formula each level applies to dispatch order.

JobState

Enum
Axon.Core.Enums.JobState

Enqueued · Scheduled · Processing · Succeeded · Failed · AwaitingParent · Skipped

Persisted as a raw int in every store, so values are appended-only and never renumbered. AwaitingParent marks a continuation held until its parent job reaches a terminal state; Skipped marks a continuation whose parent failed with ContinueOnParentFailure = false — distinct from Failed, which means the job itself was attempted and failed. See Architecture for the full transition diagram.