C# Class Sailthru.SailthruClient

Datei anzeigen Open project: sailthru/sailthru-net-client

Public Methods

Method Description
ApiDelete ( string action, Hashtable parameters ) : SailthruResponse

For making API DELETE Request

ApiGet ( String action, Hashtable parameters ) : SailthruResponse

For making API GET Request

ApiPost ( string action, Hashtable parameters ) : SailthruResponse

For making API POST Request

CancelSend ( string sendId ) : SailthruResponse

cancel a future send before it goes out.

GetBlast ( string blastId ) : SailthruResponse

Get Blast

GetContent ( string url ) : SailthruResponse

Get information about one of your urls.

GetEmail ( Sailthru.Models.EmailRequest request ) : SailthruResponse

Get information about one of your users.

GetEmail ( string email ) : SailthruResponse

Get information about one of your users.

GetSend ( string sendId ) : SailthruResponse

check on the status of a send

GetStat ( String stat, Hashtable htOptions ) : SailthruResponse

Request various stats from Sailthru.

GetStat ( String stat, String list = null, String date = null, Hashtable htOptions = null ) : SailthruResponse

Request various stats from Sailthru.

GetStat ( String stat, String template = null, String startDate = null, String endDate = null, Hashtable htOptions = null ) : SailthruResponse

Request various stats from Sailthru.

GetTemplate ( string templateName ) : SailthruResponse

Get Template

GetUser ( UserRequest request ) : SailthruResponse

Get information about one of your users. Users are referenced by multiple keys.

ImportContacts ( string strEmail, string strPassword, bool boolIncludeNames ) : SailthruResponse

Fetch email contacts from an address book at one of the major email providers (aol/gmail/hotmail/yahoo)

Multisend ( string strTemplateName, string strEmail, Hashtable htVars = null, Hashtable htOptions = null ) : SailthruResponse

Send a transactional email for multiple users

ProcessImportJob ( String listName, List emails ) : SailthruResponse
ProcessImportJob ( String listName, String filePath ) : SailthruResponse
ProcessImportJob ( String reportEmail, String postbackUrl, String listName, List emails ) : SailthruResponse
ProcessImportJob ( String reportEmail, String postbackUrl, String listName, String filePath ) : SailthruResponse
ProcessJob ( String jobType, String reportEmail, String postbackUrl, Hashtable parameters ) : SailthruResponse
Purchase ( Sailthru.Models.PurchaseRequest request ) : SailthruResponse

Submit a Purchase to Sailthru

ReceiveOptoutPost ( NameValueCollection parameters ) : bool

Receive the output of a Post.

ReceiveVerifyPost ( NameValueCollection parameters ) : bool

Receive and verify the output of a Post.

SailthruClient ( string apiKey, string secret ) : System

Constructor with default API URI

SailthruClient ( string apiKey, string secret, string apiHost ) : System

Constructor with custom API URI

SaveTemplate ( Sailthru.Models.TemplateRequest request ) : SailthruResponse

Save Template

SaveTemplate ( string strTemplateName, Hashtable fields = null ) : SailthruResponse

Save Template

ScheduleBlast ( Sailthru.Models.BlastRequest request ) : SailthruResponse

Create, update, and/or schedule a blast.

ScheduleBlast ( string strName, string strList, string strScheduleTime, string strFromName, string strFromEmail, string strSubject, string strContentHtml, string strContentText, Hashtable htOptions = null ) : SailthruResponse

Create, update, and/or schedule a blast.

Send ( SendRequest request ) : SailthruResponse

Send a transactional Email for a single or multiple users.

Send ( string strTemplateName, string strEmail, Hashtable htVars = null, Hashtable htOptions = null ) : SailthruResponse

Send a transactional Email for a single user

SetContent ( Sailthru.Models.ContentRequest request ) : SailthruResponse

Set information about one of your urls.

SetEmail ( Sailthru.Models.EmailRequest request ) : SailthruResponse

Update information about one of your users, including adding and removing the user from lists.

SetEmail ( string strEmail, Hashtable htVars = null, Hashtable htLists = null, Hashtable htTemplates = null, int verified, String optout = null, string send = null, Hashtable sendVars = null, String sms = null, String twitter = null, String changeEmail = null ) : SailthruResponse

Update information about one of your users, including adding and removing the user from lists.

SetUser ( UserRequest request ) : SailthruResponse

Set information about one of your users. Users are referenced by multiple keys.

getLastRateLimitInfo ( string action, string method ) : Hashtable

Get rate limit information for last API call

Protected Methods

Method Description
ApiPostWithFile ( string action, Hashtable htForPost, String filePath ) : SailthruResponse
BuildPostRequest ( String action, Hashtable parameters ) : HttpWebRequest
BuildPostWithFileRequest ( String action, Hashtable parameters, String filePath ) : HttpWebRequest
BuildRequest ( String method, String path ) : HttpWebRequest
BuildRequest ( String method, String action, Hashtable parameters ) : HttpWebRequest
GetParameterString ( Hashtable parameters ) : string
SendRequest ( HttpWebRequest request, String action ) : SailthruResponse

Private Methods

Method Description
AddAuthenticationAndFormatToParams ( Hashtable parameters ) : void
GetSignatureHash ( IEnumerable values ) : String
GetSignatureHash ( NameValueCollection col ) : String
OrdinalSort ( Object values ) : void
UrlEncode ( string s ) : string

URL Encode String

md5 ( string value ) : string

Generates an MD5 hash of the string.

Method Details

ApiDelete() public method

For making API DELETE Request
public ApiDelete ( string action, Hashtable parameters ) : SailthruResponse
action string
parameters System.Collections.Hashtable
return SailthruResponse

ApiGet() public method

For making API GET Request
public ApiGet ( String action, Hashtable parameters ) : SailthruResponse
action String API Method String
parameters System.Collections.Hashtable API Parameter Hashtable
return SailthruResponse

ApiPost() public method

For making API POST Request
public ApiPost ( string action, Hashtable parameters ) : SailthruResponse
action string
parameters System.Collections.Hashtable
return SailthruResponse

ApiPostWithFile() protected method

protected ApiPostWithFile ( string action, Hashtable htForPost, String filePath ) : SailthruResponse
action string
htForPost System.Collections.Hashtable
filePath String
return SailthruResponse

BuildPostRequest() protected method

protected BuildPostRequest ( String action, Hashtable parameters ) : HttpWebRequest
action String
parameters System.Collections.Hashtable
return System.Net.HttpWebRequest

BuildPostWithFileRequest() protected method

protected BuildPostWithFileRequest ( String action, Hashtable parameters, String filePath ) : HttpWebRequest
action String
parameters System.Collections.Hashtable
filePath String
return System.Net.HttpWebRequest

BuildRequest() protected method

protected BuildRequest ( String method, String path ) : HttpWebRequest
method String
path String
return System.Net.HttpWebRequest

BuildRequest() protected method

protected BuildRequest ( String method, String action, Hashtable parameters ) : HttpWebRequest
method String
action String
parameters System.Collections.Hashtable
return System.Net.HttpWebRequest

CancelSend() public method

cancel a future send before it goes out.
public CancelSend ( string sendId ) : SailthruResponse
sendId string
return SailthruResponse

GetBlast() public method

Get Blast
public GetBlast ( string blastId ) : SailthruResponse
blastId string
return SailthruResponse

GetContent() public method

Get information about one of your urls.
public GetContent ( string url ) : SailthruResponse
url string
return SailthruResponse

GetEmail() public method

Get information about one of your users.
public GetEmail ( Sailthru.Models.EmailRequest request ) : SailthruResponse
request Sailthru.Models.EmailRequest
return SailthruResponse

GetEmail() public method

Get information about one of your users.
public GetEmail ( string email ) : SailthruResponse
email string
return SailthruResponse

GetParameterString() protected method

protected GetParameterString ( Hashtable parameters ) : string
parameters System.Collections.Hashtable
return string

GetSend() public method

check on the status of a send
public GetSend ( string sendId ) : SailthruResponse
sendId string
return SailthruResponse

GetStat() public method

Request various stats from Sailthru.
public GetStat ( String stat, Hashtable htOptions ) : SailthruResponse
stat String
htOptions System.Collections.Hashtable
return SailthruResponse

GetStat() public method

Request various stats from Sailthru.
public GetStat ( String stat, String list = null, String date = null, Hashtable htOptions = null ) : SailthruResponse
stat String
list String
date String
htOptions System.Collections.Hashtable
return SailthruResponse

GetStat() public method

Request various stats from Sailthru.
public GetStat ( String stat, String template = null, String startDate = null, String endDate = null, Hashtable htOptions = null ) : SailthruResponse
stat String
template String
startDate String
endDate String
htOptions System.Collections.Hashtable
return SailthruResponse

GetTemplate() public method

Get Template
public GetTemplate ( string templateName ) : SailthruResponse
templateName string
return SailthruResponse

GetUser() public method

Get information about one of your users. Users are referenced by multiple keys.
public GetUser ( UserRequest request ) : SailthruResponse
request Sailthru.Models.UserRequest
return SailthruResponse

ImportContacts() public method

Fetch email contacts from an address book at one of the major email providers (aol/gmail/hotmail/yahoo)
public ImportContacts ( string strEmail, string strPassword, bool boolIncludeNames ) : SailthruResponse
strEmail string Email String
strPassword string Password String
boolIncludeNames bool Boolean
return SailthruResponse

Multisend() public method

Send a transactional email for multiple users
public Multisend ( string strTemplateName, string strEmail, Hashtable htVars = null, Hashtable htOptions = null ) : SailthruResponse
strTemplateName string
strEmail string
htVars System.Collections.Hashtable
htOptions System.Collections.Hashtable
return SailthruResponse

ProcessImportJob() public method

public ProcessImportJob ( String listName, List emails ) : SailthruResponse
listName String
emails List
return SailthruResponse

ProcessImportJob() public method

public ProcessImportJob ( String listName, String filePath ) : SailthruResponse
listName String
filePath String
return SailthruResponse

ProcessImportJob() public method

public ProcessImportJob ( String reportEmail, String postbackUrl, String listName, List emails ) : SailthruResponse
reportEmail String
postbackUrl String
listName String
emails List
return SailthruResponse

ProcessImportJob() public method

public ProcessImportJob ( String reportEmail, String postbackUrl, String listName, String filePath ) : SailthruResponse
reportEmail String
postbackUrl String
listName String
filePath String
return SailthruResponse

ProcessJob() public method

public ProcessJob ( String jobType, String reportEmail, String postbackUrl, Hashtable parameters ) : SailthruResponse
jobType String
reportEmail String
postbackUrl String
parameters System.Collections.Hashtable
return SailthruResponse

Purchase() public method

Submit a Purchase to Sailthru
public Purchase ( Sailthru.Models.PurchaseRequest request ) : SailthruResponse
request Sailthru.Models.PurchaseRequest Purchaserequest parameters.
return SailthruResponse

ReceiveOptoutPost() public method

Receive the output of a Post.
public ReceiveOptoutPost ( NameValueCollection parameters ) : bool
parameters System.Collections.Specialized.NameValueCollection
return bool

ReceiveVerifyPost() public method

Receive and verify the output of a Post.
public ReceiveVerifyPost ( NameValueCollection parameters ) : bool
parameters System.Collections.Specialized.NameValueCollection
return bool

SailthruClient() public method

Constructor with default API URI
public SailthruClient ( string apiKey, string secret ) : System
apiKey string
secret string
return System

SailthruClient() public method

Constructor with custom API URI
public SailthruClient ( string apiKey, string secret, string apiHost ) : System
apiKey string
secret string
apiHost string
return System

SaveTemplate() public method

Save Template
public SaveTemplate ( Sailthru.Models.TemplateRequest request ) : SailthruResponse
request Sailthru.Models.TemplateRequest TemplateRequest parameters.
return SailthruResponse

SaveTemplate() public method

Save Template
public SaveTemplate ( string strTemplateName, Hashtable fields = null ) : SailthruResponse
strTemplateName string
fields System.Collections.Hashtable
return SailthruResponse

ScheduleBlast() public method

Create, update, and/or schedule a blast.
public ScheduleBlast ( Sailthru.Models.BlastRequest request ) : SailthruResponse
request Sailthru.Models.BlastRequest BlastRequest parameters.
return SailthruResponse

ScheduleBlast() public method

Create, update, and/or schedule a blast.
public ScheduleBlast ( string strName, string strList, string strScheduleTime, string strFromName, string strFromEmail, string strSubject, string strContentHtml, string strContentText, Hashtable htOptions = null ) : SailthruResponse
strName string
strList string
strScheduleTime string
strFromName string
strFromEmail string
strSubject string
strContentHtml string
strContentText string
htOptions System.Collections.Hashtable
return SailthruResponse

Send() public method

Send a transactional Email for a single or multiple users.
public Send ( SendRequest request ) : SailthruResponse
request SendRequest SendRequest parameters.
return SailthruResponse

Send() public method

Send a transactional Email for a single user
public Send ( string strTemplateName, string strEmail, Hashtable htVars = null, Hashtable htOptions = null ) : SailthruResponse
strTemplateName string
strEmail string
htVars System.Collections.Hashtable
htOptions System.Collections.Hashtable
return SailthruResponse

SendRequest() protected method

protected SendRequest ( HttpWebRequest request, String action ) : SailthruResponse
request System.Net.HttpWebRequest
action String
return SailthruResponse

SetContent() public method

Set information about one of your urls.
public SetContent ( Sailthru.Models.ContentRequest request ) : SailthruResponse
request Sailthru.Models.ContentRequest
return SailthruResponse

SetEmail() public method

Update information about one of your users, including adding and removing the user from lists.
public SetEmail ( Sailthru.Models.EmailRequest request ) : SailthruResponse
request Sailthru.Models.EmailRequest EmailRequest parameters.
return SailthruResponse

SetEmail() public method

Update information about one of your users, including adding and removing the user from lists.
public SetEmail ( string strEmail, Hashtable htVars = null, Hashtable htLists = null, Hashtable htTemplates = null, int verified, String optout = null, string send = null, Hashtable sendVars = null, String sms = null, String twitter = null, String changeEmail = null ) : SailthruResponse
strEmail string
htVars System.Collections.Hashtable
htLists System.Collections.Hashtable
htTemplates System.Collections.Hashtable
verified int
optout String
send string
sendVars System.Collections.Hashtable
sms String
twitter String
changeEmail String
return SailthruResponse

SetUser() public method

Set information about one of your users. Users are referenced by multiple keys.
public SetUser ( UserRequest request ) : SailthruResponse
request Sailthru.Models.UserRequest
return SailthruResponse

getLastRateLimitInfo() public method

Get rate limit information for last API call
public getLastRateLimitInfo ( string action, string method ) : Hashtable
action string API endpoint
method string HTTP method
return System.Collections.Hashtable