qBittorrent/WebAPI_Changelog.md
Rémi Marseault 8e2125ee72
WebAPI: Add metadata in /app/getDirectoryContent response
## Description

Send file/folder metadata instead of just the name of a filesystem entry.
Currently the endpoint only sends a list of string, containing the path of each entry, without specifying its type (file or folder).
The optional `withMetadata` flag has been added to provide metadata and to prevent breaking changes with older versions.
If `true`, JSON response will be an array of objects instead of an array of strings.

This object contains:
- `name`: the name of the file system entry (without path)
- `type`: Whether the file system entry is a "file" or a "dir"
- `creation_date`: file system entry's creation date
- `last_access_date`: file system entry's last access date
- `last_modification_date`: file system entry's last modification date

If the entry is a file, a `size` field is present with the file size in bytes.

## Objective

Build a server file browser inside WebUIs, feature is currently being developed for VueTorrent.
It will include file metadata, filtering and sorting on the different fields.

PR #22813.
2025-06-07 23:02:48 +08:00

1.4 KiB

WebAPI Changelog

2.11.8

  • #21349
    • Handle sending 204 No Content status code when response contains no data
      • Some endpoints still return 200 OK to ensure smooth transition
  • #22750
    • torrents/info allows an optional parameter includeFiles that defaults to false
      • Each torrent will contain a new key files which will list all files similar to the torrents/files endpoint
  • #22813
    • app/getDirectoryContent allows an optional parameter withMetadata to send file metadata
      • Fields are name, type, size, creation_date, last_access_date, last_modification_date
      • See PR for TypeScript types

2.11.7

  • #22166
    • sync/maindata returns 3 new torrent fields: has_tracker_warning, has_tracker_error, has_other_announce_error

2.11.6

  • #22460
    • app/setPreferences allows only one of max_ratio_enabled, max_ratio to be present
    • app/setPreferences allows only one of max_seeding_time_enabled, max_seeding_time to be present
    • app/setPreferences allows only one of max_inactive_seeding_time_enabled, max_inactive_seeding_time to be present