From 68343201cf9a3b83a4fc27d4732741b81fbe7eca Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Mon, 27 Apr 2026 21:52:31 +0000 Subject: [PATCH] feat: Updated OpenAPI spec --- ...Descript.ApiEndpointsClient.ImportProjectMedia.g.cs | 1 - .../Descript.ApiEndpointsClient.PublishJob.g.cs | 10 ++++++++++ ...escript.IApiEndpointsClient.ImportProjectMedia.g.cs | 1 - .../Descript.IApiEndpointsClient.PublishJob.g.cs | 10 ++++++++++ .../Descript.Models.ImportProjectMediaRequest.g.cs | 2 -- .../Descript/Generated/autosdk.generated-examples.json | 2 +- src/libs/Descript/openapi.yaml | 9 +++++++-- 7 files changed, 28 insertions(+), 7 deletions(-) diff --git a/src/libs/Descript/Generated/Descript.ApiEndpointsClient.ImportProjectMedia.g.cs b/src/libs/Descript/Generated/Descript.ApiEndpointsClient.ImportProjectMedia.g.cs index d73d605..22f8595 100644 --- a/src/libs/Descript/Generated/Descript.ApiEndpointsClient.ImportProjectMedia.g.cs +++ b/src/libs/Descript/Generated/Descript.ApiEndpointsClient.ImportProjectMedia.g.cs @@ -656,7 +656,6 @@ partial void ProcessImportProjectMediaResponseContent( /// The payload will match the format returned by [GET /jobs/{job_id}](#operation/getJob). /// /// - /// **[Work in progress]** Importing into an existing project is not yet supported. Currently, a new project is always created.
/// Existing project ID to import media into. If not provided, a new project will be created.
/// When importing into an existing project, media filenames must not conflict with existing files.
/// Example: 9f36ee32-5a2c-47e7-b1a3-94991d3e3ddb diff --git a/src/libs/Descript/Generated/Descript.ApiEndpointsClient.PublishJob.g.cs b/src/libs/Descript/Generated/Descript.ApiEndpointsClient.PublishJob.g.cs index 40a9d7a..bede848 100644 --- a/src/libs/Descript/Generated/Descript.ApiEndpointsClient.PublishJob.g.cs +++ b/src/libs/Descript/Generated/Descript.ApiEndpointsClient.PublishJob.g.cs @@ -49,6 +49,11 @@ partial void ProcessPublishJobResponseContent( /// - `share_url`: a public URL that can be used to view the published content on Descript's share site.
/// - `download_url`: a time-limited signed URL to download the exported media file directly,
/// along with `download_url_expires_at` indicating when the link expires.
+ /// ### Republishing
+ /// Publishing the same composition a second time automatically reuses the previous share URL,
+ /// overwriting its content — so bookmarks and links handed out for the first publish keep working.
+ /// Republish matching is keyed on `(project_id, composition_id, media_type)`, so a Video publish
+ /// and an Audio publish of the same composition produce two separate share URLs.
/// ### Async Operations
/// Publish jobs run in the background and return a `job_id`. Monitor progress via the [GET /jobs/{job_id}](#operation/getJob) endpoint,
/// which returns the `share_url`, `download_url`, and `download_url_expires_at` fields once the job finishes.
@@ -591,6 +596,11 @@ partial void ProcessPublishJobResponseContent( /// - `share_url`: a public URL that can be used to view the published content on Descript's share site.
/// - `download_url`: a time-limited signed URL to download the exported media file directly,
/// along with `download_url_expires_at` indicating when the link expires.
+ /// ### Republishing
+ /// Publishing the same composition a second time automatically reuses the previous share URL,
+ /// overwriting its content — so bookmarks and links handed out for the first publish keep working.
+ /// Republish matching is keyed on `(project_id, composition_id, media_type)`, so a Video publish
+ /// and an Audio publish of the same composition produce two separate share URLs.
/// ### Async Operations
/// Publish jobs run in the background and return a `job_id`. Monitor progress via the [GET /jobs/{job_id}](#operation/getJob) endpoint,
/// which returns the `share_url`, `download_url`, and `download_url_expires_at` fields once the job finishes.
diff --git a/src/libs/Descript/Generated/Descript.IApiEndpointsClient.ImportProjectMedia.g.cs b/src/libs/Descript/Generated/Descript.IApiEndpointsClient.ImportProjectMedia.g.cs index c063b71..5ec5b86 100644 --- a/src/libs/Descript/Generated/Descript.IApiEndpointsClient.ImportProjectMedia.g.cs +++ b/src/libs/Descript/Generated/Descript.IApiEndpointsClient.ImportProjectMedia.g.cs @@ -58,7 +58,6 @@ public partial interface IApiEndpointsClient /// The payload will match the format returned by [GET /jobs/{job_id}](#operation/getJob). /// /// - /// **[Work in progress]** Importing into an existing project is not yet supported. Currently, a new project is always created.
/// Existing project ID to import media into. If not provided, a new project will be created.
/// When importing into an existing project, media filenames must not conflict with existing files.
/// Example: 9f36ee32-5a2c-47e7-b1a3-94991d3e3ddb diff --git a/src/libs/Descript/Generated/Descript.IApiEndpointsClient.PublishJob.g.cs b/src/libs/Descript/Generated/Descript.IApiEndpointsClient.PublishJob.g.cs index a9f4795..d7f87d5 100644 --- a/src/libs/Descript/Generated/Descript.IApiEndpointsClient.PublishJob.g.cs +++ b/src/libs/Descript/Generated/Descript.IApiEndpointsClient.PublishJob.g.cs @@ -12,6 +12,11 @@ public partial interface IApiEndpointsClient /// - `share_url`: a public URL that can be used to view the published content on Descript's share site.
/// - `download_url`: a time-limited signed URL to download the exported media file directly,
/// along with `download_url_expires_at` indicating when the link expires.
+ /// ### Republishing
+ /// Publishing the same composition a second time automatically reuses the previous share URL,
+ /// overwriting its content — so bookmarks and links handed out for the first publish keep working.
+ /// Republish matching is keyed on `(project_id, composition_id, media_type)`, so a Video publish
+ /// and an Audio publish of the same composition produce two separate share URLs.
/// ### Async Operations
/// Publish jobs run in the background and return a `job_id`. Monitor progress via the [GET /jobs/{job_id}](#operation/getJob) endpoint,
/// which returns the `share_url`, `download_url`, and `download_url_expires_at` fields once the job finishes.
@@ -36,6 +41,11 @@ public partial interface IApiEndpointsClient /// - `share_url`: a public URL that can be used to view the published content on Descript's share site.
/// - `download_url`: a time-limited signed URL to download the exported media file directly,
/// along with `download_url_expires_at` indicating when the link expires.
+ /// ### Republishing
+ /// Publishing the same composition a second time automatically reuses the previous share URL,
+ /// overwriting its content — so bookmarks and links handed out for the first publish keep working.
+ /// Republish matching is keyed on `(project_id, composition_id, media_type)`, so a Video publish
+ /// and an Audio publish of the same composition produce two separate share URLs.
/// ### Async Operations
/// Publish jobs run in the background and return a `job_id`. Monitor progress via the [GET /jobs/{job_id}](#operation/getJob) endpoint,
/// which returns the `share_url`, `download_url`, and `download_url_expires_at` fields once the job finishes.
diff --git a/src/libs/Descript/Generated/Descript.Models.ImportProjectMediaRequest.g.cs b/src/libs/Descript/Generated/Descript.Models.ImportProjectMediaRequest.g.cs index c4645b8..c0ebb93 100644 --- a/src/libs/Descript/Generated/Descript.Models.ImportProjectMediaRequest.g.cs +++ b/src/libs/Descript/Generated/Descript.Models.ImportProjectMediaRequest.g.cs @@ -14,7 +14,6 @@ namespace Descript public sealed partial class ImportProjectMediaRequest { /// - /// **[Work in progress]** Importing into an existing project is not yet supported. Currently, a new project is always created.
/// Existing project ID to import media into. If not provided, a new project will be created.
/// When importing into an existing project, media filenames must not conflict with existing files.
/// Example: 9f36ee32-5a2c-47e7-b1a3-94991d3e3ddb @@ -92,7 +91,6 @@ public sealed partial class ImportProjectMediaRequest /// Initializes a new instance of the class. ///
/// - /// **[Work in progress]** Importing into an existing project is not yet supported. Currently, a new project is always created.
/// Existing project ID to import media into. If not provided, a new project will be created.
/// When importing into an existing project, media filenames must not conflict with existing files.
/// Example: 9f36ee32-5a2c-47e7-b1a3-94991d3e3ddb diff --git a/src/libs/Descript/Generated/autosdk.generated-examples.json b/src/libs/Descript/Generated/autosdk.generated-examples.json index 8d9cc32..57a8915 100644 --- a/src/libs/Descript/Generated/autosdk.generated-examples.json +++ b/src/libs/Descript/Generated/autosdk.generated-examples.json @@ -92,7 +92,7 @@ "Order": 9, "Title": "Publish project media", "Slug": "publishjob", - "Description": "Publish a project composition to create a shareable link and download the exported file.\n\nPublishes a specific composition from a project, rendering the output as video or audio\nat the specified resolution. When the job completes successfully the result contains both:\n\n- \u0060share_url\u0060: a public URL that can be used to view the published content on Descript\u0027s share site.\n- \u0060download_url\u0060: a time-limited signed URL to download the exported media file directly,\n along with \u0060download_url_expires_at\u0060 indicating when the link expires.\n\n### Async Operations\n\nPublish jobs run in the background and return a \u0060job_id\u0060. Monitor progress via the [GET /jobs/{job_id}](#operation/getJob) endpoint,\nwhich returns the \u0060share_url\u0060, \u0060download_url\u0060, and \u0060download_url_expires_at\u0060 fields once the job finishes.\n\n### Dynamic webhook\n\nIf \u0060callback_url\u0060 is provided, Descript will POST the job status to that URL when the job completes or fails.\nThe payload will match the format returned by [GET /jobs/{job_id}](#operation/getJob).", + "Description": "Publish a project composition to create a shareable link and download the exported file.\n\nPublishes a specific composition from a project, rendering the output as video or audio\nat the specified resolution. When the job completes successfully the result contains both:\n\n- \u0060share_url\u0060: a public URL that can be used to view the published content on Descript\u0027s share site.\n- \u0060download_url\u0060: a time-limited signed URL to download the exported media file directly,\n along with \u0060download_url_expires_at\u0060 indicating when the link expires.\n\n### Republishing\n\nPublishing the same composition a second time automatically reuses the previous share URL,\noverwriting its content \u2014 so bookmarks and links handed out for the first publish keep working.\nRepublish matching is keyed on \u0060(project_id, composition_id, media_type)\u0060, so a Video publish\nand an Audio publish of the same composition produce two separate share URLs.\n\n### Async Operations\n\nPublish jobs run in the background and return a \u0060job_id\u0060. Monitor progress via the [GET /jobs/{job_id}](#operation/getJob) endpoint,\nwhich returns the \u0060share_url\u0060, \u0060download_url\u0060, and \u0060download_url_expires_at\u0060 fields once the job finishes.\n\n### Dynamic webhook\n\nIf \u0060callback_url\u0060 is provided, Descript will POST the job status to that URL when the job completes or fails.\nThe payload will match the format returned by [GET /jobs/{job_id}](#operation/getJob).", "Language": "csharp", "Code": "using var client = new DescriptClient(apiKey);\n\nvar request = global::System.Text.Json.JsonSerializer.Deserialize\u003Cglobal::Descript.PublishJobRequest\u003E(\n @\u0022{\n \u0022\u0022project_id\u0022\u0022: \u0022\u00229f36ee32-5a2c-47e7-b1a3-94991d3e3ddb\u0022\u0022,\n \u0022\u0022composition_id\u0022\u0022: \u0022\u002239677a40-1c43-4c36-8449-46cfbc4de2b5\u0022\u0022,\n \u0022\u0022media_type\u0022\u0022: \u0022\u0022Audio\u0022\u0022\n}\u0022)!;\n\nvar response = await client.ApiEndpoints.PublishJobAsync(\n request: request\n);", "Format": "sdk", diff --git a/src/libs/Descript/openapi.yaml b/src/libs/Descript/openapi.yaml index 55954c6..d2734c8 100644 --- a/src/libs/Descript/openapi.yaml +++ b/src/libs/Descript/openapi.yaml @@ -304,8 +304,6 @@ paths: type: string format: uuid description: | - **[Work in progress]** Importing into an existing project is not yet supported. Currently, a new project is always created. - Existing project ID to import media into. If not provided, a new project will be created. When importing into an existing project, media filenames must not conflict with existing files. example: 9f36ee32-5a2c-47e7-b1a3-94991d3e3ddb @@ -938,6 +936,13 @@ paths: - `download_url`: a time-limited signed URL to download the exported media file directly, along with `download_url_expires_at` indicating when the link expires. + ### Republishing + + Publishing the same composition a second time automatically reuses the previous share URL, + overwriting its content — so bookmarks and links handed out for the first publish keep working. + Republish matching is keyed on `(project_id, composition_id, media_type)`, so a Video publish + and an Audio publish of the same composition produce two separate share URLs. + ### Async Operations Publish jobs run in the background and return a `job_id`. Monitor progress via the [GET /jobs/{job_id}](#operation/getJob) endpoint,