Copy code
# Session Key example
curl -XGET 'https://app.gateway.smsend.it/API/v1.0/REST/landings' -H 'Content-Type: application/json' \
-H 'user_key: USER_KEY' -H 'Session_key: SESSION_KEY'
# Access token example
curl -XGET 'https://app.gateway.smsend.it/API/v1.0/REST/landings' -H 'Content-Type: application/json' \
-H 'user_key: USER_KEY' -H 'Access_token: ACCESS_TOKEN'
'
On success, the above command returns the following response:
{
"result": "OK",
"landings": [
{
"id_landing": 18,
"name": "agoodpage",
"description": "Test page",
"long_description": null,
"created": 1513066300000,
"modified": 1513067151000,
"html_title": null
},
{
"id_landing": 19,
"name": "anicepage",
"description": "A nice page",
"long_description": null,
"created": 1513067137000,
"modified": 1513067563000,
"html_title": null
}
]
}
Copy code
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.io.OutputStream;
import java.net.URL;
public class Main {
public static void main(String[] args) {
try {
URL url = new URL("https://app.gateway.smsend.it/API/v1.0/REST/landings");
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestProperty("user_key", "USER_KEY");
// Use this when using Session Key authentication
conn.setRequestProperty("Session_key", "SESSION_KEY");
// When using Access Token authentication, use this instead:
// conn.setRequestProperty("Access_token", "UserParam{access_token}");
conn.setRequestMethod("GET");
if (conn.getResponseCode() != 200) {
// Print the possible error contained in body response
String error = "";
String output;
BufferedReader errorbuffer = new BufferedReader(new InputStreamReader(conn.getErrorStream(), "UTF-8"));
while ((output = errorbuffer.readLine()) != null) {
error += output;
}
System.out.println("Error! HTTP error code : " + conn.getResponseCode() +
", Body message : " + error);
throw new RuntimeException("Failed : HTTP error code : " + conn.getResponseCode());
}
BufferedReader br =
new BufferedReader(new InputStreamReader(conn.getInputStream()));
String response = "";
String output;
while ((output = br.readLine()) != null) {
response += output;
}
// You can parse the response using Google GSON or similar.
// MyObject should be a class that reflect the JSON
// structure of the response
GsonBuilder builder = new GsonBuilder();
Gson gson = builder.create();
MyObject responseObj = gson.fromJson(response, MyObject.class);
conn.disconnect();
}
catch (Exception e) {
e.printStackTrace();
}
}
}
On success, the above command returns the following response:
{
"result": "OK",
"landings": [
{
"id_landing": 18,
"name": "agoodpage",
"description": "Test page",
"long_description": null,
"created": 1513066300000,
"modified": 1513067151000,
"html_title": null
},
{
"id_landing": 19,
"name": "anicepage",
"description": "A nice page",
"long_description": null,
"created": 1513067137000,
"modified": 1513067563000,
"html_title": null
}
]
}
Copy code
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://app.gateway.smsend.it/API/v1.0/REST/landings');
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-type: application/json',
'user_key: USER_KEY',
// Use this when using session key authentication
'Session_key: SESSION_KEY',
// When using Access Token authentication, use this instead:
// 'Access_token: UserParam{access_token}'
));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
$info = curl_getinfo($ch);
curl_close($ch);
if ($info['http_code'] != 200) {
echo('Error! http code: ' . $info['http_code'] . ', body message: ' . $response);
}
else {
$obj = json_decode($response);
print_r($obj);
}
?>
On success, the above command returns the following response:
{
"result": "OK",
"landings": [
{
"id_landing": 18,
"name": "agoodpage",
"description": "Test page",
"long_description": null,
"created": 1513066300000,
"modified": 1513067151000,
"html_title": null
},
{
"id_landing": 19,
"name": "anicepage",
"description": "A nice page",
"long_description": null,
"created": 1513067137000,
"modified": 1513067563000,
"html_title": null
}
]
}
Copy code
# pip install requests
import requests
import json
# Use this when using Session Key authentication
headers = { 'user_key': 'USER_KEY', 'Session_key' : 'SESSION_KEY', 'Content-type' : 'application/json' }
# When using Access Token authentication, use this instead:
# headers = { 'user_key': 'UserParam{user_key}', 'Access_token' : 'UserParam{access_token}', 'Content-type' : 'application/json' }
r = requests.get("https://app.gateway.smsend.it/API/v1.0/REST/landings", headers=headers)
if r.status_code != 200:
print("Error! http code: " + str(r.status_code) + ", body message: " + str(r.content))
else:
response = r.text
obj = json.loads(response)
print(unicode(obj))
On success, the above command returns the following response:
{
"result": "OK",
"landings": [
{
"id_landing": 18,
"name": "agoodpage",
"description": "Test page",
"long_description": null,
"created": 1513066300000,
"modified": 1513067151000,
"html_title": null
},
{
"id_landing": 19,
"name": "anicepage",
"description": "A nice page",
"long_description": null,
"created": 1513067137000,
"modified": 1513067563000,
"html_title": null
}
]
}
Copy code
// Uses https://github.com/request/request
// npm install [-g] request
var request = require('request');
request({
url: 'https://app.gateway.smsend.it/API/v1.0/REST/landings',
method: 'GET',
headers: { 'user_key' : 'USER_KEY', 'Session_key' : 'SESSION_KEY' },
callback: function (error, responseMeta, response) {
if (!error && responseMeta.statusCode == 200) {
}
else {
console.log('Error! http code: ' + responseMeta.statusCode + ', body message: ' + response)
}
}
});
On success, the above command returns the following response:
{
"result": "OK",
"landings": [
{
"id_landing": 18,
"name": "agoodpage",
"description": "Test page",
"long_description": null,
"created": 1513066300000,
"modified": 1513067151000,
"html_title": null
},
{
"id_landing": 19,
"name": "anicepage",
"description": "A nice page",
"long_description": null,
"created": 1513067137000,
"modified": 1513067563000,
"html_title": null
}
]
}
Copy code
require 'net/http'
require 'uri'
require 'json'
uri = URI.parse("https://app.gateway.smsend.it/API/v1.0/REST/landings")
# Create the HTTP objects
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Get.new(uri.request_uri)
request['Content-type'] = 'application/json'
request['user_key'] = 'USER_KEY'
request['Session_key'] = 'SESSION_KEY'
# Send the request
responseData = http.request(request)
if responseData.code == "200"
response = responseData.body
obj = JSON.parse(response)
puts obj
else
puts "Error! http code: " + responseData.code + ", body message: " + responseData.body
end
On success, the above command returns the following response:
{
"result": "OK",
"landings": [
{
"id_landing": 18,
"name": "agoodpage",
"description": "Test page",
"long_description": null,
"created": 1513066300000,
"modified": 1513067151000,
"html_title": null
},
{
"id_landing": 19,
"name": "anicepage",
"description": "A nice page",
"long_description": null,
"created": 1513067137000,
"modified": 1513067563000,
"html_title": null
}
]
}
Copy code
using System;
using System.IO;
using System.Text;
using System.Net;
using System.Collections.Specialized;
// We are using JSON.NET (http://www.newtonsoft.com/json)
using Newtonsoft.Json;
/*
* The following code has been compiled and tested using the MONO
* project.
*
* To compile using MONO:
* mcs -r:Newtonsoft.Json.dll example.cs
*/
namespace RestApplication
{
class Program
{
static void Main(string[] args)
{
using (var wb = new WebClient())
{
// Setting the encoding is required when sending UTF8 characters!
wb.Encoding = System.Text.Encoding.UTF8;
try {
wb.Headers.Set(HttpRequestHeader.ContentType, "application/json");
wb.Headers.Add("user_key", "USER_KEY");
wb.Headers.Add("Session_key", "SESSION_KEY");
String response = wb.DownloadString("https://app.gateway.smsend.it/API/v1.0/REST/landings");
dynamic obj = JsonConvert.DeserializeObject(response);
Console.WriteLine(obj);
} catch (WebException ex) {
var statusCode = ((HttpWebResponse)ex.Response).StatusCode;
var errorResponse = new StreamReader(ex.Response.GetResponseStream()).ReadToEnd();
Console.WriteLine("Error!, http code: " + statusCode + ", body message: ");
Console.WriteLine(errorResponse);
}
}
}
}
}
On success, the above command returns the following response:
{
"result": "OK",
"landings": [
{
"id_landing": 18,
"name": "agoodpage",
"description": "Test page",
"long_description": null,
"created": 1513066300000,
"modified": 1513067151000,
"html_title": null
},
{
"id_landing": 19,
"name": "anicepage",
"description": "A nice page",
"long_description": null,
"created": 1513067137000,
"modified": 1513067563000,
"html_title": null
}
]
}
Copy code
#!/usr/bin/env perl
use warnings;
use strict;
use LWP::UserAgent;
# Install using Cpan: "cpan JSON URI"
use JSON;
use URI::Escape;
my $ua = LWP::UserAgent->new;
my $server_endpoint = "https://app.gateway.smsend.it/API/v1.0/REST/landings";
my $req = HTTP::Request->new(GET => $server_endpoint);
$req->header('Content_type' => 'application/json');
# IMPORTANT: Not adding the ':' before 'user_key' and
# 'Session_key' will result in perl to automatically rewrite the
# headers as 'User-Key' and 'Session-Key', which is not supported
# by our API.
$req->header(':user_key' => $auth->[0],
':Session_key' => $auth->[1]);
my $resp = $ua->request($req);
if ($resp->is_success && $resp->code == 200) {
my $response = $resp->decoded_content;
my $obj = from_json($response);
} else {
my $error = $resp->decoded_content;
my $code = $resp->code;
print "Error!, http code: $code, body message: $error ";
}
On success, the above command returns the following response:
{
"result": "OK",
"landings": [
{
"id_landing": 18,
"name": "agoodpage",
"description": "Test page",
"long_description": null,
"created": 1513066300000,
"modified": 1513067151000,
"html_title": null
},
{
"id_landing": 19,
"name": "anicepage",
"description": "A nice page",
"long_description": null,
"created": 1513067137000,
"modified": 1513067563000,
"html_title": null
}
]
}