using System.Net.Http.Headers;
using System.Text;
public class Program
{
public static async Task Main()
{
var apiKey = "";
var apiSecret = "";
var apiCredentials = Convert.ToBase64String(Encoding.UTF8.GetBytes($"{apiKey}:{apiSecret}"));
var jsonSendRequest =
"{ \"messages\" : [ { \"content\" : \"Hello SMS World from C#\", \"destination\" : \">>Your test phone number<<\" } ] }";
using var httpClient = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Post, "https://rest.smsportal.com/BulkMessages")
{
Content = new StringContent(jsonSendRequest, Encoding.UTF8, "application/json"),
Headers =
{
Authorization = new AuthenticationHeaderValue("Basic", apiCredentials),
}
};
try
{
var response = await httpClient.SendAsync(request);
if (response.IsSuccessStatusCode)
{
Console.WriteLine("Success:");
Console.WriteLine(await response.Content.ReadAsStringAsync());
}
else
{
Console.WriteLine("Failure:");
Console.WriteLine(await response.Content.ReadAsStringAsync());
}
}
catch (Exception e)
{
Console.WriteLine("Something went wrong during the network request.");
Console.WriteLine(e);
}
}
}
import java.util.Base64;
import java.util.Base64.Encoder;
import java.nio.charset.StandardCharsets;
import java.io.IOException;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.URI;
import java.net.URISyntaxException;
public class JavaExample {
public static void main(String[] args) throws URISyntaxException {
String apiKey = "";
String apiSecret = "";
String accountApiCredentials = apiKey + ":" + apiSecret;
Encoder base64Encoder = Base64.getUrlEncoder();
byte[] credentialBytes = accountApiCredentials.getBytes(StandardCharsets.UTF_8);
String base64Credentials = base64Encoder.encodeToString(credentialBytes);
HttpClient client = HttpClient.newHttpClient();
String requestBody = "{ \"messages\" : [ { \"content\" : \"Hello SMS World from Java\", \"destination\" : \">>Your test phone number<<\" } ] }";
HttpRequest request = HttpRequest.newBuilder()
.uri(new URI("https://rest.smsportal.com/BulkMessages"))
.header("Authorization", String.format("Basic %s", base64Credentials))
.header("Accept", "application/json")
.header("Content-Type", "application/json")
.POST(HttpRequest.BodyPublishers.ofString(requestBody))
.build();
try {
HttpResponse response = client.send(request, HttpResponse.BodyHandlers.ofString());
if (response.statusCode() == 200) {
System.out.println("Success:");
System.out.println(response.body());
} else {
System.out.println("Failure:");
System.out.println(response.body());
}
} catch (Exception e) {
System.out.println("Something went wrong during the network request.");
e.printStackTrace();
}
}
}
$apiKey = '';
$apiSecret = '';
$accountApiCredentials = $apiKey . ':' . $apiSecret;
$base64Credentials = base64_encode($accountApiCredentials);
$authHeader = 'Authorization: Basic ' . $base64Credentials;
$sendData = '{ "messages" : [ { "content" : "Hello SMS World from PHP", "destination" : ">>Your test phone number<<" } ] }';
$options = array(
'http' => array(
'header' => array("Content-Type: application/json", $authHeader),
'method' => 'POST',
'content' => $sendData,
'ignore_errors' => true
)
);
$sendResult = file_get_contents('https://rest.smsportal.com/bulkmessages', false, stream_context_create($options));
$status_line = $http_response_header[0];
preg_match('{HTTP\/\S*\s(\d{3})}', $status_line, $match);
$status = $match[1];
if ($status === '200') {
echo "Success:\n";
var_dump($sendResult);
} else {
echo "Failure:\n";
var_dump($sendResult);
}
import requests
from requests.auth import HTTPBasicAuth
apiKey = ''
apiSecret = ''
basic = HTTPBasicAuth(apiKey, apiSecret)
sendRequest = {
"messages": [{"content": "Hello SMS World from Python", "destination": ">>Your test phone number<<"}]
}
try:
sendResponse = requests.post("https://rest.smsportal.com/bulkmessages",
auth=basic,
json=sendRequest)
if sendResponse.status_code == 200:
print("Success:")
print(sendResponse.json())
else:
print("Failure:")
print(sendResponse.json())
except Exception as e:
print(e)
package main
import (
"bytes"
b64 "encoding/base64"
"fmt"
"io/ioutil"
"net/http"
)
func main() {
var apiKey string = ""
var apiSecret string = ""
accountApiCredentials := b64.StdEncoding.EncodeToString([]byte(apiKey + ":" + apiSecret))
client := &http.Client{}
jsonSendRequest := "{ \"messages\" : [ { \"content\" : \"Hello SMS World\", \"destination\" : \">>Your test phone number<<\" } ] }"
sendReq, _ := http.NewRequest("POST", "https://rest.smsportal.com/bulkmessages", bytes.NewBuffer([]byte(jsonSendRequest)))
sendReq.Header.Add("Content-Type", "application/json")
sendReq.Header.Add("Authorization", fmt.Sprintf("Basic %s", accountApiCredentials))
sendResp, err := client.Do(sendReq)
if err == nil {
defer sendResp.Body.Close()
sendRespBody, _ := ioutil.ReadAll(sendResp.Body)
if sendResp.StatusCode == 200 {
fmt.Println("Success:")
fmt.Println(string(sendRespBody))
} else {
fmt.Println("Failure:")
fmt.Println(string(sendRespBody))
}
} else {
fmt.Println("Something went wrong during the network request.")
fmt.Println(err)
}
}
const axios = require('axios');
let apiKey = '';
let apiSecret = '';
let accountApiCredentials = apiKey + ':' + apiSecret;
let buff = new Buffer.from(accountApiCredentials);
let base64Credentials = buff.toString('base64');
let requestHeaders = {
headers: {
'Authorization': `Basic ${base64Credentials}`,
'Content-Type': 'application/json'
}
};
let requestData = JSON.stringify({
messages: [{
content: "Hello SMS World from NodeJS",
destination: ">>Your test phone number<<"
}]
});
axios.post('https://rest.smsportal.com/bulkmessages', requestData, requestHeaders)
.then(response => {
if (response.data) {
console.log("Success:");
console.log(response.data);
}
})
.catch(error => {
if (error.response) {
console.log("Failure:");
console.log(error.response.data);
} else {
console.log("Something went wrong during the network request.");
}
});
require 'net/https'
require 'uri'
apiKey = ''
apiSecret = ''
uri = URI.parse("https://rest.smsportal.com/bulkmessages")
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
sendRequestBody = '{"messages": [{"content": "Hello SMS World from Ruby", "destination": ">>Your test phone number<<"}}]'
request = Net::HTTP::Post.new(uri.request_uri)
request.basic_auth(apiKey, apiSecret)
request.body = sendRequestBody
request.content_type = 'application/json'
sendResponse = http.request(request)
if sendResponse.code == '200'
puts 'Success:'
puts sendResponse.body
else
puts 'Failure:'
puts sendResponse.body
end
$apiKey = "";
$apiSecret = "";
$accountApiCredentials = "$($apiKey):$($apiSecret)";
$credentialBytes = [System.Text.Encoding]::UTF8.GetBytes($accountApiCredentials)
$base64Credentials =[Convert]::ToBase64String($credentialBytes)
$body = '{ "messages" : [ { "content" : "Hello SMS World from Powershell", "destination" : ">>Your test phone number<<" } ] }'
$sendEndpoint = "https://rest.smsportal.com/bulkmessages";
$sendHeaders = @{
'Authorization' = "Basic $($base64Credentials)"
'Content-Type' = 'application/json'
}
try
{
$sendresponse = Invoke-WebRequest -Uri $sendEndpoint -Method Post -Headers $sendHeaders -Body $body -ErrorAction Stop;
$sendResponseBody = $sendresponse.Content | ConvertFrom-Json
$sendResponseBody
}
catch
{
$reader = New-Object System.IO.StreamReader($_.Exception.Response.GetResponseStream())
$reader.BaseStream.Position = 0
$reader.DiscardBufferedData()
$errorResponse = $reader.ReadToEnd() | ConvertFrom-Json
$errorResponse
}