Ir para conteúdo
  • Cadastre-se

Gm Saldanha

Membros
  • Total de ítens

    6
  • Registro em

  • Última visita

Tudo que Gm Saldanha postou

  1. Ola a todos, preciso de ajuda pra saber se o processo é valido. Abri a Dll GeradorCIOTShared.dll no ILSpy e ela foi compilada como uma DLL .NET. dentro dela temos: GeradorCIOTService_v3 ValidarCIOT GerarCIOT AutenticarEObterTokenAsync ObterApiKey. Ou seja a DLL possui autenticação própria. Então achei o token que é fixo : 3UwR]CYTeAQRF , pra usar em URL := 'https://mtcuybq605.execute-api.sa-east-1.amazonaws.com/api-ciot-prd/GeradorCIOT/token'; Depois disso montei o codigo: procedure TFRMMDFENEW.BitBtn31Click(Sender: TObject); var Http: TIdHTTP; SSL: TIdSSLIOHandlerSocketOpenSSL; JsonEnvio: TStringStream; Resposta: string; URL: string; Token: string; JsonResposta: TJSONObject; begin URL := 'https://mtcuybq605.execute-api.sa-east-1.amazonaws.com/api-ciot-prd/GeradorCIOT/token'; Http := TIdHTTP.Create(nil); SSL := TIdSSLIOHandlerSocketOpenSSL.Create(nil); SSL.SSLOptions.Method := sslvTLSv1_2; SSL.SSLOptions.SSLVersions := [sslvTLSv1_2]; try Http.IOHandler := SSL; Http.Request.ContentType := 'application/json'; Http.Request.Accept := 'application/json'; // vamos descobrir se a chave está correta Http.Request.CustomHeaders.Values['chave'] := '3UwR]CYTeAQRF'; JsonEnvio := TStringStream.Create('{}', TEncoding.UTF8); try Resposta := Http.Post(URL, JsonEnvio); MemoCIOT.Lines.Add('HTTP: ' + IntToStr(Http.ResponseCode)); MemoCIOT.Lines.Add('Resposta:'); MemoCIOT.Lines.Add(Resposta); finally JsonEnvio.Free; end; except on E: Exception do begin MemoCIOT.Lines.Add('ERRO: ' + E.Message); if Assigned(Http.Response) then MemoCIOT.Lines.Add('HTTP: ' + IntToStr(Http.ResponseCode)); end; end; JsonResposta := TJSONObject.ParseJSONValue(Resposta) as TJSONObject; if JsonResposta <> nil then begin try memociot.Lines.Add('=== Dados ==='); memociot.Lines.Add('token: ' + JsonResposta.GetValue<string>('token', '')); token:= JsonResposta.GetValue<string>('token', ''); finally JsonResposta.Free; end; end; URL :='https://mtcuybq605.execute-api.sa-east-1.amazonaws.com/api-ciot-prd/GeradorCIOT/gerar'; Http.Request.CustomHeaders.Values['Authorization'] := 'Bearer ' + Token; JsonEnvio := TStringStream.Create( '{"cpfCnpj":"'+OnlyNumbers(frmmodule.tblempresaCNPJ.Text)+'"}', TEncoding.UTF8 ); Resposta := Http.Post(URL, JsonEnvio); MemoCIOT.Lines.Add('Resposta: ' + Resposta); SSL.Free; Http.Free; end; Que vai retornar este resultado: HTTP: 200 Resposta: {"token":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1bmlxdWVfbmFtZSI6IkV4ZWN1dGF2ZWxDbGllbnRlIiwibmJmIjoxNzgxMTgwNzQ3LCJleHAiOjE3ODExODQzNDcsImlhdCI6MTc4MTE4MDc0NywiaXNzIjoiR2VyYWRvckNJT1RBUEkiLCJhdWQiOiJHZXJhZG9yQ0lPVENsaWVudCJ9.XEk3ftq3a7wiHRTaHTBqeV6Niax4W4sUXxZ_NN7QiRU"} === Dados === token: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1bmlxdWVfbmFtZSI6IkV4ZWN1dGF2ZWxDbGllbnRlIiwibmJmIjoxNzgxMTgwNzQ3LCJleHAiOjE3ODExODQzNDcsImlhdCI6MTc4MTE4MDc0NywiaXNzIjoiR2VyYWRvckNJT1RBUEkiLCJhdWQiOiJHZXJhZG9yQ0lPVENsaWVudCJ9.XEk3ftq3a7wiHRTaHTBqeV6Niax4W4sUXxZ_NN7QiRU Resposta: {"sucesso":true,"mensagem":"CIOT gerado com sucesso","dados":{"ciot":"520005524641","cnpj":"xx.xxx/xxxx-xx","dataGeracao":"2026-06-11T12:25:47.8038116+00:00"},"erros":null} , consegui consultar o ciot normalmente. Com isso não vou precisar usar o aplicativo da ANTT indiretamente, mas quero saber se não vai haver algum problema com isso, Obrigado.
  2. Só conseguir gerar um IdoperacaoTransporte valido usando o aplicativo https://www.gov.br/antt/pt-br/assuntos/cargas/ciot-para-todos-1/documentos-tecnicos/piso-minimo-ciot em producao com a Dll, de posse do codigo funcionou normal: Retorno: Status Code: 200 Resposta: {"IdOperacaoTransporte":"520004603581","CodigoVerificador":"3558","Protocolo":"5200046035813558","Codigo":"110","Mensagem":"Dados inseridos com sucesso!","AvisoTransportador":null}
  3. Alguem tem alguma novidade, consegui consumir todos os endpoints em homologação, mas em producao nao consigo gerar o IdOperacao: URL: https://appservices.antt.gov.br/pefServices/gerar Status Code: 500
  4. Ola, Marcos. O Valor foi gerado pela rota https://appservices-hml.antt.gov.br/pefServices/gerar que é de homologação, como fiz no codigo anexo acima e gera o json de saida: URL: https://appservices-hml.antt.gov.br/pefServices/gerar Status Code: 200 Resposta Bruta: {"Sucesso":true,"Mensagem":"CIOT gerado com sucesso","Dados":{"CIOT":"560000157333","CpfCnpj":"xx.xxx/xxxx-xx","DataGeracao":"2026-06-04T09:36:48.5855354"},"Erros":null} Mensagem do servidor: CIOT gerado com sucesso , >>> CIOT GERADO COM SUCESSO: 560000157333 <<< , mas se for feito em contingencia o prazo para validar posteriormente é de 7 dias, o problema é se a validação não der certo. Gostaria de saber se o codigo que estou usando com o acbrmdfe pra validar o certificado esta funcionando.
  5. Ainda continuo tentando, vou postar um txt com o codigo que ja tenho para nao poluir o forum. Ps: 01- Estou validando usando o AcbrMdfe, achei mais simples. 02 - homologação: https://appservices-hml.antt.gov.br/pefServices/api/ , Produção: https://appservices.antt.gov.br/pefServices/api/. Se alguem puder dar uma olhada e dar um feedback, agradeço. Se faltar algo pode pedir aqui. Ate.Codigo geracao CIOT.txt
  6. Olá a todos, gostaria de saber se alguem obteve exito, se pode informar os endpoints. tentei gerar o Id , URL := 'https://appservices.antt.gov.br/pefServices/gerar'; , mas o retorno foi inviavel: === GERANDO CIOT === JSON Enviado: {"CpfCnpj":"31383970000147"} Status Code: 500 . E para a geracao do Ciot estou usando: https://appservices.antt.gov.br/pefServices/api/DeclaracaoOperacaoTransporte , mas ainda tenho varios bugs no meu codigo: {"IdOperacaoTransporte":null,"CodigoVerificador":null,"Protocolo":"E98000002677917","Codigo":"205,208,225","Mensagem":"[\"Rejeição: O campo IdOperacaoTransporte é inválido.\",\"Rejeição: É obrigatório informar ao menos um implemento quando o veículo automotor for do tipo cavalo-trator.\",\"Rejeição: CPF/CNPJ do destinatário obrigatório para o tipo de operação informado.\",\"Rejeição: O(s) contratante(s) da carga fracionada não pode(m) ser igual(is) ao contratante da operação de transporte.\",\"Rejeição: A data de início da viagem não pode ser inferior à data atual.\",\"Rejeição: A data de início da viagem não pode ser inferior à data de declaração.\"]","AvisoTransportador":null} . Se alguem tiver e puder fornecer mais informações, agradeço. Ps: Se nao houver problemas posso postar o codigo que estou utilizando no Xe8.
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.