TipoMovimentacao
Cria, consulta e exclui Tipos de Movimentação Interna (tabela
SF5) via wrapper U_MT230Exe sobre o
MsExecAuto da rotina padrão MATA230. A chave
externa é o próprio F5_CODIGO (3 caracteres), informado
via path. Operação PUT ainda não exposta — ver
PROXIMOS-PASSOS.md no diretório do endpoint.
https://erpapi.jetme.com.br/api/99/01
Empresa 99 · Filial 01
Endpoint OAuth2
Sem credenciais? Você pode pegar o token rodando
./src/scripts/get-token.sh na biblioteca e
colar o access_token aqui no campo de refresh
(ou clique em "Logout" para limpar e voltar ao fake).
Convenções
Identificador externo. Todas as rotas
/WsSF5/INCLUIR/{codigo}, /WsSF5/EXCLUIR/{codigo}
e /WsSF5/{codigo} recebem o F5_CODIGO
(até 3 caracteres) no path. A chave é também a chave externa do
recurso — não há identificador interno separado.
Códigos reservados. Os valores 499
(entrada automática interna) e 999 (saída automática
interna) são uso exclusivo do Protheus e rejeitados com
400 antes mesmo da chamada ao MATA230.
Convenção de faixa. Por convenção interna do
ERP, códigos 001–499 são usados para
Devolução e Produção; códigos
501–999 para Requisição. A
regra não é imposta pelo endpoint, mas mantê-la facilita o
consumo posterior por MATA241.
Defaults para campos obrigatórios da SF5. Em
build 240223P, vários campos da SF5 são obrigatórios para o
MsExecAuto aceitar o cadastro. O endpoint aplica
defaults seguros automaticamente quando o payload omite os
campos: F5_APROPR="N", F5_ATUEMP="N",
F5_TRANMOD="N", F5_VAL="N",
F5_QTDZERO="2", F5_AGREGCU="1",
entre outros. Veja o schema TipoMovPayload
para a lista completa.
Operação PUT não disponível. A
alteração via MATA230 Op=4 não está exposta nesta
revisão. Para alterar, exclua e recrie. Roadmap registrado em
src/api/TipoMovimentacao/PROXIMOS-PASSOS.md.
TipoMovimentacao
CRUD porF5_CODIGO
Descrição
Retorna o tipo de movimentação pelo F5_CODIGO informado
no path. Aplica filtro de filial (xFilial("SF5")) e
varre todos os campos F5_* do registro localizado.
Útil para descobrir o schema real da SF5 antes de montar um
POST.
Path parameter
Chamada de exemplo
GET https://erpapi.jetme.com.br/api/99/01/WsSF5/001 Authorization: Bearer eyJhbGciOiJIUzI1NiIs… Accept: application/json
Respostas
{ success: true, data: TipoMovimentacao } — data traz todos os campos F5_* serializados como string.Descrição
Inclui um novo Tipo de Movimentação Interna via
MATA230 em modo 3
(Op=3, inclusão). O F5_CODIGO é
informado no path; o restante (descrição em
F5_TEXTO, tipo em F5_TIPO e flags
operacionais) vai no body.
- Whitelist de campos: ver
TipoMovPayload. - Defaults aplicados automaticamente para campos obrigatórios omitidos.
- Códigos
499e999são rejeitados antes do MATA230.
Path parameter
499 nem 999.Request body
CAMPOS_ALLOW. Schema
completo em TipoMovPayload.
Obrigatórios: F5_TEXTO e F5_TIPO.
POST https://erpapi.jetme.com.br/api/99/01/WsSF5/INCLUIR/900 Authorization: Bearer eyJhbGciOiJIUzI1NiIs… Content-Type: application/json Accept: application/json { "F5_TEXTO": "TM TESTE _TEST_", "F5_TIPO": "R" }
POST https://erpapi.jetme.com.br/api/99/01/WsSF5/INCLUIR/901 Authorization: Bearer eyJhbGciOiJIUzI1NiIs… Content-Type: application/json Accept: application/json { "F5_TEXTO": "REQUISICAO PRODUCAO", "F5_TIPO": "R", "F5_APROPR": "S", "F5_ATUEMP": "S", "F5_VAL": "S" }
POST https://erpapi.jetme.com.br/api/99/01/WsSF5/INCLUIR/401 Authorization: Bearer eyJhbGciOiJIUzI1NiIs… Content-Type: application/json Accept: application/json { "F5_TEXTO": "PRODUCAO ORDEM", "F5_TIPO": "P", "F5_APROPR": "S", "F5_AGREGCU": "1" }
Respostas
CrudResponse com data.F5_CODIGO e data.F5_TEXTO.499/999), F5_TEXTO ausente, F5_TIPO fora do enum R/D/P, body vazio ou JSON malformado. Tier: validation-error.MATA230 rejeitou a inclusão (validação SX3, gatilho ou regra de localização). Mensagem do NomeAutoLog em message. Tier: business-error.Descrição
Exclui o Tipo de Movimentação via MATA230 em modo
5 (Op=5). Antes da chamada, o endpoint
executa DbSeek em SF5 para retornar
404 claro quando o código não existe — sem isso, o
MsExecAuto devolveria um erro genérico.
O MATA230 rejeita exclusões quando o tipo está
referenciado em movimentos da SD3 (estoque) ou
em outras tabelas de movimento. Nesse caso o endpoint
responde 422 com a mensagem do
NomeAutoLog.
Path parameter
Chamada de exemplo
DELETE https://erpapi.jetme.com.br/api/99/01/WsSF5/EXCLUIR/900 Authorization: Bearer eyJhbGciOiJIUzI1NiIs… Accept: application/json
Respostas
CrudResponse.MATA230 rejeitou a exclusão (tipo referenciado por movimentos da SD3 ou outras tabelas dependentes). Tier: business-error.Schemas
Definições canônicas — campos com origemSX3 rastreável
GET /WsSF5/{codigo}. O
endpoint varre todos os campos F5_* do registro e
serializa como string (cValToChar). Os campos
abaixo são os mais relevantes para integração.
xFilial).RDPS=Sim, N=Não.SNS=Sim, N=Não.SNS=Sim, N=Não.SNS=Sim, N=Não.SNSNSN1=Sim, 2=Não.121=Sim, 2=Não.121=Sim, 2=Não.121=Sim, 2=Não.121=Sim, 2=Não.12POST /WsSF5/INCLUIR/{codigo}.
Whitelist definida em CAMPOS_ALLOW no .prw.
Obrigatórios: F5_TEXTO e F5_TIPO. Os
demais campos têm defaults aplicados pelo endpoint quando
omitidos (ver Convenções).
R=Requisição, D=Devolução, P=Produção.RDP"N".SN"N".SN"N".SN"N".SN"N".SN"N".SN"2".12"1".12"2".12"2".12"2".12POST e
DELETE. Em POST, data traz
F5_CODIGO e F5_TEXTO; em
DELETE, data é string vazia.
true em respostas de sucesso.POST, objeto { F5_CODIGO, F5_TEXTO }. Em DELETE, string vazia.MATA230, message traz a mensagem
acumulada do NomeAutoLog em formato apresentável.
false em erros.