# `PolarExpress.Services.FilesService`
[🔗](https://github.com/jeffhuen/polar_express/blob/main/lib/polar_express/services/files_service.ex#L2)

Files

Files API operations.

# `complete_file_upload`

```elixir
@spec complete_file_upload(PolarExpress.Client.t(), String.t(), map(), keyword()) ::
  {:ok, PolarExpress.Schemas.DownloadableFileRead.t()}
  | {:error, PolarExpress.Error.t()}
```

Complete File Upload

Complete a file upload.

**Scopes**: `files:write`

See `PolarExpress.Params.FilesCompleteFileUploadParams` for parameter details.

# `create_file`

```elixir
@spec create_file(PolarExpress.Client.t(), map(), keyword()) ::
  {:ok, PolarExpress.Schemas.FileUpload.t()} | {:error, PolarExpress.Error.t()}
```

Create File

Create a file.

**Scopes**: `files:write`

See `PolarExpress.Params.FilesCreateFileParams` for parameter details.

# `delete_file`

```elixir
@spec delete_file(PolarExpress.Client.t(), String.t(), map(), keyword()) ::
  {:ok, term()} | {:error, PolarExpress.Error.t()}
```

Delete File

Delete a file.

**Scopes**: `files:write`

See `PolarExpress.Params.FilesDeleteFileParams` for parameter details.

# `list_files`

```elixir
@spec list_files(PolarExpress.Client.t(), map(), keyword()) ::
  {:ok, PolarExpress.Schemas.ListResource_FileRead_.t()}
  | {:error, PolarExpress.Error.t()}
```

List Files

List files.

**Scopes**: `files:read` `files:write`

See `PolarExpress.Params.FilesListFilesParams` for parameter details.

# `update_file`

```elixir
@spec update_file(PolarExpress.Client.t(), String.t(), map(), keyword()) ::
  {:ok, PolarExpress.Schemas.DownloadableFileRead.t()}
  | {:error, PolarExpress.Error.t()}
```

Update File

Update a file.

**Scopes**: `files:write`

See `PolarExpress.Params.FilesUpdateFileParams` for parameter details.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
