Simova NFS API
Elaborado por Alan Mocellin em 13/06/2022 - v1
CONCEITOS
Integração
É o processo que envia os dados dos apontamentos realizados pelos técnicos/mecânicos do SmartOS para o ERP do cliente.
Autenticação
A primeira etapa é a autenticação por um método POST para isso o usuário deve existir cadastrado
dentro do NFS, com isso é enviado usuário e senha, o retorno é um token que vai expirar em 15 minutos, se
antes desse tempo autenticar novamente é gerado um novo token, o antigo para de funcionar e também tem
o tempo 15 minutos.
A url será o domínio do cliente mais /nfs/api/v1/auth, supondo que o domínio seja
[Link], no final a chamada será:
[Link]
Parâmetros
Os parâmetros para autenticação são enviados como um Json Object [1] de acordo com a tabela 1.
Chave Obrigatório Descrição
user Sim E-mail válido do usuário
cadastrado no NFS
-1-
password Sim Password do usuário
empresa Sim Filial
Tabela 1
Requisições e Respostas
curl --request POST \
--url [Link] \
--header 'Cookie: PHPSESSID=83bnfc8g2cgv49b19m41h6hvdf;
PHPSESSID=10mlh2rs21ie5uqoom2ftcnhv8; PHPSESSID=fg056294j0bso0bc90iahe274g;
PHPSESSID=23n89n57j7o18ll7fkc753sjad' \
--header 'content-type: application/json' \
--cookie PHPSESSID=cd1ko0dpuj7h3dl07qo7fk56om \
--data '{
"user":"apiws@[Link]",
"password":"S1m0v@API",
"empresa":"Fazenda Planeste"
}'
Response
{
"type": "success",
"msg": "Token gerado com sucesso.",
"token":
"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJyb3Rhb2VzdGUuc2ltb3ZhLmNsb3VkIiwibmFtZ
SI6ImFwaXdzQHNpbW92YS5jb20uYnIiLCJlbWFpbCI6ImFwaXdzQHNpbW92YS5jb20uYnIiLCJmaWx
pYWwiOiJDdWlhYlx1MDBlMSIsImxvY2FsIjpudWxsLCJleHAiOiIyMDIyLTA0LTA4IDA5OjA2OjAxIn0=.EL
ZXzkixBNZNJQ3GdFE2U9GmjfeS9AAWNl+xF583USg=",
"user": "apiws@[Link]"
}
A chave token será usada no restante dos sincronismo e integração de dados.
-2-
Sincronismo
No sincronismo todas as chamadas são feitas por meio do método POST e no corpo é enviado um
Json Array [2].
O token sempre é enviado no header.
A url é [Link]
{entidade}: é configurado a partir da necessidade do cliente
Serviços
Tabela de serviços
Campo Descrição API Tipo de dados Chave Campo Descrição
Primária(PK) Obrigatório
ATIVO RegistroAtivo VARCHAR(100) Não Sim Registro ativo
1-Sim;0-Não
CODIGO CodigoServico VARCHAR(100) Sim Sim Código do serviço
DESCRICAO DescricaoServico VARCHAR(100) Não Sim Descrição do serviço
FK_CODIGO_COMPO Componente VARCHAR(100) Não Sim Código do componente (FK)
NENTE
TEMPO_MINIMO TempoMinimo VARCHAR(100) Sim Não Tempo mínimo para o serviço
TEMPO_PADRAO TempoPadrao VARCHAR(100) Sim Não Tempo padrão para o serviço
FLAG_PRODUTIVO Produtivo VARCHAR(100) Não Não É produtivo?
1-Sim;0-Não
-3-
Serviços - API
Request
curl --request POST \
--url [Link] \
--header 'Content-Type: application/json' \
--header 'authorization:
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzbGNhZ3JpY29sYS5oLnNpbW92YS5jbG91ZCIsIm5hb
WUiOiJhcGl3c0BzaW1vdmEuY29tLmJyIiwiZW1haWwiOiJhcGl3c0BzaW1vdmEuY29tLmJyIiwiZmlsaWFsIjoiR
mF6ZW5kYSBQYW50YW5hbCIsImxvY2FsIjpudWxsLCJleHAiOiIyMDIyLTA2LTA5IDE4OjMwOjAzIn0=.teLjcisY
YNfOpr7yc41MXinXwvGg8h7gh1001TKDQpM=' \
--cookie PHPSESSID=cd1ko0dpuj7h3dl07qo7fk56om \
--data '[
{
"RegistroAtivo": "1",
"CodigoServico": "100",
"DescricaoServico": "Teste",
"Componente": "PC-10.1",
"TempoMinimo": "20",
"TempoPadrao": "60",
"Produtivo": "1"
}
]'
Response
[
{
"type": "success",
"msg": "Cadastro de Servico inserido com sucesso",
"field": "",
"id": "8365"
}
]
Unidade Medida
Tabela de unidade de medida
Campo Descrição API Tipo de dados Chave Campo Descrição
Primária(PK) Obrigatório
ATIVO RegistroAtivo VARCHAR(100) Não Sim Registro ativo
-4-
1-Sim;0-Não
CODIGO CodigoUnidadeMe VARCHAR(100) Sim Sim Código da unidade de medida
dida
DESCRICAO DescricaoUnidade VARCHAR(100) Não Sim Descrição da unidade de medida
Medida
SIGLA SiglaUnidadeMedi VARCHAR(100) Não Sim Sigla da unidade de medida
da
Unidade Medida - API
Request
curl --request POST \
--url [Link] \
--header 'Content-Type: application/json' \
--header 'authorization:
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzbGNhZ3JpY29sYS5oLnNpbW92YS5jbG91ZCIsIm5hb
WUiOiJhcGl3c0BzaW1vdmEuY29tLmJyIiwiZW1haWwiOiJhcGl3c0BzaW1vdmEuY29tLmJyIiwiZmlsaWFsIjoiR
mF6ZW5kYSBQYW50YW5hbCIsImxvY2FsIjpudWxsLCJleHAiOiIyMDIyLTA2LTA5IDE3OjI5OjA2In0=.cJfdG9ut
+mcouaqV8tGCNgz0NCfJlOhUrMJ2PxNJQo0=' \
--cookie PHPSESSID=cd1ko0dpuj7h3dl07qo7fk56om \
--data '[
{
"RegistroAtivo": "1",
"CodigoUnidadeMedida": "S",
"DescricaoUnidadeMedida": "SEGUNDOS",
"SiglaUnidadeMedida": "S"
}
]'
Response
[
{
"type": "success",
"msg": "Cadastro de Unidade Medida inserido com sucesso",
"field": "",
"id": "4"
}
]
-5-
Medicao
Tabela de medicao
Campo Descrição API Tipo de dados Chave Campo Descrição
Primária(PK) Obrigatório
ATIVO RegistroAtivo VARCHAR(100) Não Sim Registro ativo
1-Sim;0-Não
MEDICAO Medicao VARCHAR(100) Sim Sim Código do serviço
FK_CHASSI Chassi VARCHAR(100) Não Sim Descrição do serviço
DATA_ABERTURA DataAbertura VARCHAR(100) Não Sim Código do componente (FK)
Medicao - API
Request
curl --request POST \
--url [Link] \
--header 'Content-Type: application/json' \
--header 'authorization:
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzbGNhZ3JpY29sYS5oLnNpbW92YS5jbG91ZCIsIm5hb
WUiOiJhcGl3c0BzaW1vdmEuY29tLmJyIiwiZW1haWwiOiJhcGl3c0BzaW1vdmEuY29tLmJyIiwiZmlsaWFsIjoiR
mF6ZW5kYSBQYW50YW5hbCIsImxvY2FsIjpudWxsLCJleHAiOiIyMDIyLTA2LTEwIDExOjUxOjE5In0=.gMFkw
2lSFRoDBM0BwrF2X7h8ygEKMqFfFndOBhlxjMs=' \
--cookie PHPSESSID=cd1ko0dpuj7h3dl07qo7fk56om \
--data '[
{
"RegistroAtivo": "1",
"Medicao": "60",
"Chassi": "100",
"DataAbertura": "2022-06-10 13:07:37"
}
]'
Response
[
{
"type": "success",
"msg": "Cadastro de Medicao inserido com sucesso",
"field": "",
-6-
"id": "8365"
}
]
Tipo OS
Tabela de tipo de OS
Campo Descrição API Tipo de dados Chave Campo Descrição
Primária(PK) Obrigatório
ATIVO RegistroAtivo VARCHAR(100) Não Sim Registro ativo
1-Sim;0-Não
DESCRICAO DescricaoTipoOs VARCHAR(100) Não Sim Descrição do tipo de OS
Tipo OS - API
Request
curl --request POST \
--url [Link] \
--header 'Content-Type: application/json' \
--header 'authorization:
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzbGNhZ3JpY29sYS5oLnNpbW92YS5jbG91ZCIsIm5hb
WUiOiJhcGl3c0BzaW1vdmEuY29tLmJyIiwiZW1haWwiOiJhcGl3c0BzaW1vdmEuY29tLmJyIiwiZmlsaWFsIjoiR
mF6ZW5kYSBQYW50YW5hbCIsImxvY2FsIjpudWxsLCJleHAiOiIyMDIyLTA2LTEwIDA4OjUzOjMzIn0=.8h3qrw
11xhNT6xMm5mkuFomxEk3XfyyRnu\/uKq+XtwY=' \
--cookie PHPSESSID=cd1ko0dpuj7h3dl07qo7fk56om \
--data '[
{
"RegistroAtivo": "1",
"DescricaoTipoOs": "Interna"
}
]'
Response
[
{
"type": "success",
"msg": "Cadastro de Tipo OS inserido com sucesso",
"field": "",
-7-
"id": "4"
}
]
Causa desvio
Tabela de causa desvio
Campo Descrição API Tipo de dados Chave Campo Descrição
Primária(PK) Obrigatório
ATIVO RegistroAtivo VARCHAR(100) Não Sim Registro ativo
1-Sim;0-Não
CODIGO CodigoCausaDesv VARCHAR(100) Sim Sim Código da causa desvio
io
DESCRICAO DescricaoCausaD VARCHAR(100) Não Sim Descrição da causa desvio
esvio
Causa Desvio - API
Request
curl --request POST \
--url [Link] \
--header 'Content-Type: application/json' \
--header 'authorization:
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzbGNhZ3JpY29sYS5oLnNpbW92YS5jbG91ZCIsIm5hb
WUiOiJhcGl3c0BzaW1vdmEuY29tLmJyIiwiZW1haWwiOiJhcGl3c0BzaW1vdmEuY29tLmJyIiwiZmlsaWFsIjoiR
mF6ZW5kYSBQYW1wbG9uYSIsImxvY2FsIjpudWxsLCJleHAiOiIyMDIyLTA2LTA4IDE3OjUzOjQyIn0=.qs5pygp
GQUf+oreyT0LkH4o64fiMcOOO\/H9P\/\/H2VyA=' \
--cookie PHPSESSID=cd1ko0dpuj7h3dl07qo7fk56om \
--data '[
{
"RegistroAtivo": "1",
"CodigoCausaDesvio": "100",
"DescricaoCausaDesvio": "Teste"
}
]'
Response
-8-
{
"type": "success",
"msg": "Cadastro de causa desvio inserido com sucesso",
"field": "",
"id": "4"
}
]
Marca equipamento
Tabela da marca do ativo
Campo Descrição API Tipo de dados Chave Campo Descrição
Primária(PK) Obrigatório
ATIVO RegistroAtivo VARCHAR(100) Não Sim Registro ativo
1-Sim;0-Não
CODIGO CodigoMarcaAtivo VARCHAR(100) Sim Sim Código da marca do ativo
DESCRICAO DescricaoMarcaAti VARCHAR(100) Não Sim Descrição da marca do ativo
vo
Marca equipamento - API
Request
curl --request POST \
--url [Link] \
--header 'Content-Type: application/json' \
--header 'authorization:
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzbGNhZ3JpY29sYS5oLnNpbW92YS5jbG91ZCIsIm5hb
WUiOiJhcGl3c0BzaW1vdmEuY29tLmJyIiwiZW1haWwiOiJhcGl3c0BzaW1vdmEuY29tLmJyIiwiZmlsaWFsIjoiR
mF6ZW5kYSBQYW1wbG9uYSIsImxvY2FsIjpudWxsLCJleHAiOiIyMDIyLTA2LTA4IDE3OjUzOjQyIn0=.qs5pygp
GQUf+oreyT0LkH4o64fiMcOOO\/H9P\/\/H2VyA=' \
--cookie PHPSESSID=cd1ko0dpuj7h3dl07qo7fk56om \
--data '[
{
"RegistroAtivo": "1",
"CodigoMarcaAtivo": "100",
"DescricaoMarcaAtivo": "Teste"
}
]'
-9-
Response
[
{
"type": "success",
"msg": "Cadastro de Marca equipamento inserido com sucesso",
"field": "",
"id": "4"
}
]
Tipo equipamento
Tabela do tipo de ativo
Campo Descrição API Tipo de dados Chave Campo Descrição
Primária(PK) Obrigatório
ATIVO RegistroAtivo VARCHAR(100) Não Sim Registro ativo
1-Sim;0-Não
CODIGO CodigoTipoAtivo VARCHAR(100) Sim Sim Código do tipo de ativo
DESCRICAO DescricaoTipoAtiv VARCHAR(100) Não Sim Descrição do tipo de ativo
o
FK_MARCA_EQUIPA CodigoMarcaAtivo VARCHAR(100) Não Sim Código da marca do ativo (FK)
MENTO
Tipo Equipamento - API
Request
curl --request POST \
--url [Link] \
--header 'Content-Type: application/json' \
--header 'authorization:
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzbGNhZ3JpY29sYS5oLnNpbW92YS5jbG91ZCIsIm5hb
WUiOiJhcGl3c0BzaW1vdmEuY29tLmJyIiwiZW1haWwiOiJhcGl3c0BzaW1vdmEuY29tLmJyIiwiZmlsaWFsIjoiR
mF6ZW5kYSBQYW1wbG9uYSIsImxvY2FsIjpudWxsLCJleHAiOiIyMDIyLTA2LTA4IDE3OjUzOjQyIn0=.qs5pygp
GQUf+oreyT0LkH4o64fiMcOOO\/H9P\/\/H2VyA=' \
--cookie PHPSESSID=cd1ko0dpuj7h3dl07qo7fk56om \
--data '[
{
"RegistroAtivo": "1",
"CodigoTipoAtivo": "100",
"DescricaoTipoAtivo": "Teste",
- 10 -
"CodigoMarcaAtivo": "100"
}
]'
Response
[
{
"type": "success",
"msg": "Cadastro de Tipo equipamento inserido com sucesso",
"field": "",
"id": "4"
}
]
Modelo equipamento
Tabela de modelo do ativo
Campo Descrição API Tipo de dados Chave Campo Descrição
Primária(PK) Obrigatório
ATIVO RegistroAtivo VARCHAR(100) Não Sim Registro ativo
1-Sim;0-Não
CODIGO CodigoModeloAtiv VARCHAR(100) Sim Sim Código do modelo de ativo
o
DESCRICAO DescricaoModeloA VARCHAR(100) Não Sim Descrição do modelo de ativo
tivo
FK_TIPO_EQUIPAME CodigoTipoAtivo VARCHAR(100) Não Sim Código do tipo do ativo (FK)
NTO
Modelo Equipamento - API
Request
curl --request POST \
--url [Link] \
--header 'Content-Type: application/json' \
--header 'authorization:
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzbGNhZ3JpY29sYS5oLnNpbW92YS5jbG91ZCIsIm5hb
WUiOiJhcGl3c0BzaW1vdmEuY29tLmJyIiwiZW1haWwiOiJhcGl3c0BzaW1vdmEuY29tLmJyIiwiZmlsaWFsIjoiR
mF6ZW5kYSBQYW1wbG9uYSIsImxvY2FsIjpudWxsLCJleHAiOiIyMDIyLTA2LTA4IDE3OjUzOjQyIn0=.qs5pygp
- 11 -
GQUf+oreyT0LkH4o64fiMcOOO\/H9P\/\/H2VyA=' \
--cookie PHPSESSID=cd1ko0dpuj7h3dl07qo7fk56om \
--data '[
{
"RegistroAtivo": "1",
"CodigoModeloAtivo": "1001",
"DescricaoModeloAtivo": "Teste",
"CodigoTipoAtivo": "100"
}
]'
Response
[
{
"type": "success",
"msg": "Cadastro de Modelo equipamento inserido com sucesso",
"field": "",
"id": "4"
}
]
Equipamento
Tabela do ativo
Campo Descrição API Tipo de dados Chave Campo Descrição
Primária(PK) Obrigatório
ATIVO RegistroAtivo VARCHAR(100) Não Sim Registro ativo
1-Sim;0-Não
FROTA FrotaAtivo VARCHAR(100) Sim Sim Frota do ativo
DESCRICAO DescricaoAtivo VARCHAR(100) Não Sim Descrição do ativo
CHASSI Chassi VARCHAR(100) Não Sim Chassi do ativo
FK_MARCA_EQUIPA CodigoMarcaAtivo VARCHAR(100) Não Não Código da Marca do ativo (FK)
MENTO
MODELO AnoModelo VARCHAR(100) Não Não Modelo e ano do ativo
FK_MODELO_EQUIPA CodigoModeloAtiv VARCHAR(100) Não Sim Código do modelo do ativo (FK)
MENTO o
DISPONIBILIDADE_DI DisponibilidadeDia VARCHAR(100) Não Não Disponibilidade diária (horas) do ativo
ARIA ria
FLAG_TIPO_MEDICA TipoMedicao VARCHAR(100) Não Não Tipo de Medição
- 12 -
O 0:Horímetro;1:Odômetro
FLAG_HORA_TRILHA SolicitarHoraTrilha VARCHAR(100) Não Não Solicitar horas de trilha?
1-Sim;0-Não
FLAG_GERAR_OS OsPreventiva VARCHAR(100) Não Não Gerar OS Preventiva?
1-Sim;0-Não
MEDICAO MedicaoInicial VARCHAR(100) Não Não Medição Inicial
FK_FAZENDA Fazenda VARCHAR(100) Não Não Descrição da fazenda (FK)
Equipamento - API
Request
curl --request POST \
--url [Link] \
--header 'Content-Type: application/json' \
--header 'authorization:
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzbGNhZ3JpY29sYS5oLnNpbW92YS5jbG91ZCIsIm5hb
WUiOiJhcGl3c0BzaW1vdmEuY29tLmJyIiwiZW1haWwiOiJhcGl3c0BzaW1vdmEuY29tLmJyIiwiZmlsaWFsIjoiR
mF6ZW5kYSBQYW1wbG9uYSIsImxvY2FsIjpudWxsLCJleHAiOiIyMDIyLTA2LTA4IDE3OjUzOjQyIn0=.qs5pygp
GQUf+oreyT0LkH4o64fiMcOOO\/H9P\/\/H2VyA=' \
--cookie PHPSESSID=cd1ko0dpuj7h3dl07qo7fk56om \
--data '[
{
"RegistroAtivo": "1",
"FrotaAtivo": "100",
"DescricaoAtivo": "Teste",
"Chassi": "100",
"CodigoMarcaAtivo": "100",
"AnoModelo": "2022",
"CodigoModeloAtivo": "100",
"DisponibilidadeDiaria": "09:30",
"TipoMedicao": "1",
"SolicitarHoraTrilha": "1",
"OsPreventiva": "0",
"MedicaoInicial": "0",
"Fazenda": "Pamplona"
}
]'
Response
- 13 -
[
{
"type": "success",
"msg": "Cadastro de Equipamento inserido com sucesso",
"field": "",
"id": "4"
}
]
Funcionario
Tabela de funcionario
Campo Descrição API Tipo de dados Chave Campo Descrição
Primária(PK) Obrigatório
ATIVO RegistroAtivo VARCHAR(100) Não Sim Registro ativo
1-Sim;0-Não
CRACHA Cracha VARCHAR(100) Sim Sim Crachá do funcionário
NOME Nome VARCHAR(100) Não Sim Nome do funcionário
FK_EQUIPE Equipe VARCHAR(100) Não Sim Descrição da equipe (FK)
PIS Pis VARCHAR(100) Não Sim PIS do funcionário
FLAG_TECNICO Mecanico VARCHAR(100) Não Não É Mecânico?
1-Sim;0-Não
FLAG_AVALIADOR Avaliador VARCHAR(100) Não Não É Avaliador?
1-Sim;0-Não
FLAG_OPERADOR Operador VARCHAR(100) Não Não É Operador?
1-Sim;0-Não
DATA_DEMISSAO DataDemissao VARCHAR(100) Não Não Data Demissão
NUMERO_CELULAR NumeroCelular VARCHAR(100) Não Não Número Celular
FLAG_ALERTA_TURN AlertaTurno VARCHAR(100) Não Não Mostrar alerta de turno no celular?
O 1-Sim;0-Não
FLAG_PAINEL MostrarPainel VARCHAR(100) Não Não Mostrar no painel?
1-Sim;0-Não
DISPONIBILIDADE Disponibilidade VARCHAR(100) Não Não Disponibilidade (horas)
STATUS_DISPONIBILI SituacaoFuncionar ARCHAR(100) Não Não Status da disponibilidade do funcionário:
DADE_FUNCIONARIO io 0:Disponível;1:Atestado;2:Folga;3:Férias;4:Afasta
do
DATA_RETORNO_FE DataRetorno ARCHAR(100) Não Não Data de retorno das férias
RIAS
- 14 -
Funcionario - API
Request
curl --request POST \
--url [Link] \
--header 'Content-Type: application/json' \
--header 'authorization:
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzbGNhZ3JpY29sYS5oLnNpbW92YS5jbG91ZCIsIm5hb
WUiOiJhcGl3c0BzaW1vdmEuY29tLmJyIiwiZW1haWwiOiJhcGl3c0BzaW1vdmEuY29tLmJyIiwiZmlsaWFsIjoiR
mF6ZW5kYSBQYW50YW5hbCIsImxvY2FsIjpudWxsLCJleHAiOiIyMDIyLTA2LTEwIDAwOjI5OjM5In0=.4Qo5G
ANJc4f19SEzp4eJVqTh9XJa5HnIkHLvydhFRso=' \
--cookie PHPSESSID=cd1ko0dpuj7h3dl07qo7fk56om \
--data '[
{
"Filial": "1",
"Local": "7",
"RegistroAtivo": "1",
"Cracha": "100",
"Nome": "Teste",
"Equipe": "MÁQUINAS",
"Pis": "100",
"Mecanico": "1",
"Avaliador": "0",
"Operador": "1",
"DataDemissao": "",
"NumeroCelular": "99 99999-9999",
"AlertaTurno": "1",
"MostrarPainel": "0",
"Disponibilidade": "08:00",
"SituacaoFuncionario": "0",
"DataRetorno": ""
}
]'
Response
[
{
"type": "success",
- 15 -
"msg": "Cadastro de Funcionario inserido com sucesso",
"field": "",
"id": "4"
}
]
Plano Manutencao
Tabela de plano de manutenção
Campo Descrição API Tipo de dados Chave Campo Descrição
Primária(PK) Obrigatório
ATIVO RegistroAtivo VARCHAR(100) Não Sim Registro ativo
1-Sim;0-Não
CODIGO CodigoPlanoManu VARCHAR(100) Sim Sim Código do plano de manutenção
tencao
DESCRICAO DescricaoPlanoMa VARCHAR(100) Não Sim Descrição do plano de manutenção
nutencao
FK_MODELO_EQUIPA CodigoModeloAtiv VARCHAR(100) Não Sim Código do modelo do ativo (FK)
MENTO o
MEDICAO_MINIMO MedicaoMinimo VARCHAR(100) Não Sim Medição (Horímetro/Odômetro) - Alerta Mínimo
MEDICAO_MAXIMO MedicaoMaximo VARCHAR(100) Não Não Medição (Horímetro/Odômetro) - Alerta Máximo
OBSERVACAO Observacao VARCHAR(100) Não Não Observação do plano de manutenção
FLAG_TIPO_MEDICA TipoMedicao VARCHAR(100) Não Sim Tipo de medição
O 0:Horímetro;1:Odômetro
Plano Manutencao - API
Request
curl --request POST \
--url [Link] \
--header 'Content-Type: application/json' \
--header 'authorization:
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzbGNhZ3JpY29sYS5oLnNpbW92YS5jbG91ZCIsIm5hb
WUiOiJhcGl3c0BzaW1vdmEuY29tLmJyIiwiZW1haWwiOiJhcGl3c0BzaW1vdmEuY29tLmJyIiwiZmlsaWFsIjoiR
mF6ZW5kYSBQYW50YW5hbCIsImxvY2FsIjpudWxsLCJleHAiOiIyMDIyLTA2LTEwIDA5OjQxOjQ2In0=.K8aoZ
MoqDZ\/4+LXbty381aBDNB4oUTjVMJ1ZsjeWhkw=' \
--cookie PHPSESSID=cd1ko0dpuj7h3dl07qo7fk56om \
--data '[
{
"RegistroAtivo": "1",
- 16 -
"CodigoPlanoManutencao": "100",
"DescricaoPlanoManutencao": "Teste",
"CodigoModeloAtivo": "100",
"MedicaoMinimo": "1",
"MedicaoMaximo": "100",
"Observacao": "Teste API",
"TipoMedicao": "1"
}
]'
Response
[
{
"type": "success",
"msg": "Cadastro de Plano manutencao inserido com sucesso",
"field": "",
"id": "4"
}
]
Tipo Manutencao
Tabela de tipo de manutenção
Campo Descrição API Tipo de dados Chave Campo Descrição
Primária(PK) Obrigatório
ATIVO RegistroAtivo VARCHAR(100) Não Sim Registro ativo
1-Sim;0-Não
CODIGO CodigoTipoManute VARCHAR(100) Sim Sim Código do tipo de manutenção
ncao
DESCRICAO DescricaoTipoMan VARCHAR(100) Não Sim Descrição do tipo de manutenção
utencao
FLAG_MOBILE Mobile VARCHAR(100) Não Sim Enviar para mobile?
1-Sim;0-Não
FLAG_GERAR_SERVI GerarServico VARCHAR(100) Não Sim Gerar serviço na OS?
CO 1-Sim;0-Não
TIPO_GERAR_SERVI TipoGerarServico VARCHAR(100) Não Sim Tipo manutenção a gerar no serviço:
CO 0:Modelo do Ativo;1:Plano de Manutenção
- 17 -
Tipo Manutencao - API
Request
curl --request POST \
--url [Link] \
--header 'Content-Type: application/json' \
--header 'authorization:
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzbGNhZ3JpY29sYS5oLnNpbW92YS5jbG91ZCIsIm5hb
WUiOiJhcGl3c0BzaW1vdmEuY29tLmJyIiwiZW1haWwiOiJhcGl3c0BzaW1vdmEuY29tLmJyIiwiZmlsaWFsIjoiR
mF6ZW5kYSBQYW50YW5hbCIsImxvY2FsIjpudWxsLCJleHAiOiIyMDIyLTA2LTEwIDEwOjA2OjI1In0=.TxWR+
CRqXBysE0j9lbYb+KQd3EZoFhGtjntCke6TWy4=' \
--cookie PHPSESSID=cd1ko0dpuj7h3dl07qo7fk56om \
--data '[
{
"RegistroAtivo": "1",
"CodigoTipoManutencao": "100",
"DescricaoTipoManutencao": "Teste",
"Mobile": "0",
"GerarServico": "1",
"TipoGerarServico": "1"
}
]'
Response
[
{
"type": "success",
"msg": "Cadastro de Tipo manutencao inserido com sucesso",
"field": "",
"id": "4"
}
]
Peca
Tabela de peca (Item)
Campo Descrição API Tipo de dados Chave Campo Descrição
Primária(PK) Obrigatório
ATIVO RegistroAtivo VARCHAR(100) Não Sim Registro ativo
- 18 -
1-Sim;0-Não
CODIGO CodigoItem VARCHAR(100) Sim Sim Código do produto
ID_KLASSMATT IdKlassmatt VARCHAR(100) Não Não ID Klassmatt
CODIGO_ERP CodigoErp VARCHAR(100) Não Não Código ERP
CODIGO_EBS CodigoEbs VARCHAR(100) Não Não Código EBS
DESCRICAO_COMPL DescricaoComplet VARCHAR(100) Não Sim Descrição Completa
ETA a
DESCRICAO DescricaoResumid Não Descrição Resumida
a
FK_UNIDADE_MEDID UnidadeMedida Não Descrição Unidade de Medida (FK)
A
Peca - API
Request
curl --request POST \
--url [Link] \
--header 'Content-Type: application/json' \
--header 'authorization:
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzbGNhZ3JpY29sYS5oLnNpbW92YS5jbG91ZCIsIm5hb
WUiOiJhcGl3c0BzaW1vdmEuY29tLmJyIiwiZW1haWwiOiJhcGl3c0BzaW1vdmEuY29tLmJyIiwiZmlsaWFsIjoiR
mF6ZW5kYSBQYW1wbG9uYSIsImxvY2FsIjpudWxsLCJleHAiOiIyMDIyLTA2LTA5IDE2OjU2OjUxIn0=.65MELq
p7xfymhIG24cKmaKsdOwxfWr6+X\/W3+I1iOFM=' \
--cookie PHPSESSID=cd1ko0dpuj7h3dl07qo7fk56om \
--data '[
{
"RegistroAtivo": "1",
"CodigoItem": "100",
"IdKlassmatt": "100",
"CodigoErp": "100",
"CodigoEbs": "100",
"DescricaoCompleta": "teste",
"DescricaoResumida": "test",
"UnidadeMedida": "Litro"
}
]'
Response
- 19 -
{
"type": "success",
"msg": "Cadastro de Peca inserido com sucesso",
"field": "",
"id": "4"
}
]
OS
Tabela de OS
Campo Descrição API Tipo de dados Chave Campo Descrição
Primária(PK) Obrigatório
ATIVO RegistroAtivo VARCHAR(100) Não Sim Registro ativo
1-Sim;0-Não
CODIGO CodigoOs VARCHAR(100) Sim Sim Código da OS
FK_STATUS_OS StatusOs VARCHAR(100) Não Sim Status da OS
DATA_ABERTURA DataAbertura VARCHAR(100) Não Sim Data Abertura da OS
OBSERVACAO Observacao VARCHAR(100) Não Sim Observações da OS
FK_EQUIPAMENTO Chassi VARCHAR(100) Não Sim Chassi do ativo (FK)
LOCAL_ATENDIMENT LocalAtendimento VARCHAR(100) Não Não Local/Tipo de Atendimento
O 0:Não
Definido;1:Oficina;2:Campo;3:Oficina/Campo
FK_PLANO_MANUTE CodigoPlanoManu VARCHAR(100) Não Sim Código do plano de manutenção (FK)
NCAO tencao
MEDICAO_ANTERIOR MedicaoAnterior VARCHAR(100) Não Não Medição Anterior
MEDICAO_ATUAL MedicaoAtual VARCHAR(100) Não Não Medição Atual
DIFERENCA_MEDICA DiferencaMedicao VARCHAR(100) Não Não Diferença da medição
O
DESCRICAO_PLANO DescricaoPlano VARCHAR(100) Não Descrição do Plano de Manutenção
FK_MODELO_EQUIPA CodigoModeloAtiv VARCHAR(100) Não Sim Código do modelo do ativo (FK)
MENTO o
MEDICAO_MINIMO MedicaoMinimo VARCHAR(100) Não Não Medição (Horímetro/Odômetro) - Alerta Mínimo
MEDICAO_MAXIMO MedicaoMaximo VARCHAR(100) Não Não Medição (Horímetro/Odômetro) - Alerta Máximo
OBSERVACAO_PLAN ObservacaoPlano VARCHAR(100) Não Não Observação do Plano
O
FK_TIPO_MANUTENC CodigoTipoManute VARCHAR(100) Não Sim Código do tipo de manutenção (FK)
AO ncao
FK_CAUSA_DESVIO CodigoCausaDesv VARCHAR(100) Não Sim Código da causa desvio (FK)
io
CLASSIFICACAO_OS ClassificacaoOs VARCHAR(100) Não Não Classificação da OS
0:Mecânica;1:Torno;2:Borracharia;3:Comboio;4:S
- 20 -
oldagem
OS - API
Request
curl --request POST \
--url [Link] \
--header 'Content-Type: application/json' \
--header 'authorization:
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzbGNhZ3JpY29sYS5oLnNpbW92YS5jbG91ZCIsIm5hb
WUiOiJhcGl3c0BzaW1vdmEuY29tLmJyIiwiZW1haWwiOiJhcGl3c0BzaW1vdmEuY29tLmJyIiwiZmlsaWFsIjoiR
mF6ZW5kYSBQbGFuZXN0ZSIsImxvY2FsIjpudWxsLCJleHAiOiIyMDIyLTA2LTEwIDEyOjQ2OjA1In0=.gYiM8Zi
Bene9Fg\/PUrBIR8020SBy7U8hSvnTr8NPQEE=' \
--cookie PHPSESSID=cd1ko0dpuj7h3dl07qo7fk56om \
--data '[
{
"RegistroAtivo": "1",
"CodigoOs": "100",
"StatusOs": "Aberta",
"DataAbertura": "2022-06-10 13:07:37",
"Observacao": "Teste API",
"Chassi": "100",
"LocalAtendimento": "1",
"CodigoPlanoManutencao": "100",
"MedicaoAnterior": "1",
"MedicaoAtual": "100",
"DiferencaMedicao": "99",
"DescricaoPlano": "testes",
"CodigoModeloAtivo": "100",
"MedicaoMinimo": "10",
"MedicaoMaximo": "100",
"ObservacaoPlano": "testess",
"CodigoTipoManutencao": "CRT",
"CodigoCausaDesvio": "100",
"ClassificacaoOs": "0"
}
]'
- 21 -
Response
[
{
"type": "success",
"msg": "Cadastro de OS inserido com sucesso",
"field": "",
"id": "4"
}
]
OS Peca
Tabela de OS peca (Item)
Campo Descrição API Tipo de dados Chave Campo Descrição
Primária(PK) Obrigatório
ATIVO RegistroAtivo VARCHAR(100) Não Sim Registro ativo
1-Sim;0-Não
FK_OS CodigoOs VARCHAR(100) Não Sim Código da OS (FK)
FK_PECA CodigoItem VARCHAR(100) Não Sim Código do produto (FK)
QTD_REQUISITADA QtdRequisitada VARCHAR(100) Não Não Quantidade de peça requisitada
OS Peca - API
Request
curl --request POST \
--url [Link] \
--header 'Content-Type: application/json' \
--header 'authorization:
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzbGNhZ3JpY29sYS5oLnNpbW92YS5jbG91ZCIsIm5hb
WUiOiJhcGl3c0BzaW1vdmEuY29tLmJyIiwiZW1haWwiOiJhcGl3c0BzaW1vdmEuY29tLmJyIiwiZmlsaWFsIjoiR
mF6ZW5kYSBQbGFuZXN0ZSIsImxvY2FsIjpudWxsLCJleHAiOiIyMDIyLTA2LTEwIDEyOjQ2OjA1In0=.gYiM8Zi
Bene9Fg\/PUrBIR8020SBy7U8hSvnTr8NPQEE=' \
--cookie PHPSESSID=cd1ko0dpuj7h3dl07qo7fk56om \
--data '[
{
"RegistroAtivo": "1",
"CodigoOs": "100",
"CodigoItem": "100",
- 22 -
"QtdRequisitada": "100"
}
]'
Response
[
{
"type": "success",
"msg": "Cadastro de OS peca inserido com sucesso",
"field": "",
"id": "4"
}
]
OS Servico
Tabela de OS servico
Campo Descrição API Tipo de dados Chave Campo Descrição
Primária(PK) Obrigatório
ATIVO RegistroAtivo VARCHAR(100) Não Sim Registro ativo
1-Sim;0-Não
FK_OS CodigoOs VARCHAR(100) Não Sim Código da OS (FK)
FK_SERVICO CodigoServico VARCHAR(100) Não Sim Código do serviço (FK)
TEMPO_PADRAO TempoPadrao VARCHAR(100) Não Não Tempo padrão do serviço na OS
OS Servico - API
Request
curl --request POST \
--url [Link] \
--header 'Content-Type: application/json' \
--header 'authorization:
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzbGNhZ3JpY29sYS5oLnNpbW92YS5jbG91ZCIsIm5hb
WUiOiJhcGl3c0BzaW1vdmEuY29tLmJyIiwiZW1haWwiOiJhcGl3c0BzaW1vdmEuY29tLmJyIiwiZmlsaWFsIjoiR
mF6ZW5kYSBQbGFuZXN0ZSIsImxvY2FsIjpudWxsLCJleHAiOiIyMDIyLTA2LTEwIDEyOjQ2OjA1In0=.gYiM8Zi
Bene9Fg\/PUrBIR8020SBy7U8hSvnTr8NPQEE=' \
--cookie PHPSESSID=cd1ko0dpuj7h3dl07qo7fk56om \
--data '[
- 23 -
{
"RegistroAtivo": "1",
"CodigoOs": "100",
"CodigoServico": "100",
"TempoPadrao": "60"
}
]'
Response
[
{
"type": "success",
"msg": "Cadastro de OS servico inserido com sucesso",
"field": "",
"id": "4"
}
]
Integração
Na integração é feito um GET a partir do ID que é enviado o sincronismo o mesmo deve ser retornado
quando se quer obter as informações de volta para o sistema de terceiro.
A url é [Link]
{entidade}: é configurado a partir da necessidade do cliente
- 24 -
BOLETIM
Tabela de boletim
Campo Descrição API Tipo de dados Chave Primária(PK) Campo Obrigatório Descrição
ID INT(20) Sim Sim ID auto increment
FILIAL Filial VARCHAR(100) Sim Sim Filial
LOCAL Local VARCHAR(100) Sim Sim Local
SEQ_DB_DEVICE SequencialBoletim VARCHAR(100) Sim Sim Sequencial do boletim
INI_DH DataInicialBoletim VARCHAR(100) Não Sim Data/hora inicial do
boletim
FIM_DH DataFinalBoletim VARCHAR(100) Não Sim Data/hora final do
boletim
ATIVO BoletimAtivo VARCHAR(100) Não Sim Boletim ativo
INI_FIM_DIFF_SEC HorasBoletim VARCHAR(100) Não Sim Quantidade de tempo do
boletim
FK_NOME_FUNCIONARIO NomeFuncionario VARCHAR(100) Não Sim Nome do funcionário (FK)
FK_CRACHA_FUNCIONAR CrachaFuncionario VARCHAR(100) Não Sim Crachá do funcionário
IO (FK)
IMPORTANTE!! Para a API de boletim as informações de técnico são retornadas de acordo com a filial
autenticada.
Request
curl --request GET \
--url [Link] \
--header 'Content-Type: application/json' \
--header 'authorization:
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzbGNhZ3JpY29sYS5oLnNpbW92YS5jbG91ZCI
sIm5hbWUiOiJhcGl3c0BzaW1vdmEuY29tLmJyIiwiZW1haWwiOiJhcGl3c0BzaW1vdmEuY29tLmJyIiwiZ
mlsaWFsIjoiRmF6ZW5kYSBQbGFuZXN0ZSIsImxvY2FsIjpudWxsLCJleHAiOiIyMDIyLTA2LTE1IDA4Oj
QyOjExIn0=.Nw5\/hX9jhuGc6t71EBxUUL2npVFsXozAM5MWi0DdlgI=' \
--cookie PHPSESSID=cd1ko0dpuj7h3dl07qo7fk56om \
--data '{
"periodo": {
"begin": "2022-02-08 13:13:38",
"end" : "2022-02-08 23:59:59"
}
}'
- 25 -
Response
[
{
"Filial": "Fazenda Planeste",
"Local": "MA-Manutenção",
"SequencialBoletim": "1644348820172",
"DataInicialBoletim": "2022-02-08 16:30:14",
"DataFinalBoletim": "2022-02-09 04:28:22",
"BoletimAtivo": "1",
"HorasBoletim": "43088",
"NomeFuncionario": "JOSE CARLOS MENDES CARDOSO",
"CrachaFuncionario": "192698"
},
{
"Filial": "Fazenda Planeste",
"Local": "MA-Manutenção",
"SequencialBoletim": "1644349151181",
"DataInicialBoletim": "2022-02-08 16:35:43",
"DataFinalBoletim": "2022-02-09 05:01:53",
"BoletimAtivo": "1",
"HorasBoletim": "44770",
"NomeFuncionario": "CAIO FERNANDO ASSUNCAO LIMA",
"CrachaFuncionario": "194760"
}
Nisso é enviada todas informações do boletim que estão configuradas para retorno.
APONTAMENTO
Tabela de apontamento do técnico
Campo Descrição API Tipo de dados Chave Primária(PK) Campo Obrigatório Descrição
ID INT(20) Sim Sim ID auto increment
FILIAL Filial VARCHAR(100) Sim Sim Filial
LOCAL Local VARCHAR(100) Sim Sim Local
SEQ_DB_DEVICE SequencialApontamento VARCHAR(100) Sequencial do
apontamento
- 26 -
FK_SEQ_DB_DEVICE SeqBoletim VARCHAR(100) Sim Sim Sequencial do boletim
(FK)
FK_INI_DH DataInicialBoletim VARCHAR(100) Não Sim Data/hora inicial do
boletim
FK_FIM_DH DataFinalBoletim VARCHAR(100) Não Sim Data/hora final do
boletim
ATIVO ApontamentoAtivo VARCHAR(100) Não Sim Apontamento ativo
1-Sim;0-Não
INI_DH DataInicialApontamento Data/hora inicial do
apontamento
FIM_DH DataFinalApontamento VARCHAR(100) Não Sim Data/hora final do
apontamento
FK_NOME_FUNCIONARIO NomeFuncionario VARCHAR(100) Não Sim Nome do funcionário (FK)
FK_CRACHA_FUNCIONAR CrachaFuncionario VARCHAR(100) Não Sim Crachá do funcionário
IO (FK)
FK_CODIGO_OS CodigoOs VARCHAR(100) Não Sim Código da OS (FK)
OS_CRIADA OsCriada VARCHAR(100) Não Sim OS Criada
CODIGO_OS CodigoOsApontamento VARCHAR(100) Não Sim Código OS
FLAG_DESLOCAMENTO FlagDeslocamento VARCHAR(100) Não Sim Deslocamento?
1-Sim;0-Não
TIPO_APONTAMENTO TipoApontamento VARCHAR(100) Não Sim Tipo de apontamento
1:Serviço;2:Parada
FK_SERVICO CodigoServico VARCHAR(100) Não Sim Código do serviço (FK)
FK_PARADA DescricaoParada VARCHAR(100) Não Sim Descrição da parada (FK)
INI_FIM_DIFF_SEC HorasApontamento VARCHAR(100) Não Sim Quantidade de tempo do
apontamento
FK_COMPONENTE DescricaoComponente VARCHAR(100) Não Sim Descrição do
componente (FK)
FK_SUBSISTEMA DescricaoSubsistema VARCHAR(100) Não Sim Descrição do subsistema
(FK)
FK_SISTEMA DescricaoSistema VARCHAR(100) Não Sim Descrição do sistema (FK)
FK_CHASSI Chassi VARCHAR(100) Não Sim Chaddo do ativo (FK)
IMPORTANTE!! Para a API de apontamento as informações de técnico são retornadas de acordo com a
filial autenticada.
Request
curl --request GET \
--url [Link] \
--header 'Content-Type: application/json' \
- 27 -
--header 'authorization:
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzbGNhZ3JpY29sYS5oLnNpbW92YS5jbG91ZCI
sIm5hbWUiOiJhcGl3c0BzaW1vdmEuY29tLmJyIiwiZW1haWwiOiJhcGl3c0BzaW1vdmEuY29tLmJyIiwiZ
mlsaWFsIjoiRmF6ZW5kYSBQbGFuZXN0ZSIsImxvY2FsIjpudWxsLCJleHAiOiIyMDIyLTA2LTE1IDA4Oj
QyOjExIn0=.Nw5\/hX9jhuGc6t71EBxUUL2npVFsXozAM5MWi0DdlgI=' \
--cookie PHPSESSID=cd1ko0dpuj7h3dl07qo7fk56om \
--data '{
"periodo": {
"begin": "2022-02-08 13:13:38",
"end" : "2022-02-08 23:59:59"
}
}'
Response
[
{
"Filial": "Fazenda Planeste",
"Local": "MA-Manutenção",
"SequencialApontamento": "1644337228622",
"SeqBoletim": "1644332465909",
"DataInicialBoletim": "2022-02-08 11:57:29",
"DataFinalBoletim": "2022-02-09 21:10:19",
"DataInicialApontamento": "2022-02-08 13:17:00",
"DataFinalApontamento": "2022-02-08 14:03:18",
"ApontamentoAtivo": "1",
"CodigoOs": "",
"OsCriada": "",
"CodigoOsApontamento": "",
"FlagDeslocamento": "0",
"TipoApontamento": "2",
"CodigoServico": "",
"DescricaoParada": "Deslocamento",
"HorasApontamento": "2778",
"DescricaoComponente": "",
"DescricaoSubsistema": "",
"DescricaoSistema": "",
"Chassi": ""
},
{
"Filial": "Fazenda Planeste",
"Local": "MA-Manutenção",
- 28 -
"SequencialApontamento": "1644337343726",
"SeqBoletim": "1644318367529",
"DataInicialBoletim": "2022-02-08 08:02:47",
"DataFinalBoletim": "2022-02-08 18:40:56",
"DataInicialApontamento": "2022-02-08 13:19:04",
"DataFinalApontamento": "2022-02-08 17:33:59",
"ApontamentoAtivo": "1",
"CodigoOs": "",
"OsCriada": "991644328184187",
"CodigoOsApontamento": "1644328184187",
"FlagDeslocamento": "0",
"TipoApontamento": "1",
"CodigoServico": "CA-1.4.1",
"DescricaoParada": "",
"HorasApontamento": "15295",
"DescricaoComponente": "Coletor",
"DescricaoSubsistema": "Coletor",
"DescricaoSistema": "Motor\/Arrefecimento\/Combustível",
"Chassi": "1CQS790AAK013012"
}
]
- 29 -