Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,9 @@ internal static partial class ApiEndpointsPublishJobCommandApiCommand
private static Option<string?> CompositionId { get; } = new(
name: @"--composition-id")
{
Description = @"Composition to publish. If omitted, the first composition in the project is used.
Description = @"Composition to publish. If omitted, the first composition that has content is
used, skipping the empty placeholder that leads projects created by an agent or
import job.

Accepts any of the following formats:
- A full composition UUID (e.g. `39677a40-1c43-4c36-8449-46cfbc4de2b5`)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -369,7 +369,7 @@ partial void ProcessPublishJobResponseContent(
retryReason: global::System.String.Empty,
cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false);
}
// Invalid input: - Malformed request body - Invalid project_id or composition_id format - Invalid media_type or resolution value
// Invalid input: - Malformed request body - Invalid project_id or composition_id format - Invalid media_type or resolution value - The target composition is empty: either the requested `composition_id` names an empty composition, or `composition_id` was omitted and every composition in the project is empty. The message names any compositions that do have content, so you can retry with one of those.
if ((int)__response.StatusCode == 400)
{
string? __content_400 = null;
Expand Down Expand Up @@ -712,7 +712,9 @@ partial void ProcessPublishJobResponseContent(
/// Example: 9f36ee32-5a2c-47e7-b1a3-94991d3e3ddb
/// </param>
/// <param name="compositionId">
/// Composition to publish. If omitted, the first composition in the project is used.<br/>
/// Composition to publish. If omitted, the first composition that has content is<br/>
/// used, skipping the empty placeholder that leads projects created by an agent or<br/>
/// import job.<br/>
/// Accepts any of the following formats:<br/>
/// - A full composition UUID (e.g. `39677a40-1c43-4c36-8449-46cfbc4de2b5`)<br/>
/// - A 5-character short ID from a Descript URL (e.g. `39677`)<br/>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,9 @@ public partial interface IApiEndpointsClient
/// Example: 9f36ee32-5a2c-47e7-b1a3-94991d3e3ddb
/// </param>
/// <param name="compositionId">
/// Composition to publish. If omitted, the first composition in the project is used.<br/>
/// Composition to publish. If omitted, the first composition that has content is<br/>
/// used, skipping the empty placeholder that leads projects created by an agent or<br/>
/// import job.<br/>
/// Accepts any of the following formats:<br/>
/// - A full composition UUID (e.g. `39677a40-1c43-4c36-8449-46cfbc4de2b5`)<br/>
/// - A 5-character short ID from a Descript URL (e.g. `39677`)<br/>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,9 @@ public sealed partial class PublishJobRequest
public required global::System.Guid ProjectId { get; set; }

/// <summary>
/// Composition to publish. If omitted, the first composition in the project is used.<br/>
/// Composition to publish. If omitted, the first composition that has content is<br/>
/// used, skipping the empty placeholder that leads projects created by an agent or<br/>
/// import job.<br/>
/// Accepts any of the following formats:<br/>
/// - A full composition UUID (e.g. `39677a40-1c43-4c36-8449-46cfbc4de2b5`)<br/>
/// - A 5-character short ID from a Descript URL (e.g. `39677`)<br/>
Expand Down Expand Up @@ -81,7 +83,9 @@ public sealed partial class PublishJobRequest
/// Example: 9f36ee32-5a2c-47e7-b1a3-94991d3e3ddb
/// </param>
/// <param name="compositionId">
/// Composition to publish. If omitted, the first composition in the project is used.<br/>
/// Composition to publish. If omitted, the first composition that has content is<br/>
/// used, skipping the empty placeholder that leads projects created by an agent or<br/>
/// import job.<br/>
/// Accepts any of the following formats:<br/>
/// - A full composition UUID (e.g. `39677a40-1c43-4c36-8449-46cfbc4de2b5`)<br/>
/// - A 5-character short ID from a Descript URL (e.g. `39677`)<br/>
Expand Down
13 changes: 12 additions & 1 deletion src/libs/Descript/openapi.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -1169,7 +1169,9 @@ paths:
composition_id:
type: string
description: |
Composition to publish. If omitted, the first composition in the project is used.
Composition to publish. If omitted, the first composition that has content is
used, skipping the empty placeholder that leads projects created by an agent or
import job.

Accepts any of the following formats:
- A full composition UUID (e.g. `39677a40-1c43-4c36-8449-46cfbc4de2b5`)
Expand Down Expand Up @@ -1288,6 +1290,10 @@ paths:
- Malformed request body
- Invalid project_id or composition_id format
- Invalid media_type or resolution value
- The target composition is empty: either the requested `composition_id` names an
empty composition, or `composition_id` was omitted and every composition in the
project is empty. The message names any compositions that do have content, so
you can retry with one of those.
content:
application/json:
schema:
Expand All @@ -1303,6 +1309,11 @@ paths:
value:
error: invalid_input
message: '"resolution" must be one of [480p, 720p, 1080p, 1440p, 4K]'
empty_composition:
summary: Target composition has no content
value:
error: invalid_input
message: 'Composition 39677a40-1c43-4c36-8449-46cfbc4de2b5 ("Untitled") is empty and cannot be published. Retry with composition_id set to a composition that has content: 5b507b2b-e3ef-4146-a0d0-6741df516973.'
'401':
description: Unauthorized - missing or invalid authentication token
content:
Expand Down
Loading