box-open-sdk 0.3.1

Box API client for Rust (open source, community, punk rock) — typed models, async managers, and a reqwest runtime with retry, backoff, and token refresh.
Documentation
<!-- Generated by box-gantry. DO NOT EDIT. -->
# FileVersionsManager

Reach these methods through the `file_versions` field on `client::Client`.

## list_file_versions

`GET /files/{file_id}/versions`

| Parameter | In | Type | Required |
|---|---|---|---|
| `file_id` | path | `String` | yes |
| `fields` | query | `Vec<String>` | no |
| `limit` | query | `i64` | no |
| `offset` | query | `i64` | no |

**Returns:** `FileVersions`

**Example**

```rust
let mut pages = client.file_versions.list_file_versions("FILE_ID".to_string(), None);
while let Some(item) = pages.next().await {
    // use item
}
```

Paginated — `list_file_versions(...)` returns a paginator you drive with `.next().await`, threading the cursor for you. See the [pagination guide](../pagination.md).

## get_file_version

`GET /files/{file_id}/versions/{file_version_id}`

| Parameter | In | Type | Required |
|---|---|---|---|
| `file_id` | path | `String` | yes |
| `fields` | query | `Vec<String>` | no |
| `file_version_id` | path | `String` | yes |

**Returns:** `FileVersionFull`

**Example**

```rust
let result = client.file_versions.get_file_version("FILE_ID".to_string(), "FILE_VERSION_ID".to_string(), None).await?;
```

## update_file_version

`PUT /files/{file_id}/versions/{file_version_id}`

| Parameter | In | Type | Required |
|---|---|---|---|
| `file_id` | path | `String` | yes |
| `file_version_id` | path | `String` | yes |

**Request body** (`application/json`): `FileVersionUpdateRequest`

**Returns:** `FileVersionFull`

**Example**

```rust
let result = client.file_versions.update_file_version("FILE_ID".to_string(), "FILE_VERSION_ID".to_string(), schemas::FileVersionUpdateRequest { /* … */ }).await?;
```

## delete_file_version

`DELETE /files/{file_id}/versions/{file_version_id}`

| Parameter | In | Type | Required |
|---|---|---|---|
| `file_id` | path | `String` | yes |
| `file_version_id` | path | `String` | yes |
| `if-match` | header | `String` | no |

**Returns:** no content

**Example**

```rust
client.file_versions.delete_file_version("FILE_ID".to_string(), "FILE_VERSION_ID".to_string(), None).await?;
```

## create_file_version_current

`POST /files/{file_id}/versions/current`

| Parameter | In | Type | Required |
|---|---|---|---|
| `file_id` | path | `String` | yes |
| `fields` | query | `Vec<String>` | no |

**Request body** (`application/json`): `FileVersionCurrentCreateRequest`

**Returns:** `FileVersionFull`

**Example**

```rust
let result = client.file_versions.create_file_version_current("FILE_ID".to_string(), schemas::FileVersionCurrentCreateRequest { /* … */ }, None).await?;
```