This method cancels a single call that is scheduled for the future. It will not cancel completed calls or calls in progress. You will receive credit for any successfully cancelled call.
Syntax
CancelNotify(QueueID, LicenseKey)
Request Parameters
Parameter Name | Description | Data Type | Required | Sample Value |
---|---|---|---|---|
QueueID | The unique ID of a single call, as returned from any Notify* operation. | Long | True | 4093249 |
LicenseKey | Your license key. | String | True | 00000000-0000-0000-0000-000000000000 |
Response
Returns: Boolean
Description: True
if cancellation was successful. False
otherwise.
Code Samples
You can use any programming language you want with our API, as long as it can make a REST or SOAP call. Here are examples for some of the most common platforms.
- C#
- Java
- Python
- GET Request
- POST Request
- SOAP 1.1 Request
- SOAP 1.1 Response
- SOAP 1.2 Request
- SOAP 1.2 Response
- XML Response
C#
/* https://ws.esendex.us/notifyws/phonenotify.asmx?wsdl was added as a Service Reference and given the name WSDL */
using WSDL;
var client = new PhoneNotifySoapClient(PhoneNotifySoapClient.EndpointConfiguration.PhoneNotifySoap);
// Let's queue a notification.
var response = await client.NotifyPhoneAdvancedAsync(new AdvancedNotifyRequest
{
PhoneNumberToDial = YOUR_TO_NUMBER,
TextToSay = "Hello, this is a test call.",
UTCScheduledDateTime = DateTime.UtcNow.AddDays(1),
LicenseKey = YOUR_LICENSE_KEY
});
// We can use this ID to cancel the notification later on.
var queueId = response.QueueID;
// We can cancel the notification at any time before it's sent. Let's cancel it now.
var cancelled = await client.CancelNotifyAsync(queueId, YOUR_LICENSE_KEY);
Console.WriteLine("Notification was cancelled: " + cancelled);
Java
import java.io.ByteArrayOutputStream;
import java.io.InputStream;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.Properties;
import javax.xml.transform.OutputKeys;
import javax.xml.transform.Source;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.stream.StreamResult;
import javax.xml.transform.stream.StreamSource;
public final class CancelNotify {
public static void main(String[] args) {
try {
URL url = new URL("https://ws.esendex.us/NotifyWS/PhoneNotify.asmx/CancelNotify?"
+ "QueueID=000111222" + "&LicenseKey=00000000-0000-0000-0000-000000000000");
try {
InputStream in = url.openStream();
StreamSource source = new StreamSource(in);
printResult(source);
} catch (java.io.IOException e) {
e.printStackTrace();
}
} catch (MalformedURLException e) {
e.printStackTrace();
}
}
private static void printResult(Source source) {
try {
ByteArrayOutputStream bos = new ByteArrayOutputStream();
StreamResult sr = new StreamResult(bos);
Transformer trans = TransformerFactory.newInstance().newTransformer();
Properties oprops = new Properties();
oprops.put(OutputKeys.OMIT_XML_DECLARATION, "yes");
trans.setOutputProperties(oprops);
trans.transform(source, sr);
System.out.println("**** Response ******");
System.out.println(bos.toString());
bos.close();
System.out.println();
} catch (Exception e) {
}
}
}
Python
from datetime import datetime, timedelta
import zeep
client = zeep.Client(wsdl="https://ws.esendex.us/notifyws/phonenotify.asmx?wsdl")
license_key = "00000000-0000-0000-0000-000000000000"
dt = datetime.utcnow() + timedelta(days=1)
utc_scheduled_date_time = f"{dt.isoformat()}Z"
# Let's queue a notification.
request = {
"PhoneNumberToDial": "17575559999",
"VoiceID": 1,
"CallerIDNumber": "7575550000",
"CallerIDName": "Esendex Services",
"TextToSay": "Hello, this call was sent with Python.",
"LicenseKey": license_key,
"TryCount": 2,
"NextTryInSeconds": 180,
"UTCScheduledDateTime": utc_scheduled_date_time,
"TTSrate": 10,
"TTSvolume": 100,
"MaxCallLength": 0,
}
result = client.service.NotifyPhoneAdvanced(request)
# We can use this ID to cancel the notification later on.
queue_id = result.QueueID
# We can cancel the notification at any time before it's sent. Let's cancel it now.
result = client.service.CancelNotify(queue_id, license_key)
print(result)
GET Request
GET /NotifyWS/PhoneNotify.asmx/CancelNotify?QueueID=string&LicenseKey=string HTTP/1.1
Host: ws.esendex.us
POST Request
POST /NotifyWS/PhoneNotify.asmx/CancelNotify HTTP/1.1
Host: ws.esendex.us
Content-Type: application/x-www-form-urlencoded
Content-Length: length
QueueID=string&LicenseKey=string
SOAP 1.1 Request
POST /NotifyWS/PhoneNotify.asmx HTTP/1.1
Host: ws.esendex.us
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "https://ws.esendex.us/NotifyWS/CancelNotify"
<?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>
<CancelNotify xmlns="https://ws.esendex.us/NotifyWS/">
<QueueID>long</QueueID>
<LicenseKey>string</LicenseKey>
</CancelNotify>
</soap:Body>
</soap:Envelope>
SOAP 1.1 Response
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>
<CancelNotifyResponse xmlns="https://ws.esendex.us/NotifyWS/">
<CancelNotifyResult>boolean</CancelNotifyResult>
</CancelNotifyResponse>
</soap:Body>
</soap:Envelope>
SOAP 1.2 Request
POST /NotifyWS/PhoneNotify.asmx HTTP/1.1
Host: ws.esendex.us
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
<soap12:Body>
<CancelNotify xmlns="https://ws.esendex.us/NotifyWS/">
<QueueID>long</QueueID>
<LicenseKey>string</LicenseKey>
</CancelNotify>
</soap12:Body>
</soap12:Envelope>
SOAP 1.2 Response
HTTP/1.1 200 OK
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
<soap12:Body>
<CancelNotifyResponse xmlns="https://ws.esendex.us/NotifyWS/">
<CancelNotifyResult>boolean</CancelNotifyResult>
</CancelNotifyResponse>
</soap12:Body>
</soap12:Envelope>
XML Response
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length
<?xml version="1.0" encoding="utf-8"?>
<boolean xmlns="https://ws.esendex.us/NotifyWS/">boolean</boolean>