From 26073311c0ed807ae2f2bf8123b50a7fc9a27dec Mon Sep 17 00:00:00 2001 From: daedalus <44623501+ComfortablyCoding@users.noreply.github.com> Date: Mon, 8 Dec 2025 17:20:31 -0500 Subject: [PATCH 1/2] add new zip download endpoints --- openapi/index.yaml | 8 +++-- openapi/paths/assets/_folder/index.yaml | 2 ++ openapi/paths/assets/_folder/zipFolder.yaml | 34 +++++++++++++++++++++ openapi/paths/assets/files/index.yaml | 2 ++ openapi/paths/assets/files/zipFiles.yaml | 34 +++++++++++++++++++++ 5 files changed, 78 insertions(+), 2 deletions(-) create mode 100644 openapi/paths/assets/_folder/index.yaml create mode 100644 openapi/paths/assets/_folder/zipFolder.yaml create mode 100644 openapi/paths/assets/files/index.yaml create mode 100644 openapi/paths/assets/files/zipFiles.yaml diff --git a/openapi/index.yaml b/openapi/index.yaml index 50d1b15..a45d400 100644 --- a/openapi/index.yaml +++ b/openapi/index.yaml @@ -1,8 +1,8 @@ -openapi: '3.0.1' +openapi: "3.0.1" info: title: Directus API Reference description: This is a dynamically generated API specification for all endpoints existing on the current project! - version: '11.1.0' + version: "11.14.0" license: name: Business Source License 1.1 (BUSL-1.1) url: https://github.com/directus/directus/blob/main/license @@ -17,6 +17,10 @@ paths: $ref: paths/activity/_id/index.yaml "/assets/{id}": $ref: paths/assets/_id/index.yaml + "/assets/folder/{id}": + $ref: paths/assets/_folder/index.yaml + "/assets/files/": + $ref: paths/assets/_files/index.yaml "/auth/login": $ref: paths/auth/login/index.yaml "/auth/logout": diff --git a/openapi/paths/assets/_folder/index.yaml b/openapi/paths/assets/_folder/index.yaml new file mode 100644 index 0000000..e3a11fd --- /dev/null +++ b/openapi/paths/assets/_folder/index.yaml @@ -0,0 +1,2 @@ +get: + $ref: zipFolder.yaml diff --git a/openapi/paths/assets/_folder/zipFolder.yaml b/openapi/paths/assets/_folder/zipFolder.yaml new file mode 100644 index 0000000..050cfcc --- /dev/null +++ b/openapi/paths/assets/_folder/zipFolder.yaml @@ -0,0 +1,34 @@ +summary: ZIP folder +security: [] +tags: + - Assets +operationId: zipFolder +description: ZIP folder +parameters: + - name: id + in: path + description: The id of the folder. + required: true + schema: + type: string +responses: + "200": + description: Successful request + content: + text/plain: + schema: + type: string + "404": + $ref: ../../../components/responses.yaml#/NotFoundError +x-codeSamples: + - label: Directus SDK + lang: JavaScript + source: | + import { createDirectus, rest, zipFolder } from '@directus/sdk'; + + const client = createDirectus('directus_project_url').with(rest()); + + const result = await client.request(zipFolder('')); + - label: GraphQL + lang: GraphQL + source: Not available in Directus SDK/GraphQL diff --git a/openapi/paths/assets/files/index.yaml b/openapi/paths/assets/files/index.yaml new file mode 100644 index 0000000..72fddaf --- /dev/null +++ b/openapi/paths/assets/files/index.yaml @@ -0,0 +1,2 @@ +get: + $ref: zipFiles.yaml diff --git a/openapi/paths/assets/files/zipFiles.yaml b/openapi/paths/assets/files/zipFiles.yaml new file mode 100644 index 0000000..bfdd36d --- /dev/null +++ b/openapi/paths/assets/files/zipFiles.yaml @@ -0,0 +1,34 @@ +summary: ZIP files +security: [] +tags: + - Assets +operationId: zipFiles +description: ZIP files +requestBody: + content: + application/json: + ids: + type: array + items: + type: string +responses: + "200": + description: Successful request + content: + text/plain: + schema: + type: string + "404": + $ref: ../../../components/responses.yaml#/NotFoundError +x-codeSamples: + - label: Directus SDK + lang: JavaScript + source: | + import { createDirectus, rest, zipFiles } from '@directus/sdk'; + + const client = createDirectus('directus_project_url').with(rest()); + + const result = await client.request(zipFiles(['',' Date: Tue, 9 Dec 2025 00:47:00 -0500 Subject: [PATCH 2/2] update sdk methods --- openapi/paths/assets/_folder/zipFolder.yaml | 4 ++-- openapi/paths/assets/files/zipFiles.yaml | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/openapi/paths/assets/_folder/zipFolder.yaml b/openapi/paths/assets/_folder/zipFolder.yaml index 050cfcc..0073a25 100644 --- a/openapi/paths/assets/_folder/zipFolder.yaml +++ b/openapi/paths/assets/_folder/zipFolder.yaml @@ -24,11 +24,11 @@ x-codeSamples: - label: Directus SDK lang: JavaScript source: | - import { createDirectus, rest, zipFolder } from '@directus/sdk'; + import { createDirectus, rest, downloadFolderZip } from '@directus/sdk'; const client = createDirectus('directus_project_url').with(rest()); - const result = await client.request(zipFolder('')); + const result = await client.request(downloadFolderZip('')); - label: GraphQL lang: GraphQL source: Not available in Directus SDK/GraphQL diff --git a/openapi/paths/assets/files/zipFiles.yaml b/openapi/paths/assets/files/zipFiles.yaml index bfdd36d..18d391a 100644 --- a/openapi/paths/assets/files/zipFiles.yaml +++ b/openapi/paths/assets/files/zipFiles.yaml @@ -24,11 +24,11 @@ x-codeSamples: - label: Directus SDK lang: JavaScript source: | - import { createDirectus, rest, zipFiles } from '@directus/sdk'; + import { createDirectus, rest, downloadFilesZip } from '@directus/sdk'; const client = createDirectus('directus_project_url').with(rest()); - const result = await client.request(zipFiles(['','','