BehaviorHandler

Struct BehaviorHandler 

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

Handler for behavior operations

Implementations§

Source§

impl BehaviorHandler

Source

pub fn new(client: FilesClient) -> Self

Create a new behavior handler

Source

pub async fn list( &self, cursor: Option<&str>, per_page: Option<i64>, sort_by: Option<Value>, filter: Option<Value>, filter_prefix: Option<&str>, ) -> Result<(Vec<BehaviorEntity>, PaginationInfo)>

List behaviors

§Arguments
  • cursor - Pagination cursor
  • per_page - Results per page
  • sort_by - Sort field and direction
  • filter - Filter criteria
  • filter_prefix - Filter by path prefix
§Returns

Tuple of (behaviors, pagination_info)

§Example
use files_sdk::{FilesClient, BehaviorHandler};

let client = FilesClient::builder().api_key("key").build()?;
let handler = BehaviorHandler::new(client);
let (behaviors, _) = handler.list(None, None, None, None, None).await?;
Source

pub async fn list_for_folder( &self, path: &str, cursor: Option<&str>, per_page: Option<i64>, ) -> Result<(Vec<BehaviorEntity>, PaginationInfo)>

List behaviors for a specific folder path

§Arguments
  • path - Folder path
  • cursor - Pagination cursor
  • per_page - Results per page
§Returns

Tuple of (behaviors, pagination_info)

Source

pub async fn get(&self, id: i64) -> Result<BehaviorEntity>

Get a specific behavior

§Arguments
  • id - Behavior ID
Source

pub async fn create( &self, path: &str, behavior: &str, value: Option<Value>, name: Option<&str>, recursive: Option<bool>, ) -> Result<BehaviorEntity>

Create a new behavior

§Arguments
  • path - Folder path (required)
  • behavior - Behavior type (required)
  • value - Behavior configuration value
  • name - Behavior name
  • recursive - Apply recursively
§Returns

The created behavior

§Example
use files_sdk::{FilesClient, BehaviorHandler};
use serde_json::json;

let client = FilesClient::builder().api_key("key").build()?;
let handler = BehaviorHandler::new(client);
let webhook_config = json!({"urls": ["https://example.com/hook"]});
let behavior = handler.create(
    "/uploads",
    "webhook",
    Some(webhook_config),
    Some("Upload Webhook"),
    Some(true)
).await?;
Source

pub async fn update( &self, id: i64, value: Option<Value>, name: Option<&str>, disable_parent_folder_behavior: Option<bool>, ) -> Result<BehaviorEntity>

Update a behavior

§Arguments
  • id - Behavior ID
  • value - New behavior configuration value
  • name - New behavior name
  • disable_parent_folder_behavior - Disable parent folder behavior
§Returns

The updated behavior

Source

pub async fn delete(&self, id: i64) -> Result<()>

Delete a behavior

§Arguments
  • id - Behavior ID
Source

pub async fn test_webhook( &self, url: &str, method: Option<&str>, encoding: Option<&str>, headers: Option<Value>, body: Option<Value>, ) -> Result<Value>

Test a webhook behavior

§Arguments
  • url - Webhook URL to test
  • method - HTTP method (GET or POST)
  • encoding - Webhook encoding type
  • headers - Custom headers
  • body - Request body parameters
§Returns

Test result

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> 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: 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: 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, 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
Source§

impl<T> ErasedDestructor for T
where T: 'static,