Subscriber.AddAndResubscribe
Adds a subscriber (email address, name) to an existing subscriber list. If the subscriber already exists, the name value is updated with whatever is passed in.
If the list has been set as double opt-in, they will be sent the verification email, otherwise they will be sent the confirmation email you have set up for the list being subscribed to.
Please note: If the subscriber is in an inactive state or has previously been unsubscribed, they will be re-added to the active list. Therefore, this method should be used with caution and only where suitable.
Samples
The following samples include specific examples of this method in action. For the samples that have a simple subscribe example, changing the operation name from Subscriber.Add to Subscriber.AddAndResubscribe will get you calling this method instead.
- .NET - 51kb (see subscribe.aspx)
- PHP - 13kb (see subscribe.php)
- Classic ASP - 3kb (see subscribe.asp)
- Flash - 978kb (see CM_Flash_Api_Example.fla)
- Perl - 1kb (see subscribe.txt)
- Cold Fusion - 2kb (see subscribe.cfm)
Parameters and required information
Here's a list of all the parameters you'll need to pass to the Subscriber.AddAndResubscribe method. All of the parameters are required unless otherwise noted.
ApiKey- Your API application key. See here for more details.
ListID- The list you want to add the subscriber to. See here for more details.
Email- The email address of the new subscriber.
Name- The name of the new subscriber. If the name is unknown, an empty string can be passed in.
Return Codes
Success
0: Success- The subscription was successful.
Error
1: Invalid email address- The email value passed in was a valid email address.
100: Invalid API Key- The API key passed was not valid or has expired.
101: Invalid ListID- The ListID value passed in was not valid.
SOAP 1.1
The following is a sample SOAP request and response. The placeholders shown need to be replaced with actual values.
POST /api/api.asmx HTTP/1.1 Host: app.campaignmonitor.com Content-Type: text/xml; charset=utf-8 Content-Length: length SOAPAction: "http://app.campaignmonitor.com/api/Subscriber.AddAndResubscribe" <?xml version="1.0" encoding="utf-8"?> <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <Subscriber.AddAndResubscribe xmlns="http://app.campaignmonitor.com/api/"> <ApiKey>string</ApiKey> <ListID>int</ListID> <Email>string</Email> <Name>string</Name> </Subscriber.AddAndResubscribe> </soap:Body> </soap:Envelope>
HTTP/1.1 200 OK Content-Type: text/xml; charset=utf-8 Content-Length: length <?xml version="1.0" encoding="utf-8"?> <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <Subscribers.AddAndResubscribeResponse xmlns="http://app.campaignmonitor.com/api/"> <Subscribers.AddAndResubscribeResult> <Code>int</Code> <Message>string</Message> </Subscribers.AddAndResubscribeResult> </Subscribers.AddAndResubscribeResponse> </soap:Body> </soap:Envelope>
HTTP GET
The following is a sample HTTP GET request and response. The placeholders shown need to be replaced with actual values.
GET /api/api.asmx/Subscriber.AddAndResubscribe?ApiKey=string&ListID=string&Email=string&Name=string HTTP/1.1 Host: app.campaignmonitor.com
HTTP/1.1 200 OK Content-Type: text/xml; charset=utf-8 Content-Length: length <?xml version="1.0" encoding="utf-8"?> <Result xmlns="http://app.campaignmonitor.com/api/"> <Code>int</Code> <Message>string</Message> </Result>
HTTP POST
The following is a sample HTTP POST request and response. The placeholders shown need to be replaced with actual values.
POST /api/api.asmx/Subscriber.AddAndResubscribe HTTP/1.1 Host: app.campaignmonitor.com Content-Type: application/x-www-form-urlencoded Content-Length: length ApiKey=string&ListID=string&Email=string&Name=string
HTTP/1.1 200 OK Content-Type: text/xml; charset=utf-8 Content-Length: length <?xml version="1.0" encoding="utf-8"?> <Result xmlns="http://app.campaignmonitor.com/api/"> <Code>int</Code> <Message>string</Message> </Result>