REST · JSON · OpenAPI
API LNME.AO
Integre a Lista Nacional de Medicamentos Essenciais de Angola nos seus sistemas de gestão hospitalar, farmácias e aplicações de e-Health. JSON simples, acesso por token e documentação OpenAPI.
-
Endereço base
https://www.lnme.jacriativos.com/api/v1 - FormatoJSON, UTF-8
- AutenticaçãoToken JWT em todos os pedidos
A primeira chamada
Primeiro obtenha o token (veja “Autenticar-se” mais abaixo) e envie-o no cabeçalho Authorization. As contas são criadas pela administração.
curl "https://www.lnme.jacriativos.com/api/v1/medicamentos?search=paracetamol&per_page=2" \
-H "Authorization: Bearer $TOKEN"
const res = await fetch("https://www.lnme.jacriativos.com/api/v1/medicamentos?search=paracetamol&per_page=2", {
headers: { Authorization: `Bearer ${token}` },
});
const { items, total } = await res.json();
console.log(total, items[0].nome_generico);
$context = stream_context_create(['http' => ['header' => "Authorization: Bearer $token"]]);
$data = json_decode(file_get_contents(
'https://www.lnme.jacriativos.com/api/v1/medicamentos?search=paracetamol&per_page=2', false, $context
), true);
echo $data['total'], ' ', $data['items'][0]['nome_generico'];
Resposta (resumida)
{
"items": [
{
"id": 34,
"codigo_nacional": "38-17001LP",
"nome_generico": "paracetamol",
"composicao": "125 mg/5 ml",
"apresentacao": "suspensão oral",
"requer_receita": 0,
"nivel_atencao": [ { "id": 1, "nome": "Posto de Saúde", "sigla": "PS" } ],
"forma_icone": "cup",
"forma_dose": "syrup"
}
],
"page": 1, "per_page": 2, "total": 4, "pages": 2
}
Endpoints
Todos devolvem JSON e exigem o cabeçalho Authorization, exceto o login e a renovação do token.
Catálogo
-
GET
/api/v1/medicamentosListar e pesquisar medicamentos (search, nivel_atencao, requer_receita, page, per_page) JWT -
GET
/api/v1/medicamentos/{id}Ficha completa de um medicamento, com as interações JWT -
GET
/api/v1/niveis-atencaoNíveis de atenção JWT
Dosagem
-
GET
/api/v1/medicamentos/{id}/regras-dosagemRegras de dosagem ativas de um medicamento JWT -
POST
/api/v1/regras-dosagem/{id}/calcularCalcular a dose: peso e idade, em mg e ml JWT
Interações
-
GET
/api/v1/interacoesInterações ativas (de um medicamento, ou todas) JWT -
POST
/api/v1/interacoes/verificarVerificar interações entre vários medicamentos, da mais grave à mais leve JWT
Alertas e farmácias
-
GET
/api/v1/alertasAlertas sanitários da ARMED (proibições, suspensões, restrições, falsificações e defeitos) JWT -
GET
/api/v1/disponibilidadeFarmácias que têm o medicamento, da mais barata à mais cara JWT -
PUT
/api/v1/disponibilidadeRegistar disponibilidade e preço (contas de farmácia) JWT
Prescrições
-
GET
/api/v1/prescricoes/{uuid}Verificar uma prescrição pelo seu código JWT -
GET
/api/v1/prescricoesAs prescrições da conta JWT -
POST
/api/v1/prescricoesEmitir uma prescrição, com a posologia estruturada do Kuida+ JWT
Conta
-
POST
/api/auth/tokenEntrar: devolve o token e o refresh token Aberto -
POST
/api/auth/token/refreshRenovar o token (o refresh token serve uma vez) Aberto -
GET
/api/v1/meA conta autenticada JWT
Autenticar-se
As contas são criadas pela administração. Com uma conta, o fluxo são três passos.
-
1Obter o token
curl -X POST https://www.lnme.jacriativos.com/api/auth/token \ -H "Content-Type: application/json" \ -d '{"email":"ana@exemplo.ao","password":"…"}' # → {"token": "…", "refresh_token": "…"} -
2Usar o token
curl https://www.lnme.jacriativos.com/api/v1/prescricoes \ -H "Authorization: Bearer <token>" -
3Renovar quando expirar
curl -X POST https://www.lnme.jacriativos.com/api/auth/token/refresh \ -H "Content-Type: application/json" \ -d '{"refresh_token":"…"}'
Respostas e erros
- 200Pedido bem sucedido
- 201Criado (prescrição emitida)
- 401Falta o token, ou é inválido ou expirou
- 403A conta não pode fazer isto (por exemplo, só farmácias registam disponibilidade)
- 404Não existe, ou foi apagado
- 422Dados inválidos: a mensagem diz o que corrigir
- 429Demasiados pedidos: espere o tempo de Retry-After
Precisa de uma conta?
Profissionais e farmácias pedem adesão; recebe a resposta por e-mail.