/
restricted-pdf.cs
33 lines (25 loc) · 1.43 KB
/
restricted-pdf.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
using System.Text;
using (var httpClient = new HttpClient { BaseAddress = new Uri("https://api.pdfrest.com") })
{
using (var request = new HttpRequestMessage(HttpMethod.Post, "restricted-pdf"))
{
request.Headers.TryAddWithoutValidation("Api-Key", "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx");
request.Headers.Accept.Add(new("application/json"));
var multipartContent = new MultipartFormDataContent();
var byteArray = File.ReadAllBytes("/path/to/file");
var byteAryContent = new ByteArrayContent(byteArray);
multipartContent.Add(byteAryContent, "file", "file_name");
byteAryContent.Headers.TryAddWithoutValidation("Content-Type", "application/pdf");
var byteArrayOption = new ByteArrayContent(Encoding.UTF8.GetBytes("password"));
multipartContent.Add(byteArrayOption, "new_permissions_password");
var byteArrayOption2 = new ByteArrayContent(Encoding.UTF8.GetBytes("copy_content"));
multipartContent.Add(byteArrayOption2, "restrictions[]");
var byteArrayOption3 = new ByteArrayContent(Encoding.UTF8.GetBytes("edit_content"));
multipartContent.Add(byteArrayOption3, "restrictions[]");
request.Content = multipartContent;
var response = await httpClient.SendAsync(request);
var apiResult = await response.Content.ReadAsStringAsync();
Console.WriteLine("API response received.");
Console.WriteLine(apiResult);
}
}