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/coverageImportante:
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:
| Nombre | Tipo de dato | Descripción | Tipo |
|---|---|---|---|
| service_type | String | Identificador del servicio por el cual se consultara la cobertura. | Mandatorio |
| direction | String | Indica el sentido por el cual se consultara la cobertura:
| 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.
| Nombre | Tipo de dato | Descripción | Tipo |
|---|---|---|---|
| service_type | String | Identificador del servicio por el cual se consultara la cobertura. | Mandatorio |
| direction | String | Indica el sentido al cual hace referencia la cobertura | Mandatorio |
| coverage | Array | Array 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 Numeric | Mandatorio |
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.
| Nombre | Tipo de dato | Descripción | Tipo |
|---|---|---|---|
| service_type | String | Identificador del servicio por el cual se consultara la cobertura. | Mandatorio |
| direction | String | Indica el sentido al cual hace referencia la cobertura | Mandatorio |
| country_id | String | Código de país de acuerdo a la norma ISO 3166 Alpha-2. | Mandatorio |
| country_name | String | Nombre 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 |
| coverage | Array | Contiene informacion relativa a la cobertura por ciudades. | Mandatorio |
| coverage.city_id | String | Id de la ciudad provisto por Mercado Libre. | Mandatorio |
| coverage.city_name | String | Nombre de la ciudad. | Mandatorio |
| coverage.state.id | String | Identificador único que le da Mercado Libre al estado en Formato ISO 3166. | Mandatorio |
| coverage.state.name | String | Nombre del estado. | Mandatorio |
Status Codes
| Status | Código HTTP | Descripción |
|---|---|---|
| SUCCESS | 200 | Cuando la solicitud fue procesada satisfactoriamente |
| FAILED | 400 | Cuando 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. |
| ERROR | 500 | Cualquier 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"
}