To get the details of a specific campaign in your account, make an HTTP GET request to:
https://<your_api_key>:<your_api_token><subdomain>/v2/accounts/<your_sid>/message-campaigns/<campaign_id>
Replace <your_api_key> and <your_api_token> with the API key and token created by you. Similarly, replace <your_sid> with your “Account sid” value. These values are available in the API settings page of your Exotel Dashboard. Replace <id> with the campaign id.
This API only supports a JSON response.
curl -X GET https://<your_api_key>:<your_api_token><subdomain>/v2/accounts/<your_sid>/message-campaigns/<campaign_id>
var request = require("request");
var accountSid = "XXXXXXXXX";
var accountToken = "YYYYYYYYY";
var authKey = "ZZZZZZZZZZ";
var encoding = Buffer.from(authKey + ':' + accountToken).toString('base64')
var options = { method: 'GET',
url: 'https://api.exotel.com/v2/accounts/'+ accountSid +'/message-campaigns/491dd6c97d64475ba0ce346a18530ce5',
headers:
{
Authorization: 'Basic ' + encoding
} };
request(options, function (error, response, body) {
if (error) throw new Error(error);
console.log(body);
});
<?php
$curl = curl_init();
$accountSid = "XXXXXXXXXX";
$accountToken = "YYYYYYYYYY";
$authKey = "ZZZZZZZZZZ";
$encoding = base64_encode($authKey .":". $accountToken);
curl_setopt_array($curl, array(
CURLOPT_URL => "https://api.exotel.com/v2/accounts/".$accountSid."/message-campaigns/491dd6c97d64475ba0ce346a18530ce5",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_POSTFIELDS => "",
CURLOPT_HTTPHEADER => array(
"Authorization: Basic ".$encoding
),
));
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
import requests, base64, json
accountSid = "XXXXXXXXX"
authToken = "YYYYYYYYY"
authKey = "ZZZZZZZZZZ"
encoding = base64.b64encode(authKey + ":" + authToken)
url = "https://api.exotel.com/v2/accounts/"+ accountSid +"/message-campaigns/491dd6c97d64475ba0ce346a18530ce5"
payload = ""
headers = {
'Authorization': "Basic " + encoding
}
response = requests.request("GET", url, data=payload, headers=headers)
print(response.text)
print(json.dumps(json.loads(response.text), indent = 4, sort_keys = True))
package main
import (
b64 "encoding/base64"
"fmt"
"io/ioutil"
"net/http"
)
func main() {
// Please provide accountSid, authToken from your Exotel account
accountSid := "XXXXXXXXX"
authToken := "YYYYYYYY"
authKey := "ZZZZZZZZZZ"
// Encoding the accountSid and authToken, used in Authorization header
encoding := b64.StdEncoding.EncodeToString([]byte(authKey + ":" + authToken))
url := "https://api.exotel.com/v2/accounts/" + accountSid + "/message-campaigns/491dd6c97d64475ba0ce346a18530ce5"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Basic "+encoding)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
HTTP Response:
{
"request_id": "56887c647e644f96aa9bc43c4f347e9f",
"method": "GET",
"http_code": 200,
"response": {
"code": 200,
"status": "success",
"data": {
"name": "new camp",
"content_type": "static",
"sid": "af7826e2c40b40faa53d1a1653905879",
"account_sid": "Exotel",
"lists": [
"088d92cb349844008fcb97cdf5a52cb7"
],
"schedule": {
"start_time": "2022-05-30T15:57:00+05:30",
"end_time": "2022-06-29T15:57:00+05:30"
},
"status_callback": null,
"sms_status_callback": null,
"status": "completed",
"report_url": null,
"dlt_template_id": "1107159950325048979",
"dlt_entitiy_id": "1101428740000012125",
"sender_id": "EXOTEL",
"channel": "SMS",
"sms_type": "transactional",
"template": "Hi user,Thank you for registering; Your account has been activated",
"estimated_cost": 0.17,
"date_created": "2022-05-30T15:47:59+05:30",
"date_updated": "2022-05-30T16:19:14+05:30",
"stats": {
"scheduled": 0,
"submitted": 0,
"failed": 0,
"failed-dnd": 0,
"invalid": 0,
"failed-no-attempt": 0,
"sent": 2,
"failed-expired": 0,
"failed-no-balance": 0
},
}
}
}