/// <summary>
        /// When an Order is complete, all the data returnerd by each of the search components is collected into a comprehensive Report. That report is available as a base64 encoded string
        /// representing a complete HTML page, and the path to that URI is exposed in the Reports array on the Order resource. The report URI (path) looks like this "/report/572d0904f1b9a4602bc83a09"
        /// </summary>
        /// <param name="reportPath"></param>
        /// <returns></returns>
        public static Task <Report> GetReportByPathAsync(string reportPath)
        {
            if (reportPath.StartsWith("/"))
            {
                reportPath = reportPath.Remove(0);
            }

            return(AccurateCrudOperations.GetAsync <Report>(reportPath));
        }
 /// <summary>
 /// Check on the status of an Order, and all the searches within that order. Some searches require more Candidate information in order to run.
 /// If any search contained in the Order requires more information, the “candidateInfoComplete” filed in the Order will remain set to “false”, the Order will not run, and the Order status will remain “incomplete”.
 /// Check the status of the Order to look for status “incomplete”, then refer to the reference to determine what additional Candidate info is required.
 /// If the Order workflow was “INTERACTIVE”, this may mean that the Candidate has not entered the required information in the secure web data entry form.
 /// </summary>
 /// <param name="orderId"></param>
 /// <returns></returns>
 public static Task <Order> GetOrderAsync(string orderId)
 {
     return(AccurateCrudOperations.GetAsync <Order>("order/" + orderId));
 }
 public static Task <Candidate> GetCandidatesAsync()
 {
     return(AccurateCrudOperations.GetAsync <Candidate>("candidate"));
 }
 public static Task <Candidate> GetCandidateAsync(string candidateId)
 {
     return(AccurateCrudOperations.GetAsync <Candidate>("candidate/" + candidateId));
 }
 /// <summary>
 /// The Alive resource is a simple 'ping’ API call to connect to the platform for testing purposes. Alive can be called without basic auth.
 /// </summary>
 /// <returns></returns>
 public static Task <bool> AliveAsync()
 {
     return(AccurateCrudOperations.GetAsync <bool>("alive"));
 }
 public static Task <Report> GetReportByIdAsync(string reportId)
 {
     return(AccurateCrudOperations.GetAsync <Report>("report/" + reportId));
 }