A API ChaveAcessoEmail é utilizada para se obter a Chave de Acesso através de uma ApiKey de um usuário com acesso ao NimbusERP/DashboardERP através do E-mail.
O usuário que realizar acesso ao NimbusERP ou DashboardERP através do E-mail, no menu inicial ele consegue visualizar sua ApiKey, essa ApiKey é utilizada para realizar a integração com nossas aplicações.
Realizando a chamada na API ChaveAcessoEmail passando como parâmetro a ApiKey do usuário e qual aplicativo deseja acessar ERP/DASHBOARD.
No retorno, se obtêm uma chave de acesso sendo única e exclusiva para aquele acesso. Se por ventura o link gerado venha a ser compartilhado, o acesso não funcionará, será preciso realizar uma nova chamada a API ChaveAcessoEmail.
Através deste Link é possível se obter a chamada GET a API -> Api-ChaveAcessoEmail
O Objeto de retorno é a classe ChaveAcessoEmail com uma propriedade string, conforme script abaixo:
public class ChaveAcessoEmail { public string ChaveAcesso { get; set; } }
Exemplo em C# da chamada a Api ChaveAcessoEmail:
HttpClient client = new HttpClient(); client.BaseAddress = new Uri("http://40.117.98.55/apiWW/"); client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json")); //Chamando a api pela url System.Net.Http.HttpResponseMessage response = client.GetAsync("api/ChaveAcessoEmail?apiKey={apiKeyUsuario}&aplicativo={ERP/Dashboard}").Result; //Verifica se o retorno da chamada foi um sucesso if (response.IsSuccessStatusCode) { //Pegando os dados do Rest e armazenando na variável string retorno = response.Content.ReadAsStringAsync().Result; //use JavaScriptSerializer para Serializar o Retorno na Classe ChaveAcessoEmail JavaScriptSerializer JSserializer = new JavaScriptSerializer(); ChaveAcessoEmail chaveAcessoEmail = JSserializer.Deserialize<ChaveAcessoEmail>(retorno); //Redireciona para o aplicativo ERP ou Dashboard [de acordo com o parametro [aplicativo] Response.Redirect(chaveAcessoEmail.ChaveAcesso); } //Se der erro na chamada, mostra o status do código de erro. else { Response.Write(response.StatusCode.ToString() + " - " + response.ReasonPhrase); }