API Normalización


Contenidos
Objetivo

Disponer a nuestros clientes un medio seguro donde obtener los datos completos de normalización sobre una dirección y comuna.

Importante:
Cada cliente poseerá una credencial de acceso para la integración.
Puede consultar en Control de Acceso para mas información.


Formato Request
Se enviará un mensaje con la siguiente estructura:
Nombre Tipo de dato Requerido Descripción
direccion texto Si Debe ir en el siguiente orden: Calle + Número. + Resto.
comuna texto Si Nombre de la comuna.


Formato Response
Respuesta Satisfactoria

Dentro del body se enviará un objeto JSON con los campos listados a continuación.

Nombre Tipo de dato Descripción
id texto No aplica.
calle texto Nombre de calle parseada y normalizada.
numero texto Número de calle parseada y normalizada.
resto texto Resto de la dirección parseada y normalizada.
comuna texto Comuna normalizada.
codPostal texto Código postal de la dirección.


Status Codes
Status Descripción Acción
200 Cuando la solicitud fue procesada satisfactoriamente. JSON con dirección normalizada.
400 Cualquier error del lado del cliente. Cualquier falla en el payload, como un header o body erroneo.
500 Cualquier error del lado del servidor. Cualquier falla operativa interna, como no poder conectar con la base de datos.

Ejemplos
Request
Response

OK (200)



Error (400)



Error (400)



Error (500)



Códigos de ejemplo
//Si desea utilizar usuario y contraseña
var usuario = "[USUARIO]";
var password = "[CONTRASEÑA]";
var authorization = "basic " + Buffer.from(usuario + ":" + password).toString('base64');

//Si desea utilizar el token de acceso
var authorization = "token [TOKEN DE ACCESO]";

var request = require('request');
var options = {
  'method': 'POST',
  'url': 'https://cert-apib2bv2.correos.cl:8000/normalizacion',
  'headers': {
    'Authorization': authorization,
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    "direccion": "exposicion 221",
    "comuna": "estacion central"
  })
};
request(options, function (error, response) {
  if (error) throw new Error(error);
  console.log(response.body);
});
var client = new RestClient("https://cert-apib2bv2.correos.cl:8000/normalizacion") {
    client.Timeout = -1
}
var request = new RestRequest(Method.GET);

//Si desea utilizar usuario y contraseña
var usr = "[USUARIO]";
var pwd = "[CONTRASEÑA]";
var authorization = Convert.ToBase64String(Encoding.GetEncoding("ISO-8859-1").GetBytes(usr + ":" + pwd));
request.AddHeader("Authorization", "basic " + authorization);

//Si desea utilizar el token de acceso
var token = "[TOKEN DE ACCESO]"

request.AddHeader("Authorization", authorization);
request.AddHeader("Content-Type", "application/json");
var body = @"{
" + "\n" +
@"    ""direccion"": ""exposicion 221"",
" + "\n" +
@"    ""comuna"": ""estacion central""
" + "\n" +
@"}";
request.AddParameter("application/json", body,  ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content);
//import okhttp3.Credentials;
//import okhttp3.OkHttpClient;

//Si desea utilizar usuario y contraseña
String usuario = "[USUARIO]";
String contrasena = "[CONTRASEÑA]";
String authorization = "basic " + Credentials.basic(usuario, contrasena);

//Si desea utilizar token de acceso
String authorization = "token [TOKEN DE ACCESO]";

OkHttpClient client = new OkHttpClient().newBuilder()
  .build();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\r\n    \"direccion\": \"exposicion 221\",\r\n    \"comuna\": \"estacion central\"\r\n}");
Request request = new Request.Builder()
  .url("https://cert-apib2bv2.correos.cl:8000/normalizacion")
  .method("POST", body)
  .addHeader("Authorization", authorization)
  .addHeader("Content-Type", "application/json")
  .build();
Response response = client.newCall(request).execute();
//Si desea utilizar usuario y contraseña
$usuario = '[USUARIO]';
$contrasena = '[CONTRASEÑA]';
$authorization = 'basic' . base64_encode($usuario . ':' . $contrasena);

//Si desea utilizar token de acceso
$token = '[TOKEN DE ACCESO]';
$authorization = 'token' . token;

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://cert-apib2bv2.correos.cl:8000/normalizacion',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS =>'{
    "direccion": "exposicion 221",
    "comuna": "estacion central"
}',
  CURLOPT_HTTPHEADER => array(
    'Authorization: ' . $authorization,
    'Content-Type: application/json'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;