Sample code for 30+ languages & platforms
PHP Requires Chilkat v11.0.0+

Get SpamAssassin Score for an Email

See more Email Object Examples

Uses Postmark’s spam API (a RESTfull interface to the SpamAssassin filter tool) to analyze an email to get a spam score.

Chilkat PHP Downloads

Chilkat2 PHP
<?php

use Chilkat2\Email;
use Chilkat2\Http;
use Chilkat2\HttpResponse;
use Chilkat2\JsonObject;

// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.

// First build an email to check.
$email = new Email();
$email->Subject = 'this is a test';
$email->From = 'support@chilkatsoft.com';
$email->AddTo('John Doe', 'john@example.com');
$email->AddPlainTextAlternativeBody('this is a test');
$email->AddHtmlAlternativeBody('<html><body><b>Hello John!</b><p>This is a test</p></body></html>');
$email->AddFileAttachment2('qa_data/jpg/starfish.jpg', 'image/jpeg');

// Check this email by implementing this curl command:

// curl -X POST "https://spamcheck.postmarkapp.com/filter"
// -H "Accept: application/json"
// -H "Content-Type: application/json"
// -v
// -d '{"email":"raw dump of email", "options":"short"}'

$json = new JsonObject();
$json->UpdateString('email', $email->GetMime());
$json->UpdateString('options', 'short');

$http = new Http();
$resp = new HttpResponse();
try {
    $http->HttpJson('POST', 'https://spamcheck.postmarkapp.com/filter', $json, 'application/json', $resp);
} catch (\Chilkat2\Exception $e) {
    echo $e->getMessage(), "\n";
    exit;
}

echo 'response status code = ', $resp->StatusCode, "\n";
echo "response body: \n";
echo $resp->BodyStr, "\n";