CUBO CRM
    CUBO CRM
    • Comece por aqui
    • Activities
      • Listar todas as atividades
        GET
      • Criar nova atividade
        POST
      • Obter atividade por ID
        GET
      • Atualizar atividade
        PUT
      • Excluir atividade
        DELETE
    • Annotation
      • Criar nova anotação
        POST
      • Obter anotação por ID
        GET
      • Atualizar anotação
        PUT
      • Excluir anotação
        DELETE
    • Apikey
      • Listar todas as apikeys
        GET
      • Criar nova apikey
        POST
      • Obter apikey por ID
        GET
      • Atualizar apikey
        PUT
      • Excluir apikey
        DELETE
    • Category
      • Listar todas as categorias
        GET
      • Criar nova categoria
        POST
      • Obter categoria por ID
        GET
      • Atualizar categoria
        PUT
      • Excluir categoria
        DELETE
    • Company
      • Obter empresa
        GET
      • Atualizar empresa
        PUT
    • Custom Field
      • Listar todos os campos personalizados
        GET
      • Criar novo campo personalizado
        POST
      • Obter campo personalizado por ID
        GET
      • Atualizar campo personalizado
        PUT
      • Excluir campo personalizado
        DELETE
    • Deal
      • Listar todos os negócios
      • Criar novo negócio
      • Obter negócio por ID
      • Atualizar negócio
      • Excluir negócio
    • Domain
      • Listar todos os domínios
      • Criar novo domínio
      • Obter domínio por ID
      • Excluir domínio
    • LostReason
      • Listar todos os motivos de perda
      • Criar motivo de perda
      • Obter motivo de perda por ID
      • Atualizar motivo de perda
      • Excluir motivo de perda
    • Organization
      • Listar todas as organizações
      • Criar nova organização
      • Obter organização por ID
      • Atualizar organização
      • Excluir organização
    • People
      • Listar todas as pessoas
      • Criar nova pessoa
      • Obter pessoa por ID
      • Atualizar pessoa
      • Excluir pessoa
    • Pipe
      • Listar todos os funis
      • Criar novo funil
      • Listar funil por ID
      • Atualizar Funil
      • Excluir funil
    • Product
      • Listar todos os produtos
      • Criar novo produto
      • Obter produto por ID
      • Atualizar produto
      • Excluir produto
    • Proposal
      • Listar todos as propostas
      • Criar proposta para negociação pelo ID
      • Obter proposta por ID
      • Atualizar proposta
    • Stage
      • Buscar todos os estágios do funil pelo ID
      • Criar estágios
      • Obter estágios por ID
      • Atualizar estágio
      • Excluir estágio
    • Template
      • Listar todos os templates de mensagem
      • Criar template de mensagem
      • Criar template de mensagem para negócio pelo ID
      • Obter template de mensagem por ID
      • Atualizar template de mensagem
      • Excluir template de mensagem
    • Webhooks
      • Receber dados do BotConversa para criação
      • Receber dados do BotConversa para atualização
      • Receber dados do ManyChat para criação
      • Receber dados do ManyChat para atualização

    Proposal

    Entidade: Proposal#

    Visão Geral#

    A entidade Proposal representa propostas comerciais geradas para negociações, contendo informações detalhadas sobre produtos, itens adicionais e personalizações. As propostas são vinculadas a uma negociação (Deal) e geram um documento PDF armazenado em um serviço de armazenamento (S3).

    Estrutura da Entidade#

    Campos Principais#

    CampoTipoDescriçãoObrigatório
    idnumberIdentificador único da proposta✅ (auto)
    titlestringTítulo descritivo da proposta✅
    dealIdnumberID da negociação associada✅
    pdfUrlstringURL do arquivo PDF gerado✅ (auto)
    customerLogostringURL do logo do cliente (opcional)❌
    statusenumStatus da proposta (pending, approved, rejected)✅
    createdAtDateTimeData/hora de criação✅ (auto)
    updatedAtDateTimeData/hora da última atualização✅ (auto)

    Relacionamentos#

    Deal: Vinculada a uma negociação específica.
    Company: Vinculada à empresa do usuário (via Deal).
    ProposalCharacteristic: Itens adicionais associados à proposta.
    CustomProductProposal: Produtos personalizados associados à proposta.

    Status Disponíveis#

    StatusDescrição
    pendingProposta aguardando aprovação
    approvedProposta aprovada
    rejectedProposta rejeitada

    Casos de Uso Detalhados#

    1. Geração de Proposta Comercial#

    Cenário: Um usuário deseja criar uma proposta comercial para uma negociação, incluindo produtos e itens adicionais.
    Fluxo:
    1.
    O usuário fornece dados da proposta, incluindo logo do cliente e produtos personalizados.
    2.
    O sistema gera um PDF com informações do cliente, produtos, itens adicionais e imagens.
    3.
    O PDF é armazenado no S3, e a proposta é registrada no banco.
    4.
    Itens adicionais e produtos personalizados são associados à proposta.
    Benefícios: Automação na criação de documentos profissionais e centralização de informações.

    Regras de Negócio#

    Criação de Propostas#

    Vinculação automática à negociação e à empresa do usuário autenticado.
    Status inicial definido como pending.
    Arquivos (logos, imagens de produtos) são movidos para um destino final no S3.
    O PDF é gerado com base em um modelo dinâmico, incluindo imagens e cálculos financeiros.

    Controle de Acesso#

    Usuários só podem gerenciar propostas de negociações de sua empresa.
    Usuários comuns só acessam propostas de negociações que possuem.
    Isolamento por empresa (multi-tenancy).

    Segurança#

    Validação de arquivos para garantir existência e formato correto.
    Normalização de nomes de arquivos para evitar caracteres inválidos.
    Integração segura com o serviço de armazenamento S3.

    Operações Disponíveis#

    OperaçãoDescriçãoMétodo HTTP
    ListarRecupera propostas com paginaçãoGET
    CriarCria uma nova proposta e gera PDFPOST
    VisualizarExibe detalhes de uma proposta específicaGET
    AtualizarModifica os dados da propostaPUT/PATCH

    Fluxo de Uso#

    Segurança e Boas Práticas#

    Para Desenvolvedores#

    Validar URLs de arquivos e formatos de imagem antes do processamento.
    Usar transações para garantir consistência ao criar propostas e associações.
    Garantir que nomes de arquivos sejam sanitizados para evitar erros.

    Para Usuários#

    Fornecer imagens de alta qualidade para logos e produtos.
    Revisar itens adicionais antes de gerar a proposta.
    Verificar o PDF gerado para garantir que todas as informações estão corretas.

    Limitações e Restrições#

    Propostas são específicas por negociação e empresa.
    Geração de PDF depende de integração com serviço S3.
    Imagens devem estar em formatos suportados (PNG, JPEG, WebP).

    Entidade: ProposalCharacteristic#

    Visão Geral#

    A entidade ProposalCharacteristic representa itens adicionais associados a uma proposta, como taxas de entrega, descontos ou observações, permitindo personalização financeira e descritiva.

    Estrutura da Entidade#

    Campos Principais#

    CampoTipoDescriçãoObrigatório
    idnumberIdentificador único do item adicional✅ (auto)
    typeenumTipo do item (delivery_charges, additional_charges, discount, observation)✅
    descriptionstringDescrição do item (opcional)❌
    valuenumberValor monetário do item (opcional)❌
    proposalIdnumberID da proposta associada✅
    createdAtDateTimeData/hora de criação✅ (auto)
    updatedAtDateTimeData/hora da última atualização✅ (auto)

    Relacionamentos#

    Proposal: Vinculada a uma proposta específica.

    Tipos Disponíveis#

    TipoDescrição
    delivery_chargesTaxas de entrega
    additional_chargesTaxas adicionais
    discountDescontos aplicados
    observationObservações descritivas

    Casos de Uso Detalhados#

    1. Adição de Custos Extras#

    Cenário: Um usuário deseja incluir taxas de entrega e descontos em uma proposta.
    Fluxo:
    1.
    Durante a criação da proposta, o usuário adiciona itens como "Frete" e "Desconto Promocional".
    2.
    Os itens são registrados com tipo, descrição e valor (se aplicável).
    3.
    Os valores são usados no cálculo final do PDF gerado.
    Benefícios: Flexibilidade para personalizar custos e observações na proposta.

    Regras de Negócio#

    Criação de Itens#

    Itens são criados automaticamente ao gerar uma proposta com itens adicionais.
    Tipo e descrição são obrigatórios para itens do tipo observation.
    Valores são obrigatórios para itens do tipo delivery_charges, additional_charges e discount.

    Controle de Acesso#

    Itens são gerenciados indiretamente via propostas.
    Isolamento por empresa (via Proposal).

    Segurança#

    Validação de tipos de itens para garantir consistência.
    Exclusão de itens ocorre automaticamente com a exclusão da proposta.

    Operações Disponíveis#

    OperaçãoDescriçãoMétodo HTTP
    CriarCria itens adicionais durante a propostaPOST (auto)
    VisualizarExibe itens via propostaGET (via Proposal)

    Fluxo de Uso#

    Segurança e Boas Práticas#

    Para Desenvolvedores#

    Validar tipos e valores dos itens para evitar cálculos incorretos.
    Usar transações para criar itens junto com a proposta.

    Para Usuários#

    Fornecer descrições claras para itens.
    Revisar valores de descontos e taxas antes de incluir.
    Usar observações apenas para informações não financeiras.

    Limitações e Restrições#

    Itens são específicos por proposta.
    Não podem ser criados ou editados diretamente, apenas via proposta.

    Entidade: CustomProductProposal#

    Visão Geral#

    A entidade CustomProductProposal representa produtos personalizados associados a uma proposta, permitindo a inclusão de itens não cadastrados no sistema, com títulos, descrições e imagens.

    Estrutura da Entidade#

    Campos Principais#

    CampoTipoDescriçãoObrigatório
    idnumberIdentificador único do produto personalizado✅ (auto)
    productTitlestringTítulo do produto personalizado✅
    productDescriptionstringDescrição do produto (opcional)❌
    productUrlFilesstringURL de arquivo de imagem do produto (opcional)❌
    proposalIdnumberID da proposta associada✅
    createdAtDateTimeData/hora de criação✅ (auto)
    updatedAtDateTimeData/hora da última atualização✅ (auto)

    Relacionamentos#

    Proposal: Vinculada a uma proposta específica.

    Casos de Uso Detalhados#

    1. Inclusão de Produtos Personalizados#

    Cenário: Um usuário deseja adicionar produtos únicos a uma proposta, com imagens específicas.
    Fluxo:
    1.
    Durante a criação da proposta, o usuário adiciona produtos personalizados com título, descrição e imagens.
    2.
    As imagens são movidas para um destino final no S3.
    3.
    Os produtos são registrados e associados à proposta.
    4.
    As imagens aparecem no PDF gerado.
    Benefícios: Flexibilidade para incluir itens fora do catálogo padrão.

    Regras de Negócio#

    Criação de Produtos Personalizados#

    Produtos são criados automaticamente ao gerar uma proposta com produtos personalizados.
    Pelo menos uma imagem é obrigatória por produto.
    Arquivos de imagem são movidos para um destino final no S3.

    Controle de Acesso#

    Produtos são gerenciados indiretamente via propostas.
    Isolamento por empresa (via Proposal).

    Segurança#

    Validação de URLs de arquivos para garantir existência.
    Exclusão de produtos ocorre automaticamente com a exclusão da proposta.

    Operações Disponíveis#

    OperaçãoDescriçãoMétodo HTTP
    CriarCria produtos personalizados durante a propostaPOST (auto)
    VisualizarExibe produtos via propostaGET (via Proposal)

    Fluxo de Uso#

    Segurança e Boas Práticas#

    Para Desenvolvedores#

    Validar URLs de imagens e garantir formatos suportados.
    Usar transações para criar produtos junto com a proposta.
    Garantir que arquivos sejam movidos corretamente no S3.

    Para Usuários#

    Fornecer títulos descritivos para produtos.
    Usar imagens de alta qualidade para melhor apresentação no PDF.
    Verificar se todas as imagens foram carregadas corretamente.

    Limitações e Restrições#

    Produtos são específicos por proposta.
    Não podem ser criados ou editados diretamente, apenas via proposta.
    Requer pelo menos uma imagem por produto.
    Página anterior
    Excluir produto
    Próxima página
    Listar todos as propostas
    Built with