Member Junction
    Preparing search index...

    What every media operation adds to its driver params: the fields the runner needs to choose a model, resolve its credential and record the run. The runner strips them before calling the driver, so a driver never sees the context user or the keys.

    interface AIMediaRunOptions {
        AgentID?: string;
        AgentRunID?: string;
        APIKeys?: AIAPIKey[];
        CancellationToken?: AbortSignal;
        ContextUser: UserInfo;
        CredentialScope?: AICredentialScope;
        ModelID?: string;
        OnPromptRunCreated?: (promptRunId: string) => void | Promise<void>;
        ParentRunID?: string;
        PromptID?: string;
        TimeoutMS?: number;
    }

    Hierarchy (View Summary)

    Index

    Properties

    AgentID?: string

    The agent the call is made for, recorded as the run row's AgentID.

    AgentRunID?: string

    The agent run this call belongs to. MJ: AI Prompt Runs has no agent-run column, so it is recorded in the row's Messages, for reading only. To join the row to the run, use OnPromptRunCreated.

    APIKeys?: AIAPIKey[]

    Keys by driver class, passed through as the base runner's apiKeys. A key reaches only the candidates of its own driver class. They rank as they do for chat prompts, just above the environment keys: a credential bound to the prompt-model, the model-vendor or the vendor, or a default credential of the vendor's credential type, wins over them.

    CancellationToken?: AbortSignal

    Cancels the call, as AIPromptParams.cancellationToken cancels a chat call. A token already aborted refuses the call before a run row exists. Aborted during the call, it ends the call at once, before any further failover candidate, and the run row is recorded as Cancelled. The driver is handed it (composed with TimeoutMS) as its params' CancellationToken, so a request already sent is torn down by a driver that honors it.

    ContextUser: UserInfo

    The user the run is made and recorded for. Required.

    CredentialScope?: AICredentialScope

    Passed through as the base runner's CredentialScope. 'RuntimeOnly' restricts the run to APIKeys: a candidate whose driver class has no key there is skipped, never run on the platform's credentials.

    ModelID?: string

    Pins the model by ID. Failover then stays within that model's vendors. Leave it unset to let the carrier prompt's bindings choose.

    OnPromptRunCreated?: (promptRunId: string) => void | Promise<void>

    Called with the run row's ID as soon as the row exists, before the model call: the hook an agent step uses to point its TargetLogID at the row. An error it throws is logged, never raised.

    ParentRunID?: string

    A parent MJ: AI Prompt Runs row, recorded as this run's ParentID.

    PromptID?: string

    The MJ: AI Prompts row whose bindings choose the model and whose failover settings apply. Defaults to the runner's default carrier prompt, found by name.

    TimeoutMS?: number

    A bound, in milliseconds, on each driver call, as AIPromptParams.timeoutMS bounds each chat call: every failover candidate gets its own. A call that runs longer fails with an AIPromptTimeoutError, which reads as a network error and so fails over. For audio a driver splits, the bound covers the whole transcription. Unset or not positive means no bound, unless the runner declares a DefaultPromptTimeoutMS.

    The timeout is composed into the signal the driver is handed as its params' CancellationToken, so a request that times out is torn down by a driver that honors it, not left running.