Struct FilesResource

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

Resource for managing files via the Anthropic Files API

Implementations§

Source§

impl FilesResource

Source

pub fn new(http_client: Arc<HttpClient>) -> Self

Create a new files resource

Source

pub async fn upload(&self, params: FileUploadParams) -> Result<FileObject>

Upload a file to the Anthropic API

§Arguments
  • params - Upload parameters including content, filename, and purpose
§Returns

A new FileObject with the uploaded file information

§Errors

Returns an error if the upload fails or if the parameters are invalid

Source

pub async fn upload_with_progress<F>( &self, params: FileUploadParams, progress_callback: F, ) -> Result<FileObject>

Upload a file with progress tracking

§Arguments
  • params - Upload parameters
  • progress_callback - Called with progress updates during upload
§Returns

The uploaded FileObject

§Errors

Returns an error if the upload fails

Source

pub async fn get(&self, file_id: &str) -> Result<FileObject>

Retrieve a file by ID

§Arguments
  • file_id - The ID of the file to retrieve
§Returns

The FileObject with current information

§Errors

Returns an error if the file is not found or if the request fails

Source

pub async fn list(&self, params: Option<FileListParams>) -> Result<FileList>

List files with optional filtering and pagination

§Arguments
  • params - Optional parameters for filtering and pagination
§Returns

A FileList containing files and pagination information

§Errors

Returns an error if the request fails

Source

pub async fn download(&self, file_id: &str) -> Result<FileDownload>

Download file content

§Arguments
  • file_id - The ID of the file to download
§Returns

A FileDownload containing the file content and metadata

§Errors

Returns an error if the file is not found or cannot be downloaded

Source

pub async fn delete(&self, file_id: &str) -> Result<FileObject>

Delete a file

§Arguments
  • file_id - The ID of the file to delete
§Returns

The updated FileObject with deletion status

§Errors

Returns an error if the file cannot be deleted or if the request fails

Source

pub async fn get_storage_info(&self) -> Result<StorageInfo>

Get storage information and quotas

§Returns

StorageInfo with current usage and quotas

§Errors

Returns an error if the request fails

Source

pub async fn wait_for_processing( &self, file_id: &str, poll_interval: Option<Duration>, timeout: Option<Duration>, ) -> Result<FileObject>

Wait for a file to be processed

§Arguments
  • file_id - The ID of the file to wait for
  • poll_interval - How often to check the status (default: 2 seconds)
  • timeout - Maximum time to wait (default: 5 minutes)
§Returns

The processed FileObject

§Errors

Returns an error if the file processing fails or times out

Source§

impl FilesResource

High-level file management utilities

Source

pub async fn upload_batch( &self, uploads: Vec<FileUploadParams>, max_concurrent: Option<usize>, ) -> Result<Vec<FileObject>>

Upload multiple files concurrently

§Arguments
  • uploads - Vector of upload parameters
  • max_concurrent - Maximum number of concurrent uploads
§Returns

Vector of uploaded file objects

§Errors

Returns an error if any upload fails

Source

pub async fn cleanup_old_files(&self, max_age: Duration) -> Result<u32>

Clean up old files based on age

§Arguments
  • max_age - Maximum age for files to keep
§Returns

Number of files deleted

§Errors

Returns an error if the cleanup operation fails

Source

pub async fn get_files_by_purpose( &self, purpose: FilePurpose, limit: Option<u32>, ) -> Result<Vec<FileObject>>

Get files by purpose with optional filtering

§Arguments
  • purpose - File purpose to filter by
  • limit - Maximum number of files to return
§Returns

Vector of matching file objects

§Errors

Returns an error if the request fails

Trait Implementations§

Source§

impl Clone for FilesResource

Source§

fn clone(&self) -> FilesResource

Returns a duplicate of the value. Read more
1.0.0 · Source§

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

Performs copy-assignment from source. Read more
Source§

impl Debug for FilesResource

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

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