Skip to main content

RunClient

Struct RunClient 

Source
pub struct RunClient { /* private fields */ }
Expand description

Client for a specific Actor run.

In addition to CRUD-style operations, this client exposes the run’s lifecycle actions (abort, metamorph, reboot, resurrect, charge) and provides access to the run’s default dataset, key-value store, request queue and log.

Implementations§

Source§

impl RunClient

Source

pub async fn get(&self) -> ApifyClientResult<Option<ActorRun>>

Fetches the run object, or None if it does not exist.

Source

pub async fn update<T: Serialize>( &self, new_fields: &T, ) -> ApifyClientResult<ActorRun>

Updates the run (e.g. its status message) and returns the updated object.

Source

pub async fn delete(&self) -> ApifyClientResult<()>

Deletes the run.

Source

pub async fn abort( &self, gracefully: Option<bool>, ) -> ApifyClientResult<ActorRun>

Aborts the run. gracefully is optional, matching the reference client’s optional gracefully option and the Go sibling’s Option<bool>: Some(true) lets the run perform cleanup first, Some(false) aborts immediately, and None omits the parameter entirely so the server applies its default (immediate abort).

Source

pub async fn metamorph<T: Serialize>( &self, target_actor_id: &str, input: Option<&T>, options: RunMetamorphOptions, ) -> ApifyClientResult<ActorRun>

Transforms the run into a run of another Actor (metamorph).

options.content_type sets the content type of the input body (defaulting to application/json), matching the reference client’s metamorph(..., { contentType }).

Source

pub async fn reboot(&self) -> ApifyClientResult<ActorRun>

Reboots the run (restarts its container, preserving the run ID and storages).

Source

pub async fn resurrect( &self, options: RunResurrectOptions, ) -> ApifyClientResult<ActorRun>

Resurrects a finished run, starting it again with (optionally overridden) settings.

Source

pub async fn charge(&self, options: RunChargeOptions) -> ApifyClientResult<()>

Charges the run for a pay-per-event run, recording occurrences of a named event.

An idempotency key is always sent (auto-generated when options.idempotency_key is None), so a charge that is retried by the transport is applied at most once — matching the reference client and preventing double-charging.

The charge endpoint returns an empty body on success, so this issues the request directly and treats any 2xx response as success (errors still surface normally).

Source

pub async fn wait_for_finish( &self, wait_secs: Option<i64>, ) -> ApifyClientResult<ActorRun>

Waits (by client-side polling) for the run to reach a terminal state.

wait_secs controls the wait budget:

  • None polls indefinitely until the run reaches a terminal state.
  • Some(n) bounds the wait to roughly n seconds; if the run has not finished by then, the last fetched (still non-terminal) run is returned rather than an error. Check status / is_terminal() on the result when using Some.
Source

pub fn dataset(&self) -> DatasetClient

Returns a client for the run’s default dataset.

Source

pub fn key_value_store(&self) -> KeyValueStoreClient

Returns a client for the run’s default key-value store.

Source

pub fn request_queue(&self) -> RequestQueueClient

Returns a client for the run’s default request queue.

Source

pub fn log(&self) -> LogClient

Returns a client for the run’s log.

Source

pub async fn get_streamed_log( &self, ) -> ApifyClientResult<impl Stream<Item = ApifyClientResult<Vec<u8>>>>

Opens a live stream of the run’s log for redirection.

Convenience equivalent to run.log().stream() (mirrors the reference client’s getStreamedLog): yields log chunks as they arrive, so callers can forward them to their own logger/stdout while the run is in progress.

Source

pub async fn get_streamed_log_with_options( &self, options: LogOptions, ) -> ApifyClientResult<impl Stream<Item = ApifyClientResult<Vec<u8>>>>

Opens a live stream of the run’s log for redirection, applying the given [LogOptions] (e.g. [LogOptions::raw] to stream the unprocessed log, which is the form the JS reference’s log redirection consumes internally).

This is a Rust-specific convenience that simply forwards LogOptions to LogClient::stream_with_options; it is not a 1:1 mirror of the JS getStreamedLog method’s signature (which takes redirect options and returns a StreamedLog object).

Trait Implementations§

Source§

impl Clone for RunClient

Source§

fn clone(&self) -> RunClient

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for RunClient

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more