Create a free account

API Documentation

Campaign Monitor

Subscribers.GetUnsubscribed

Gets a list of all subscribers for a list that have unsubscribed since the specified date.

Samples

While we don't have any samples for this particular method, we do have a number of samples in .NET, PHP, Classic ASP, Flash, Perl and Cold Fusion that can be easily adapted to use this method.

Parameters and required information

Here's a list of all the parameters you'll need to pass to the Subscribers.GetUnsubscribed method. All of the parameters are required unless otherwise noted.

ApiKey
Your API application key. See here for more details.
ListID
The list you are getting unsubscribes for. See here for more details.
Date
Subscribers who unsubscribed after the Date value specified will be returned. Must be in the format YYYY-MM-DD HH:MM:SS.

Return Codes

Success

Upon a successful call, this method will return a collection of Subscriber complex types. The individual Subscriber records consist of EmailAddress, Name, Date and an array of CustomFields, which in turn consist of Key and Value attributes.

Error

5: Invalid date
The date value passed in was an invalid date.
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/Subscribers.GetUnsubscribed"

<?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.GetUnsubscribed xmlns="http://app.campaignmonitor.com/api/">
      <ApiKey>string</ApiKey>
      <ListID>int</ListID>
      <Date>string</Date>

    </Subscribers.GetUnsubscribed>
  </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.GetUnsubscribedResponse xmlns="http://app.campaignmonitor.com/api/">
      <Subscribers.GetUnsubscribedResult>
        <Subscriber>

          <EmailAddress>string</EmailAddress>
          <Name>string</Name>
          <Date>string</Date>
          <CustomFields>

            <SubscriberCustomField xsi:nil="true" />
            <SubscriberCustomField xsi:nil="true" />
          </CustomFields>
        </Subscriber>
        <Subscriber>
          <EmailAddress>string</EmailAddress>

          <Name>string</Name>
          <Date>string</Date>
          <CustomFields>
            <SubscriberCustomField xsi:nil="true" />
            <SubscriberCustomField xsi:nil="true" />

          </CustomFields>
        </Subscriber>
      </Subscribers.GetUnsubscribedResult>
    </Subscribers.GetUnsubscribedResponse>
  </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/Subscribers.GetUnsubscribed?ApiKey=string&ListID=string&Date=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"?>
<ArrayOfSubscriber xmlns="http://app.campaignmonitor.com/api/">
  <Subscriber>

    <EmailAddress>string</EmailAddress>
    <Name>string</Name>
    <Date>string</Date>
    <CustomFields>

      <SubscriberCustomField>
        <Key>string</Key>
        <Value>string</Value>
      </SubscriberCustomField>
      <SubscriberCustomField>

        <Key>string</Key>
        <Value>string</Value>
      </SubscriberCustomField>
    </CustomFields>
  </Subscriber>

  <Subscriber>
    <EmailAddress>string</EmailAddress>
    <Name>string</Name>
    <Date>string</Date>

    <CustomFields>
      <SubscriberCustomField>
        <Key>string</Key>
        <Value>string</Value>
      </SubscriberCustomField>

      <SubscriberCustomField>
        <Key>string</Key>
        <Value>string</Value>
      </SubscriberCustomField>
    </CustomFields>

  </Subscriber>
</ArrayOfSubscriber>

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/Subscribers.GetUnsubscribed HTTP/1.1
Host: app.campaignmonitor.com
Content-Type: application/x-www-form-urlencoded
Content-Length: length

ApiKey=string&ListID=string&Date=string

HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<ArrayOfSubscriber xmlns="http://app.campaignmonitor.com/api/">
  <Subscriber>

    <EmailAddress>string</EmailAddress>
    <Name>string</Name>
    <Date>string</Date>
    <CustomFields>

      <SubscriberCustomField>
        <Key>string</Key>
        <Value>string</Value>
      </SubscriberCustomField>
      <SubscriberCustomField>

        <Key>string</Key>
        <Value>string</Value>
      </SubscriberCustomField>
    </CustomFields>
  </Subscriber>

  <Subscriber>
    <EmailAddress>string</EmailAddress>
    <Name>string</Name>
    <Date>string</Date>

    <CustomFields>
      <SubscriberCustomField>
        <Key>string</Key>
        <Value>string</Value>
      </SubscriberCustomField>

      <SubscriberCustomField>
        <Key>string</Key>
        <Value>string</Value>
      </SubscriberCustomField>
    </CustomFields>

  </Subscriber>
</ArrayOfSubscriber>