public async Task <IActionResult> Post(string token) { var decrypted = TokenEncryption.Decrypt(token, DocumentsAPIConfiguration.APITokenKey); var callback = JsonConvert.DeserializeObject <CallbackModel>(decrypted); if (callback.FileIdentifier != null && Request.ContentLength.HasValue && Request.ContentLength.Value > 0 ) { SecurityContext.AssumeToken(callback.Token); var file = await FileStore.GetOneAsync(callback.FileIdentifier) ?? new FileModel(callback.FileIdentifier); file.Length = Request.ContentLength.Value; file.MimeType = Request.ContentType ?? "application/octet-stream"; file.Name = "callback"; file = await FileContentsService.UploadEntireFileAsync(file, Request.Body); } await QueueSender.SendAsync(callback.Queue, JsonConvert.SerializeObject(callback)); SuppressWrapper = true; return(Ok()); }