public async Task <IActionResult> PostJson(UploadRequest uploadRequest, CancellationToken ct = default)
        {
            var commands = uploadRequest.AsDownloadUriQueries(e => logger.LogError("Fail to parse URI: {0}", e)).ToArray();
            var files    = uploadRequest.AsUploads(contentTypeTestUtility);

            if (!commands.Any())
            {
                return(await UploadCoreAsync(files.ToArray(), ct));
            }

            var newFileTasks = commands.Select(x => SendAsync(x, ct)).ToArray();
            var newFiles     = await Task.WhenAll(newFileTasks);

            files = files.Concat(newFiles);

            return(await UploadCoreAsync(files.ToArray(), ct));
        }