protected override void Execute(CodeActivityContext context) { var client = new HttpClient(); client.DefaultRequestHeaders.Add("Authorization", $"Bearer {Token.Get(context)}"); client.Timeout = TimeSpan.FromMinutes(10); Dictionary <string, string> parameters = new Dictionary <string, string>(); parameters.Add("type", "RIB"); var form = new MultipartFormDataContent(); var fileContent = new ByteArrayContent(File.ReadAllBytes(FilePath.Get(context))); fileContent.Headers.ContentType = MediaTypeHeaderValue.Parse("multipart/form-data"); form.Add(fileContent, "file", Path.GetFileName(FilePath.Get(context))); form.Add(new StringContent("RIB"), "type"); var url = $"{BaseUrl.Get(context)}/api/analyze"; HttpResponseMessage response = client.PostAsync(url, form).Result; response.EnsureSuccessStatusCode(); // return URI of the created resource. var result = response.Content.ReadAsStringAsync().Result; JObject obj = JObject.Parse(result); JArray values = (JArray)obj["results"][0]["result"]; foreach (JObject val in values) { var code = (string)val["code"]; var value = (string)val["value"]; if (code == "BIC") { Bic.Set(context, value); } else if (code == "IBAN") { Iban.Set(context, value); } else if (code == "name") { Name.Set(context, value); } } }