API & desenvolvedores
Todo o cofre é operado via código. Sem tocar no núcleo.
API REST completa, 28+ webhooks assinados HMAC, hooks WordPress nativos, integrações Fluent zero-config. Se você tem uma equipe de TI, eles conectam sua stack em uma tarde.
Anti-SSRF
Assinatura HMAC SHA-256
AES-256-CBC em repouso
Auditoria com carimbo de tempo oponível
TLS 1.3 obrigatório
Anti-tamper plugin
01
API REST completa
Tudo pode ser exposto via REST — clientes, arquivos, mapas, links, embeds, tags, fluxos, certificados, auditoria. Autenticação por chave de API, ACLs granulares, registro de chamadas.
Endpoints de clientes
- GET
/wp-json/cv/v1/clients - POST
/wp-json/cv/v1/clients - PUT
/wp-json/cv/v1/clients/{id} - DEL
/wp-json/cv/v1/clients/{id}
Endpoints de arquivos
- POST
/cv/v1/files/upload - GET
/cv/v1/files/{id}/token - POST
/cv/v1/files/{id}/archive - POST
/cv/v1/files/{id}/expiry
Endpoints cartões / links / embeds
- GET
/cv/v1/cards - POST
/cv/v1/links - POST
/cv/v1/embeds - GET
/cv/v1/tags
Endpoints transversais
- GET
/cv/v1/search - GET
/cv/v1/audit - GET
/cv/v1/parcours - GET
/cv/v1/certificates
Exemplo: recuperar a lista de clientes
curl -X GET https://votre-site.fr/wp-json/cv/v1/clients
-H "Authorization: Bearer YOUR_API_KEY"
-H "Accept: application/json"
# Resposta JSON:
# {
# "data": [
# {"id": 12, "name": "M. Bertrand", "email": "...", "tier": 1},
# {"id": 13, "name": "SCI Verdun", "email": "...", "tier": 2}
# ],
# "meta": { "total": 124, "page": 1, "per_page": 20 }
# }Autenticação & logging: chaves de API por usuário (Funções WP), ACL por endpoint, log completo das chamadas (método, URL, IP, operador, duração). Cotas e rate-limit configuráveis.
02
Webhooks (28+ eventos)
Cada ação significativa dispara um POST assinado com HMAC para seus endpoints. Multi-targets, segredos independentes, anti-SSRF, retry exponencial.
Cofre & documentos
file.uploadedfile.validatedfile.refusedfile.expiredfile.archivedfile.signed
Clientes & auth
client.createdclient.archivedclient.taggedclient.loginclient.logoutclient.password_reset
Jornadas & gates
parcours.enrolledstep.unlockedstep.completedquiz.submittedcertificate.issuedparcours.finished
Comunidade & engajamento
comment.postedannouncement.publishedtrophy.unlockedevent.createdevent.rsvpreplay.viewed
Exemplo: payload + assinatura HMAC
POST https://votre-stack.fr/webhooks/cv-receiver
Headers:
X-CV-Event: file.validated
X-CV-Signature: sha256=8b1cde…
Content-Type: application/json
{
"event": "file.validated",
"occurred_at": "2026-05-02T10:34:21.842Z",
"data": {
"file_id": 4521,
"client_id": 12,
"operator_id": 3,
"name": "Bilan 2024 SARL VERDIA.pdf",
"audit_url": "https://votre-site.fr/cv/audit/4521"
}
}
# Verificar a assinatura no lado do destinatário:
# computed = "sha256=" + hmac_sha256(secret, raw_body)
# hmac.compare_digest(computed, header) → trueConfiguração: várias URLs de destino, cada uma com seu próprio segredo. Filtragem anti-SSRF (RFC 1918, link-local). Tentativa exponencial de reenvio até 24 h. Logs de entrega.
03
Hooks nativos do WordPress
O Client Vault é um plugin WordPress — toda a cadeia é extensível via add_action / add_filter sem alterar o núcleo. Compatível com o seu código existente e os seus plugins personalizados.
Ações principais
cv_after_file_uploadedcv_after_file_validatedcv_after_step_completedcv_after_client_createdcv_after_audit_log
Filtros principais
cv_email_subjectcv_email_bodycv_max_upload_sizecv_storage_quota_gbcv_token_lifetime
Capabilities & funções
cv_user_can_view_clientcv_user_can_validatecv_user_can_exportcv_user_capabilities_map
Exemplo: enviar uma notificação no Slack após validação
add_action( 'cv_after_file_validated', function ( $file_id, $client_id, $operator_id ) {
$file = cv_get_file( $file_id );
$client = cv_get_client( $client_id );
wp_remote_post( 'https://hooks.slack.com/services/T0…', [
'headers' => [ 'Content-Type' => 'application/json' ],
'body' => wp_json_encode( [
'text' => sprintf(
'✅ %s validou "%s" para %s',
wp_get_user( $operator_id )->display_name,
$file->name,
$client->name
),
] ),
] );
}, 10, 3 );04
Segurança & auditoria
Se o seu DPO / encarregado de proteção de dados validar, é nestes pontos que ele irá observar. Tudo é documentado, configurável e registrado em logs.
Criptografia AES-256-CBC
Chave por área do cliente, IV exclusivo por arquivo, criptografia em repouso no disco. A chave mestra reside no wp-config.php, nunca no banco de dados.
Anti-SSRF (webhooks)
Bloqueia o envio de webhooks para redes internas (RFC 1918), localhost, link-local, IPv6 privado e metadados de nuvem (169.254.x.x). Lista de permissões opcional.
Anti-tamper do plugin
Hash dos arquivos chave verificado na inicialização do plugin. Se um arquivo crítico for modificado (comprometimento?), o plugin recusa-se a iniciar em modo sensível.
Auditoria de data e hora completa
Cada chamada de API, ação de UI ou webhook enviado é registado: operador, IP, método, destino, duração, status. Exportação em PDF ou CSV com validade jurídica.
Filtragem de IP de administração
Restrinja o acesso administrativo a um conjunto de IPs / CIDR (escritório, VPN, teletrabalho). Compatível com IPv4 e IPv6.
RGPD: exportação e eliminação
Exportação seletiva de dados de um cliente (JSON/ZIP), direito ao esquecimento com um clique, retenção configurável por categoria de dados.
05
Integrações nativas com Fluent
Para o stack Fluent, a configuração é zero. O Client Vault deteta a presença do plugin e ativa a integração.
FluentCRM
Etiquetagem automática de contactos a partir de eventos no cofre, sequências acionadas por etapas da jornada e segmentos dinâmicos.
FluentPlayer
Leitor de vídeo integrado para replays / ficheiros multimédia do cofre, com rastreamento de visualização por cliente.
FluentCart
Pagamentos Stripe integrados nas jornadas: uma etapa de “pagamento” valida automaticamente o processo após a receção do webhook da Stripe.
Fluent Community
Mapeamento de percursos / espaços N×N, 21 widgets contextualizados, pesquisa multissource, classificação e troféus.
Além do Fluent: tudo o resto passa por webhooks ou pela API REST. Stripe direto, Calendly, Cal.com, Zapier, n8n, Make, o seu CRM personalizado — sem limites.
06
Recursos para desenvolvedores
A documentação completa, coleções prontas para uso e um canal de suporte.
Documentação completa
Endpoints, payloads, exemplos, códigos de erro, limites de taxa, changelog.
Coleção Postman
Todos os endpoints pré-configurados, ambientes de dev/staging/prod, exemplos de payloads.
OpenAPI / Swagger
Especificação YAML / JSON para gerar os seus clientes em TypeScript, Python, Go, etc.
Comunidade de desenvolvedores
Espaço privado para integradores: exemplos, casos de uso, feedbacks sobre ganchos (hooks) úteis.
Pronto para conectar a sua stack?
Mostramos-lhe por videoconferência.
Demo CTO de 30 minutos: analisamos a sua stack, listamos os pontos de conexão e respondemos ao vivo às suas perguntas sobre segurança / RGPD.