Sample code for 30+ languages & platforms
Objective-C

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 Objective-C Downloads

Objective-C
#import <CkoEmail.h>
#import <CkoJsonObject.h>
#import <CkoHttp.h>
#import <CkoHttpResponse.h>

BOOL success = NO;

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

// First build an email to check.
CkoEmail *email = [[CkoEmail alloc] init];
email.Subject = @"this is a test";
email.From = @"support@chilkatsoft.com";
[email AddTo: @"John Doe" emailAddress: @"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>"];
success = [email AddFileAttachment2: @"qa_data/jpg/starfish.jpg" contentType: @"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"}'

CkoJsonObject *json = [[CkoJsonObject alloc] init];
[json UpdateString: @"email" value: [email GetMime]];
[json UpdateString: @"options" value: @"short"];

CkoHttp *http = [[CkoHttp alloc] init];
CkoHttpResponse *resp = [[CkoHttpResponse alloc] init];
success = [http HttpJson: @"POST" url: @"https://spamcheck.postmarkapp.com/filter" json: json contentType: @"application/json" response: resp];
if (success == NO) {
    NSLog(@"%@",http.LastErrorText);
    return;
}

NSLog(@"%@%d",@"response status code = ",[resp.StatusCode intValue]);
NSLog(@"%@",@"response body: ");
NSLog(@"%@",resp.BodyStr);