Primeiros passos
Este guia mostra como realizar sua primeira requisição à API do Lumen ERP. Você aprenderá como obter suas credenciais, configurar os cabeçalhos de autenticação e fazer a sua primeira chamada.
Obtenha suas credenciais
Crie uma conta no Portal do Parceiro, registre um app e, na aba Credenciais, gere uma chave de teste e crie um cliente de teste (rede privada ou pública). O portal mostra os três valores necessários para chamar o sandbox:
X-Authorization
Token de acesso ao cliente: no sandbox, o token do cliente de teste (mostrado no cartão do cliente); em produção, o token da conexão do app com o cliente (lmn_conn_…).
X-Partner
Chave do app: lmn_test_… para o sandbox, lmn_live_… para produção.
X-Client
Slug do cliente (rede escolar): no sandbox, o do cliente de teste; em produção, o do cliente que liberou o acesso ao app.
O sandbox é uma instância separada da produção, em https://sandbox.lumenerp.app.br/api/v1.
Chaves de teste só funcionam lá; enviadas à produção, recebem 403 com "code": "SANDBOX_HOST".
Parceiros cadastrados antes do portal continuam usando as credenciais recebidas da equipe Lumen, com os mesmos três cabeçalhos.
Faça sua primeira requisição
Com as credenciais em mãos, liste as escolas do seu cliente de teste no sandbox. Este é o endpoint mais simples para validar que sua autenticação está funcionando.
-H "X-Authorization: {token_do_cliente_de_teste}" \
-H "X-Partner: lmn_test_{sua_chave}" \
-H "X-Client: {slug_do_cliente_de_teste}"
use GuzzleHttp\Client; $client = new Client(); $response = $client->get('https://sandbox.lumenerp.app.br/api/v1/partners/schools/all', [ 'headers' => [ 'X-Authorization' => '{token_do_cliente_de_teste}', 'X-Partner' => 'lmn_test_{sua_chave}', 'X-Client' => '{slug_do_cliente_de_teste}', ], ]); $schools = json_decode($response->getBody(), true);
const response = await fetch('https://sandbox.lumenerp.app.br/api/v1/partners/schools/all', { headers: { 'X-Authorization': '{token_do_cliente_de_teste}', 'X-Partner': 'lmn_test_{sua_chave}', 'X-Client': '{slug_do_cliente_de_teste}', }, }); const schools = await response.json();
Entenda a resposta
Uma resposta bem-sucedida retorna uma resposta paginada com as escolas do cliente autenticado no campo data, acompanhada de metadados de paginação.
No sandbox, a escola é o Colégio Demonstração do seu cliente de teste, e a resposta traz o cabeçalho
X-Lumen-Environment: test.
{ "data": [ { "id": "9faea287-2f03-4b26-b234-3d3c1a2bc4e1", "social_name": "Colégio Exemplo LTDA", "name": "Colégio Exemplo", "cnpj": "26019466000122", "director": { "id": "…", "name": "Ana Souza", "email": "ana@exemplo.com", "birthdate": "1980-05-12" } } ], "links": { /* URLs de paginação */ }, "meta": { "current_page": 1, "per_page": 25, /* ... */ } }
Vá para a produção
Depois que a equipe Lumen aprovar o app e o cliente liberar o acesso, troque só a configuração: o endereço
https://lumenerp.app.br/api/v1, a chave
lmn_live_…, o slug do cliente e o token da
conexão. O passo a passo está no guia
Portal do Parceiro.