> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://ajuda.groner.app/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# API Groner — campos e tipos: PedidoVendaInputDTO a Simulacao

Dicionário de campos dos contratos usados na referência. Nomes são os da propriedade C# ou do `JsonProperty` explícito; respeite o schema da operação.

[Guia principal](https://ajuda.groner.app/pt-br/article/documentacao-da-api-groner-crm-vz2bq2/) · [Exemplo completo](#2-exemplo-de-uso) · [Campos](#2-contratos)

## Índice clicável

[PedidoVendaInputDTO](#3-pedidovendainputdto) · [Pendencia](#3-pendencia) · [PendenciaNotificacaoInputDTO](#3-pendencianotificacaoinputdto) · [Perfil](#3-perfil) · [PipeDefinitionDTO](#3-pipedefinitiondto) · [PipeEtapaDTO](#3-pipeetapadto) · [PipeNotifDTO](#3-pipenotifdto) · [PipeRefExternaDTO](#3-piperefexternadto) · [PipeRegraDTO](#3-piperegradto) · [PipeStatusDTO](#3-pipestatusdto) · [PreProposta](#3-preproposta) · [PrePropostaAceita](#3-prepropostaaceita) · [PrePropostaInputDto](#3-prepropostainputdto) · [PrecoClienteFinal](#3-precoclientefinal) · [PreviaXmlCompraInputDTO](#3-previaxmlcomprainputdto) · [PreviewMensagemIAInputDTO](#3-previewmensagemiainputdto) · [ProdutoSolar](#3-produtosolar) · [Projeto](#3-projeto) · [ProjetoEngenhariaInputDTO](#3-projetoengenhariainputdto) · [ProjetoEtiqueta](#3-projetoetiqueta) · [ProjetoInputDTO](#3-projetoinputdto) · [Projeto_Status](#3-projetostatus) · [ProsseguirFinanciamentoPropostaInputDTO](#3-prosseguirfinanciamentopropostainputdto) · [PublicarLandingPageInputDTO](#3-publicarlandingpageinputdto) · [PublicarSocialInputDTO](#3-publicarsocialinputdto) · [QueryFiltroInputDTO](#3-queryfiltroinputdto) · [QueryOnlyFiltroInputDTO](#3-queryonlyfiltroinputdto) · [QuitarTituloInputDTO](#3-quitartituloinputdto) · [RastreioItemNotaInputDTO](#3-rastreioitemnotainputdto) · [RateioGeracaoUC](#3-rateiogeracaouc) · [RateioItemInputDTO](#3-rateioiteminputdto) · [ReceberParcelaInputDTO](#3-receberparcelainputdto) · [ReceberPedidoCompraInputDTO](#3-receberpedidocomprainputdto) · [RegistrarAnexoTituloInputDTO](#3-registraranexotituloinputdto) · [RegistrarFotoSeparacaoInputDTO](#3-registrarfotoseparacaoinputdto) · [RegistrarNotaExternaInputDTO](#3-registrarnotaexternainputdto) · [RegularizarHistoricoInputDTO](#3-regularizarhistoricoinputdto) · [RemocaoMassaInputDTO](#3-remocaomassainputdto) · [RemoverItemSeparacaoInputDTO](#3-removeritemseparacaoinputdto) · [RentabilidadeInputDTO](#3-rentabilidadeinputdto) · [RentabilidadeProjetoInputDTO](#3-rentabilidadeprojetoinputdto) · [RequestActiveCampaignInputDTO](#3-requestactivecampaigninputdto) · [RequestContactForm7](#3-requestcontactform7) · [ResolverItensBaixaInputDTO](#3-resolveritensbaixainputdto) · [ResolverPendenciaInputDTO](#3-resolverpendenciainputdto) · [ResponderFormularioCampoPersonalizadoInputDTO](#3-responderformulariocampopersonalizadoinputdto) · [RespostaCampoPersonalizadoInputDTO](#3-respostacampopersonalizadoinputdto) · [RespostaCampoPersonalizadoTarefaInputDTO](#3-respostacampopersonalizadotarefainputdto) · [RespostaEditarCampoPersonalizadoInputDTO](#3-respostaeditarcampopersonalizadoinputdto) · [RespostaFeedbackInputDTO](#3-respostafeedbackinputdto) · [RotaEntregaInputDTO](#3-rotaentregainputdto) · [RubricaInputDTO](#3-rubricainputdto) · [SaidaPedidoVendaItensInputDTO](#3-saidapedidovendaitensinputdto) · [SalvarAnaliseContaEnergiaInputDTO](#3-salvaranalisecontaenergiainputdto) · [SalvarCamposFormularioInputDTO](#3-salvarcamposformularioinputdto) · [SalvarConteudoLandingPageInputDTO](#3-salvarconteudolandingpageinputdto) · [SalvarMapeamentoInputDTO](#3-salvarmapeamentoinputdto) · [SandboxConversarInputDTO](#3-sandboxconversarinputdto) · [SandboxConversarInternoInputDTO](#3-sandboxconversarinternoinputdto) · [SandboxHistoricoItem](#3-sandboxhistoricoitem) · [SegurarEntregasInputDTO](#3-segurarentregasinputdto) · [SepararItemInputDTO](#3-separariteminputdto) · [SepararItensInputDTO](#3-separaritensinputdto) · [Setor](#3-setor) · [SignerClickSignOutPutDTO](#3-signerclicksignoutputdto) · [Simulacao](#3-simulacao)

---

## Como interpretar os campos

`?` indica anulável; `List<T>`/`T[]` são arrays; `long`/`int` são inteiros; `double`/`decimal` são números JSON. `DateTime` segue o contrato de fuso da action. `[Required]` não cobre todas as validações de negócio. Campos ignorados por JSON foram excluídos. Tipos homônimos exigem conferir o namespace da operação.

## Exemplo de uso

### Consultar agentes conversacionais

**Requisição completa (Bash):**

```bash
curl --request GET \
  --url "$API_URL/api/configuracoes/AgenteConversacional" \
  --header "Authorization: Bearer $TOKEN" \
  --header "Accept: application/json"
```

**Resposta ilustrativa — HTTP 200:**

```json
{
  "Version": "1.0.0.0",
  "StatusCode": 200,
  "Message": "Requisição efetuada com suceesso.",
  "Content": []
}
```

### Pausar um agente autorizado

**Requisição completa (Bash):**

```bash
curl --request POST \
  --url "$API_URL/api/configuracoes/AgenteConversacional/123/pausar" \
  --header "Authorization: Bearer $TOKEN" \
  --header "Accept: application/json"
```

**Resposta ilustrativa — HTTP 204:**

Sem corpo. Não tente desserializar JSON nesta resposta.

O ID 123 é fictício. A configuração conversacional exige Administrador. Teste de ação customizada executa HTTP real; o sandbox pode executar ferramentas reais. `AgentesSandbox` possui rotas próprias em `/api/sandbox`, distintas do sandbox dentro da configuração de um agente.

O exemplo é fictício, baseado no contrato conferido no código. As respostas não foram coletadas em produção.

## Contratos

### PedidoVendaInputDTO

* `Numero`: `string`.
* `LeadId`: `long?`.
* `DataPedido`: `DateTime?`.
* `DataPrevisaoEntrega`: `DateTime?`.
* `Desconto`: `decimal`.
* `ValorFrete`: `decimal`.
* `CategoriaFinanceiraId`: `long?`.
* `CentroCustoId`: `long?`.
* `ContaBancariaId`: `long?`.
* `LojaId`: `long?`.
* `NaturezaOperacaoId`: `long?`.
* `Fonte`: `FontePedidoVendaEnum`.
* `FonteId`: `long?`.
* `Observacao`: `string`.
* `ExternalId`: `string`.
* `Itens`: `List<ItemPedidoVendaInputDTO>` — [ItemPedidoVendaInputDTO](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-04-62zu2h/#3-itempedidovendainputdto).
* `RecebivelPorFinanciamento`: `bool`.
* `RegraPedidoVendaId`: `long?`.
* `SaidaRegraPedidoVendaId`: `long?`.
* `ValorDivergencia`: `decimal`.
* `ValorDivergenciaProposta`: `decimal`.
* `ExigirJustificativaDivergencia`: `bool`.
* `BloquearFaturamentoSemJustificativa`: `bool`.

[Voltar ao índice](#2-indice-clicavel)

### Pendencia

* `Id`: `long`.
* `ProjetoId`: `long`.
* `Projeto`: `Projeto` — [Projeto](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-05-1euyfrd/#3-projeto).
* `Titulo`: `string`.
* `Descricao`: `string`.
* `TipoPendenciaId`: `long?`. Tipo do catálogo (TipoPendencia) que originou os valores padrão. Opcional.
* `TipoPendencia`: `TipoPendencia` — [TipoPendencia](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-06-16y2x3u/#3-tipopendencia).
* `Obrigatoria`: `bool`. Conta para a regra de bloqueio do status (quando aberta).
* `ExigeComprovacao`: `bool`. Snapshot da config na criação (não retroage). true → resolver exige ≥1 arquivo.
* `Situacao`: `SituacaoPendenciaEnum`.
* `Origem`: `OrigemPendenciaEnum`.
* `Alvo`: `AlvoPendenciaEnum`. Interna → cobra os usuários do time; Externa → cobra o Lead/Cliente (WhatsApp).
* `CadenciaAtiva`: `bool`.
* `CadenciaIntervaloDias`: `int`.
* `CadenciaMaxLembretes`: `int`.
* `QtdLembretes`: `int`.
* `DataUltimoLembrete`: `DateTime?`.
* `MetaInstanceId`: `string`.
* `MetaTemplateId`: `string`.
* `MetaVariaveisJson`: `string`. JSON das variáveis do template (mesmo formato da notificação).
* `NotificacaoInstanceIdComum`: `string`.
* `NotificacaoTemFallback`: `bool`.
* `SetorId`: `long?`. Setor dono da pendência (null = Geral). Copiado do template.
* `Prioridade`: `PrioridadePendenciaEnum`.
* `DataLimite`: `DateTime?`.
* `ResponsavelUsuarioId`: `long?`. Usuário que responde pela pendência. Id solto: usuário é apagado fisicamente.
* `ItemModeloPendenciaId`: `long?`. Rastreio do template + chave de dedupe (fase 2).
* `CriadaPorId`: `long?`.
* `DataCadastro`: `DateTime`.
* `ResolvidaPorId`: `long?`.
* `DataResolucao`: `DateTime?`.
* `ObservacaoResolucao`: `string`.
* `ConferidaPorId`: `long?`.
* `DataConferencia`: `DateTime?`.
* `Ativo`: `bool`. Soft delete — exclusão preserva a auditoria.
* `Comprovantes`: `ICollection<Arquivo>` — [Arquivo](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-01-12uez99/#3-arquivo). Comprovantes (Arquivo.PendenciaId).
* `Tarefas`: `ICollection<TarefaPendencia>` — [TarefaPendencia](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-06-16y2x3u/#3-tarefapendencia). Tarefas vinculadas — concluí-las auto-resolve esta pendência (se aberta).
* `TarefasVinculadas`: `IList<TarefaVinculadaResumoDTO>` — [TarefaVinculadaResumoDTO](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-06-16y2x3u/#3-tarefavinculadaresumodto).
* `Modelo`: `ModeloPendenciaResumoDTO` — [ModeloPendenciaResumoDTO](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-04-62zu2h/#3-modelopendenciaresumodto).

[Voltar ao índice](#2-indice-clicavel)

### PendenciaNotificacaoInputDTO

* `WhatsApp`: `bool`. Canais + destinatários + mensagem da notificação de criação de pendência. Mesmo shape usado no POST /Pendencia (manual) e materializado do ItemModeloPendencia (auto-geradas, campos Notificacao*).
* `Email`: `bool`.
* `InApp`: `bool`.
* `ResponsaveisNegocio`: `bool`.
* `Lead`: `bool`.
* `Setor`: `bool`.
* `UsuarioIds`: `List<long>`.
* `Mensagem`: `string`. Texto com placeholders ({titulo}, {negocio}, {lead}, {link}); null/vazio = padrão do sistema.
* `GerarPorIA`: `bool`. true → gera o texto por IA no envio (ignora Mensagem).
* `MetaInstanceId`: `string`.
* `MetaTemplateId`: `string`.
* `MetaVariaveisJson`: `string`. JSON [{Posicao, Valor}] das variáveis {{n}} — Valor aceita os placeholders de pendência.
* `NotificacaoInstanceIdComum`: `string`. instanceId do número que envia. Vazio = escolhido no envio, por loja.
* `NotificacaoTemFallback`: `bool`. Pode sair por outro número se o escolhido estiver desconectado.

[Voltar ao índice](#2-indice-clicavel)

### Perfil

* `Id`: `int`.
* `Nome`: `string`.
* `Funcoes`: `IList<FuncaoUsuario>` — [FuncaoUsuario](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-03-186hp04/#3-funcaousuario).

[Voltar ao índice](#2-indice-clicavel)

### PipeDefinitionDTO

* `Schema`: `string`.
* `Version`: `int`.
* `ExportadoEm`: `string`.
* `Pipe`: `PipeEtapaDTO` — [PipeEtapaDTO](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-05-1euyfrd/#3-pipeetapadto).
* `Statuses`: `List<PipeStatusDTO>` — [PipeStatusDTO](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-05-1euyfrd/#3-pipestatusdto).

[Voltar ao índice](#2-indice-clicavel)

### PipeEtapaDTO

* `Nome`: `string`.
* `Cor`: `string`.
* `Paralelo`: `bool`.
* `Negativo`: `bool`.
* `SetorNome`: `string`.

[Voltar ao índice](#2-indice-clicavel)

### PipeNotifDTO

* `Notificacao`: `string`.
* `NotificacaoVendedor`: `string`.
* `NotificacaoTecnico`: `string`.
* `NotificacaoPreVendedor`: `string`.
* `NotificacaoFuncoes`: `string`.
* `NotificacaoCelulares`: `string`.
* `CelularesNotificar`: `string`.
* `EmailsNotificar`: `string`.
* `UrlImagem`: `string`.
* `UrlDocumento`: `string`.
* `UrlAudio`: `string`.
* `UrlVideo`: `string`.

[Voltar ao índice](#2-indice-clicavel)

### PipeRefExternaDTO

* `StatusNome`: `string`. Referência a um status de outro pipe, por nome (para religar no import).
* `EtapaNome`: `string`.

[Voltar ao índice](#2-indice-clicavel)

### PipeRegraDTO

* `Tipo`: `int`.
* `Propriedade`: `string`.
* `Condicao`: `int`.
* `Valor`: `string`.
* `Descricao`: `string`.

[Voltar ao índice](#2-indice-clicavel)

### PipeStatusDTO

* `Key`: `string`.
* `Nome`: `string`.
* `Cor`: `string`.
* `Tipo`: `int`.
* `Ordem`: `int`.
* `Descricao`: `string`.
* `WebhookUrl`: `string`.
* `Flags`: `List<string>`. Nomes (PascalCase) das flags ativas: TemProposta, NaoGerarVenda...
* `Conexoes`: `List<string>`.
* `Automaticos`: `List<string>`.
* `AutomaticosExternos`: `List<PipeRefExternaDTO>` — [PipeRefExternaDTO](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-05-1euyfrd/#3-piperefexternadto). Automáticos que apontam para status de OUTRO pipe — viajam por nome (status + etapa) e são religados no import a um status existente no destino.
* `Obrigatorios`: `List<string>`.
* `TipoCondicaoObrigatorios`: `int`.
* `Notificacoes`: `PipeNotifDTO` — [PipeNotifDTO](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-05-1euyfrd/#3-pipenotifdto).
* `Regras`: `List<PipeRegraDTO>` — [PipeRegraDTO](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-05-1euyfrd/#3-piperegradto).
* `FuncoesMover`: `List<string>`.
* `FuncoesVer`: `List<string>`.
* `FuncoesNotificar`: `List<string>`.
* `ModeloEmailLead`: `string`.
* `ModeloEmailResponsavel`: `string`.
* `ModeloEmailEmails`: `string`.

[Voltar ao índice](#2-indice-clicavel)

### PreProposta

**Herança:** `BaseModel` — [BaseModel](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-01-12uez99/#3-basemodel).

* `MotivoNaoAceite`: `string`.
* `Titulo`: `string`.
* `Texto`: `string`.
* `Senha`: `string`.
* `QuantidadeAberturas`: `int`.
* `DataAtualizacaoPDF`: `DateTime`.
* `Modelo`: `ModeloPreProposta` — [ModeloPreProposta](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-04-62zu2h/#3-modelopreproposta).
* `Simulacao`: `Simulacao` — [Simulacao](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-05-1euyfrd/#3-simulacao).
* `SimulacaoId`: `long?`.
* `Projeto`: `Projeto` — [Projeto](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-05-1euyfrd/#3-projeto).
* `ProjetoId`: `long?`.
* `Usuario`: `Usuario` — [Usuario](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-06-16y2x3u/#3-usuario).
* `DataEnvioEmail`: `DateTime?`.
* `StatusPreProposta`: `StatusPreProposta` — [StatusPreProposta](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-06-16y2x3u/#3-statuspreproposta).
* `Historico`: `IList<HistoricoStatusPreProposta>` — [HistoricoStatusPreProposta](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-03-186hp04/#3-historicostatuspreproposta).

[Voltar ao índice](#2-indice-clicavel)

### PrePropostaAceita

**Herança:** `BaseModel` — [BaseModel](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-01-12uez99/#3-basemodel).

* `ProjetoId`: `long`.
* `Projeto`: `Projeto` — [Projeto](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-05-1euyfrd/#3-projeto).
* `PreProposta`: `PreProposta` — [PreProposta](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-05-1euyfrd/#3-preproposta).
* `PrePropostaId`: `long?`.
* `FinanciamentoEscolhido`: `FinanciamentoSimulador` — [FinanciamentoSimulador](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-03-186hp04/#3-financiamentosimulador).
* `OpcaoPagamentoEscolhida`: `OpcaoPagamentoSimulador` — [OpcaoPagamentoSimulador](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-04-62zu2h/#3-opcaopagamentosimulador).
* `DescontoPorcentagem`: `double`.
* `ComissaoVenda`: `double`.
* `QuantidadeParcelas`: `int`.
* `ValorEntrada`: `double`.
* `ValorDesconto`: `double`.
* `ValorParcelado`: `double`.
* `ValorTotal`: `double`.
* `ValorServico`: `double`.
* `ValorProduto`: `double`.
* `PrevisaoFechamento`: `DateTime?`.
* `Nota`: `string`.

[Voltar ao índice](#2-indice-clicavel)

### PrePropostaInputDto

* `Consumo`: `double`.
* `ModeloId`: `long`.
* `ProjetoId`: `long`.
* `ConfiguracaoId`: `long?`.
* `QuantidadePlacas`: `double?`.
* `CodigoKit`: `string`.
* `FilialSolMais`: `int?`.
* `KitsSelecionados`: `List<KitSelecionadoInputDTO>` — [KitSelecionadoInputDTO](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-04-62zu2h/#3-kitselecionadoinputdto).
* `ConfigFinanciamentosIds`: `List<long>`.
* `Senha`: `string`.
* `TodosFinanciamentos`: `bool`.
* `CustosExtras`: `List<CustoExtraPropostaInputDTO>` — [CustoExtraPropostaInputDTO](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-02-1y50x5n/#3-custoextrapropostainputdto).
* `PorcentagemDesconto`: `double`.
* `EstudoJson`: `string`.
* `PaybackEstudo`: `List<PaybackAnoEstudoInputDTO>` — [PaybackAnoEstudoInputDTO](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-04-62zu2h/#3-paybackanoestudoinputdto).
* `PaybackAnoComMeses`: `double?`.
* `PaybackAnoRetorno`: `int?`.
* `PaybackTIR`: `double?`.
* `PaybackSaldoUltimoAno`: `double?`.
* `PaybackLCOE`: `double?`.
* `PaybackFormatado`: `string`.
* `TipoSimulacao`: `TipoSimulacaoEnum`.
* `BateriaId`: `long?`.
* `HorasAutonomia`: `double?`.
* `ProfundidadeDescargaOverride`: `double?`.
* `EficienciaOverride`: `double?`.
* `SimultaneidadeCargas`: `double?`.
* `CargasPrioritarias`: `List<CargaPrioritariaInputDTO>` — [CargaPrioritariaInputDTO](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-01-12uez99/#3-cargaprioritariainputdto).
* `TotalBateriasDesejado`: `int?`. Quantidade total de baterias desejada pelo usuário. Quando informada (&gt; 0), o dimensionamento usa essa quantidade fixa em vez de calcular automaticamente a partir do consumo/autonomia.
* `UsinaPotenciaKwp`: `double?`.
* `UsinaTotalCotas`: `int?`.
* `UsinaValorCota`: `double?`.
* `UsinaTaxaGestaoMensal`: `double?`.
* `UsinaVidaUtilAnos`: `int?`.
* `UsinaDegradacaoAnualPercentual`: `double?`.
* `AssinaturaDescontoPercentual`: `double?`.
* `AssinaturaPrazoContratoMeses`: `int?`.
* `AssinaturaTaxaGestaoMensal`: `double?`.
* `AssinaturaConsumoMinimoKwh`: `double?`.
* `AssinaturaAutoconsumoRemoto`: `bool?`.
* `AssinaturaTarifaTEBruta`: `double?`.
* `AssinaturaTarifaTELiquida`: `double?`.
* `AssinaturaTarifaTUSDLiquida`: `double?`.
* `AssinaturaTaxaDisponibilidadeKwh`: `double?`.
* `AssinaturaDescontarTaxaDisponibilidade`: `bool?`.
* `AssinaturaAliquotaICMS`: `double?`.
* `AssinaturaAliquotaPIS`: `double?`.
* `AssinaturaAliquotaCOFINS`: `double?`.
* `AssinaturaRegimeLucroReal`: `bool?`.
* `AssinaturaValorConsumoTE`: `double?`.
* `AssinaturaValorConsumoTUSD`: `double?`.
* `OrcamentoId`: `long?`.

[Voltar ao índice](#2-indice-clicavel)

### PrecoClienteFinal

* `Id`: `long`.
* `kWpInicial`: `double`.
* `kWpFinal`: `double`.
* `QuantidadePlacas`: `double`.
* `QuantidadeInversores`: `double`.
* `Inversor`: `string`.
* `PotenciaInversor`: `double`.
* `Preco`: `double`.
* `ValorServico`: `double`.
* `PrecoLaje`: `double`.
* `ValorServicoLaje`: `double`.
* `PrecoSolo`: `double`.
* `ValorServicoSolo`: `double`.
* `PrecoTelhadoColonial`: `double`.
* `ValorServicoTelhadoColonial`: `double`.
* `PrecoTelhadoMetalico`: `double`.
* `ValorServicoTelhadoMetalico`: `double`.
* `PrecoFibrocimento`: `double`.
* `ValorServicoFibrocimento`: `double`.
* `PrecoExtra1`: `double`.
* `ValorServicoExtra1`: `double`.
* `PrecoExtra2`: `double`.
* `ValorServicoExtra2`: `double`.
* `ConfiguracaoSimuladorAntigoId`: `long`.
* `ItensKit`: `string`.
* `ConfiguracaoSimulador`: `ConfiguracaoSimulador` — [ConfiguracaoSimulador](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-01-12uez99/#3-configuracaosimulador).

[Voltar ao índice](#2-indice-clicavel)

### PreviaXmlCompraInputDTO

* `XmlBase64`: `string`. XML da NF-e do fornecedor, em base64.

[Voltar ao índice](#2-indice-clicavel)

### PreviewMensagemIAInputDTO

* `ProjetoId`: `long`. Body do POST /Pendencia/PreviewMensagemIA (botão "Gerar por IA" do front).
* `Titulo`: `string`.
* `Descricao`: `string`.

[Voltar ao índice](#2-indice-clicavel)

### ProdutoSolar

**Herança:** `BaseModel` — [BaseModel](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-01-12uez99/#3-basemodel).

* `Codigo`: `string`.
* `Fornecedor`: `string`.
* `Cliente`: `string`.
* `Descricao`: `string`.
* `DescricaoTecnica`: `string`.
* `DescricaoTecnicaModulo`: `string`.
* `DescricaoTecnicaInversor`: `string`.
* `Componentes`: `string`.
* `Unidade`: `string`.
* `Peso`: `double`.
* `PrecoCusto`: `double`.
* `PrecoVenda`: `double`.
* `Multiplo`: `int`.
* `Categoria`: `string`.
* `Marca`: `string`.
* `Disponivel`: `string`.
* `Dimensoes`: `string`.
* `ICMS`: `double`.
* `Reducao`: `double`.
* `PrecoCustoComST`: `double`.
* `PossuiST`: `string`.
* `TempoGarantia`: `string`.
* `ProcedimentosRMA`: `string`.
* `Potencia`: `double?`.
* `TipoProduto`: `string`.
* `TensaoSaida`: `string`.
* `MarcaInversor`: `string`.
* `MarcaPainel`: `string`.
* `Rastreador`: `string`.
* `FaseEnergetica`: `string`.
* `TipoTelhado`: `string`.
* `Familia`: `string`.
* `PotenciaKVA`: `double`.
* `Bateria`: `string`.
* `PotenciaModulo`: `double`.
* `QuantidadePlacas`: `int`.
* `AreaMinima`: `double`.
* `UrlImagem`: `string`.
* `EficienciaModulo`: `double`.
* `DadosDistribuidor`: `string`.
* `EficienciaInversor`: `double`.
* `ttl`: `long`.
* `QuantidadeInversor`: `int`. Epoch (segundos) daqui a N horas — valor correto para o TTL.
* `Topologia`: `string`.
* `PotenciaInversor`: `double`.
* `FilialDistribuidor`: `string`. Nome da filial do distribuidor de onde vieram preco e estoque (ex.: "SOL PR"). Usado no aviso exibido junto ao kit.
* `PrevisaoChegada`: `DateTime?`. Previsao de chegada quando o kit esta sem estoque pronta-entrega. Null = sem previsao informada pelo distribuidor.
* `QuantidadeMaximaBaterias`: `int`. Quantidade máxima de baterias suportadas por este kit/inversor. Aplicável especialmente a Kit Customizado e Kit Fechado. Default 0 = sem limite específico (usa apenas o limite do modelo de bateria selecionado).
* `TipoBateriaAceito`: `string`. Tipos de bateria aceitos (separados por ";"). Vazio = sem restrição.
* `TensaoMinBateriaV`: `double`. Tensão mínima do banco (V). 0 = sem validação.
* `TensaoMaxBateriaV`: `double`. Tensão máxima do banco (V). 0 = sem validação.
* `EntradasBateria`: `int`. Entradas de banco no inversor do kit. Default 0 (BateriaService usa 1).
* `JSON`: `string`.

[Voltar ao índice](#2-indice-clicavel)

### Projeto

**Herança:** `BaseModel` — [BaseModel](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-01-12uez99/#3-basemodel).

* `Nome`: `string`.
* `Descricao`: `string`.
* `DataAssinaturaContrato`: `DateTime?`.
* `NumContrato`: `string`.
* `Area`: `double`.
* `FaceTelhado`: `string`.
* `TipoTelhado`: `TipoTelhado` — [TipoTelhado](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-06-16y2x3u/#3-tipotelhado).
* `Longitude`: `string`.
* `Latitude`: `string`.
* `PlusCode`: `string`.
* `DistanciaKM`: `double`.
* `Zoom`: `int`.
* `PontoSombreamento`: `bool`.
* `Perimetro`: `double`.
* `PorcentagemPerdas`: `double`.
* `PorcentagemPerdasTotal`: `double`.
* `DemandaContratada`: `double`.
* `DemandaEspecial`: `double`.
* `PorcentagemSimultaneidade`: `double`.
* `FatorAproveitamentoPontaBateria`: `double`.
* `PorcentagemDesagio`: `double`.
* `ValorkWDemanda`: `double`.
* `ValorkWDemandaGeracao`: `double`.
* `ValorkWDemandaEspecial`: `double`.
* `PorcentagemAliquota`: `double`.
* `NumeroMedidor`: `string`.
* `DisjuntorEntrada`: `double`.
* `TipoGrupo`: `TipoGrupoEnum`.
* `Consumo`: `double`.
* `Consumo12Meses`: `string`.
* `ValorkWh`: `double`.
* `ValorForaPontaTUSD`: `double`.
* `ValorkWhTUSD`: `double`.
* `ValorTESCEE`: `double`.
* `ValorTUSDSCEE`: `double`.
* `ConsumoPonta`: `double`.
* `Consumo12MesesPonta`: `string`.
* `ValorkWhPonta`: `double`.
* `ValorPontaTUSD`: `double`.
* `UnidadeConsumidora`: `string`.
* `Concessionaria`: `Concessionaria` — [Concessionaria](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-01-12uez99/#3-concessionaria).
* `TipoEdificacao`: `TipoEdificacao` — [TipoEdificacao](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-06-16y2x3u/#3-tipoedificacao).
* `FaseEnergetica`: `string`.
* `TensaoSaida`: `int`.
* `ValorDisponibilidadeContaEnergia`: `double`.
* `ValorIluminacaoPublica`: `double`.
* `ValorOutros`: `double`.
* `ValorContaEnergia`: `double`.
* `ValorTotalContaEnergia`: `double`.
* `ImagemContaEnergia`: `Arquivo` — [Arquivo](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-01-12uez99/#3-arquivo).
* `AnaliseContaEnergiaAI`: `string`.
* `AnaliseContaEnergiaAIJson`: `string`.
* `TrocaTitularidadeGeradora`: `bool`.
* `NovoTitularGeradora`: `Contato` — [Contato](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-01-12uez99/#3-contato).
* `NovoTitularGeradoraId`: `long?`.
* `PossuiDebitos`: `bool`.
* `EstudoJson`: `string`.
* `Qualificacao`: `int`.
* `QualificacaoBudget`: `int`.
* `QualificacaoAuthority`: `int`.
* `QualificacaoNeeds`: `int`.
* `QualificacaoTiming`: `int`.
* `QualificacaoScore`: `int`.
* `IrradiacaoSolar`: `double`.
* `Tarefas`: `int`.
* `TarefasEmAndamento`: `int`.
* `TarefasPendentes`: `int`.
* `TarefasFinalizadas`: `int`.
* `ConsumoTotal`: `double`.
* `ConsumoTotalPonta`: `double`.
* `Propostas`: `int`.
* `ImagemPrincipal`: `string`.
* `Endereco`: `Endereco` — [Endereco](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-02-1y50x5n/#3-endereco).
* `Lead`: `Lead` — [Lead](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-04-62zu2h/#3-lead).
* `LeadId`: `long?`.
* `Tecnico`: `Usuario` — [Usuario](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-06-16y2x3u/#3-usuario).
* `TecnicoId`: `long?`.
* `VendedorResponsavel`: `Usuario` — [Usuario](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-06-16y2x3u/#3-usuario).
* `VendedorResponsavelId`: `long?`.
* `Projetista`: `Usuario` — [Usuario](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-06-16y2x3u/#3-usuario).
* `ProjetistaId`: `long?`.
* `Homologador`: `Usuario` — [Usuario](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-06-16y2x3u/#3-usuario).
* `HomologadorId`: `long?`.
* `ResponsavelCS`: `Usuario` — [Usuario](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-06-16y2x3u/#3-usuario).
* `ResponsavelCSId`: `long?`.
* `Tipo`: `TipoProjeto` — [TipoProjeto](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-06-16y2x3u/#3-tipoprojeto).
* `MotivoPerda`: `MotivoPerda` — [MotivoPerda](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-04-62zu2h/#3-motivoperda).
* `DataPerda`: `DateTime?`.
* `PrePropostaAceita`: `PrePropostaAceita` — [PrePropostaAceita](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-05-1euyfrd/#3-prepropostaaceita).
* `PrePropostas`: `IList<PreProposta>` — [PreProposta](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-05-1euyfrd/#3-preproposta).
* `Arquivos`: `IList<Arquivo>` — [Arquivo](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-01-12uez99/#3-arquivo).
* `Status`: `StatusProjeto` — [StatusProjeto](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-06-16y2x3u/#3-statusprojeto).
* `StatusId`: `long?`.
* `StatusAtuais`: `IList<StatusAtuaisProjeto>` — [StatusAtuaisProjeto](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-06-16y2x3u/#3-statusatuaisprojeto).
* `Historico`: `IList<Projeto_Status>` — [Projeto_Status](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-05-1euyfrd/#3-projetostatus).
* `Vendas`: `IList<Venda>` — [Venda](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-06-16y2x3u/#3-venda).
* `UnidadesConsumidoras`: `IList<UnidadeConsumidora>` — [UnidadeConsumidora](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-06-16y2x3u/#3-unidadeconsumidora).
* `Geradores`: `IList<Gerador>` — [Gerador](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-03-186hp04/#3-gerador).
* `Etiquetas`: `IList<ProjetoEtiqueta>` — [ProjetoEtiqueta](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-05-1euyfrd/#3-projetoetiqueta).
* `ListaEtiquetas`: `IList<Etiqueta>` — [Etiqueta](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-02-1y50x5n/#3-etiqueta).
* `Inclinacao`: `int`.
* `QtdModulosMaxPorFileira`: `int`.
* `Tarefa`: `Tarefa` — [Tarefa](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-06-16y2x3u/#3-tarefa).
* `DataUltimoStatus`: `DateTime`.
* `QtdDiarias`: `double`.
* `QtdOutrosProjetos`: `int`.
* `Tenant`: `string`.
* `ExternalId`: `string`.
* `ExternalCode`: `string`.

[Voltar ao índice](#2-indice-clicavel)

### ProjetoEngenhariaInputDTO

* `ProjetoId`: `long`.
* `StatusId`: `long?`.

[Voltar ao índice](#2-indice-clicavel)

### ProjetoEtiqueta

* `Data`: `DateTime`.
* `Projeto`: `Projeto` — [Projeto](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-05-1euyfrd/#3-projeto).
* `ProjetoId`: `long`.
* `Etiqueta`: `Etiqueta` — [Etiqueta](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-02-1y50x5n/#3-etiqueta).
* `EtiquetaId`: `long`.

[Voltar ao índice](#2-indice-clicavel)

### ProjetoInputDTO

* `Nome`: `string`.
* `Descricao`: `string`.
* `LeadId`: `long?`.
* `TipoProjetoId`: `long`.
* `DDICelular`: `string`.
* `Consumo`: `double?`.
* `UsuarioId`: `long?`.
* `StatusId`: `long?`.
* `OrigemId`: `long?`.
* `ExternalId`: `string`.
* `ExternalCode`: `string`.
* `PlusCode`: `string`.
* `Nota`: `string`.
* `Celular`: `string`.
* `Email`: `string`.
* `WhatsAppLid`: `string`.
* `ImagemContaEnergiaId`: `long?`.
* `IsCadastroManual`: `bool?`.
* `ValorContaEnergia`: `double?`.

[Voltar ao índice](#2-indice-clicavel)

### Projeto_Status

* `Id`: `long`.
* `DataStatus`: `DateTime`.
* `Observacao`: `string`.
* `TempoPermanenciaMinutos`: `int`.
* `Usuario`: `Usuario` — [Usuario](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-06-16y2x3u/#3-usuario).
* `Status`: `StatusProjeto` — [StatusProjeto](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-06-16y2x3u/#3-statusprojeto).
* `Lembretes`: `IList<Lembrete>` — [Lembrete](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-04-62zu2h/#3-lembrete).
* `Projeto`: `Projeto` — [Projeto](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-05-1euyfrd/#3-projeto).
* `ProjetoId`: `long`.

[Voltar ao índice](#2-indice-clicavel)

### ProsseguirFinanciamentoPropostaInputDTO

* `SolFacil`: `bool?`.
* `SolAgora`: `bool?`.

[Voltar ao índice](#2-indice-clicavel)

### PublicarLandingPageInputDTO

* `Slug`: `string`. Slug desejado (opcional; se vazio usa/gera a partir do Nome).

[Voltar ao índice](#2-indice-clicavel)

### PublicarSocialInputDTO

* `ConexaoId`: `long`.
* `Rede`: `string`. "instagram" | "facebook".
* `Imagens`: `List<string>`. URLs públicas das imagens (1 = post simples; N = carrossel, na ordem).
* `Legenda`: `string`.
* `AgendarPara`: `DateTime?`. UTC; se preenchido, agenda em vez de publicar agora.

[Voltar ao índice](#2-indice-clicavel)

### QueryFiltroInputDTO

* `Query`: `string`.
* `LojaId`: `long?`.
* `LojaIds`: `System.Collections.Generic.List<long>`. Várias lojas de uma vez (?LojaIds=1&amp;LojaIds=2). Soma com LojaId quando os dois vêm (união). Vazio = todas as lojas visíveis.
* `StatusNegocioId`: `long?`. Filtra pelo status ATUAL do negócio (Projeto.StatusId ou StatusAtuais) — mesmo padrão do FiltroCompraInputDTO.
* `IncluirTotais`: `bool`.
* `IncluirCustos`: `bool`.
* `IncluirRecebido`: `bool`. Recebimento comercial acumulado, somente dos pedidos da página.
* `ComRota`: `bool?`. true = só pedidos JÁ roteirizados (têm entrega numa rota). Os cards da Lista de Rotas usam isso: sem o filtro seria preciso varrer todos os pedidos do tenant para achar as paradas.
* `SemRota`: `bool?`. true = só o que falta roteirizar (sem entrega ou com entrega fora de rota). Sem ele, a fila traz a página mais recente de TODOS os pedidos e some com os antigos que ainda esperam entrega.
* `SituacaoEntrega`: `string`. Situação da entrega: Roteirizar (sem rota) | EmRota | Entregue. Vazio = todas. Substitui o filtro client-side, que só enxergava a página carregada.
* `Cidade`: `string`. Cidade do negócio (contém, case-insensitive).
* `UF`: `string`. UF do negócio — aceita sigla ou nome do estado.
* `OrdenarPor`: `string`. Ordenação: DataVenda (padrão) | Valor | Numero | Cliente. Só colunas do próprio pedido — ordenar por dado de tabela vizinha exigiria join e derrubaria o tempo de resposta.
* `Descendente`: `bool?`. true = decrescente (padrão para datas e valores).
* `Excluidas`: `bool?`. true = lista só os registros EXCLUÍDOS (lixeira). Vazio/false mantém o comportamento normal (só ativos).
* `DataIni`: `System.DateTime?`. Recorte por data do documento (DataPedido). Inclusive.
* `DataFim`: `System.DateTime?`. Fim do recorte, inclusive (o dia inteiro entra).
* `Status`: `string`. Status do pedido: Rascunho | Confirmado | Faturado | Cancelado. Vazio = todos. Alimenta os cartões clicáveis da tela.
* `StatusInstalacao`: `string`.

[Voltar ao índice](#2-indice-clicavel)

### QueryOnlyFiltroInputDTO

* `Query`: `string`.

[Voltar ao índice](#2-indice-clicavel)

### QuitarTituloInputDTO

* `Data`: `DateTime?`. Data da baixa de todas as parcelas (null = hoje).
* `ContaBancariaId`: `long`.
* `FormaPagamentoId`: `long?`.
* `Observacao`: `string`.

[Voltar ao índice](#2-indice-clicavel)

### RastreioItemNotaInputDTO

* `Indice`: `int`. Posição do item na lista da prévia (base 0).
* `NumerosSerie`: `List<string>`. Séries que chegaram. Uma por unidade — o servidor recusa contagem diferente da quantidade.
* `Lote`: `string`.
* `DataValidade`: `DateTime?`.
* `RastreamentoNovoProduto`: `RastreamentoEstoqueEnum?`. Produto que ainda vai ser CRIADO: já nasce com este rastreamento, para a própria entrada poder ser identificada. Ignorado quando o item casou com produto existente — mudar o rastreio de um produto que já existe é decisão do cadastro.

[Voltar ao índice](#2-indice-clicavel)

### RateioGeracaoUC

**Herança:** `BaseModel` — [BaseModel](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-01-12uez99/#3-basemodel).

* `GeradorId`: `long`.
* `Gerador`: `Gerador` — [Gerador](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-03-186hp04/#3-gerador).
* `UnidadeConsumidoraId`: `long`.
* `UnidadeConsumidora`: `UnidadeConsumidora` — [UnidadeConsumidora](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-06-16y2x3u/#3-unidadeconsumidora).
* `Percentual`: `double`. Percentual da geração deste gerador alocado a esta UC (0–100).
* `Ordem`: `int`. Ordem de prioridade na cascata de compensação.

[Voltar ao índice](#2-indice-clicavel)

### RateioItemInputDTO

* `UnidadeConsumidoraId`: `long`.
* `Percentual`: `double`.
* `Ordem`: `int`.

[Voltar ao índice](#2-indice-clicavel)

### ReceberParcelaInputDTO

* `ParcelaReceberId`: `long`. Baixa (recebimento) de uma ParcelaReceber: credita o valor na ContaBancaria e amortiza a parcela.
* `ContaBancariaId`: `long`.
* `FormaPagamentoId`: `long?`.
* `DataRecebimento`: `DateTime?`.
* `ValorRecebido`: `decimal`.
* `Juros`: `decimal?`.
* `Multa`: `decimal?`.
* `Desconto`: `decimal?`.
* `Tarifa`: `decimal?`. Tarifa da maquininha — vira despesa (título quitado) na categoria configurada na conta. Nunca reduz a receita.
* `Observacao`: `string`.
* `ComprovanteUrl`: `string`.

[Voltar ao índice](#2-indice-clicavel)

### ReceberPedidoCompraInputDTO

* `PedidoCompraId`: `long`. Recebimento físico (conferência) de um Pedido de Compra: entrada parcial ou total, item a item, com rateio dos custos acessórios do pedido (frete/IPI/ICMS-ST/outras) no custo unitário de entrada.
* `DepositoId`: `long?`. Depósito da entrada. Null = usa o Depósito do pedido.
* `Itens`: `List<ItemRecebimentoCompraInputDTO>` — [ItemRecebimentoCompraInputDTO](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-04-62zu2h/#3-itemrecebimentocomprainputdto).

[Voltar ao índice](#2-indice-clicavel)

### RegistrarAnexoTituloInputDTO

* `Url`: `string`. Prende ao título um arquivo JÁ hospedado (sem upload): a recorrência sobe o arquivo uma vez e o repete nas demais ocorrências.
* `Nome`: `string`.
* `Tamanho`: `long?`.
* `Legenda`: `string`.

[Voltar ao índice](#2-indice-clicavel)

### RegistrarFotoSeparacaoInputDTO

* `Etapa`: `string`. "Separacao" (default) ou "Conferencia".
* `Legenda`: `string`.

[Voltar ao índice](#2-indice-clicavel)

### RegistrarNotaExternaInputDTO

* `PedidoVendaId`: `long?`.
* `LojaId`: `long?`. Loja emitente. Opcional: sem ela, resolve pelo pedido ou pelo CNPJ do emitente do XML (config fiscal ativa → loja única com o CNPJ).
* `XmlBase64`: `string`. XML autorizado, em base64 — usado só para leitura dos dados. Opcional.
* `UrlXml`: `string`. URL do XML já enviado ao S3.
* `UrlDanfe`: `string`. URL do DANFE (PDF) no S3, quando houver.
* `Numero`: `string`. Número da nota. É o único dado realmente exigido: sem ele o registro não identifica documento nenhum.
* `Serie`: `int?`.
* `DataEmissao`: `DateTime?`.
* `ChaveAcesso`: `string`. Chave de acesso (44 dígitos). Opcional, mas quando informada ativa a trava de duplicidade.
* `Modelo`: `int?`. Modelo do documento no padrão da NF-e: 55 = NF-e (padrão), 65 = NFC-e, 99 = NFS-e.
* `DestinatarioNome`: `string`.
* `DestinatarioDocumento`: `string`.
* `ValorTotal`: `decimal?`. Valor total da nota — sem XML não há como deduzir.
* `Observacao`: `string`. Observação livre de quem registrou.

[Voltar ao índice](#2-indice-clicavel)

### RegularizarHistoricoInputDTO

* `InsumoId`: `long`. Alvo de uma correção do painel de inconsistências: sempre uma linha de saldo (produto + depósito).
* `DepositoId`: `long`.

[Voltar ao índice](#2-indice-clicavel)

### RemocaoMassaInputDTO

* `StatusId`: `long`. Coluna a esvaziar. A etapa dela precisa ser Paralelo — numa etapa comum o negócio ocupa uma coluna só e sair dela o deixaria sem status atual.
* `ProjetoIds`: `List<long>`. Alvos escolhidos à mão. Ignorado quando é true.
* `UsarFiltro`: `bool`. Quando true, os alvos saem do filtro (query string) em vez de .

[Voltar ao índice](#2-indice-clicavel)

### RemoverItemSeparacaoInputDTO

* `ItemId`: `long`. Desfaz a inclusão de um item que a separação acrescentou.

[Voltar ao índice](#2-indice-clicavel)

### RentabilidadeInputDTO

* `DataInicio`: `DateTime?`. Parâmetros da rentabilidade por projeto/obra (P8): período opcional sobre a data de emissão, loja e se inclui um grupo com os títulos sem centro de custo.
* `DataFim`: `DateTime?`.
* `LojaId`: `long?`.
* `IncluirSemCentroCusto`: `bool`. Inclui um grupo "Sem centro de custo" com os títulos não rateados.

[Voltar ao índice](#2-indice-clicavel)

### RentabilidadeProjetoInputDTO

* `CentroCustoId`: `long?`. Centro de custo (projeto/obra). Nulo = títulos sem centro de custo.
* `DataInicio`: `DateTime?`.
* `DataFim`: `DateTime?`.
* `LojaId`: `long?`.

[Voltar ao índice](#2-indice-clicavel)

### RequestActiveCampaignInputDTO

* `type`: `string`.
* `initiated_from`: `string`.
* `initiated_by`: `string`.
* `date_time`: `DateTime`.
* `list`: `int`.
* `customer_acct_name`: `string`.
* `contact`: `ContactActiveCampaignInputDTO` — [ContactActiveCampaignInputDTO](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-01-12uez99/#3-contactactivecampaigninputdto).

[Voltar ao índice](#2-indice-clicavel)

### RequestContactForm7

* `formnome`: `string`.
* `formemail`: `string`.
* `formfone`: `string`.
* `formcep`: `string`.
* `formtipo`: `string`.
* `formprofissao`: `string`.
* `valorconta`: `string`.

[Voltar ao índice](#2-indice-clicavel)

### ResolverItensBaixaInputDTO

* `Itens`: `List<ItemPlanilhaBaixaInputDTO>` — [ItemPlanilhaBaixaInputDTO](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-04-62zu2h/#3-itemplanilhabaixainputdto).

[Voltar ao índice](#2-indice-clicavel)

### ResolverPendenciaInputDTO

* `ObservacaoResolucao`: `string`. Baixa da pendência (Aberta → desfecho).
* `ComprovanteArquivoIds`: `List<long>`. Ids de Arquivo a vincular como comprovante na baixa (opcional).
* `Situacao`: `SituacaoPendenciaEnum?`. Desfecho da baixa. null → Resolvida. Aceita também os negativos (NaoResolvida, Cancelada) e ResolvidaComRessalvas.

[Voltar ao índice](#2-indice-clicavel)

### ResponderFormularioCampoPersonalizadoInputDTO

* `ProjetoId`: `long`.
* `OrdemServicoId`: `long`.
* `Campos`: `List<FormularioCampoPersonalizado>` — [FormularioCampoPersonalizado](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-03-186hp04/#3-formulariocampopersonalizado).

[Voltar ao índice](#2-indice-clicavel)

### RespostaCampoPersonalizadoInputDTO

* `ProjetoId`: `long`.
* `OrdemServicoId`: `long?`.
* `TarefaId`: `long?`.
* `Resposta`: `string`.
* `Token`: `string?`.
* `PularErroIA`: `bool?`.

[Voltar ao índice](#2-indice-clicavel)

### RespostaCampoPersonalizadoTarefaInputDTO

* `CampoPersonalizadoId`: `long`.
* `Resposta`: `string`.

[Voltar ao índice](#2-indice-clicavel)

### RespostaEditarCampoPersonalizadoInputDTO

* `resposta`: `string`.
* `ordemServicoId`: `long?`.
* `tarefaId`: `long?`.

[Voltar ao índice](#2-indice-clicavel)

### RespostaFeedbackInputDTO

* `ExecucaoLogId`: `long`. Round avaliado (AgenteExecucaoLog.Id), como veio na timeline.
* `Sinal`: `string`. "boa" ou "ruim".
* `Motivo`: `string`. Nome do MotivoFeedbackEnum (ex.: "InsistenteDemais"). Obrigatório quando o sinal é "ruim", ignorado quando é "boa".
* `Comentario`: `string`.
* `RespostaEsperada`: `string`. "Como deveria ter respondido".

[Voltar ao índice](#2-indice-clicavel)

### RotaEntregaInputDTO

* `Nome`: `string`. Corpo de criação de Rota de Entrega (Rotas de Compra).
* `RegiaoCidade`: `string`.
* `RegiaoUF`: `string`.
* `Observacao`: `string`.
* `DataPrevista`: `DateTime?`.
* `DataFimPrevista`: `DateTime?`.
* `LojaId`: `long?`.
* `VeiculoId`: `long?`.
* `TecnicoId`: `long?`.
* `ComprasIds`: `List<long>`. Compras (Ids) a já vincular na criação (opcional).

[Voltar ao índice](#2-indice-clicavel)

### RubricaInputDTO

* `Codigo`: `string`. Corpo de criação de rubrica da folha (RH/Folha).
* `Nome`: `string`.
* `Tipo`: `TipoRubricaEnum`.
* `Referencia`: `TipoReferenciaRubricaEnum`.
* `IncideInss`: `bool`.
* `IncideIrrf`: `bool`.
* `IncideFgts`: `bool`.

[Voltar ao índice](#2-indice-clicavel)

### SaidaPedidoVendaItensInputDTO

* `Itens`: `List<ItemBaixaInputDTO>` — [ItemBaixaInputDTO](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-04-62zu2h/#3-itembaixainputdto).

[Voltar ao índice](#2-indice-clicavel)

### SalvarAnaliseContaEnergiaInputDTO

* `Consumo`: `double?`.
* `ValorDisponibilidadeContaEnergia`: `double?`.
* `ValorIluminacaoPublica`: `double?`.
* `ValorTotalContaEnergia`: `double?`.
* `ValorkWh`: `double?`.
* `ValorkWhTUSD`: `double?`.
* `PorcentagemAliquota`: `double?`.
* `PorcentagemDesagio`: `double?`.
* `UnidadeConsumidora`: `string`.
* `FaseEnergetica`: `string`.
* `DisjuntorEntrada`: `double?`.
* `NumeroMedidor`: `string`.
* `TensaoSaida`: `int?`.
* `PorcentagemSimultaneidade`: `double?`.
* `Concessionaria`: `string`. NOME da distribuidora impresso na conta (ex.: "Copel"). O Projeto guarda o Id da concessionária, então o nome é resolvido no cadastro; sem correspondência, o campo do Projeto fica como está (a extração nunca cria concessionária).
* `Endereco`: `EnderecoAnaliseContaEnergiaInputDTO` — [EnderecoAnaliseContaEnergiaInputDTO](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-02-1y50x5n/#3-enderecoanalisecontaenergiainputdto). Endereço da INSTALAÇÃO impresso na conta.

[Voltar ao índice](#2-indice-clicavel)

### SalvarCamposFormularioInputDTO

* `Campos`: `List<FormularioCampoInputDTO>` — [FormularioCampoInputDTO](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-03-186hp04/#3-formulariocampoinputdto). Substitui em lote os campos de um Formulário.

[Voltar ao índice](#2-indice-clicavel)

### SalvarConteudoLandingPageInputDTO

* `Html`: `string`. Salva o conteúdo do editor (export do GrapesJS).
* `Css`: `string`.
* `GjsData`: `string`. Projeto serializado do GrapesJS (JSON) para reedição.

[Voltar ao índice](#2-indice-clicavel)

### SalvarMapeamentoInputDTO

* `Mapeamento`: `Dictionary<string, string>`. campoDoFormularioMeta → campoGroner.
* `Fixos`: `Dictionary<string, string>`. campoGroner → valor FIXO deste formulário. Para propriedades que não vêm de resposta nenhuma (Tipo do Negócio) ou que o anunciante quer constantes (Nome do negócio).

[Voltar ao índice](#2-indice-clicavel)

### SandboxConversarInputDTO

* `Mensagem`: `string`. Mensagem atual do "cliente" (vai como última msg user no Bedrock).
* `Historico`: `List<SandboxHistoricoItem>` — [SandboxHistoricoItem](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-05-1euyfrd/#3-sandboxhistoricoitem). Histórico anterior. Lista de turnos { role, text } em ordem cronológica. NÃO inclua a mensagem atual aqui — ela é appendada pelo lambda.
* `LeadId`: `long?`. Opcional. ID do lead pra contexto de tools (ex: AgendarVisita precisa pra resolver responsável). Sem isso, tools que dependem disso falham.
* `ProjetoId`: `long?`. Opcional. ID do projeto pra contexto.
* `TipoMidia`: `TipoMidiaMensagemEnum`. Tipo da mídia anexada. Texto = sem mídia.
* `MidiaUrl`: `string`. URL do arquivo no S3 (devolvida pelo upload do sandbox). Lambda baixa.
* `MidiaMimetype`: `string`. MIME type do arquivo (ex: image/jpeg, application/pdf).
* `MidiaNome`: `string`. Nome original do arquivo. Pode ser null.
* `MidiaTamanhoBytes`: `long?`. Tamanho em bytes. Lambda valida limite Bedrock.

[Voltar ao índice](#2-indice-clicavel)

### SandboxConversarInternoInputDTO

* `Mensagem`: `string`. Mensagem atual do vendedor (vai como última msg user no Bedrock).
* `Historico`: `List<SandboxHistoricoItem>` — [SandboxHistoricoItem](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-05-1euyfrd/#3-sandboxhistoricoitem). Histórico anterior { role, text } em ordem cronológica. NÃO inclua a mensagem atual — ela é appendada pelo lambda.
* `UsuarioId`: `long`. Vendedor que está testando o copiloto (o agente age "como" ele: permissões do perfil, contexto ativo fixado, etc.).
* `DryRun`: `bool`. Se true (DEFAULT), as tools rodam em dryRun — simulação, NÃO muta o CRM (retornam preview do que fariam). Passe false pra EXECUTAR de verdade (criar/mover/ enviar) e testar o round-trip completo. Só admin chega aqui.
* `TipoMidia`: `TipoMidiaMensagemEnum`. Tipo da mídia anexada. Texto = sem mídia.
* `MidiaUrl`: `string`. URL do arquivo no S3 (devolvida pelo upload do sandbox). Lambda baixa.
* `MidiaMimetype`: `string`. MIME type do arquivo (ex: image/jpeg, application/pdf).
* `MidiaNome`: `string`. Nome original do arquivo. Pode ser null.
* `MidiaTamanhoBytes`: `long?`. Tamanho em bytes. Lambda valida limite Bedrock.

[Voltar ao índice](#2-indice-clicavel)

### SandboxHistoricoItem

* `Role`: `string`. "user" ou "assistant".
* `Text`: `string`.

[Voltar ao índice](#2-indice-clicavel)

### SegurarEntregasInputDTO

* `PedidoVendaIds`: `List<long>`. Segurar a entrega a pedido do cliente (estudo "Entrega em espera", 09/09/2026). Repetir num pedido já em espera atualiza motivo/data e renova a revisão ("manter em espera").
* `Motivo`: `MotivoEsperaEntrega`.
* `Observacao`: `string`.
* `RetornoPrevisto`: `System.DateTime?`. Nulo = o cliente não sabe quando volta (a fila pede revisão depois de Configuracao.DiasReverEsperaEntrega).

[Voltar ao índice](#2-indice-clicavel)

### SepararItemInputDTO

* `ItemId`: `long`.
* `Quantidade`: `decimal`.
* `Observacao`: `string`.

[Voltar ao índice](#2-indice-clicavel)

### SepararItensInputDTO

* `Itens`: `System.Collections.Generic.List<SepararItemInputDTO>` — [SepararItemInputDTO](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-05-1euyfrd/#3-separariteminputdto). Lote de itens numa chamada só — o painel digita local e persiste tudo junto (a versão por-item travava a digitação do galpão: cada blur disparava um POST e a resposta re-montava os campos).

[Voltar ao índice](#2-indice-clicavel)

### Setor

* `Id`: `long`.
* `Ordem`: `int`.
* `Nome`: `string`.
* `Descricao`: `string`.
* `Ativo`: `bool`.
* `Codigo`: `string`.
* `Cor`: `string`.
* `SetorPaiId`: `long?`.
* `SetorPai`: `Setor` — [Setor](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-05-1euyfrd/#3-setor).

[Voltar ao índice](#2-indice-clicavel)

### SignerClickSignOutPutDTO

* `list_key`: `string`.
* `key`: `string`.
* `request_signature_key`: `string`.
* `email`: `string`.
* `name`: `string`.
* `has_documentation`: `bool`.
* `birthday`: `string`.
* `phone_number`: `string`.
* `sign_as`: `string`.
* `delivery`: `string`.
* `url`: `string`.
* `created_at`: `DateTime`.

[Voltar ao índice](#2-indice-clicavel)

### Simulacao

* `Id`: `long`.
* `Data`: `DateTime`.
* `kwP`: `double`.
* `PotenciaCA`: `double`.
* `PotenciaCC`: `double`.
* `Consumo`: `double`.
* `InformacoesExtras`: `string`.
* `PrecoClienteFinal`: `PrecoClienteFinal` — [PrecoClienteFinal](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-05-1euyfrd/#3-precoclientefinal).
* `ValorProduto`: `double`.
* `ValorServico`: `double`.
* `Preco`: `double`.
* `PrecoSemValorExtras`: `double`.
* `PrecoOriginal`: `double`.
* `QuantidadePlacas`: `double`.
* `GeracaoMensal`: `double`.
* `GeracaoAnual`: `double`.
* `QuantidadeFundacoes`: `double`.
* `AreaMinima`: `double`.
* `OcupacaoPlacas`: `double`.
* `RadiacaoSolar`: `double`.
* `PlacaNome`: `string`.
* `PlacaPotencia`: `double`.
* `PlacaProducaoMensal`: `double`.
* `PlacaPorcentagemPerdas`: `double`.
* `PlacaTamanho`: `double`.
* `PlacaPeso`: `double`.
* `Usuario`: `Usuario` — [Usuario](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-06-16y2x3u/#3-usuario).
* `Tipo`: `TipoEstruturaSimulador`.
* `TipoTelhado`: `string`.
* `ParcelaFinanciamento`: `double`.
* `TaxaJurosFinanciamento`: `double`.
* `QtdMesesFinanciamento`: `int`.
* `TaxaJurosAnualFinanciamento`: `double`.
* `PayBack`: `IList<SimulacaoPayBackAno>` — [SimulacaoPayBackAno](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-06-16y2x3u/#3-simulacaopaybackano).
* `GeracaoProducaoEm12Meses`: `IList<SimulacaoGeracaoMensal>` — [SimulacaoGeracaoMensal](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-06-16y2x3u/#3-simulacaogeracaomensal).
* `ValorExtrasAplicados`: `IList<ValorExtraAplicado>` — [ValorExtraAplicado](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-06-16y2x3u/#3-valorextraaplicado).
* `AnoRetornoInvestimento`: `int`.
* `AnoComMesesRetornoInvestimento`: `double`.
* `MesesRetornoInvestimento`: `double`.
* `SaldoUltimoAno`: `double`.
* `TotalCO2`: `double`.
* `TotalVeiculosForaCirculacao`: `double`.
* `TotalArvores`: `double`.
* `ContaAtualMes`: `double`.
* `ContaGeradorMes`: `double`.
* `ContaEconomiaMes`: `double`.
* `ContaAtualAno`: `double`.
* `ContaGeradorAno`: `double`.
* `ContaEconomiaAno`: `double`.
* `OpcoesPagamento`: `IList<OpcaoPagamentoSimulador>` — [OpcaoPagamentoSimulador](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-04-62zu2h/#3-opcaopagamentosimulador).
* `ComparativosInvestimento`: `IList<ComparativoInvestimentoSimulador>` — [ComparativoInvestimentoSimulador](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-01-12uez99/#3-comparativoinvestimentosimulador).
* `Financiamentos`: `IList<FinanciamentoSimulador>` — [FinanciamentoSimulador](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-03-186hp04/#3-financiamentosimulador).
* `ModeloEmail`: `ModeloEmail` — [ModeloEmail](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-04-62zu2h/#3-modeloemail).
* `PorcentagemEficiencia`: `double`.
* `CorGraficoPrimaria`: `string`.
* `CorGraficoSecundaria`: `string`.
* `CorTabela`: `string`.
* `PesoTotal`: `double`.
* `FonteIrradiacao`: `string`.
* `ConfiguracaoId`: `long`.
* `PorcentagemConsumoAtendida`: `double`.
* `PorcentagemSimultaneidade`: `double`.
* `TaxaDisponibilidade`: `double`.
* `FaceTelhado`: `string`.
* `PorcentagemPerdasPorFaceTelhado`: `double`.
* `ValorDokWh`: `double`.
* `ValorDoKwhTUSD`: `double`.
* `ValorDokWhPonta`: `double`.
* `ValorDokWhPontaTUSD`: `double`.
* `PorcentagemTaxaRetornoTIR`: `double`.
* `Inversor`: `string`.
* `PotenciaInversor`: `double`.
* `GeracaoAnualReais`: `double`.
* `GeracaoMensalReais`: `double`.
* `PlacaPorcentagemEficiencia`: `double`.
* `BasePrecoPorPotencia`: `double`.
* `DataValidadeProposta`: `DateTime?`.
* `QuantidadeInversores`: `double`.
* `CodigoKit`: `string`.
* `DescricaoKit`: `string`.
* `DescricaoTecnicaKit`: `string`.
* `ItensKit`: `string`.
* `ItensKitJson`: `string`.
* `InsumosAplicados`: `IList<InsumoAplicadoSimulacao>` — [InsumoAplicadoSimulacao](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-04-62zu2h/#3-insumoaplicadosimulacao).
* `CustoART`: `double`.
* `CustoMaoObra`: `double`.
* `CustoEngenharia`: `double`.
* `CustoExtra`: `double`.
* `Lucro`: `double`.
* `LCOE`: `double`.
* `ValorTotalCustosExtrasProduto`: `double`.
* `ValorTotalCustosExtrasServico`: `double`.
* `ValorTotalCustosExtrasTotal`: `double`.
* `RecalcularCustosExtras`: `bool`.
* `ValorTotalCustosExtrasProdutoServico`: `double`.
* `Lead`: `Lead` — [Lead](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-04-62zu2h/#3-lead).
* `DescricaoTecnicaInversor`: `string`.
* `DescricaoTecnicaModulo`: `string`.
* `Fornecedor`: `string`.
* `ValorDeslocamento`: `double`.
* `ValorImpostos`: `double`.
* `ValorServicoFixo`: `double`.
* `ValorImpostosServico`: `double`.
* `ValorComissao`: `double`.
* `LucroServico`: `double`.
* `CustoExtraProduto`: `double`.
* `CustoExtraServico`: `double`.
* `LucroProduto`: `double`.
* `ValorImpostosProduto`: `double`.
* `ValorComissaoProduto`: `double`.
* `ValorComissaoServico`: `double`.
* `ValorDiarias`: `double`.
* `ValorTotalProduto`: `double`.
* `ValorTotalServico`: `double`.
* `ValorNFImpostoMenosProduto`: `double`.
* `CustoPorPotencia`: `double`.
* `CustosExtrasAplicados`: `IList<CustoExtraSimulacao>` — [CustoExtraSimulacao](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-02-1y50x5n/#3-custoextrasimulacao).
* `ContaGeradorAntesMes`: `double`.
* `ContaEconomiaAntesMes`: `double`.
* `ContaEconomiaAntesAno`: `double`.
* `ContaGeradorAntesAno`: `double`.
* `PorcentagemEficienciaAntes`: `double`.
* `ValorkWhTUSD`: `double`.
* `ValorDesconto`: `double`.
* `JSON`: `string`.
* `EstudoJson`: `string`.
* `DadosGrupoA`: `GrupoADadosSimulacao` — [GrupoADadosSimulacao](https://ajuda.groner.app/pt-br/article/api-groner-contratos-referencia-03-186hp04/#3-grupoadadossimulacao).
* `ValorTotalCustosExtrasServicoAntesEncargos`: `double`.
* `ValorAumentoPorLoja`: `double`.
* `ValorTotalCustosExtrasProdutoAntesEncargos`: `double`.
* `ContaGeradorValorEncargosMes`: `double`.
* `ContaGeradorValorInjetadoMes`: `double`.
* `ContaGeradorValorSobraMes`: `double`.
* `ContaGeradorValorTaxaDisponibilidadeMes`: `double`.
* `ContaGeradorValorBeneficioTarifario`: `double`.
* `ContaGeradorValorIluminacaoPublica`: `double`.
* `Categoria`: `string`.
* `PorcentagemEficienciaInversor`: `double`.
* `GarantiaBateriaAnos`: `int`.
* `GarantiaInstalacaoAnos`: `int`.
* `GarantiaInversorAnos`: `int`.
* `GarantiaModulosAnos`: `int`.
* `PorcentagemDesagio`: `double`.
* `TaxaRetornoTIRLucro`: `double`.
* `AnoComMesesRetornoInvestimentoLucro`: `double`.
* `MesesRetornoInvestimentoLucro`: `double`.
* `AnoRetornoInvestimentoLucro`: `int`.
* `ContaLucroAnual`: `double`.
* `ContaLucroMensal`: `double`.
* `UsinaPotenciaKwp`: `double`. Potência total da usina em kWp
* `UsinaTotalCotas`: `int`. Número total de cotas da usina
* `UsinaValorCota`: `double`. Valor unitário da cota em R$
* `UsinaGeracaoPorCotaKwh`: `double`. Geração mensal por cota em kWh
* `UsinaCreditoMensal`: `double`. Crédito de energia mensal na conta em R$
* `UsinaTaxaGestaoMensal`: `double`. Taxa de gestão/administração mensal da usina em R$
* `UsinaRetornoAnualPercentual`: `double`. Retorno anual em % sobre o valor investido
* `UsinaDegradacaoAnualPercentual`: `double`. Degradação anual do sistema em %
* `UsinaVidaUtilAnos`: `int`. Vida útil do contrato em anos
* `AssinaturaDescontoPercentual`: `double`. % de desconto sobre a tarifa da concessionária
* `AssinaturaPrazoContratoMeses`: `int`. Prazo do contrato em meses
* `AssinaturaTaxaGestaoMensal`: `double`. Taxa de gestão mensal em R$
* `AssinaturaConsumoMinimoKwh`: `double`. Consumo mínimo contratado em kWh
* `AssinaturaTarifaOriginal`: `double`. Tarifa original da concessionária em R$/kWh
* `AssinaturaTarifaComDesconto`: `double`. Tarifa com desconto aplicado em R$/kWh
* `AssinaturaEconomiaProjetadaContrato`: `double`. Economia total projetada para todo o contrato em R$
* `AssinaturaProjecaoAnualJson`: `string`. JSON da projeção anual de economia
* `AssinaturaAutoconsumoRemoto`: `bool`. true = Autoconsumo Remoto (usa a tarifa TE bruta, com tributos); false = Energia Compartilhada (usa a TE líquida). É a única diferença de cálculo entre os dois cenários.
* `AssinaturaTarifaTEBruta`: `double`. Tarifa TE bruta (com tributos) — usada no Autoconsumo Remoto
* `AssinaturaTarifaTELiquida`: `double`. Tarifa TE líquida usada, em R$/kWh
* `AssinaturaTarifaTUSDLiquida`: `double`. Tarifa TUSD líquida usada, em R$/kWh
* `AssinaturaTaxaDisponibilidadeKwh`: `double`. Taxa de disponibilidade em kWh (30/50/100 conforme a ligação)
* `AssinaturaDescontarTaxaDisponibilidade`: `bool`. Quando true, a taxa de disponibilidade entrou na base descontável
* `AssinaturaKwhCompensavel`: `double`. kWh efetivamente compensáveis no mês
* `AssinaturaBaseDescontavel`: `double`. Base descontável do mês em R$ (tarifa total × kWh compensável)
* `AssinaturaValorTaxaDisponibilidade`: `double`. Valor mensal da taxa de disponibilidade em R$
* `AssinaturaRegimeLucroReal`: `bool`. Cliente Lucro Real / S.A. — só ele aproveita o crédito tributário
* `AssinaturaValorConsumoTE`: `double`. Valor em R$ da linha de consumo TE da fatura (base do crédito)
* `AssinaturaValorConsumoTUSD`: `double`. Valor em R$ da linha de consumo TUSD da fatura
* `AssinaturaCreditoICMS`: `double`. Créditos tributários mensais em R$ (0 fora do Autoconsumo Remoto)
* `AssinaturaCreditoPIS`: `double`.
* `AssinaturaCreditoCOFINS`: `double`.
* `AssinaturaCreditoTributarioTotal`: `double`.
* `AssinaturaEconomiaTotalMes`: `double`. Economia mensal somando o crédito tributário
* `AssinaturaAliquotaICMS`: `double`. Alíquotas registradas na proposta (%) — exibição/memória
* `AssinaturaAliquotaPIS`: `double`.
* `AssinaturaAliquotaCOFINS`: `double`.
* `BateriaId`: `long?`. Id da bateria dimensionada. Null = sem bateria no sistema.
* `BateriaNome`: `string`.
* `BateriaCodigo`: `string`.
* `BateriaCapacidadeAh`: `double`. Capacidade nominal da bateria em Ah
* `BateriaTensaoNominal`: `double`. Tensão nominal da bateria em V
* `BateriaTensaoBanco`: `double`. Tensão nominal do banco em V (ex: 24, 48, 51.2)
* `BateriaCapacidadeTotalNecessariaAh`: `double`. Capacidade total necessária calculada em Ah
* `BateriasEmSerie`: `int`. Baterias em série para atingir a tensão do banco
* `StringsEmParalelo`: `int`. Strings em paralelo para atingir a capacidade necessária
* `TotalBaterias`: `int`. Total de baterias = Série × Paralelo
* `BateriaEnergiaUtilBancoKwh`: `double`. Energia útil real do banco dimensionado em kWh
* `BateriaEnergiaTotalBancoKwh`: `double`. Energia bruta total do banco em kWh
* `BateriaAutonomiaHorasReal`: `double`. Autonomia real entregue pelo banco em horas
* `BateriaHorasAutonomia`: `double`. Autonomia solicitada pelo usuário em horas
* `BateriaValorTotal`: `double`. Valor total do banco de baterias em R$
* `BateriaVidaUtilAnos`: `int`. Vida útil em anos do modelo de bateria selecionado. Usada para alocar o custo de troca no payback Off-Grid.
* `MaxBateriasInversor`: `int`.
* `BateriaExcedeQuantidadeMaxima`: `bool`.
* `BateriaObservacao`: `string`.
* `BateriaPotenciaTotalKw`: `double`. Potência ativa total das cargas prioritárias em kW (modo lista)
* `BateriaPotenciaPicoKva`: `double`. Potência de pico das cargas prioritárias em kVA (modo lista)
* `BateriaCargasPrioritariasJson`: `string`. JSON da lista de cargas prioritárias informadas no dimensionamento. Serializado de List&lt;CargaPrioritariaInputDTO&gt;
* `BateriaDetalhamentoCargasJson`: `string`. JSON do detalhamento calculado por carga (potência, pico, energia). Serializado de List&lt;CargaPrioritariaResultadoDTO&gt;
* `BateriaValidacaoInversorJson`: `string`. JSON com resultado da validação de compatibilidade bateria × inversor. Serializado de ValidacaoInversorDTO. Null se não validado.
* `TipoSimulacao`: `TipoSimulacaoEnum`. Tipo do sistema simulado. OnGrid = apenas geração solar sem bateria. Hibrido = geração solar com bateria conectada à rede. OffGrid = sistema isolado, sem conexão à rede.
* `SimultaneidadeUsadaCalculo`: `double`. Porcentagem de simultaneidade efetivamente usada no cálculo (pode diferir de Projeto.PorcentagemSimultaneidade quando há bateria em Híbrido/Autoconsumo ou Grid Zero).
* `EnergiaUtilizadaMes`: `double`. Energia mensal efetivamente utilizada (consumo atendido + carga das baterias). Útil para Off-Grid e Grid Zero, onde o excedente acima desse valor é descartado.
* `EnergiaDescartadaMes`: `double`. Energia mensal descartada por falta de carga ou de rede para receber a injeção (relevante em Off-Grid e Grid Zero).

[Voltar ao índice](#2-indice-clicavel)


<!-- groner-suporte:veja-tambem:inicio -->
## Veja também

* [Guia principal, autenticação e coleção Postman](https://ajuda.groner.app/pt-br/article/documentacao-da-api-groner-crm-vz2bq2/)
* [Como gerar token de API](https://ajuda.groner.app/pt-br/article/como-gerar-um-token-de-api-para-integrar-o-groner-com-outros-sistemas-2okhj6/)
* [Limites de requisições](https://ajuda.groner.app/pt-br/article/limites-de-requisicoes-da-api-da-groner-1cwtj65/)
<!-- groner-suporte:veja-tambem:fim -->