Chi Siamo Area Clienti Promo del Mese Dicono di Noi Portfolio FAQ Blog
Senza categoria

Akismet REST API: Integrazioni Custom e Verifica Spam Programmatica

Gianluca Gentile
Gianluca Gentile
· 8 min di lettura

Akismet REST API: Integrazioni Custom e Verifica Spam Programmatica

Akismet non è solo un plugin WordPress: è anche un servizio API che può essere integrato in qualsiasi applicazione web, indipendentemente dalla piattaforma. La REST API di Akismet consente di verificare contenuti per spam in modo programmatico, inviare segnalazioni di spam e falsi positivi, e verificare lo stato della chiave API. In questa guida esploriamo l’API in dettaglio, con esempi pratici di integrazione per sviluppatori.

Monitoraggio delle chiamate API Akismet tramite la dashboard

Panoramica dell’API di Akismet

L’API di Akismet è una REST API basata su HTTP che espone tre endpoint principali:

  1. verify-key: Verifica la validità di una API key
  2. comment-check: Verifica se un contenuto è spam
  3. submit-spam: Segnala un contenuto come spam (falso negativo)
  4. submit-ham: Segnala un contenuto come legittimo (falso positivo)

Tutti gli endpoint accettano richieste POST e restituiscono risposte in formato testuale semplice. L’URL base per le chiamate API è https://rest.akismet.com/1.1/ per la verifica della chiave, e https://{api-key}.rest.akismet.com/1.1/ per le altre operazioni.

Prerequisiti

Per utilizzare l’API di Akismet hai bisogno di:

Endpoint 1: Verify Key

Questo endpoint verifica se una API key è valida e attiva.

URL: https://rest.akismet.com/1.1/verify-key

Parametri:

Risposta: valid se la chiave è valida, invalid se non lo è. In caso di errore, viene restituito un header X-akismet-debug-help con dettagli aggiuntivi.

Esempio con cURL:

curl -X POST https://rest.akismet.com/1.1/verify-key
  -d "key=la-tua-api-key"
  -d "blog=https://tuosito.com"

Endpoint 2: Comment Check

Questo è l’endpoint principale, utilizzato per verificare se un contenuto è spam.

URL: https://{api-key}.rest.akismet.com/1.1/comment-check

Parametri obbligatori:

Parametri consigliati (migliorano l’accuratezza):

Risposta: true se il contenuto è spam, false se è legittimo. L’header X-akismet-pro-tip può contenere il valore discard, che indica spam talmente evidente da poter essere eliminato senza revisione.

Configurazione della API key per lutilizzo dellAPI REST

Esempio Pratico in PHP

Ecco un esempio completo di come verificare un commento tramite l’API di Akismet in PHP:

function checkSpam($apiKey, $blog, $commentData) {
  $params = array_merge(array(
    blog => $blog,
  ), $commentData);

  $ch = curl_init();
  curl_setopt($ch, CURLOPT_URL, "https://{$apiKey}.rest.akismet.com/1.1/comment-check");
  curl_setopt($ch, CURLOPT_POST, true);
  curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($params));
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  curl_setopt($ch, CURLOPT_USERAGENT, MioSito/1.0 | MioPlugin/1.0);

  $response = curl_exec($ch);
  curl_close($ch);

  return trim($response) === true;
}

// Utilizzo
$isSpam = checkSpam(la-tua-api-key, https://tuosito.com, array(
  user_ip => $_SERVER[REMOTE_ADDR],
  user_agent => $_SERVER[HTTP_USER_AGENT],
  referrer => $_SERVER[HTTP_REFERER] ?? ,
  comment_type => contact-form,
  comment_author => $nome,
  comment_author_email => $email,
  comment_content => $messaggio,
));

Esempio in Python

import requests

def check_spam(api_key, blog, comment_data):
  url = f"https://{api_key}.rest.akismet.com/1.1/comment-check"
  data = {blog: blog, **comment_data}
  headers = {User-Agent: MioSito/1.0 | MioPlugin/1.0}
  response = requests.post(url, data=data, headers=headers)
  return response.text.strip() == true

# Utilizzo
is_spam = check_spam(la-tua-api-key, https://tuosito.com, {
  user_ip: 192.168.1.1,
  user_agent: Mozilla/5.0...,
  comment_type: contact-form,
  comment_author: Mario Rossi,
  comment_author_email: mario@example.com,
  comment_content: Il contenuto del messaggio...,
})

Endpoint 3: Submit Spam

Questo endpoint permette di segnalare un contenuto come spam che non è stato intercettato dal filtro (falso negativo).

URL: https://{api-key}.rest.akismet.com/1.1/submit-spam

I parametri sono gli stessi dell’endpoint comment-check. La risposta è Thanks for making the web a better place.

Endpoint 4: Submit Ham

Questo endpoint permette di segnalare un contenuto erroneamente classificato come spam (falso positivo).

URL: https://{api-key}.rest.akismet.com/1.1/submit-ham

Anche qui, i parametri sono gli stessi di comment-check. L’invio di segnalazioni ham è fondamentale per migliorare l’accuratezza dell’algoritmo.

Best Practice per l’Utilizzo dell’API

Ecco le raccomandazioni ufficiali di Akismet per l’utilizzo dell’API:

Risultati della verifica spam tramite API di Akismet

Integrare Akismet in Applicazioni Non-WordPress

L’API di Akismet può essere utilizzata con qualsiasi piattaforma web. Ecco alcuni casi d’uso comuni:

Forum personalizzati: Se hai sviluppato un forum con PHP, Node.js, Python o qualsiasi altro linguaggio, puoi integrare Akismet per filtrare i post spam.

Applicazioni mobile: Se la tua app mobile ha una funzionalità di commenti o recensioni, puoi verificare i contenuti tramite l’API di Akismet dal tuo backend.

E-commerce custom: Per piattaforme e-commerce sviluppate su misura, Akismet può filtrare le recensioni dei prodotti e i messaggi degli utenti.

Chatbot e form personalizzati: Qualsiasi form che accetta input dall’utente può beneficiare della verifica anti-spam di Akismet.

Librerie Client Disponibili

La community ha sviluppato librerie client per l’API di Akismet in diversi linguaggi:

L’utilizzo di una libreria client semplifica l’integrazione, gestendo automaticamente la costruzione delle richieste HTTP e il parsing delle risposte.

Rate Limiting e Limiti dell’API

Akismet non pubblica limiti di chiamate API specifici per i piani standard, ma è buona pratica:

Conclusione

La REST API di Akismet è uno strumento potente che estende la protezione anti-spam ben oltre WordPress. Con pochi endpoint semplici e ben documentati, puoi integrare la verifica anti-spam in qualsiasi applicazione web, sfruttando lo stesso algoritmo di machine learning che protegge milioni di siti WordPress. Che tu stia sviluppando un forum personalizzato, un’app mobile o un e-commerce su misura, l’API di Akismet offre una soluzione affidabile e collaudata.

Per assistenza nello sviluppo di integrazioni personalizzate con l’API di Akismet, contatta il team di G Tech Group. I nostri sviluppatori sono pronti ad aiutarti.

Continua a Leggere

Questa guida fa parte della nostra serie completa su WordPress. Scopri anche:

Per ulteriori guide, tutorial e approfondimenti sul mondo WordPress, visita il blog di G Tech Group. Se desideri un supporto professionale per il tuo progetto web, contattaci: il nostro team è pronto ad affiancarti in ogni fase.

Migliora il Tuo Sito WordPress

Scopri le nostre guide complete sugli altri plugin essenziali per WordPress:

#Akismet #Integrazioni #REST API #Spam Check #Sviluppo