Send messages to mobile phones with image and a long text message.
POST https://api.46elks.com/a1/mms
Parameter | Example | Description |
---|---|---|
to | +46700000000 | The phone number of the recipient, in E.164 format. |
from | +46700000000 noreply |
The phone number to send from. Must be an MMS-enabled Virtual Phone Number or the text "noreply". We will replace the sender id with a random phone number if "noreply" is used. |
message | Hi! This is a message to your phone! | A message to be sent with the MMS. Either message or image must be present in the API request. |
image | http://yourapp.example/image.jpg data:image/png;base64,iVBOR... |
Either a data URL or a publicly accessible URL that points to an image. GIF, PNG and JPEG images are supported. Either image or message must be present in the API request. |
curl https://api.46elks.com/a1/MMS \
-u <Username>:<API Password> \
-d from=+46700000000 \
-d to=+46700000000 \
-d image="https://yourserver.example/images/treasuremap.jpg"
import HTTPotion.base
authdata = [basic_auth: {'',
request = %{
"from" => "+46700000000",
"to" => "+46700000000",
"image" => "https://yourserver.example/images/treasuremap.jpg"
}
request_data = URI.encode_query(request)
HTTPotion.start
HTTPotion.post("https://api.46elks.com/a1/MMS",
[body: request_data , ibrowse: authdata]
)
import com.mashape.unirest.http.HttpResponse;
import com.mashape.unirest.http.Unirest;
public class UnirestSendMMS {
public static void main(String[] args) {
try {
System.out.println("Sending MMS");
HttpResponse response = Unirest.post("https://api.46elks.com/a1/MMS")
.basicAuth("","")
.field("to", "+46700000000")
.field("from", "+46700000000")
.field("image", "https://yourserver.example/images/treasuremap.jpg")
.asString();
System.out.println(response.getBody());
}
catch (Exception e){
System.out.println(e);
}
}
}
function sendMMS ($mms) {
$username = "USERNAME";
$password = "PASSWORD";
$context = stream_context_create(array(
'http' => array(
'method' => 'POST',
'header' => 'Authorization: Basic '.
base64_encode($username.':'.$password). "\r\n".
"Content-type: application/x-www-form-urlencoded\r\n",
'content' => http_build_query($mms,'','&'),
'timeout' => 10
)));
$response = file_get_contents("https://api.46elks.com/a1/MMS",
false, $context);
if (!strstr($http_response_header[0],"200 OK"))
return $http_response_header[0];
return $response;
}
$mms = array(
"from" => "+46700000000", /* You need an mms enabled phone number */
"to" => "+46700000000", /* The mobile number you want to send the image to */
"image" => "https://yourserver.example/images/treasuremap.jpg",
);
echo sendMMS($mms);
import requests
auth = (
'',
''
)
fields = {
'from': '+46700000000',
'to': '+46700000000',
'image': 'https://yourserver.example/images/treasuremap.jpg'
}
response = requests.post(
"https://api.46elks.com/a1/MMS",
data=fields,
auth=auth
)
print(response.text)
const axios = require("axios");
const sendMMS = async credentials => {
try {
const res = await axios.post(
"https://api.46elks.com/a1/mms",
new URLSearchParams({
from: "noreply",
to: "+46700000002",
message: "Bring a sweater, it’s cold outside!",
image: "https://46elks.com/press/46elks-blue-png"
}), {
headers: {
"Authorization": "Basic " + credentials
}
});
console.log(res.data);
} catch (err) {
console.log(err);
}
}
const username = "USERNAME";
const password = "PASSWORD";
const authKey = Buffer.from(username + ":" + password).toString("base64");
sendMMS(authKey);
require 'net/http'
uri = URI('https://api.46elks.com/a1/MMS')
req = Net::HTTP::Post.new(uri)
req.basic_auth '', ''
req.set_form_data(
:from => '+46704508449',
:to => '+46704508449',
:image => 'https://yourserver.example/images/treasuremap.jpg'
)
res = Net::HTTP.start(
uri.host,
uri.port,
:use_ssl => uri.scheme == 'https') do |http|
http.request req
end
puts res.body
More examples
C -
C# -
Go -
Google App Script -
Haskell -
Node.js -
Postman
{
"direction": "outgoing",
"from": "+46766861218",
"created": "2016-11-03T12:44:56.180704",
"to": "+46700000000",
"cost": 12500,
"message": "Hej!",
"id": "mf3d05c159aa49e1951c5301bc6af1bac"
}
Attribute | Type | Description |
---|---|---|
id | string | The unique id of the message in our systems. |
from | string | The phone number the MMS was sent from. |
to | string | Phone number that the MMS was sent to. |
message | string | The text message if the MMS contains text. |
created | string | The time in UTC when the MMS object was created in our systems. |
cost | integer | The cost of sending the MMS. Specified in 10000s of the currency of the account (SEK or EUR). For example, for an account with currency SEK, a cost of 3500 means that the cost was 0.35SEK. |
PNG and JPG image formats are supported by the API. There is no hard limit on the size of an image but the total payload size of the MMS (text + images or other media) cannot exceed 320kB.
MMS uses completely different protocols than SMS and some features of SMS are not part of the MMS standard, for example delivery reports, alphanumeric senders and multipart messages.