protected override void Execute(CodeActivityContext context)
        {
            //var inputData = InputCreditData.Get(context);

            List <string> listApprovedCreditStatus = new List <string>
            {
                "Approved", "Disbursed", "Disbursing", "Disbursing&Repaying", "Effective", "Fully Disbursed", "Fully Repaid", "Repaid", "Repaying", "Signed"
            };

            WebUtility webUtility   = new WebUtility(ApiEndpoint);
            var        scoreRequest = new
            {
                Inputs = new Dictionary <string, List <Dictionary <string, string> > >()
                {
                    {
                        "input1",
                        new List <Dictionary <string, string> >()
                        {
                            new Dictionary <string, string>()
                            {
                                {
                                    "Region", Region.ToString().Replace("_", " ")
                                },
                                {
                                    "Country", Country.Get(context)
                                },
                                {
                                    "Borrower", Borrower.Get(context)
                                },
                                {
                                    "Project Name", ProjectName.Get(context)
                                },
                                {
                                    "Original Principal Amount", PrincipalAmount.Get(context).ToString()
                                },
                                {
                                    "Credit Status", ""
                                }
                            }
                        }
                    },
                },
                GlobalParameters = new Dictionary <string, string>()
                {
                }
            };

            try
            {
                string  jsonStringInput = JsonConvert.SerializeObject(scoreRequest);
                var     responseOutput  = Task.Run(async() => await webUtility.PostAsync(bodyAsJsonString: jsonStringInput, token: ApiKey));
                JObject jsonResponse    = JObject.Parse(responseOutput.Result);

                string predictedStatus = jsonResponse.SelectToken("$..output1[0]")["Scored Labels"].ToString();
                string grantStatus     = "";
                if (listApprovedCreditStatus.Contains(predictedStatus))
                {
                    grantStatus = GrantStatus.Approved.ToString();
                }
                else
                {
                    grantStatus = GrantStatus.Rejected.ToString();
                }

                Outcome.Set(context, grantStatus);
            }
            catch (Exception ex)
            {
                throw new System.Exception($"Actual Exception: {ex.InnerException}\nPossible cause: {apiHostingPlanPrompt}");
            }
        }