Obtener Info de SMS
La operación Obtener Info de SMS es útil para obtener información acerca de un envio. Con el fin de realizar esta operación, debes enviar el submission ID.
Petición HTTP GET
GET https://www.rti-sms.com/api/sms/4193366853543393
Cabecera obligatoria en petición HTTP GET
Content-Type: application/json
Authorization: Bearer YOUR_ACCESS_TOKEN_HERE
curl "https://www.rti-sms.com/api/sms/4193366853543393" \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer ***** Hidden credentials *****'
// get cURL resource
$ch = curl_init();
// set url
curl_setopt($ch, CURLOPT_URL, 'https://www.rti-sms.com/api/sms/4193366853543393');
// set method
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'GET');
// return the transfer as a string
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// set headers
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Content-Type: application/json',
'Authorization: Bearer ***** Hidden credentials *****',
]);
// send the request and save response to $response
$response = curl_exec($ch);
// stop if fails
if (!$response) {
die('Error: "' . curl_error($ch) . '" - Code: ' . curl_errno($ch));
}
echo 'HTTP Status Code: ' . curl_getinfo($ch, CURLINFO_HTTP_CODE) . PHP_EOL;
echo 'Response Body: ' . $response . PHP_EOL;
// close curl resource to free up system resources
curl_close($ch);
# Install the Python Requests library:
# `pip install requests`
import requests
def send_request():
try:
response = requests.get(
url="https://www.rti-sms.com/api/sms/4193366853543393",
headers={
"Content-Type": "application/json",
"Authorization": "Bearer ***** Hidden credentials *****",
},
)
print('Response HTTP Status Code: {status_code}'.format(
status_code=response.status_code))
print('Response HTTP Response Body: {content}'.format(
content=response.content))
except requests.exceptions.RequestException:
print('HTTP Request failed')
// request Request Duplicate
(function(callback) {
'use strict';
const httpTransport = require('https');
const responseEncoding = 'utf8';
const httpOptions = {
hostname: 'www.rti-sms.com',
port: '443',
path: '/api/sms/4193366853543393',
method: 'GET',
headers: {"Content-Type":"application/json","Authorization":"Bearer ***** Hidden credentials *****"}
};
httpOptions.headers['User-Agent'] = 'node ' + process.version;
// Paw Store Cookies option is not supported
const request = httpTransport.request(httpOptions, (res) => {
let responseBufs = [];
let responseStr = '';
res.on('data', (chunk) => {
if (Buffer.isBuffer(chunk)) {
responseBufs.push(chunk);
}
else {
responseStr = responseStr + chunk;
}
}).on('end', () => {
responseStr = responseBufs.length > 0 ?
Buffer.concat(responseBufs).toString(responseEncoding) : responseStr;
callback(null, res.statusCode, res.headers, responseStr);
});
})
.setTimeout(0)
.on('error', (error) => {
callback(error);
});
request.write("")
request.end();
})((error, statusCode, headers, body) => {
console.log('ERROR:', error);
console.log('STATUS:', statusCode);
console.log('HEADERS:', JSON.stringify(headers));
console.log('BODY:', body);
});
import java.io.IOException;
import org.apache.http.client.fluent.*;
public class SendRequest
{
public static void main(String[] args) {
sendRequest();
}
private static void sendRequest() {
try {
// Create request
Content content = Request.Get("https://www.rti-sms.com/api/sms/4193366853543393")
// Add headers
.addHeader("Content-Type", "application/json")
.addHeader("Authorization", "Bearer ***** Hidden credentials *****")
// Fetch request and return content
.execute().returnContent();
// Print content
System.out.println(content);
}
catch (IOException e) { System.out.println(e); }
}
}
Si la operación Obtener Info SMS es exitosa, la API responderá con
HTTP Status: HTTP/1.1 200 OK
y
en el body de la respuesta tendrás un Objecto JSON que contiene detalles de un unico envio SMS.
Una operación exitosa de obtener info de sms retorna una estructura JSON como esta:
{
"id":"4193366853543393",
"timestamps":{
"registered":1600351683,
"sent":1600351694,
"done":1600355610
},
"info":{
"status":{
"code":"1",
"status":"DELIVERED"
},
"cost":1,
"operator":{
"id":"188",
"name":"Entel Pcs",
"mcc":"730",
"mnc":"10"
}
}
}
Por favor ve la siguiente tabla para ver los campos disponibles en este objeto:
Campos del objeto obtenido
Campo | Tipo | Descripción |
id | String | El Id único de este envio. En esta respuesta, este campo no entrega nueva información ya que tu has hecho la petición de la información de este envio usando exactamente el mismo Id. Esta incluido en la respuesta por conveniencia. |
timestamps | Object | Este objeto JSON contiene el timestamps UNIX/EPOCH de las tres etapas del envio de sms. Mas información de esto, se encuentra en la tabla de abajo. |
info | Object | Contiene 2 objetos hijos, el objeto status provee indicaciones del estatus de entrega de este SMS, asi como el objeto operator que provee información precisa del operador de red al cual este SMS fue enviado. |
Estructura del campo timestamps
Campo | Tipo | Descripción |
registered | Integer | Timestamp en el cual un envio de SMS fue registrado (pero aún no ha sido enviado) en el sistema de RealTime. Este valor no puede ser cero. |
sent | Integer | Timestamp en el cual un envio de SMS fue enviado al operador de red destinatario. |
done | Integer | Timestamp en el cual tenemos el resultado final de un envio de SMS. |
Ya sea si el SMS es DELIVERED o REJECTED por el operador, o EXPIRED, etc, todos esos eventos especifican un evento final.
Estructura del campo info/status
Campo | Tipo | Descripción |
---|---|---|
status | String | Especifica el status de entrega de un envio de SMS. |
code | String | La representación numérica del campo status |
El campo status de arriba, puede tener uno de los siguientes valores:
- PENDING
- SENT
- DELIVERED
- REJECTED
- UNDELIVERED
- EXPIRED
- UNKNOWN
Estructura del campo info/operator
Campo | Tipo | Descripción |
id | String | El ID único de un operador de red, de acuerdo a la base de datos de RealTime. |
---|---|---|
name | String | El nombre de un operador de red. |
mcc | String | Valor numérico. Especifica el país de un operador de red. Su nombre completo: Mobile Country Code. |
mnc | String | Valor numérico. Especifica el operador de red con el mismo valor mcc. |