From 33690096c56fc115f6e168f502b8347a2a6d98a4 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Mon, 3 Aug 2026 17:07:46 +0000 Subject: [PATCH] feat: Updated OpenAPI spec --- ...tsImportProjectMediaCommandApiCommand.g.cs | 21 +++++++++++++ ...ApiEndpointsClient.ImportProjectMedia.g.cs | 14 +++++++++ ...ApiEndpointsClient.ImportProjectMedia.g.cs | 13 ++++++++ ...ript.Models.ImportProjectMediaRequest.g.cs | 30 +++++++++++++++++++ src/libs/Descript/openapi.yaml | 16 ++++++++++ 5 files changed, 94 insertions(+) diff --git a/src/cli/Descript.CLI/Commands/ApiEndpointsImportProjectMediaCommandApiCommand.g.cs b/src/cli/Descript.CLI/Commands/ApiEndpointsImportProjectMediaCommandApiCommand.g.cs index 90e8ec2..27a8103 100644 --- a/src/cli/Descript.CLI/Commands/ApiEndpointsImportProjectMediaCommandApiCommand.g.cs +++ b/src/cli/Descript.CLI/Commands/ApiEndpointsImportProjectMediaCommandApiCommand.g.cs @@ -43,6 +43,24 @@ segments are created automatically. ", }; + private static Option WorkspaceName { get; } = new( + name: @"--workspace-name") + { + Description = @"Existing workspace to create the new project in, matched by name (case-insensitive). +Only applicable when creating a new project (when project_id is not provided). + +Reserved names: `Personal` (your private space) and `General` (the shared drive workspace). +Any other value is looked up as a custom workspace name; unknown names return 404. + +When omitted, `team_access` is passed through unchanged. +When set to `Personal`, `team_access` must be `none` or omitted. +When set to `General` or a custom workspace name, `team_access` must be +`edit`, `comment`, or `view`; omitting it defaults to `view`, and `none` is rejected. + +For custom workspaces, the caller must be a member of that workspace. +", + }; + private static Option>?> AddMedia { get; } = new( name: @"--add-media") { @@ -138,6 +156,7 @@ public static Command Create() command.Options.Add(ProjectName); command.Options.Add(TeamAccess); command.Options.Add(FolderName); + command.Options.Add(WorkspaceName); command.Options.Add(AddMedia); command.Options.Add(AddCompositions); command.Options.Add(CallbackUrl); @@ -170,6 +189,7 @@ await CliRuntime.RunAsync(async () => var projectName = CliRuntime.WasSpecified(parseResult, ProjectName) ? parseResult.GetValue(ProjectName) : (__requestBase is { } __ProjectNameBaseValue ? __ProjectNameBaseValue.ProjectName : default); var teamAccess = CliRuntime.WasSpecified(parseResult, TeamAccess) ? parseResult.GetValue(TeamAccess) : (__requestBase is { } __TeamAccessBaseValue ? __TeamAccessBaseValue.TeamAccess : default); var folderName = CliRuntime.WasSpecified(parseResult, FolderName) ? parseResult.GetValue(FolderName) : (__requestBase is { } __FolderNameBaseValue ? __FolderNameBaseValue.FolderName : default); + var workspaceName = CliRuntime.WasSpecified(parseResult, WorkspaceName) ? parseResult.GetValue(WorkspaceName) : (__requestBase is { } __WorkspaceNameBaseValue ? __WorkspaceNameBaseValue.WorkspaceName : default); var addMedia = CliRuntime.WasSpecified(parseResult, AddMedia) ? parseResult.GetValue(AddMedia) : (__requestBase is { } __AddMediaBaseValue ? __AddMediaBaseValue.AddMedia : default); var addCompositions = CliRuntime.WasSpecified(parseResult, AddCompositions) ? parseResult.GetValue(AddCompositions) : (__requestBase is { } __AddCompositionsBaseValue ? __AddCompositionsBaseValue.AddCompositions : default); var callbackUrl = CliRuntime.WasSpecified(parseResult, CallbackUrl) ? parseResult.GetValue(CallbackUrl) : (__requestBase is { } __CallbackUrlBaseValue ? __CallbackUrlBaseValue.CallbackUrl : default); @@ -181,6 +201,7 @@ await CliRuntime.RunAsync(async () => projectName: projectName, teamAccess: teamAccess, folderName: folderName, + workspaceName: workspaceName, addMedia: addMedia, addCompositions: addCompositions, callbackUrl: callbackUrl, diff --git a/src/libs/Descript/Generated/Descript.ApiEndpointsClient.ImportProjectMedia.g.cs b/src/libs/Descript/Generated/Descript.ApiEndpointsClient.ImportProjectMedia.g.cs index b730e64..16ef129 100644 --- a/src/libs/Descript/Generated/Descript.ApiEndpointsClient.ImportProjectMedia.g.cs +++ b/src/libs/Descript/Generated/Descript.ApiEndpointsClient.ImportProjectMedia.g.cs @@ -739,6 +739,18 @@ partial void ProcessImportProjectMediaResponseContent( /// segments are created automatically.
/// Example: Clients/Acme /// + /// + /// Existing workspace to create the new project in, matched by name (case-insensitive).
+ /// Only applicable when creating a new project (when project_id is not provided).
+ /// Reserved names: `Personal` (your private space) and `General` (the shared drive workspace).
+ /// Any other value is looked up as a custom workspace name; unknown names return 404.
+ /// When omitted, `team_access` is passed through unchanged.
+ /// When set to `Personal`, `team_access` must be `none` or omitted.
+ /// When set to `General` or a custom workspace name, `team_access` must be
+ /// `edit`, `comment`, or `view`; omitting it defaults to `view`, and `none` is rejected.
+ /// For custom workspaces, the caller must be a member of that workspace.
+ /// Example: Marketing + /// /// /// Map of media reference IDs (display names with optional folder paths) to media import items.
/// Keys are the display names that will appear in the project (e.g., "Misc/intro.mp4" or "demo.mp4").
@@ -761,6 +773,7 @@ partial void ProcessImportProjectMediaResponseContent( string? projectName = default, global::Descript.ImportProjectMediaRequestTeamAccess? teamAccess = default, string? folderName = default, + string? workspaceName = default, global::System.Collections.Generic.Dictionary>? addMedia = default, global::System.Collections.Generic.IList? addCompositions = default, string? callbackUrl = default, @@ -773,6 +786,7 @@ partial void ProcessImportProjectMediaResponseContent( ProjectName = projectName, TeamAccess = teamAccess, FolderName = folderName, + WorkspaceName = workspaceName, AddMedia = addMedia, AddCompositions = addCompositions, CallbackUrl = callbackUrl, diff --git a/src/libs/Descript/Generated/Descript.IApiEndpointsClient.ImportProjectMedia.g.cs b/src/libs/Descript/Generated/Descript.IApiEndpointsClient.ImportProjectMedia.g.cs index 50f51e1..39ee3e8 100644 --- a/src/libs/Descript/Generated/Descript.IApiEndpointsClient.ImportProjectMedia.g.cs +++ b/src/libs/Descript/Generated/Descript.IApiEndpointsClient.ImportProjectMedia.g.cs @@ -114,6 +114,18 @@ public partial interface IApiEndpointsClient /// segments are created automatically.
/// Example: Clients/Acme /// + /// + /// Existing workspace to create the new project in, matched by name (case-insensitive).
+ /// Only applicable when creating a new project (when project_id is not provided).
+ /// Reserved names: `Personal` (your private space) and `General` (the shared drive workspace).
+ /// Any other value is looked up as a custom workspace name; unknown names return 404.
+ /// When omitted, `team_access` is passed through unchanged.
+ /// When set to `Personal`, `team_access` must be `none` or omitted.
+ /// When set to `General` or a custom workspace name, `team_access` must be
+ /// `edit`, `comment`, or `view`; omitting it defaults to `view`, and `none` is rejected.
+ /// For custom workspaces, the caller must be a member of that workspace.
+ /// Example: Marketing + /// /// /// Map of media reference IDs (display names with optional folder paths) to media import items.
/// Keys are the display names that will appear in the project (e.g., "Misc/intro.mp4" or "demo.mp4").
@@ -136,6 +148,7 @@ public partial interface IApiEndpointsClient string? projectName = default, global::Descript.ImportProjectMediaRequestTeamAccess? teamAccess = default, string? folderName = default, + string? workspaceName = default, global::System.Collections.Generic.Dictionary>? addMedia = default, global::System.Collections.Generic.IList? addCompositions = default, string? callbackUrl = default, diff --git a/src/libs/Descript/Generated/Descript.Models.ImportProjectMediaRequest.g.cs b/src/libs/Descript/Generated/Descript.Models.ImportProjectMediaRequest.g.cs index 8b0f556..fbc2b43 100644 --- a/src/libs/Descript/Generated/Descript.Models.ImportProjectMediaRequest.g.cs +++ b/src/libs/Descript/Generated/Descript.Models.ImportProjectMediaRequest.g.cs @@ -56,6 +56,22 @@ public sealed partial class ImportProjectMediaRequest [global::System.Text.Json.Serialization.JsonPropertyName("folder_name")] public string? FolderName { get; set; } + /// + /// Existing workspace to create the new project in, matched by name (case-insensitive).
+ /// Only applicable when creating a new project (when project_id is not provided).
+ /// Reserved names: `Personal` (your private space) and `General` (the shared drive workspace).
+ /// Any other value is looked up as a custom workspace name; unknown names return 404.
+ /// When omitted, `team_access` is passed through unchanged.
+ /// When set to `Personal`, `team_access` must be `none` or omitted.
+ /// When set to `General` or a custom workspace name, `team_access` must be
+ /// `edit`, `comment`, or `view`; omitting it defaults to `view`, and `none` is rejected.
+ /// For custom workspaces, the caller must be a member of that workspace.
+ /// Example: Marketing + ///
+ /// Marketing + [global::System.Text.Json.Serialization.JsonPropertyName("workspace_name")] + public string? WorkspaceName { get; set; } + /// /// Map of media reference IDs (display names with optional folder paths) to media import items.
/// Keys are the display names that will appear in the project (e.g., "Misc/intro.mp4" or "demo.mp4").
@@ -116,6 +132,18 @@ public sealed partial class ImportProjectMediaRequest /// segments are created automatically.
/// Example: Clients/Acme /// + /// + /// Existing workspace to create the new project in, matched by name (case-insensitive).
+ /// Only applicable when creating a new project (when project_id is not provided).
+ /// Reserved names: `Personal` (your private space) and `General` (the shared drive workspace).
+ /// Any other value is looked up as a custom workspace name; unknown names return 404.
+ /// When omitted, `team_access` is passed through unchanged.
+ /// When set to `Personal`, `team_access` must be `none` or omitted.
+ /// When set to `General` or a custom workspace name, `team_access` must be
+ /// `edit`, `comment`, or `view`; omitting it defaults to `view`, and `none` is rejected.
+ /// For custom workspaces, the caller must be a member of that workspace.
+ /// Example: Marketing + /// /// /// Map of media reference IDs (display names with optional folder paths) to media import items.
/// Keys are the display names that will appear in the project (e.g., "Misc/intro.mp4" or "demo.mp4").
@@ -138,6 +166,7 @@ public ImportProjectMediaRequest( string? projectName, global::Descript.ImportProjectMediaRequestTeamAccess? teamAccess, string? folderName, + string? workspaceName, global::System.Collections.Generic.Dictionary>? addMedia, global::System.Collections.Generic.IList? addCompositions, string? callbackUrl) @@ -146,6 +175,7 @@ public ImportProjectMediaRequest( this.ProjectName = projectName; this.TeamAccess = teamAccess; this.FolderName = folderName; + this.WorkspaceName = workspaceName; this.AddMedia = addMedia; this.AddCompositions = addCompositions; this.CallbackUrl = callbackUrl; diff --git a/src/libs/Descript/openapi.yaml b/src/libs/Descript/openapi.yaml index 13ef2b1..05afd61 100644 --- a/src/libs/Descript/openapi.yaml +++ b/src/libs/Descript/openapi.yaml @@ -335,6 +335,22 @@ paths: (when project_id is not provided). Existing folders along the path are reused; missing segments are created automatically. example: Clients/Acme + workspace_name: + type: string + description: | + Existing workspace to create the new project in, matched by name (case-insensitive). + Only applicable when creating a new project (when project_id is not provided). + + Reserved names: `Personal` (your private space) and `General` (the shared drive workspace). + Any other value is looked up as a custom workspace name; unknown names return 404. + + When omitted, `team_access` is passed through unchanged. + When set to `Personal`, `team_access` must be `none` or omitted. + When set to `General` or a custom workspace name, `team_access` must be + `edit`, `comment`, or `view`; omitting it defaults to `view`, and `none` is rejected. + + For custom workspaces, the caller must be a member of that workspace. + example: Marketing add_media: type: object description: |