Adicionar AvailabilityPublisher para atualizações de status de membro
Permitir acesso elevado nos terminais getDomainById e check-dns
Donos de org de topo e membros do sistema estavam recebendo 403 no getDomainBy ID e verificar-dns porque esses endpoints verificados é Org directamente. Adicion...
Permitir que proprietários de orgs de alto nível e membros do sistema gerenciem os domínios de qualquer org
Evitar domínios de raiz duplicados e corrigir a exibição de domínio primário
Verificação ONE DOMAIN PER ORG incorretamente excluída .kamocrm.com web-alias domínios, permitindo que uma org acumular múltiplos domínios raiz (e 10 aliases ca...
Reduza a latência da criação de org e corrija falhas em cascata de tradução
- OrganizationController: substitua os membros da equipeForAllOrgs (org completo) scan de tabela) com a garantiaTeamMemberForOrg (single org) — elimina o ~400ms...
Adicionar ponto final inicial para orgs pré-existentes
* ******************************* dispara o mesmo configuração idempotent como o gancho de criação sub-org (BillingSetupService .setupForSubOrgCreation) mas pod...
Auto-atribuir primeiro assento, livre como piso, mais ampla org invalidação
BillingSetupService agora ativa o primeiro slot de licença aberto para o criador Quando semeia uma subscrição de sub-org (e o mesmo para o proprietário da promo...
Membros de org de topo obter plano de plataforma-proprietário, bypass billing gates
Os membros das organizações KamoCRM (de nível superior) não estão sujeitos ao sistema de facturação — eles obter a matriz de características do plano ONDER UNIM...
Auto-fornecimento assento KamoCRM na criação sub-org; promover-billing-proprietário endpoint
DireitoService walks SubscriptionMember (not AccountMember) to comput Direitos dos membros — a união de características entre os subs activos do licenciado, mai...
Grupo de Contas -> AccountTier; endpoints /grupos -> /tiers
Endpoints do grupo de conta (nível de segmentação do cliente, não faturamento) renomeado para usar a terminologia "tier" consistentemente com o Mudar o nome da ...
Drop users/masterAccountHolder, use Account.members + primaryMember
AccountController agora reflete o modelo Conta-como-grupo: - computDisplayName / extractEmail / extractPhone resolver através da Membro primário (Membro) em vez...
Persista idioma membro / fuso horário / moeda na inscrição
O endpoint /register agora aceita idioma, fuso horário e moeda padrão Ao lado do campo do país existente. RegistoServiço define país e fuso horário no novo usuá...
Mover de BillingGroup para licenças baseadas em conta
DireitoO Serviço resolve os direitos dos membros contra a AccountLicense Registos pertencentes à conta de facturação do membro. Os direitos dos membros forma ag...
Suporte aninhado nome/email/foneNúmeros + endpoints de gerenciamento de endereços
- AccountController aceita nome aninhado/email/números de telefone JSON no POST/PUT - O endereço inicial no POST cria Shipping (e BILLING quando usadoAsBillingT...
Adicionar parâmetros de GET /{id}/história e /{id}/história/filtros
Endpoint paginado, filtrado, pesquisável com carga de ator em lote (sem N+1). O endpoint dos filtros retorna campos usados distintos, todos os campos de registr...
Adicionar endpoints de atribuição da conta principal, atualizar o AccountController para o tipo de moeda
Backfill TeamTelefone de membroExtensão de trabalho do MemberVoipConfig na inicialização
Mudar para o mapa de configuração para adicionar suporte ao kamo-asterisco
Estatísticas de gravação de configuração do sistema + ajustáveis de processamento de gravação
- Está bem. retorna os quatro contadores exposto nas configurações kamo-interna → Plataforma → Configuração → VoIP/SMS tab (vmPending, callPending, vmError, cal...
Atualizar parâmetro de descrição OrgThemeProvisionServiceTest for buildConfigJson
Incluir telefoneExtensão de trabalho na resposta by-department; aceitar telefoneWorkExtension on member PUT
Incluir a descrição de org no config.json
Adicionar campo de descrição para buildConfigJson() e pass org.getDescription() de writeConfigFiles() assim que o tema config.json carrega o org's descrição par...
Expor incluirEmpresa em intation-config e market-config respostas
Ambos... E... agora inclui a bandeira includeEmpresa para que o frontend saiba se deve mostrar o campo de nome da empresa na criação de chumbo.
Adicionar registro diagnóstico ao ponto final /nomes
Log orgId, contagem de membros e resolução de nome por membro para diagnosticar Por que razão o nome do membro atribuído não está a resolver correctamente.
Priorizar o primeiro/último nome real sobre o nome de usuárioAlias para exibição
nome de usuárioAlias é funcionalmente um identificador de login (muitas vezes igual ao nome de usuário), não é um nome de exibição. Nomes reais de leitura human...
Adicionar /names endpoint retornando id→name para todos os membros, independentemente do estado
Os filtros de endpoint by-department apenas para membros ativos da equipe, mas extensão As atribuições podem remeter membros de base ou membros inactivos. Usar ...
- Não. endpoint
Returns salesType, subType e customForms for a market by marketId so o formulário Adicionar Chumbo pode renderizar campos de sub-tipo e formulários personalizad...
Resolver o nome da exibição com a prioridade correta no endpoint by-department
Prioridade: member.usernameAlias → user.name.formatFull() → user.alias → user.username
Serialize Long como string para evitar a perda de precisão JS em grandes IDs do BarataDB
Adicionar éDisponível para resposta de by-department e me/availability endpoints
Adicionar o registo ao Endpoint Antecedente
Log org/index, informações de arquivo, userId, decisões de autenticação e estadiamento MinIO chave para rastrear porque uploads de fundo não estão aparecendo no...
Reconstruir para pegar o membro JsonIdentity Resolução de informações da biblioteca compartilhada com kamo
correção da biblioteca compartilhada com kamo b57d156 @JsonIdentityInfo(propriedade = "uniqueId") → "id" no Membro, resolvendo 400 erros no PUT /api/security/or...
Remover duplicado CorsFilter bean causando duplo cabeçalho Access-Control-Allow-Origin
O Feijão CorsFilter explícito causou um segundo filtro CORS ao lado da Primavera Suporte CORS incorporado da segurança (que usa CorsConfigurationSource). Ambos ...
Permitir que o usuário do sistema gerencie a marca org e corrija a autenticação de logo
- Adicionar bypass do usuário do sistema como primeiro guard no canManageOrgBranding assim plataforma usuário do sistema tem controle total de marca sobre todas...
Endpoints de configuração do sistema + visão geral da plataforma
Superfície de configuração ampla da plataforma, fechada pelo proprietário de topo existente guard (matches SystemUserConfigController's requireTopLevelOwner pat...
Razão real da superfície por trás do erro do GoDaddy 400
GoDaddy agora retorna HTTP 400 com code=UNABLE TO AUTHENTICATE e body "Mau Pedido : Mau Pedido" quando uma conta não atende ao seu atual Elegibilidade da API de...
Adicionar GET /api/security/org/all-networks para administradores de plataforma
Os proprietários de orgs de topo agora podem buscar todas as organizações no sistema com informações de adesão relativas ao chamador. Orgs onde o chamador tem u...
Soltar o parâmetro do membro da equipaPayFeesSetting
Espelha a alteração da biblioteca partilhada — SecurityModelController, MasterModelController e AppliedModelController já não lê/escrever Membro da equipaPayFee...
Domínios de carga de energia via findByIdWithDomains, drop @Transactional
@Transactional em um método de controle mantém uma conexão DB aberta através todo o upload MinIO, e também arrisca LazyInitializationException se o interna getO...
Filtragem de visibilidade + auto-verificar propriedade do subdomínio
Controlador de Organização: - Criação da Web-alias org agora auto-marca propriedadeVerified=true e isDnsVerified=true on the created OrgDomain — no registro TXT...
Enviar diretamente para o público/{domain-pasta}/img/ em vez de preparar o balde
O endpoint do uploadLogo estava escrevendo para um placeholder 'sumtingwong' codificado (configuração não preenchida) em vez do caminho do tema público da org. ...
Remover o nó k2m1 desactivado do nó de bordas por omissão
k2m1 (10.8.2.1) está permanentemente para baixo. Deixando-o na lista de failover fez com que as tentativas de upload pendurassem até o novo timeout do OkHttp di...
Config de nível Org, cliente GoDaddy e web-alias org criam caminho
Wires the new Subdomain Branches feature end-to-end on the backend: - SubdomínioBranchesController for org-level enable + GoDaddy creds (live-verified) - GoDadd...
Deixar cair a verificação de SMS para o campo do telefone na inscrição
O número de telefone coletado durante o self-service é agora um campo de texto opcional simples — sem /register/phone/iniciate, sem código SMS, nenhum /register...
Estado de equipe explícito + prefixo de nome/catálogos sufixos
Agora, devolve o nome Prefixes e NameSuffixes, fonte do NamePrefixType e NameSuffixType para o Adicionar os formulários Membros / Adicionar os Membros da Equipe...
Faça e-mail + nome legal opcional para sub-13 inscrições
O endpoint /api/segurança/registro anteriormente rejeitou qualquer pedido Falta o e-mail, primeiro nome ou sobrenome. Que fez o caminho under-13 (KIDS ONly orgs...
Como o que vês no transporte?
Cada uma dessas atualizações pousa automaticamente em seu espaço de trabalho. Comece grátis e veja crescer semana após semana.