A proposta desse estudo é visualizar uma maneira em que a retaguarda envie arquivos de dados ao Sync Server, que serão processados pelo Sync Client no PDV. Isso não substitui a API, mas complementa o fluxo para situações em que seja mais eficiente carregar os dados dessa maneira.

Desafios gerados para esse estudo foram:

SOLUÇÃO PROPOSTA - SUBIDA DE ARQUIVO JSON CRIPTOGRAFADO BI FORMATO AES-256 CONTENDO TODOS OS DADOS PARA BAIXA

Na solução proposta foi desenhado o seguinte escopo:

Para esse fluxo, foi considerado o envio do arquivo pelo Bucked Cloud. No teste realizado, foi utilizado o bucket do GCP (biblioteca Google.Cloud.Storage).

Para o uso do bucket de arquivos do GCP, deve ser considerado as seguintes observações:

PRINCIPAIS RECURSOS:

✅Armazenamento escalável para grandes volumes de dados
Alto desempenho para leitura e escrita de arquivos
Suporte a múltiplos tipos de armazenamento (Standard, Nearline, Coldline e Archive)
Integração com serviços Google (BigQuery, AI, Kubernetes, etc.)
Segurança com criptografia automática e permissões IAM
Versionamento e backup de arquivos

TIPOS DE STORAGE E CASOS DE USO:

Tipo de ArmazenamentoCusto ($/GB/mês)RecuperaçãoUso Ideal
Standard$$$ (Alto)RápidoDados acessados frequentemente
Nearline$$ (Médio)Leve atrasoBackups, arquivamento de médio prazo
Coldline$ (Baixo)DemoradoDados raramente acessados (1x por ano)
Archive$ (Muito Baixo)Muito lentoArquivamento de longo prazo

 Exemplo de Preços (EUA, Março/2024):

Para o nosso caso, o tipo de armazenamento standard é o mais recomendado, visto que precisamos de um processo que a subida de arquivo seja feita de forma rápida e que o mesmo seja acessado frequentemente (subindo o arquivo uma vez e baixando o arquivo apenas uma vez na máquina local para o recebimento dos dados via arquivo).

Vantagens do Google Cloud Storage

Escalabilidade → Suporta petabytes de dados sem limitação de tamanho.
Segurança Avançada → Dados criptografados e integração com IAM.
Baixa Latência → Alta performance para leitura e escrita de arquivos.
Multi-Regional → Armazene dados em várias regiões para redundância.
Integração com BigQuery, AI e Kubernetes.

Desvantagens do Google Cloud Storage

Custo pode ser alto para grandes volumes de dados em classes Standard.
Cobrança por requisições e downloads → Cada leitura/escrita pode gerar custos extras.
Necessidade de autenticação → Exige configuração de chaves e permissões via IAM.
Recuperação lenta em Coldline/Archive → Pode levar horas para acessar arquivos arquivados.

POC - Testando a subida e download de um arquivo

No teste foi criado duas APIs simulando a subida e download de um arquivo via bucket cloud do GCP. 

No GCP foi criado um bucket onde fosse possível armazenar os arquivos subidos através da API.



Para a criação do bucket foi necessário colocar permissão de envio/baixa de arquivo para o usuário utilizado no micro serviço de Controle que faz o acesso ao diretório através da aplicação.

Após a criação do bucket, foi criado as APIs POST para envio do arquivo e a API GET para a baixa do arquivo.

API POST - Carga Loja - Envio:


API GET - Baixa do Arquivo:


MÉTODO PARA ENVIO DE ARQUIVOS CRIPTOGRAFADOS USANDO O MODELO AES-256

Para a solução proposta, é necessário que o arquivo enviado esteja criptografado. Para isso, iremos utilizar o modelo AES, já utilizado dentro do PDV SYNC, na criptografia de senhas do banco de dados dos serviços do client. 

Para isso, podemos utilizar o modelo abaixo para criptografia do arquivo, uma vez que o arquivo enviado já tem que estar devidamente criptografado.

using System;
using System.IO;
using System.Security.Cryptography;
using System.Text;

class AESFileEncryption
{
    static void Main()
    {
        string filePath = "C:\\Temp\\arquivo.txt"; // Arquivo original
        string encryptedFilePath = "C:\\Temp\\arquivo_encrypted.aes"; // Arquivo criptografado
        string decryptedFilePath = "C:\\Temp\\arquivo_decrypted.txt"; // Arquivo descriptografado

        // Gerar chave e IV AES-256
        byte[] key = GenerateRandomKey(32); // 256 bits
        byte[] iv = GenerateRandomKey(16);  // 128 bits

        Console.WriteLine($"🔑 Chave AES-256: {Convert.ToBase64String(key)}");
        Console.WriteLine($"🌀 IV: {Convert.ToBase64String(iv)}");

        // Criptografar arquivo
        EncryptFile(filePath, encryptedFilePath, key, iv);
        Console.WriteLine("✅ Arquivo criptografado com sucesso!");

        // Descriptografar arquivo
        DecryptFile(encryptedFilePath, decryptedFilePath, key, iv);
        Console.WriteLine("✅ Arquivo descriptografado com sucesso!");
    }

    // Método para gerar chave e IV aleatórios
    static byte[] GenerateRandomKey(int size)
    {
        using (var rng = new RNGCryptoServiceProvider())
        {
            byte[] key = new byte[size];
            rng.GetBytes(key);
            return key;
        }
    }

    // Método para descriptografar um arquivo
    public static void DecryptFile(string inputFile, string outputFile, byte[] key, byte[] iv)
    {
        using (Aes aes = Aes.Create())
        {
            aes.Key = key;
            aes.IV = iv;
            aes.Mode = CipherMode.CBC;
            aes.Padding = PaddingMode.PKCS7;

            using (FileStream fsInput = new FileStream(inputFile, FileMode.Open))
            using (CryptoStream cryptoStream = new CryptoStream(fsInput, aes.CreateDecryptor(), CryptoStreamMode.Read))
            using (FileStream fsOutput = new FileStream(outputFile, FileMode.Create))
            {
                cryptoStream.CopyTo(fsOutput);
            }
        }
    }
}

BAIXA DE ARQUIVOS NO CLIENT

Para a baixa de arquivo de carga, o modelo ideal para a proposta seria a seguinte:

CONSIDERAÇÕES FINAIS + SEPARAÇÃO DE ISSUES PARA CADA TAREFA

O solução proposta unindo todos esses pontos é eficiente, rápido e eficaz, uma vez que o processo de leitura/gravação de dados por arquivo já está implementado no client, com a baixa de dados via Function, e com o modelo de dados proposto para o envio do arquivo para o server, vai gerar mais fluidez para o processo de carga inicial de uma loja. Dito isso, as issues de história que devemos considerar para que esse modelo acima seja seguido são:

  1. Criação da API POST para envio do Arquivo, inclusão da validação do arquivo criptografado + criação da tabela no Controle para a manutenção do envio desses arquivos, incluído campos para status de processamento e logs de mensagens
  2. Processamento de Arquivo no PDV SYNC SERVER Controle
  3. Criação da API GET para a baixa do arquivo no Client
  4. Criação da API PUT para a confirmação da baixa do arquivo e envio de logs referentes ao seu processamento 
  5. Alteração do serviço client Down para a baixa do arquivo enviado no server, leitura do arquivo criptografado, separação dos registros por tipo de dados e acionamento da baixa de dados via function


EXEMPLO DO ARQUIVO COM CONTEÚDO DOS DADOS

[	
	{
		"CodigoTipo": "12",
		"TipoDado": "AssociacaoProdutoClassificacao",
		"Dados": [
			{
				"ProdutoIdRetaguarda": "PRD1000010", //string
				"ClassificacaoProdutoIdRetaguarda": "APCP1000010", //string
				"Ordem": 1, //int
				"Situacao": 1, //int
				"IdRetaguarda": "APC1000010", //string
				"Id": 0, //long
				"DataCadastro": "0001-01-01T00:00:00", //DateTime
				"DataAtualizacao": "0001-01-01T00:00:00" //DateTime
			}
		]
	},
	{ 
		"CodigoTipo": "11",
		"TipoDado": "ClassificacaoProduto",
		"Dados": [
			{
				"Descricao": "MALHAS", //string
				"Nome": "MALHAS E TECIDOS", //string
				"Sigla": "MT", //string
				"ClassificacaoProdutoPaiIdRetaguarda": "", //string 
				"Situacao": 1, //integer
				"IdRetaguarda": "CP01", //string
				"Id": 0, //long
				"DataCadastro": "2025-04-01T20:41:40.2134Z", //DateTime
				"DataAtualizacao": "2025-04-01T20:41:40.213426Z" //DateTime
			}
		]
	},
	{
		"CodigoTipo": "0",
		"TipoDado": "Cliente",
		"Dados": [
			{
				"Nome": "Carolina Dias Herrera", //string
				"Endereco": "", //string
				"Numero": "", //string
				"Complemento": "", //string
				"Bairro": "IPANEMA", //string
				"Cidade": "Rio de Janeiro", //string
				"Estado": "", //string
				"Cep": "1350065005", //string
				"Telefone": "", //string
				"Celular": "21955058770", //string
				"Email": "[email protected]", //string
				"DataNascimento": "1987-01-15T16:58:17.727-02:00", //DateTime
				"PessoaFisica": 0, //integer
				"CpfCnpj": "22665113007", //string
				"RgInscricao": "418509307", //string
				"Sexo": 0, //integer
				"EstadoCivil": 0, //integer
				"AvatarUrl": "", //string
				"Enviarpnet": 0, //integer 
				"Atividade": "", //string
				"Cracha": "", //string
				"IdRetaguardaProfissional": null, //string
				"IdRetaguardaRamoAtividade": null, //string
				"IdRetaguardaRedeCliente": null, //string
				"IdRetaguardaClientePrincipal": null, //string
				"IdRetaguardaPraca": null, //string
				"IdRetaguardaRegiao": null, //string
				"UtilizaPrecoAtacado": false, //booleano
				"Situacao": 1, //integer
				"IdRetaguarda": "CLI101003", //string
				"Id": 0, //long
				"DataCadastro": "2025-04-01T20:33:26.808123Z", //DateTime
				"DataAtualizacao": "2025-04-01T20:33:26.808154Z" //DateTime
			}
		]
	},
	{
		"CodigoTipo": "56",
		"TipoDado": "ClienteEndereco",
		"Dados": [
			{
				"Bairro": "PARAISO", //string 
				"Cep": "16500251", //string
				"Cidade": "ARAÇATUBA", //string
				"ClienteIdRetaguarda": "CLI101001", //string
				"Complemento": "", //string
				"Endereco": "AVENIDA MARCÍLIO DIAS", //string
				"Estado": "SP", //string
				"IdCliente": 6082, //long
				"Numero": "3270", //string
				"DescricaoTipo": "RESIDENCIAL", //string
				"EnviarPnet": 0, //integer
				"Situacao": 1, //integer
				"IdRetaguarda": "CLIEND1001002", //string
				"Id": 0, //long
				"DataCadastro": "2025-04-01T21:07:45.77272Z", //DateTime
				"DataAtualizacao": "2025-04-01T21:07:45.77272Z" //DateTime
			}
		]
	},
	{
		"CodigoTipo": "12",
		"TipoDado": "CodigoProduto",
		"Dados": [
			{
				"ProdutoIdRetagurada": "PRD1000010", //string
				"Codigo": "10011004", //string
				"CodigoExterno": null, //string
				"Descricao": "PRODUTO TESTE - AUTENTICADOR", //string
				"Situacao": 0, //integer
				"IdRetaguarda": "CPPRD1000010", //string
				"Id": 0, //long
				"DataCadastro": "2024-03-28T13:13:11.127Z", //DateTime
				"DataAtualizacao": "2024-03-28T13:13:11.127Z" //DateTime
			}
		]
	},
	{
		"CodigoTipo": "16",
		"TipoDado": "DadoComplementarPagto",
		"Dados": [
			{
				"Descricao": "TESTE", //string
				"Tipo": 0, //Integer
				"Obrigatorio": 10, //Integer
				"Tamanho": 10, //Integer
				"TipoCampoTef": null, //Integer
				"Situacao": 1, //Integer
				"IdRetaguarda": "DCP00001", //String
				"Id": 0, //Long
				"DataCadastro": "2025-04-01T20:52:48.188076Z", //DateTime
				"DataAtualizacao": "2025-04-01T20:52:48.188077Z" //DateTime
			}
		]
	},
	{
		"CodigoTipo": "14",
		"TipoDado" : "Estoque",
		"Dados": [
			{
				"Saldo": 50.0, //decimal
				"Sincronizado": 1, //Integer
				"ProdutoIdRetaguarda": "7891132001453-55", //String
				"ProdutoLote": [
					{
						"Quantidade": 10.0, //decimal
						"IdentificacaoLote": "string" //String
						"DataValidade": "2025-04-01T20:43:54.873766Z", //DateTime
						"EstoqueIdRetaguarda": "string", //string
						"IdRetaguarda": "string", //string
						"Situacao": 0, //integer
						"DataCadastro": "2025-04-01T20:43:54.873766Z", //DateTime
						"DataAtualizacao": "2025-04-01T20:43:54.873766Z" //DateTime
					}
				],
				"Situacao": 1, //integer
				"IdRetaguarda": "EST00026", //string
				"Id": 0, //long
				"DataCadastro": "2025-04-01T20:43:54.873766Z", //DateTime
				"DataAtualizacao": "2025-04-01T20:43:54.873766Z" //DateTime
			}
		]
	},
	{
		"CodigoTipo": "18",
		"TipoDado": "FormaPagto",
		"Dados": [
			{
				"Descricao": "CREDITO", //string 
				"DescricaoFiscal": "CREDITO", //string
				"CodigoImpressora": null, //string
				"PagamentoValorTotal": null, //integer
				"PermiteTroco": 1, //integer
				"FormaPagamentoTrocoIdRetaguarda": "", //string
				"ValorMinimoAceito": "5", //string
				"CodigoSistemaExterno": "10", //string
				"CodigoModalidadePagamento": 0, integer
				"Tipo": 1, //integer
				"IdPagamentoFormaMestre": null, //integer
				"TipoCliente": 1, //integer
				"ClienteConsumidor": null, //booleano
				"UtilizaLimiteCredito": false, //booleano
				"Situacao": 1, //integer
				"IdRetaguarda": "FP0010", //string
				"Id": 0, //long
				"DataCadastro": "2025-04-01T20:48:32.417083Z", //DateTime
				"DataAtualizacao": "2025-04-01T20:48:32.417084Z" //DateTime
			}
		]
	},
	{
		"CodigoTipo": "21",
		"TipoDado": "Grupo",
		"Dados": [
			{
				"IdRetaguardaLoja": "9999", //string
				"IdRetaguardaCliente": "3168", //string
				"IdRetaguardaGrupo": "GP0004", //string
				"Situacao": 1, //integer
				"IdRetaguarda": "GP0004", //string
				"Id": 0, //long
				"DataCadastro": "0001-01-01T00:00:00", //DateTime
				"DataAtualizacao": "0001-01-01T00:00:00" //DateTime
			}
		]
	},
	{
		"CodigoTipo": "7",
		"TipoDado": "Imposto",
		"Dados": [
			{
				"AliquotaTributo": "5", //string
				"Tipo": "1", //string
				"Modalidade": "Teste", //string
				"IndiceTributoImpressora": null, //string
				"ReducaoBaseCalculo": "0", //string
				"Simbolo": "TESTE", //string
				"Cfop": "10", //string
				"CstCsosn": "10", //string
				"Situacao": 0, //integer
				"IdRetaguarda": "IMP00011", //string
				"Id": 0, //long
				"DataCadastro": "2025-04-01T20:35:15.025273Z", //DateTime
				"DataAtualizacao": "2025-04-01T20:35:15.025313Z" //DateTime
			}
		]
	},
	{
		"CodigoTipo": "2",
		"TipoDado": "Motivo",
		"Dados": [
			{
				"Descricao": "Motivo Teste 3", //string
				"Tipo": 1, //integer
				"IdPromocaoMotorPromocaoTerceiro": null, //string
				"TipoMecanica": null, //integer
				"Situacao": 1, //integer
				"IdRetaguarda": "10", //string
				"Id": 0, //long
				"DataCadastro": "2025-04-01T20:34:12.844775Z", //DateTime
				"DataAtualizacao": "2025-04-01T20:34:12.844803Z" //DateTime
			}
		]
	},
	{
		"CodigoTipo": "8",
		"TipoDado": "Ncm",
		"Dados": [
			{
				"CodigoNcm": "12345678", //string
				"CodigoExcecao": "20", //string
				"AliquotaNacional": "3.0", //string
				"AliquotaImportada": "2.0", //string
				"AliquotaEstadual": "1.0", //string
				"AliquotaMunicipal": "1.0", //string
				"Chave": "TESTE", //string
				"Fonte": "ARIAL 12", //string
				"CodigoCest": "1234567", //string
				"Situacao": 1, //integer
				"IdRetaguarda": "NCM00002", //string
				"Id": 0, //long
				"DataCadastro": "2025-04-01T20:35:35.746964Z", //DateTime
				"DataAtualizacao": "2025-04-01T20:35:35.746964Z" //DateTime
			}
		]
	},
	{
		"CodigoTipo": "15",
		"TipoDado": "Operadora",
		"Dados": [
			{
				"Descricao": "ELO", //string
				"CodigoTef": "10", //string
				"Administradora": "ELO", //string
				"TipoTransacao": 1, //integer
				"Situacao": 1, //integer
				"IdRetaguarda": "OP100010", //string
				"Id": 0, //Login
				"DataCadastro": "2025-04-01T20:47:46.432391Z", //DateTime
				"DataAtualizacao": "2025-04-01T20:47:46.432418Z" //DateTime
			}
		]
	},
	{
		"CodigoTipo": "3",
		"TipoDado": "Perfil",
		"Dados": [
			{
				"Nome": "Supervisor Geral", //string
				"TipoPerfil": 1, //integer
				"DescontoMaximoItem": 100.0, //decimal
				"DescontoMaximoTotal": 100.0, //decimal
				"Situacao": 1, //integer
				"IdRetaguarda": "18", //string
				"Id": 0, //long
				"DataCadastro": "2025-04-01T20:34:29.842174Z", //DateTime
				"DataAtualizacao": "2025-04-01T20:34:29.842175Z" //DateTime
			}
		]
	},
	{
		"CodigoTipo": "9",
		"TipoDado": "PisCofins",
		"Dados": [
			{
				"CstPis": "1", //string
				"AliquotaPis": "8.0", //string
				"CstCofins": "1", //string
				"AliquotaCofins": "5.0", //string
				"Situacao": 1, //integer
				"IdRetaguarda": "PC00010", //string
				"Id": 0, //long
				"DataCadastro": "2025-04-01T20:41:02.264344Z", //DateTime
				"DataAtualizacao": "2025-04-01T20:41:02.264345Z" //DateTime
			}
		]
	},
	{
		"CodigoTipo": "13",
		"TipoDado": "Preco",
		"Dados": [
			{
				"ProdutoIdRetaguarda": "PRD00003", //string
				"ProdutoEmbalagemIdRetaguarda": "PRDEMB0001", //string
				"DataVigenciaInicial": "2024-10-28T16:26:14.977-03:00", //DateTime
				"DataVigenciaFinal": "2025-03-28T16:26:14.977-03:00", //DateTime
				"Valor": "20.0", //string
				"SincronizadoEtiquetaEletronica": 0, //integer
				"PrecoPromocional": "5.0", //string
				"Custo": 1.0, //decimal
				"RegiaoIdRetaguarda": "", //string
				"Margem": 0.0, //decimal
				"PrecoOrigem": "", //string
				"PrecoPrincipal": true, //booleano
				"ValorAtacado": 17.0, //decimal
				"IndicePreco": "", //string
				"Situacao": 1, //integer
				"IdRetaguarda": "PRE00001010", //string
				"Id": 0, //long
				"DataCadastro": "2025-04-01T20:43:03.804015Z", //DateTime
				"DataAtualizacao": "2025-04-01T20:43:03.80404Z" //DateTime
			}
		]
	},
	{
		"CodigoTipo": "12",
		"TipoDado": "Produto",
		"Dados": [
			{
				"Descricao": "PRODUTO TESTE - AUTENTICADOR", //string
				"ImpostoIdRetaguarda": null, //string
				"Imposto": {
					"AliquotaTributo": "string", //string
					"Tipo": "string", //string
					"Modalidade": "string", //string
					"IndiceTributoImpressora": "string", //string
					"ReducaoBaseCalculo": "string", //string
					"Simbolo": "string", //string
					"Cfop": "string",//string
					"CstCsosn": "string", //string
					"IdRetaguarda": "PRE00001010", //string				
					"DataCadastro": "2025-04-01T20:43:03.804015Z", //DateTime
					"DataAtualizacao": "2025-04-01T20:43:03.80404Z" //DateTime
				},
				"NcmIdRetaguarda": null, //string
				"UnidadeMedida": "UN", //string
				"DescontoMaximo": "3", //string
				"TipoArredondaTrunca": "0", //string
				"CodigoProduto": "10011004", //string
				"CodigoAlternativo": "1001100405958579", //string
				"OrigemProduto": "0", //string
				"PisCofinsIdRetaguarda": null, //string
				"Imagem": "", //string
				"TipoProduto": 0, //integer
				"Fracionado": true, //booleano
				"CnpjFornecedor": "05054526000178", //string
				"EscalaRelevante": true, //booleano
				"ValorBaseFcp": "0", //string
				"CodigoBeneficioFiscal": "", //string
				"PercentualFcp": "0", //string
				"CstIcms": null, //string
				"PercentualReducaoIcms": "1", //string
				"AliquotaIcms": "1", //string
				"VlIcmsRet": "0", //string
				"MotivoDesoneracaoIcms": 0, //integer
				"DescontaDesoneracaoNf": false, //booleano
				"Cest": "10", //string
				"ValorPautaIcms": null, //string
				"Encomenda": false, //booleano
				"PesoBruto": 315.0, //decimal
				"PesoLiquido": 300.0, //decimal
				"QuantidadeMovimentacao": 100.0, //decimal
				"IdRetaguardaProdutoPrincipal": null, //string
				"QuantidadeValorAtacado": 10.0, //decimal
				"IdRetaguardaCategoria": null, //string
				"IdRetaguardaDepartamento": null, //string
				"IdRetaguardaFornecedor": null, //string
				"IdRetaguardaMarca": null, //string
				"IdRetaguardaSecao": null, //string
				"IdRetaguardaSubCategoria": null, //string
				"ControlaLote": false, //booleano
				"Situacao": 1, //integer
 				"IdRetaguarda": "PRD1000010", //string
				"Id": 0, //long
				"DataCadastro": "2025-04-01T20:42:05.523853Z", //DateTime
				"DataAtualizacao": "2025-04-01T20:42:05.523853Z" //DateTime
			}
		]
	},
	{
		"CodigoTipo": "12",
		"TipoDado": "ProdutoEmbalagem",
		"Dados": [
			{
				"CodigoBarras": "8314961742676478", //string
				"Descricao": "PRODUTO TESTE - AUTENTICADOR", //string
				"PesoBruto": 1.0, //decimal
				"PesoLiquido": 1.0, //decimal
				"Quantidade": 1.0, //decimal
				"UnidadeMedida": "UN", //string
				"QuantidadeValorAtacado": 0.0, //decimal
				"Situacao": 1, //int
				"IdRetaguarda": "PE010101010", //string
				"Id": 0, //long
				"DataCadastro": "2025-04-01T20:42:05.523853Z", //Datetime
				"DataAtualizacao": "2025-04-01T20:42:05.523853Z" //DateTime
			}
		]
	},
	{
		"CodigoTipo": "58",
		"TipoDado": "RamoAtividade",
		"Dados": [
				{
					"Descricao": "SERVICOS EM MANUTENCAO DE EQUIPAMENTOS", //string
					"IdRetaguardaAtividadePrincipal": null, //string
					"PercentualTaxa": 8.5, //decimal
					"Situacao": 1, //integer
					"IdRetaguarda": "RA00001", //string
					"Id": 0, //long
					"DataCadastro": "2025-04-01T21:08:15.71412Z", //DateTime
					"DataAtualizacao": "2025-04-01T21:08:15.714148Z" //DateTime
				}
			]
	},
	{
		"CodigoTipo": "4",
		"TipoDado": "Usuario",
		"Dados": [
			{
				"PerfilIdRetaguarda": "12", //string
				"Nome": "Marilsa Cardoso Damato", //string
				"Cpf": "86683259062", //string
				"Login": "marilsa.damato", //string
				"Senha": "WXYZ", //string
				"SenhaCriptografada": "", //string
				"Administrador": 0, //integer
				"Matricula": "150006", //string
				"Situacao": 1, //integer
				"IdRetaguarda": "102", //string
				"Id": 0, //long
				"DataCadastro": "2025-04-01T20:34:42.938532Z", //DateTime
				"DataAtualizacao": "2025-04-01T20:34:42.938532Z" //DateTime
			}
		]
	}
]