API
O Jasmin disponibiliza uma Web API REST que lhe permite aceder aos dados de uma subscrição. Esta API cobre todos os módulos do produtos (Vendas, Compras, Impostos, etc.) e permite tanto a consulta de dados como a criação e atualização de entidades e transações (documentos). Deste modo é possível criar soluções que integrem o Jasmin com qualquer outro sistema.
O sistema de autenticação de utilizadores e de segurança do Jasmin requer que todas as aplicações integradas sejam registadas no sistema. Essa informação é utilizada no acesso à Web API para assegurar o acesso aos dados da subscrição de um determinado cliente.O registo da aplicação permite ao developer ter acesso ao token de autorização que deve ser utilizado em todas as chamadas à Web API.Pode registar uma nova aplicação ou aceder aos registos já efetuados na área de gestão de aplicações, seguindo o seguinte link:
O ProgrammableWeb é uma plataforma que permite acompanhar todas as novidades e informações sobre a Web API do Jasmin.
COMPRAS E VENDAS
Nesta coleção vais encontrar exemplos de utilização da WebAPI para as áreas de compras e vendas.
EXPEDIÇÃO E INVENTÁRIO
Nesta coleção vais encontrar exemplos de utilização da WebAPI para as áreas de inventário e expedição de mercadoria.
IMPOSTOS E FINANÇAS
Nesta coleção vais encontrar exemplos de utilização da WebAPI para as áreas de pagamentos, recebimentos e impostos.
PLATAFORMA E ENTIDADES BASE
Nesta coleção vais encontrar exemplos de utilização da WebAPI para a área de plataforma.
A Web API Jasmin utiliza o standard OAuth 2.0 para autorizar o acesso às subscrições Jasmin. Encontra-se disponível uma área que permite gerir o registo das suas aplicações de integração para developers de aplicações de integração.
Para mais informações sobre o OAuth 2.0, sugere-se a consulta dos seguintes artigos:
Registo de aplicações
O registo de aplicações encontra-se disponível na App Store que se encontra dividida em três áreas:
- App Store;
- Develop;
- My Subscription Apps.
Develop
Esta área está dividida em duas subáreas: Publisher e Dashboard.
Publisher
Nesta subárea é apresentada a lista de publishers associada à conta de utilizador, sendo permitido adicionar e remover publishers.
Para adicionar um novo publisher basta clicar no Create Publisher na área Publisher e indicar os seguintes dados:
- Key: identificador do publisher;
- Name: o nome público do publisher;
- Description: descrição do publisher.
Dashboard
Nesta subárea é permitido consultar, editar, publicar ou remover aplicações, bem como criar ou remover subscrições para testes.
1) Adicionar nova aplicação
Para adicionar uma nova aplicação, siga os seguintes passos:
- Clicar no Creat App na área Dashboard;
- Inserir os seguintes dados sobre a aplicação:
- Product: nome do produto;
- Key: identificador da aplicação;
- Name: o nome público da aplicação;
- Description: descrição da aplicação; - Depois de confirmar, é redirecionado para a página de configuração da aplicação onde terá que preencher todos os dados necessários.
Esta página de configuração está dividida em seis áreas, sendo necessário preencher as seguintes informações:
General:
Deverá preencher os seguintes campos:
- Product: nome do produto;
- Version: versão da aplicação;
- Name: nome público da aplicação;
- Key: identificador da aplicação;
- Publisher Key: identificador do publisher;
- Home Page: o endereço Web da aplicação (para efeitos informativos);
- Description: descrição da aplicação.
Logo & Images:
Nesta área deverá indicar o logótipo da aplicação para efeitos informativos.
Autorization
Deverá inserir os seguintes dados:
- OAuthFlow: fluxo de autenticação que pode ser de 4 tipos - Implicit, Hybrid, Client Credencials e Authorization Code;
- Redirect URI: o endereço da página que será utilizada na autorização (ver documentação sobre autorização).
Ao selecionar os tipos de fluxo Client Credentials ou AuthorizationCode, deverá gerar um Client Secret no botão disponível para o efeito, sendo necessário gravar a aplicação após alteração do fluxo. Para obter o token que autoriza as chamadas à API do Jasmin é necessário possuir o Secret e a chave da aplicação e o Secret. Não é possível recuperar esta informação, por isso deverá guardá-la de forma segura. Contudo, é possível gerar um novo Client Secret através da opção Reset Client Secret.
Additional Settings
Deverá preencher os seguintes dados:
- App Store Preview Link: o link do preview da aplicação na store. Pode ser utilizado para subscrever a aplicação sem efetuar a publicação da mesma;
- Notifications Endpoint: o endpoint para o envio de notificações para a aplicação;
- External Subscription Url: a Url externa de redireccionamento para a aplicação.
Distribution
Após preencher todos os requisitos necessários, é possível submeter a aplicação para aprovação através da opção Submit for approval. Será também apresentado o estado em que se encontra a aprovação da aplicação.
Delete App
Poderá remover a aplicação da App Directory através da opção Delete App.
2) Editar o registo de uma aplicação
É possível editar as aplicações depois de as criar, exceto os campos:
- Product;
- Name;
- Key.
Poderá também efetuar o publish ou unpublish de aplicações, bem como solicitar a geração de novo Client Secret (esta opção apenas se encontra disponível para aplicações com os tipos de autenticação Client Credentials ou AuthorizationCode).
3) Efetuar publish/unpublish de uma aplicação
Ao efetuar o publish, está a permitir que a aplicação fique visível na App Store do Jasmin e, assim, qualquer utilizador pode subscrevê-la e utilizá-la nas suas subscrições. Por outro lado, ao efetuar o unpublish, esta deixa de estar visível na App Store. No entanto, independentemente do unpublish, as aplicações podem continuar a ser utilizadas nas subscrições que a tenham associado previamente.
Nota: Estas funcionalidades apenas se encontram disponíveis na edição de uma aplicação e na listagem de aplicações, no botão associado.
4) Subscrever uma aplicação sem a publicar
Poderá utilizar ou partilhar o link de preview para visualizar o aspeto da aplicação na store, bem como para efetuar a subscrição da app para efeitos de teste ou para a manter como privada.
5) Criar uma nova subscrição para efeitos de desenvolvimento
Para que o desenvolvimento de uma aplicação integrada não interfira com as contas reais dos clientes, é possível criar uma subscrição de desenvolvimento que poderá utilizar para este efeito.
Em termos funcionais e de dados iniciais, este tipo de subscrição é idêntica a uma subscrição DEMO. Este tipo de subscrição permite experimentar livremente o produto durante 30 dias com dados fictícios.
Se uma subscrição de desenvolvimento expirar, o developer poderá sempre criar uma nova, sendo que perderá todos os dados inseridos na subscrição anterior. De referir que só poderá criar três subscrições.
6) Remover subscrição
Ao remover uma subscrição, esta deixa imediatamente de estar disponível na área de Manager.
My Subscription Apps
1) Associar uma aplicação a uma subscrição
Ao associar uma aplicação a uma subscrição está a permitir que esta seja utilizada na subscrição.
Para associar a sua aplicação, siga os seguintes passos:
- Selecionar a aplicação da lista de aplicações disponíveis;
- Selecionar a opção Subscribe e, posteriormente, a subscrição pretendida;
- Clicar em Confirmar.
2) Remover uma aplicação de uma subscrição
Ao remover uma aplicação de uma subscrição, deixa de ser possível utilizar a aplicação nessa subscrição.