public async Task<GetUploadUrlResponse> GetUploadUrlAsync(GetUploadUrlRequest request)
 {
     var bytes = await HttpOperation
         .WithUrl(Urls.For.GetUploadUrl(request.MimeType, request.FileName, request.ExpiryInMinutes))
         .WithAppacitiveSession(request.SessionToken)
         .WithEnvironment(request.Environment)
         .WithUserToken(request.UserToken)
         .GetAsync();
     var response = GetUploadUrlResponse.Parse(bytes);
     return response;
 }
 public async Task<FileUrl> GetUploadUrlAsync(int expiryInMinutes = 5)
 {
     var request = new GetUploadUrlRequest
     {
         MimeType = this.MimeType,
         FileName = this.FileName,
         ExpiryInMinutes = expiryInMinutes
     };
     var response = await request.ExecuteAsync();
     return new FileUrl(response.Filename, response.Url);
 }
 public async Task<FileUrl> GetUploadUrlAsync(int expiryInMinutes = 5)
 {
     var request = new GetUploadUrlRequest
     {
         MimeType = this.MimeType,
         FileName = this.FileName,
         ExpiryInMinutes = expiryInMinutes
     };
     IFileService fileService = ObjectFactory.Build<IFileService>();
     var response = await fileService.GetUploadUrlAsync(request);
     return new FileUrl(response.Filename, response.Url);
 }