Text CALL to 88440

+44 (0)1484 599 311

Login Free Account

Developer Tools

Free Account
Our new API is live!

Our new API is now available to use. We have improved the methods that you are familiar with, offering you a clearer understanding of what each property can do and a more detailed response from each call.

The old API is still fully functioning and support for this will not end.

We are also introducing API Keys which are used to access the API methods and improve the security around using the API.

Click here to see the new Developer page.

Click here to read our new Developer Documentation.


This API call will return the Web SMS current status and completion percentage.


http:// or https:// www.voodooSMS.com/vapi/server/statsWebSMS





Required Fields


System allocated username for API user configured within the VoodooSMS.com Portal in 'Send SMS>API Management'


System password for API user configured within the VoodooSMS.com Portal in 'Send SMS>API Management'

reference id:

The reference ID produced by the Send Web SMS API.


Return format requested: XML, JSON or PHP data.

Optional Parameters


By default 5000 limit will apply if no limit send in API call


Be default 0

Checking Web SMS Summary


    case "GET":
        $uid = htmlspecialchars($_GET["uid"]);
        $pass = htmlspecialchars($_GET["pass"]);
        $reference_id = htmlspecialchars($_GET["reference_id"]);
    case "POST":
        $uid = htmlspecialchars($_POST["uid"]);
        $pass = htmlspecialchars($_POST["pass"]);
        $reference_id = htmlspecialchars($_POST["reference_id"]);
$url = 'https://www.voodoosms.com/vapi/server/statsWebSMS?uid='.$uid.'&pass='.$pass.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
// Download the given URL, and return output
$output = curl_exec($ch);
echo $output."   ".curl_error($ch);
// Close the cURL resource, and free system resources

import java.io.IOException;
import java.io.InputStream;
import java.net.URL;
import java.net.URLConnection;
import java.net.URLEncoder;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

public class Servlet extends HttpServlet {
     public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
          if (request.getAttribute("uid") != null && request.getAttribute("pass") != null
                && request.getAttribute("reference_id") != null) {
               String charset = "UTF-8";
               String query = String.format("uid=%s&pass=%s&reference_id=%s",
                URLEncoder.encode(request.getAttribute("uid").toString(), charset),
                URLEncoder.encode(request.getAttribute("pass").toString(), charset),
                URLEncoder.encode(request.getAttribute("reference_id").toString(), charset));
               String url = "www.voodoosms.com/vapi/server/statsWebSMS";
               URLConnection connection = new URL(url + "?" + query).openConnection();
               connection.setRequestProperty("Accept-Charset", charset);
               InputStream reqres = connection.getInputStream();
               // reqres contains the request output
          } else {
            // Wrong parameters
     public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // Same as GET

var http = require('http');
var https = require('https');
var querystring = require('querystring');
var url = require('url');
var server = http.createServer(function(req, res) {
    var url_parts = url.parse(req.url, true);
    var query = url_parts.query;
    var uid = query.uid;
    var pass = query.pass;
    var reference_id = query.reference_id;
    if (uid && pass && reference_id) {
        var get_data = querystring.stringify({
          "uid": uid,
          "pass": pass,
          "reference_id": reference_id
        var options = {
          host: 'www.voodoosms.com',
          path: '/vapi/server/statsWebSMS?' + get_data
        https.get(options, function(reqres) {
          reqres.on('data', function(chunk) {
    } else
        res.end("Wrong parameters");


require 'net/http'
require 'json'
class Controller < ApplicationController
    def index
        uid = params[: uid]
        pass = params[: pass]
        reference_id = params[: reference_id]
        if uid and pass and reference_id
            uri = "?uid=" + uid + "&pass=" + pass + "&reference_id=" + reference_id
            uri = 0
        if uri != 0
            url = URI.parse('http://www.voodoosms.com/vapi/server/statsWebSMS' + uri)
            uri = URI(url)
            response = Net::HTTP.get(uri)
            @res = response
          @res = "Wrong parameters"

from django.http
import HttpResponse, HttpRequest
import urllib2
def index(request):
if request.method == 'GET':
    uid = request.GET.get('uid', '')
    pas = request.GET.get('pass', '')
    reference_id = request.GET.get('reference_id', '')
elif request.method == 'POST':
    uid = request.POST.get('uid', '')
    pas = request.POST.get('pass', '')
    reference_id = request.POST.get('reference_id', '')
if uid and pas and listid and number and reference_id:
    u = "?uid=%s&pass=%s&reference_id=%s" % (uid, pas, reference_id)
else :
    u = 0
if u:
    res = urllib2.urlopen("https://voodoosms.com/vapi/server/statsWebSMS" + u).read()
    return HttpResponse(res)
else :
    return HttpResponse("Wrong parameters")

using System;
using System.Net.Http;
using System.Web;

var client = new HttpClient();

//Get the parameters, either GET or POST request
    string uid = HttpContext.Current.Server.HtmlEncode(Request["uid"]);
    string pass = HttpContext.Current.Server.HtmlEncode(Request["pass"]);
    string reference_id = HttpContext.Current.Server.HtmlEncode(Request["reference_id"]);

//Exit if one or more parameters is missing
    if(String.IsNullOrEmpty(uid) || String.IsNullOrEmpty(pass) || 
    String.IsNullOrEmpty(reference_id)) System.Environment.Exit(1)

// Send the async request
    HttpResponseMessage response = await client.GetAsync(
    "https://www.voodoosms.com/vapi/server/statsWebSMS?uid=" + uid + "&pass="
    + pass + "&reference_id=" + reference_id);

// Get the response content
HttpContent responseContent = response.Content;

// Get the stream of the content and write the output
using (var reader = new StreamReader(await responseContent.ReadAsStreamAsync()))
Console.WriteLine(await reader.ReadToEndAsync());


         <sent_datetime>2018-06-28 14:40:00</sent_datetime>
         <broadcast_name>first websms via api</broadcast_name>
         <delivery_datetime>2018-06-28 14:42:00</delivery_datetime>
         <contact_list>first websms via api List</contact_list>
         <sent_datetime>2018-06-28 14:40:00</sent_datetime>
         <broadcast_name>first websms via api</broadcast_name>
         <contact_list>first websms via api List</contact_list>
         <sent_datetime>2018-06-28 14:40:00</sent_datetime>
         <broadcast_name>first websms via api</broadcast_name>
         <delivery_datetime>2018-06-28 14:43:00</delivery_datetime>
         <contact_list>first websms via api List</contact_list>
    "requestError": {
        "serviceException": {
            "messageId": "UNAUTHORIZED",
            "text": "Invalid login details"
Request Headers
Accept: */*
Referer: http:// or https:// www.voodoosms.com/vapi/server
authorization: Basic ZGZkZjpzZGZkZg==
accept-encoding: gzip, deflate
content-type: application/json
content-length: 64
URL http:// or https:// www.voodoosms.com/vapi/server/sendSMS
Request Data
    "from": "447711112244",
    "to": [
    "text": "tsdsdsd"
Response Headers
access-control-allow-origin: *
access-control-allow-methods: GET, POST, PUT, PATCH, DELETE, COPY, HEAD, OPTIONS, LINK, UNLINK,
PURGE access-control-allow-headers: Authorization, Content-Type, X-Enrollment-Token
content-type: application/json;charset=UTF-8
content-length: 97
date: Tue, 27 Dec 2016 08:17:07 GMT
connection: close
server: SMS API
strict-transport-security: max-age=16000000; includeSubDomains; preload;