Compatibilidade com a integração anterior
Esta versão mantém compatibilidade com implementações construídas a partir da documentação anterior.
Contrato mínimo que não mudou
Para substituir o Perfex na parte comercial, o sistema próprio continua precisando expor somente estes cinco endpoints:
GET {CUSTOM_PLANS_ENDPOINT}
GET {CUSTOM_SERVERS_ENDPOINT}
GET {CUSTOM_DEFAULT_SERVER_ENDPOINT}
GET {CUSTOM_DEFAULT_SERVER_ID_ENDPOINT}
POST {CUSTOM_REGISTER_ENDPOINT}Se sua integração anterior já implementa esses endpoints e está funcionando, ela não precisa adotar imediatamente a API de tenants.
O que foi adicionado
A principal evolução está no contrato de planos:
additionalUserPrice,additionalChannelPrice,additionalSpacePrice.Preço individual dos módulos existentes.
activecampaigndigicallsecampaignDigicallsPrice.activeinternalchateinternalChatPrice.
Os campos novos são aditivos, mas devem ser enviados explicitamente. Na sincronização, campos ausentes assumem 0 ou false e podem sobrescrever valores locais.
Correção sobre planId
O frontend pode trabalhar internamente com um objeto de seleção, mas o DigitalSac normaliza o valor antes de chamar o sistema comercial. O endpoint de cadastro recebe planId como string ou número, nunca como objeto no contrato atual.
Provisionamento de tenants
A API POST /api/tenants e PUT /api/tenants/{id} é uma extensão para sistemas que desejam controlar também a criação e os upgrades diretamente no DigitalSac.
Use uma destas estratégias:
Compatibilidade v1: o endpoint de cadastro executa o processo já adotado pela integração existente.
Provisionamento direto: após receber o cadastro, o sistema comercial chama a API de tenants do DigitalSac.
Não execute as duas estratégias para a mesma contratação sem idempotência, pois isso pode criar clientes duplicados.
Migração segura
Mantenha os cinco endpoints e formatos atuais.
Adicione os novos campos ao endpoint de planos.
Teste a sincronização em ambiente de homologação.
Confirme preços e flags na tabela local
Plans.Só então avalie o provisionamento direto de tenants.
Uma integração antiga continua válida. A nova documentação amplia o contrato; ela não obriga uma reescrita completa.