O que é uma API afinal?
- API significa Interface de Programação de Aplicações. É um mecanismo que permite que duas ou mais aplicações diferentes e não relacionadas "conversem" entre si compartilhando dados.
- A API do CommunityWFM pertence à categoria de APIs conhecidas como "RESTful".
- Uma API RESTful permite que dois sistemas compartilhem dados por meio de um serviço web acessível, evitando assim a necessidade de ambos os sistemas estarem diretamente conectados. Isso permite uma conectividade segura e fácil entre qualquer combinação de sistemas baseados em premissas e sistemas baseados em nuvem, já que os serviços web são comuns e presentes em ambos os ambientes.
Como é uma API?
Um "Serviço Web" é simplesmente uma URL que reside no servidor de aplicação web de um sistema e é acessível via internet regular ou um método de conexão segura, como uma VPN. No caso do CommunityWFM, este serviço web é uma parte incluída do servidor IIS do ambiente.
Como a API funciona?
Primeiro, a interface autentica-se com o Serviço Web da API do CommunityWFM com uma combinação segura de nome de usuário/senha para evitar acesso não autorizado aos sistemas do CommunityWFM.
O uso da API é feito por meio de uma combinação de envio de dados para o CommunityWFM e extração de dados do CommunityWFM.
- “GET” = Extração
- “POST” = Envio
A sintaxe para os comandos “GET” e “POST” pode ser específica para os dados em questão e está totalmente descrita na documentação da API do CommunityWFM.
Exemplos de "GET"
Se eu quiser recuperar uma lista de agentes que estão atualmente logados via CommunityWFM, eu enviaria o seguinte comando “GET” para o Serviço Web da API do CommunityWFM:
”GET api/AgentLogonReport?sortOption={sortOption}&showLoggedOnOnly={showLoggedOnOnly}&nameFilter={nameFilter}&userId={userId}”
Se eu quiser recuperar informações resumidas sobre a redução considerada em uma previsão, eu enviaria o seguinte comando “GET”:
“GET api/ForecastShrinkageSummary?forecastId={forecastId}&revisionNumber={revisionNumber}”
Exemplos de "POST"
Se eu quiser alterar as atribuições de Atividade (trabalho) para um agente específico no CommunityWFM com base em uma fonte de dados externa, eu usaria o seguinte comando POST com as informações relevantes:
“POST api/ActivityAgentAssignment” otransactionFlagId – inserir/atualizar/excluir/etc. oagentId – Agente sendo modificado. oassignedActivities – Atividades sendo modificadas para o referido agente. oresponsibleAgentId – Usuário do sistema que está iniciando/autorizando a alteração.
Se eu quiser inserir um evento agendado na escala de um agente por meio de uma fonte externa, eu usaria o seguinte comando POST com certos parâmetros, tais como:
“POST api/ScheduleEvent” oeventId – Qual é o evento sendo adicionado/modificado/excluído? oagentId – Qual agente é afetado? oduration – Quanto tempo o evento irá durar? oeventDate – Em qual data ocorrerá a alteração do evento?
Casos de uso reais para a API do CommunityWFM
- O Aplicativo Móvel CommunityWFM (iOS, Android)
-
Sincronizando saldos de PTO com Sistemas de RH
- Workday
- ADP
- Sincronizando horas trabalhadas/escaladas com sistemas de Folha de Pagamento/Cartão de Ponto, como Kronos.
- Alimentando dados específicos do CommunityWFM em um data-mart para sistemas de relatórios personalizados.