Cobertura

Contenidos

Ten en cuenta que el Web Service del correo debe proporcionar un endpoint HTTP REST contra el cuál Mercado Libre pueda consultar el estado actual de la cobertura que el correo tiene disponibles.

POST service_url/coverage
Importante:
Para seguridad en cobertura se utilizará OAuth 2.0

Formato Request

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

NombreTipo de datoDescripciónTipo
service_typeStringIdentificador del servicio por el cual se consultara la cobertura.Mandatorio
directionStringIndica el sentido por el cual se consultara la cobertura:
  • origin
  • destination
Mandatorio

Formato Response

Zip_code

Dentro del body, el sistema devolverá el listado de todos los rangos de zip_code que tiene como cobertura para un servicio en determinada dirección:

Importante:
Los paises que deben soportar el servicio de cobertura por Zip_code son: Argentina, Brasil, Mexico.
NombreTipo de datoDescripciónTipo
service_typeStringIdentificador del servicio por el cual se consultara la cobertura.Mandatorio
directionStringIndica el sentido al cual hace referencia la coberturaMandatorio
coverageArrayArray que contiene n arrays con los rangos de cobertura de zip_code, siendo el primero el rango "desde" y el segundo el rangos "hasta" correspondiente a cada array, ambos del tipo NumericMandatorio

Cities

Dentro del body, el sistema devolverá el listado de todas las ciudades con sus respectivos datos:

Importante:
Los paises que deben soportar el servicio de cobertura por Ciudad son: Chile, Colombia, Ecuador, Perú, Uruguay.
NombreTipo de datoDescripciónTipo
service_typeStringIdentificador del servicio por el cual se consultara la cobertura.Mandatorio
directionStringIndica el sentido al cual hace referencia la coberturaMandatorio
country_idStringCódigo de país de acuerdo a la norma ISO 3166 Alpha-2.Mandatorio
country_nameStringNombre del país en el que opera. Valores Posibles: Argentina, Chile, Uruguay, Brasil, Peru, Colombia o Mexico. Es sensible a mayúsculas y minúsculas.Mandatorio
coverageArrayContiene informacion relativa a la cobertura por ciudades.Mandatorio
coverage.city_idStringId de la ciudad provisto por Mercado Libre.Mandatorio
coverage.city_nameStringNombre de la ciudad.Mandatorio
coverage.state.idStringIdentificador único que le da Mercado Libre al estado en Formato ISO 3166.Mandatorio
coverage.state.nameStringNombre del estado.Mandatorio

Status Codes

StatusCódigo HTTPDescripción
SUCCESS200Cuando la solicitud fue procesada satisfactoriamente
FAILED400Cuando la solicitud no pudo ser procesada por un error en el request. Se espera que se retorne “status”: “FAILED” junto con el “status_message” describiendo el motivo del error.
ERROR500Cualquier error del lado del servidor. En este caso, status y status_message son opcionales.

Ejemplos

Request:

POST https://hostName/coverage
{
  "service_type": "a_domicilio",
  "direction": "origin"
}

Response:

Success Zip_code (200 OK)

{
  "service_type": "heavy_and_bulky",
  "direction": "origin",
  "coverage": [
      [
        1000,
        1001
      ],
      [
        2000,
        2010
      ],
      [
        3000,
        3002
      ],
      [
        4000,
        4004
      ],
      [
        5000,
        5001
      ]
  ]
}

Success Cities (200 OK)

{
  "service_type": "a_sucursal",
  "direction": "destination",
  "country_id": "AR",
  "country_name": "Argentina",
  "coverage": [
    {
      "city_id": "QVItWE9uY2F0aXZv",
      "city_name": "Oncativo",
      "state_id": "AR-X",
      "state_name": "Córdoba"
    },{
      "city_id": "TUxBQ1LNTzc4N2Fm",
      "city_name": "Río Cuarto",
      "state_id": "AR-X",
      "state_name": "Córdoba"
    },{
      "city_id": "QVItWEplc8O6cyBNYXLDrWE",
      "city_name": "Jesús María",
      "state_id": "AR-X",
      "state_name": "Córdoba"
    },{
      "city_id": "QVItWExhIENhbGVyYQ",
      "city_name": "La Calera",
      "state_id": "AR-X",
      "state_name": "Córdoba"
    }
  ]
}

Failed (400 FAILED)

{
    "status": "FAILED",
    "status_message":"Missing service_type"
}

Error (500 ERROR)

{
    "status": "ERROR",
    "status_message":"Internal server error"
}