pypresscart.resources.files

Files resource: /files endpoints (list/upload/download/move/delete).

Classes

FilesResource(client)

File upload and management.

class pypresscart.resources.files.FilesResource(client)[source]

Bases: ResourceBase

File upload and management.

Parameters:

client (PresscartClient)

list(*, limit=25, page=1, sort_by=None, order_by=None, q=None, folder_id=None, as_json=None)[source]

List files. Required scope: files.lists.

Parameters:
  • limit (int)

  • page (int)

  • sort_by (str | None)

  • order_by (str | None)

  • q (str | None)

  • folder_id (str | None)

  • as_json (bool | None)

Return type:

Paginated[File] | dict[str, Any]

get(file_id, *, as_json=None)[source]

Get a single file record. Required scope: files.read.

Parameters:
  • file_id (str)

  • as_json (bool | None)

Return type:

File | dict[str, Any]

upload(files, *, folder_id=None, as_json=None)[source]

Upload 1-5 files. Required scope: files.create.

Accepts:
  • a path (str or pathlib.Path)

  • an open binary file handle

  • a (filename, fileobj, content_type) tuple

  • a list mixing any of the above

Parameters:
Return type:

UploadFilesResponse | dict[str, Any]

download(file_id)[source]

Download the raw bytes of a file. Required scope: files.read.

Parameters:

file_id (str)

Return type:

bytes

move(body, *, as_json=None)[source]

Move files into a folder (or to root with folder_id=None). Scope: files.update.

Parameters:
Return type:

MoveFilesResponse | dict[str, Any]

delete(file_id, *, as_json=None)[source]

Delete a file. Required scope: files.delete.

Parameters:
  • file_id (str)

  • as_json (bool | None)

Return type:

DeleteFileResponse | dict[str, Any]