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 @@ -23,8 +23,7 @@ public sealed partial class GoogleDriveDestination
/// Pass the folder ID and options to configure how assets are stored in Google Drive.
/// </summary>
[global::System.Text.Json.Serialization.JsonPropertyName("options")]
[global::System.Text.Json.Serialization.JsonRequired]
public required global::Shotstack.GoogleDriveDestinationOptions Options { get; set; }
public global::Shotstack.GoogleDriveDestinationOptions? Options { get; set; }

/// <summary>
/// Additional properties that are not explicitly defined in the schema
Expand All @@ -48,10 +47,10 @@ public sealed partial class GoogleDriveDestination
#endif
public GoogleDriveDestination(
string provider,
global::Shotstack.GoogleDriveDestinationOptions options)
global::Shotstack.GoogleDriveDestinationOptions? options)
{
this.Provider = provider ?? throw new global::System.ArgumentNullException(nameof(provider));
this.Options = options ?? throw new global::System.ArgumentNullException(nameof(options));
this.Options = options;
}

/// <summary>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,12 @@ namespace Shotstack
public sealed partial class GoogleDriveDestinationOptions
{
/// <summary>
/// The Google Drive folder ID where asset will be stored. The folder ID is required and can be retrieved from the URL when logged in to Google Drive, e.g. &lt;a href="#"&gt;https://drive.google.com/drive/u/0/folders/1r-eTY6OLO8tzQRKwMyq-fIrQ_7AJEI6A&lt;/a&gt;.<br/>
/// The Google Drive folder ID where the asset will be stored. If omitted, the asset is saved to the root of My Drive. The folder ID can be retrieved from the URL when logged in to Google Drive, e.g. &lt;a href="#"&gt;https://drive.google.com/drive/u/0/folders/1r-eTY6OLO8tzQRKwMyq-fIrQ_7AJEI6A&lt;/a&gt;.<br/>
/// Example: 1r-eTY6OLO8tzQRKwMyq-fIrQ_7AJEI6A
/// </summary>
/// <example>1r-eTY6OLO8tzQRKwMyq-fIrQ_7AJEI6A</example>
[global::System.Text.Json.Serialization.JsonPropertyName("folderId")]
[global::System.Text.Json.Serialization.JsonRequired]
public required string FolderId { get; set; }
public string? FolderId { get; set; }

/// <summary>
/// Use your own filename instead of the default filenames generated by Shotstack. Note: omit the file extension as this will be appended depending on the output format. Also `-poster.jpg` and `-thumb.jpg` will be appended for poster and thumbnail images.<br/>
Expand All @@ -35,7 +34,7 @@ public sealed partial class GoogleDriveDestinationOptions
/// Initializes a new instance of the <see cref="GoogleDriveDestinationOptions" /> class.
/// </summary>
/// <param name="folderId">
/// The Google Drive folder ID where asset will be stored. The folder ID is required and can be retrieved from the URL when logged in to Google Drive, e.g. &lt;a href="#"&gt;https://drive.google.com/drive/u/0/folders/1r-eTY6OLO8tzQRKwMyq-fIrQ_7AJEI6A&lt;/a&gt;.<br/>
/// The Google Drive folder ID where the asset will be stored. If omitted, the asset is saved to the root of My Drive. The folder ID can be retrieved from the URL when logged in to Google Drive, e.g. &lt;a href="#"&gt;https://drive.google.com/drive/u/0/folders/1r-eTY6OLO8tzQRKwMyq-fIrQ_7AJEI6A&lt;/a&gt;.<br/>
/// Example: 1r-eTY6OLO8tzQRKwMyq-fIrQ_7AJEI6A
/// </param>
/// <param name="filename">
Expand All @@ -46,10 +45,10 @@ public sealed partial class GoogleDriveDestinationOptions
[global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers]
#endif
public GoogleDriveDestinationOptions(
string folderId,
string? folderId,
string? filename)
{
this.FolderId = folderId ?? throw new global::System.ArgumentNullException(nameof(folderId));
this.FolderId = folderId;
this.Filename = filename;
}

Expand Down
12 changes: 4 additions & 8 deletions src/libs/Shotstack/openapi.json
Original file line number Diff line number Diff line change
Expand Up @@ -3806,21 +3806,20 @@
"example": "google-drive"
},
"options": {
"description": "Additional Google Drive configuration and features.",
"description": "Additional Google Drive configuration and features. If omitted, files are saved to the root of My Drive using the default Shotstack filename.",
"$ref": "#/components/schemas/GoogleDriveDestinationOptions"
}
},
"type": "object",
"required": [
"provider",
"options"
"provider"
]
},
"GoogleDriveDestinationOptions": {
"description": "Pass the folder ID and options to configure how assets are stored in Google Drive.",
"properties": {
"folderId": {
"description": "The Google Drive folder ID where asset will be stored. The folder ID is required and can be retrieved from the URL when logged in to Google Drive, e.g. <a href=\"#\">https://drive.google.com/drive/u/0/folders/1r-eTY6OLO8tzQRKwMyq-fIrQ_7AJEI6A</a>.",
"description": "The Google Drive folder ID where the asset will be stored. If omitted, the asset is saved to the root of My Drive. The folder ID can be retrieved from the URL when logged in to Google Drive, e.g. <a href=\"#\">https://drive.google.com/drive/u/0/folders/1r-eTY6OLO8tzQRKwMyq-fIrQ_7AJEI6A</a>.",
"type": "string",
"example": "1r-eTY6OLO8tzQRKwMyq-fIrQ_7AJEI6A"
},
Expand All @@ -3829,10 +3828,7 @@
"type": "string",
"example": "my-file"
}
},
"required": [
"folderId"
]
}
},
"VimeoDestination": {
"description": "Send videos to [Vimeo](https://shotstack.io/docs/guide/serving-assets/destinations/vimeo/) video hosting and streaming service. Vimeo credentials are required and added via the [dashboard](https://dashboard.shotstack.io/integrations/vimeo), not in the request.",
Expand Down