SYGNEX GUARD / API

Documentazione API

Il connettore PHP effettua una richiesta server-to-server. Non inserire mai le chiavi in JavaScript o nel browser.

Prima della produzione: configura config/local.php, importa install_guard.sql, crea l’amministratore e verifica l’invio delle e-mail.

1. Installazione

  1. Create il sottodominio guard.sygnexproduction.com, attivate HTTPS e impostate la radice web direttamente sulla cartella dei file Guard.
  2. Importate install_guard.sql nel database centrale che contiene già la tabella utilisateurs.
  3. Configurate config/local.php e impostate un token di installazione casuale di almeno 40 caratteri.
  4. Aprite /admin/setup.php per creare il primo amministratore, poi accedete a /admin/index.php.
  5. Create un sito nella dashboard, copiate una sola volta la chiave e il segreto API e definite i destinatari autorizzati.
  6. Installate il connettore PHP sul server del sito sorgente. Non chiamate mai l’API dal JavaScript del browser.

2. Esempio PHP

Il connettore è autonomo e usa le funzionalità HTTPS native di PHP, senza librerie di terze parti. Riceve una risposta JSON. Il modulo deve inviare i campi dal server.

<?php
require_once __DIR__ . '/client-sdk/sygnex-guard-connector.php';
$guard = new SygnexGuardConnector(
    'YOUR_API_KEY',
    'YOUR_API_SECRET',
    'https://guard.sygnexproduction.com/api/intercept.php',
    'www.your-site.example'
);
$result = $guard->submit([
    'nom_expediteur' => $_POST['nom'] ?? '',
    'email_expediteur' => $_POST['email'] ?? '',
    'email_destinataire' => 'contact@your-site.example',
    'sujet' => $_POST['sujet'] ?? 'Website message',
    'corps_message' => $_POST['message'] ?? '',
    'langue' => 'fr',
    'website' => $_POST['website'] ?? '', // honeypot: keep empty
]);
if (!$result['ok']) {
    // Handle service or quota errors; never expose API secrets.
}

Il campo website deve essere nascosto e rimanere vuoto quando viene compilato da una persona.

3. Campi accettati dall’API

CampoObbligatorioDescrizione
api_keySìIdentificativo API assegnato al sito.
api_secretSìSegreto trasmesso solo da server a server tramite HTTPS.
site_domainSìDominio registrato nella dashboard.
nom_expediteurSìNome del mittente (massimo 150 caratteri).
email_expediteurSìIndirizzo e-mail di risposta valido.
email_destinataireSìDeve corrispondere esattamente a un indirizzo autorizzato per questo sito.
sujetSìMassimo 255 caratteri.
corps_messageSìTesto del messaggio (massimo 60.000 byte).
langueNofr, en, de, it, zh o vi.
websiteNoCampo honeypot: deve rimanere vuoto.
pieces_jointesNoArray JSON con name, mime e content_base64; formati e dimensioni limitati.

4. Risposte comuni

5. Limiti operativi importanti

L’applicazione usa la funzione nativa mail() di PHP. Un risultato positivo non garantisce la consegna nella posta in arrivo. Verificate le condizioni di invio del provider e configurate SPF, DKIM e DMARC. I controlli MX/SPF/DMARC sono indicativi e non provano crittograficamente l’identità del dominio. Il calcolo riduce lo spam automatizzato, ma non è una protezione infallibile.

Gli allegati sono codificati in base64 e devono rispettare i limiti in config/local.php. Configurate esplicitamente i destinatari autorizzati per ogni sito; i destinatari non dichiarati vengono rifiutati.

6. Quote e monitoraggio dei consumi

I valori iniziali di riferimento sono 100 messaggi protetti al mese per il piano gratuito e 1.000 per Premium. Il piano Azienda prevede una quota personalizzata impostata manualmente. Gli amministratori possono modificare le quote. Il piano interno ignora il limite commerciale dei messaggi, ma resta soggetto alle protezioni tecniche e alle risorse dell’hosting.

Guard monitora separatamente i messaggi protetti e le e-mail in uscita effettivamente accettate da mail(). Sono previste avvertenze al 70%, 90% e 100%. Raggiunta la quota mensile, le nuove richieste vengono rifiutate fino al rinnovo mensile o alla modifica della quota. Verificate la capacità di invio con il provider prima di offrire volumi elevati.