// PUT api/leads/{$prospectId}/
 // FEATURE: Modificar lead existente
 public HttpResponseMessage Put(string id, [FromBody] LeadInfo jsonObject)
 {
     if (Authentication.VerifyToken("?"))
     {
         try
         {
             if (LeadIntegration.Update(Authentication.GetRepresentative(null), HttpUtility.UrlDecode(id), jsonObject))
             {
                 return(Request.CreateResponse(HttpStatusCode.OK));
             }
             else
             {
                 return(Request.CreateResponse(HttpStatusCode.NotFound));
             }
         }
         catch (Exception ex)
         {
             return(Request.CreateResponse(HttpStatusCode.BadRequest, ex.Message));
         }
     }
     else
     {
         return(Request.CreateResponse(HttpStatusCode.Forbidden));
     }
 }
        // GET api/leads/{$prospectId}/
        // FEATURE: Visualizar lead
        public HttpResponseMessage Get(string id, string sid)
        {
            if (Authentication.VerifyToken("1"))
            {
                try
                {
                    var operationResult = LeadIntegration.View(Authentication.GetRepresentative("1"), HttpUtility.UrlDecode(id));

                    if (operationResult == null)
                    {
                        return(Request.CreateResponse(HttpStatusCode.NotFound));
                    }
                    else
                    {
                        return(Request.CreateResponse(HttpStatusCode.OK, operationResult));
                    }
                }
                catch (Exception ex)
                {
                    return(Request.CreateResponse(HttpStatusCode.BadRequest, ex.Message));
                }
            }
            else
            {
                return(Request.CreateResponse(HttpStatusCode.Forbidden));
            }
        }
        // POST api/leads/
        // FEATURE: Adicionar lead
        public HttpResponseMessage Post([FromBody] LeadInfo jsonObject)
        {
            if (Authentication.VerifyToken("?"))
            {
                try
                {
                    var operationResult = LeadIntegration.Insert(Authentication.GetRepresentative(null), jsonObject);

                    if (operationResult == null)
                    {
                        return(Request.CreateResponse(HttpStatusCode.NotFound));
                    }
                    else
                    {
                        return(Request.CreateResponse(HttpStatusCode.OK, operationResult));
                    }
                }
                catch (Exception ex)
                {
                    return(Request.CreateResponse(HttpStatusCode.BadRequest, ex.Message));
                }
            }
            else
            {
                return(Request.CreateResponse(HttpStatusCode.Forbidden));
            }
        }
 // GET api/leads/
 // FEATURE: Listar leads
 public HttpResponseMessage Get(string id)
 {
     if (Authentication.VerifyToken(id))
     {
         try
         {
             return(Request.CreateResponse(HttpStatusCode.OK, LeadIntegration.List(Authentication.GetRepresentative(id))));
         }
         catch (Exception ex)
         {
             return(Request.CreateResponse(HttpStatusCode.BadRequest, ex.Message));
         }
     }
     else
     {
         return(Request.CreateResponse(HttpStatusCode.Forbidden));
     }
 }