Single Status
This request allows you to retrieve the status of a single SMS.
URL
GET
https://api.smspartner.fr/v1/message-status
Required Parameters
Name
Value
apiKey
messageId
phoneNumber
Recipient's mobile phone number
Optional Parameters
Name
Value
_format
json
or xml
Requests
<?php
// Prepare data for GET request
$data = 'apiKey=YOUR_API_KEY&messageId=300&phoneNumber=06xxxxxxxx';
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL,'https://api.smspartner.fr/v1/message-status?'.$data);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_TIMEOUT, 10);
$result = curl_exec($curl);
curl_close($curl);
// Process your response here
echo $result;
?>
Imports System.IO
Imports System.Net
Module Module1
Sub Main()
Dim base_url As String = "http://api.smspartner.fr/v1/"
Dim apiKey As String = "VOTRE_APIKEY"
Dim phoneNumber As String = "06XXXXXXXX"
Dim messageId As Integer = XXX
#check credits
Dim url As String
url = base_url & "message-status" & "?apiKey=" & apiKey & "&phoneNumber=" & phoneNumber & "&messageId=" & messageId
Dim credits As String
credits = apiRequest("GET", url, Nothing)
End Sub
Function apiRequest(method As String, url As String, parameters As String) As String
Dim request As HttpWebRequest
request = WebRequest.Create(url)
request.Method = method
request.Timeout = 10000 # timeout in ms
request.ContentType = "application/json; charset=utf-8"
request.ContentLength = 0
#set POST data
If Not String.IsNullOrEmpty(parameters) Then
request.ContentLength = parameters.Length
Using reqStream As StreamWriter = New StreamWriter(request.GetRequestStream())
reqStream.Write(parameters)
End Using
End If
#get response
Dim returnValue As String = Nothing
Using response As HttpWebResponse = request.GetResponse()
If response.StatusCode = HttpStatusCode.OK Then
Using resStream = response.GetResponseStream()
If resStream IsNot Nothing Then
Using reader As New StreamReader(resStream)
returnValue = reader.ReadToEnd()
End Using
End If
End Using
End If
End Using
apiRequest = returnValue
End Function
End Module
# std
import logging
import json
from collections import OrderedDict
# 3p
import requests
API_KEY = "MY API KEY"
URL = "https://api.smspartner.fr/v1"
class SMSPartner():
def get_delivery(self,phone_numbers,message_id):
url = URL + "/message-status?apiKey=" + API_KEY + "&phoneNumber=" + phone_numbers + "&messageId=" + message_id
r = requests.get(url)
r_json = r.json()
if r_json.get("success") == True:
print(r_json)
status = True
else:
print(r_json)
status = False
return status
curl -H "Content-Type: application/json" -X GET https://api.smspartner.fr/v1/message-status?apiKey=xxx&messageId=300&phoneNumber=06xxxxxxxx
const https = require("https");
// Remplacez par votre clé API et autres données
const apiKey = "VOTRE_CLÉ_API";
const messageId = "300";
const phoneNumber = "06xxxxxxxx";
// Préparer les données pour la requête GET
const data = `apiKey=${apiKey}&messageId=${messageId}&phoneNumber=${phoneNumber}`;
// Définir les options pour la requête HTTP GET vers l'API SMS Partner
const options = {
hostname: "api.smspartner.fr",
port: 443,
path: `/v1/message-status?${data}`,
method: "GET",
headers: {
"Content-Type": "application/json",
"cache-control": "no-cache",
},
};
// Effectuer la requête HTTP GET avec les options et données définies précédemment
const req = https.request(options, (res) => {
console.log(`statusCode: ${res.statusCode}`);
// Afficher les données de réponse de l'API sur la sortie standard
res.on("data", (d) => {
process.stdout.write(d);
});
});
// Afficher en cas d'erreur lors de l'exécution de la requête HTTP GET
req.on("error", (error) => {
console.error(error);
});
// Terminer la requête HTTP GET
req.end();
import java.net.HttpURLConnection;
import java.net.URL;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.stream.Collectors;
import org.json.JSONObject;
public class SMSSTatus {
public static void main(String[] args) {
try {
// Remplacez par votre clé API et autres données
String apiKey = "VOTRE_CLÉ_API";
String messageId = "300";
String phoneNumber = "06xxxxxxxx";
// Préparer les données pour la requête GET
String data = String.format("apiKey=%s&messageId=%s&phoneNumber=%s", apiKey, messageId, phoneNumber);
URL url = new URL("https://api.smspartner.fr/v1/message-status?" + data);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("GET");
conn.setRequestProperty("Content-Type", "application/json");
conn.setRequestProperty("cache-control", "no-cache");
// Lecture de la réponse de l'API
BufferedReader br = new BufferedReader(new InputStreamReader(conn.getInputStream()));
String response = br.lines().collect(Collectors.joining());
// Afficher la réponse JSON
System.out.println(response);
// Fermeture de la connexion HTTP
conn.disconnect();
} catch (Exception e) {
e.printStackTrace();
}
}
}
import SwiftUI
// Structure pour la vue "StatutSMS"
struct StatutSMS: View {
var body: some View {
// Un bouton qui appelle la fonction StatutSMS() lorsqu'il est pressé
Button(action: {
StatutSMS()
}) {
Text("Check SMS Status")
.font(.system(size: 20))
.foregroundColor(.white)
.frame(minWidth: 0, maxWidth: .infinity)
.padding()
.background(LinearGradient(gradient: Gradient(colors: [Color.blue, Color.blue.opacity(0.8)]), startPoint: .top, endPoint: .bottom))
.cornerRadius(10)
.padding(.horizontal)
}
}
// Fonction pour vérifier le statut d'un SMS
func StatutSMS() {
let apiKey = "XXXXXXXXXXXX YOUR API KEY XXXXXXXXXXXXX" // Votre clé API
let messageId = "your msg ID" // ID de votre message
let phoneNumber = "06XXXXXXXX" // Numéro de téléphone
// URL pour vérifier le statut du SMS
let urlString = "https://api.smspartner.fr/v1/message-status?apiKey=\(apiKey)&messageId=\(messageId)&phoneNumber=\(phoneNumber)"
// On vérifie que l'URL est correctement formée
guard let url = URL(string: urlString) else {
print("Erreur : impossible de créer l'URL")
return
}
// Tâche pour récupérer les données de l'URL
let task = URLSession.shared.dataTask(with: url) { (data, response, error) in
// Si une erreur se produit, on l'affiche
if let error = error {
print("Erreur : \(error)")
}
// Sinon, on affiche les données reçues
else if let data = data {
let str = String(data: data, encoding: .utf8)
print("Données reçues :\n\(str ?? "")")
}
}
task.resume() // On lance la tâche
}
}
// Aperçu de la vue
struct StatutSMS_Previews: PreviewProvider {
static var previews: some View {
StatutSMS()
}
}
package main
import (
"io/ioutil"
"log"
"net/http"
"time"
)
func main() {
// Prepare data for GET request
apiKey := "YOUR_API_KEY"
messageId := "300"
phoneNumber := "06xxxxxxxx"
// Create GET request URL
url := "https://api.smspartner.fr/v1/message-status?" +
"apiKey=" + apiKey + "&messageId=" + messageId + "&phoneNumber=" + phoneNumber
// Create HTTP client
client := &http.Client{Timeout: 10 * time.Second}
// Send GET request
resp, err := client.Get(url)
if err != nil {
log.Fatalf("Error sending request: %v", err)
}
defer resp.Body.Close()
// Get response
body, err := ioutil.ReadAll(resp.Body)
if err != nil {
log.Fatalf("Error reading response body: %v", err)
}
// Process your response here
log.Printf("Response: %s", body)
}
using System;
using System.Net.Http;
using System.Threading.Tasks;
class Program
{
private static readonly HttpClient client = new HttpClient();
static async Task Main(string[] args)
{
var apiKey = "YOUR_API_KEY";
var messageId = "300";
var phoneNumber = "06xxxxxxxx";
var uri = new Uri($"https://api.smspartner.fr/v1/message-status?apiKey={apiKey}&messageId={messageId}&phoneNumber={phoneNumber}");
HttpResponseMessage response = await client.GetAsync(uri);
if (response.IsSuccessStatusCode)
{
var result = await response.Content.ReadAsStringAsync();
Console.WriteLine(result);
}
else
{
Console.WriteLine("GET request failed with status code: " + response.StatusCode);
}
}
}
Response
{
"success": true,
"code": 200,
"number": "0600000000",
"messageId": "1111",
"stopSms": false,
"date": "2015-02-07 22:39:46",
"statut": "Delivered",
"cost": 0.045,
"countryCode": "FR",
"currency": "EUR"
}
<?xml version='1.0' encoding='UTF-8'?>
<result>
<entry>true</entry>
<entry>200</entry>
<entry><![CDATA[0600000000]]></entry>
<entry><![CDATA[1111]]></entry>
<entry>false</entry>
<entry><![CDATA[2015-02-07 22:39:46]]></entry>
<entry><![CDATA[Delivered]]></entry>
<entry>0.045</entry>
<entry><![CDATA[FR]]></entry>
<entry><![CDATA[EUR]]></entry>
</result>
Delivered: The message was successfully delivered to the recipient’s device or platform.
Not delivered: The message could not be delivered. Possible reasons include an invalid phone number or operator issues.
Waiting: The message is still in the process of being delivered and has not yet been confirmed as delivered or failed.
Errors
{
"success": false,
"code": 10,
"message": "Invalid API key"
}
<?xml version='1.0' encoding='UTF-8'?>
<result>
<entry>false</entry>
<entry>10</entry>
<entry>Invalid API key</entry>
</result>
Error Codes
Response Code
Description
1
API key is required
2
Phone number is required
3
Message ID is required
4
Message not found
10
Invalid API key
200
Everything is OK!
Last updated