diff --git a/src/Stripe.net/Services/Files/FileCreateOptions.cs b/src/Stripe.net/Services/Files/FileCreateOptions.cs
index b1d0b98a7a..f614c927f2 100644
--- a/src/Stripe.net/Services/Files/FileCreateOptions.cs
+++ b/src/Stripe.net/Services/Files/FileCreateOptions.cs
@@ -12,6 +12,13 @@ public class FileCreateOptions : BaseOptions
[JsonProperty("file")]
public Stream File { get; set; }
+ ///
+ /// Optional parameters to automatically create a for the newly
+ /// created file.
+ ///
+ [JsonProperty("file_link_data")]
+ public FileLinkDataOptions FileLinkData { get; set; }
+
///
/// REQUIRED. The purpose of the uploaded file. Possible values are business_logo,
/// customer_signature, dispute_evidence, identity_document,
diff --git a/src/Stripe.net/Services/Files/FileLinkDataOptions.cs b/src/Stripe.net/Services/Files/FileLinkDataOptions.cs
new file mode 100644
index 0000000000..680ec90205
--- /dev/null
+++ b/src/Stripe.net/Services/Files/FileLinkDataOptions.cs
@@ -0,0 +1,31 @@
+namespace Stripe
+{
+ using System;
+ using System.Collections.Generic;
+ using Newtonsoft.Json;
+
+ public class FileLinkDataOptions : BaseOptions
+ {
+ ///
+ /// Set this to true to create a file link for the newly created file. Creating a
+ /// link is only possible when the file’s purpose is one of the following:
+ /// business_icon, business_logo, customer_signature,
+ /// dispute_evidence, pci_document, or tax_document_user_upload.
+ ///
+ [JsonProperty("create")]
+ public bool? Create { get; set; }
+
+ ///
+ /// A future timestamp after which the link will no longer be usable.
+ ///
+ [JsonProperty("expires_at")]
+ public DateTime? ExpiresAt { get; set; }
+
+ ///
+ /// Set of key-value pairs that you can attach to an object. This can be useful for storing
+ /// additional information about the object in a structured format.
+ ///
+ [JsonProperty("metadata")]
+ public Dictionary Metadata { get; set; }
+ }
+}
diff --git a/src/StripeTests/Services/Files/FileServiceTest.cs b/src/StripeTests/Services/Files/FileServiceTest.cs
index 7132e55d65..21c5a0f4ba 100644
--- a/src/StripeTests/Services/Files/FileServiceTest.cs
+++ b/src/StripeTests/Services/Files/FileServiceTest.cs
@@ -1,5 +1,6 @@
namespace StripeTests
{
+ using System.Collections.Generic;
using System.Linq;
using System.Net.Http;
using System.Reflection;
@@ -25,6 +26,14 @@ public FileServiceTest(MockHttpClientFixture mockHttpClientFixture)
this.createOptions = new FileCreateOptions
{
File = typeof(FileServiceTest).GetTypeInfo().Assembly.GetManifestResourceStream(FileName),
+ FileLinkData = new FileLinkDataOptions
+ {
+ Create = true,
+ Metadata = new Dictionary
+ {
+ { "key", "value" },
+ },
+ },
Purpose = FilePurpose.BusinessLogo,
};