Z

zbe

Documentación zbe

El Servicio de publicación de Zonas de Bajas Emisiones está dedicado a la gestión de información relacionada con las ZBE por parte de los Ayuntamientos.

El objetivo de este servicio es recopilar alfanumérica y geométrica de las ZBE recibida desde los Ayuntamientos que las gestionan, y publicar dicha información en un formato estandarizado.

Tanto la funcionalidad de publicación como de suscripción requieren de certificados de acceso distintos que deben ser solicitados y suministrados por DGT 3.0. Estos certificados, de no haber sido solicitados ya, se deberán solicitar a soporte@cmobility30.es.

A continuación se muestran las URLs con las que se accede a cada funcionalidad:

Modo URL Descripción
Publicación https://pre.cmobility30.es/zbe Endpoint del entorno de integración de clientes para la publicación

A continuación se describen las funcionalidades.

Publicación

Este caso de uso dispone de una API REST para la publicación (envío) de los datos por parte de las empresas que así lo deseen. En los siguientes apartados se pueden encontrar los detalles de esta:

  • Los detalles generales para realizar una petición:

General Autenticación · (cmobility30.es)

Información relativa a los atributos de la ZBE

{
 "type": "Feature",
 "geometry": {
   "type": "Polygon",
   "coordinates": [
       [ [100.0, 0.0], [101.0, 0.0], [101.0, 1.0],
       [100.0, 1.0], [100.0, 0.0] ]
       ]
 },
 "properties": {
   "name": "Madrid",
   "city_ine": [28079,28002],
   "excluded": false
 }
}
Atributo Descripción
Type Tipo de geometría
name Nombre de la entidad que gestiona la ZBE. Puede ser un Ayuntamiento o entidad, como el Área Metropolitana de XXXXXX
city_ine Array con los códigos INE de los municipios que gestiona
excluded Indica si la geometría está exlcluida de la ZBE, al estar dentro de ella pero permitirse el tráfico

Información relativa a la información sobre la restricción

{
   "name": "Madrid",
   "city_ine": [28079,28002],
   "affected_labels": [1,4,2],
   "access_conditions": "Condiciones ejemplo",
   "information_url": "https://www.ayto.es/infoxxxxx",
   "timetable":[[“L”,"08:00:00", "16:00:00"], [“F”,"18:00:00", "20:00:00"]],
   "start_time": "2021-10-17T20:58:38Z"
}
Atributo Descripción
name Nombre de la entidad que gestiona la ZBE. Puede ser un Ayuntamiento o entidad, como el Área Metropolitana de XXXXXX
city_ine Array con los códigos INE de los municipios que gestiona
affected_labels Tipo de vehiculos etiquetas medioambientales afectadas
access_conditions Condiciones de acceso a la ZBE
information_url URL donde se describe información de la ZBE
timetable Horario de aplicación de la ZBE. Este puede ser diferente para Laborables “L”, o Festivos “F”
start_time Fecha prevista de entrada en vigor

Errores

Como se ha indicado anteriormente, todas las respuestas HTTP que no sean 200 – OK, se pueden considerar inválidas. El formato de la respuesta de error es como el siguiente ejemplo:

{
    "status": 401,
    "code": 1,
    "message": "User not found or valid"
}

Estos errores tendrán tres categorías principales:

Error de Autentificación

  • HTTP Status: 401 - Unauthorized

    Code Message
    1 User not found or valid

Error de Cliente

  • HTTP Status: 400 - Bad Request

    Code Message
    0 Authenticate
    1 Incorrect token received
    2 Expired token received
    3 There is an error with the token provided. Please request a new one
    4 No token received
    5 Required request body is missing
    6 Missing request header
    7 Access denied role

En el caso de obtener un error 3 - Missing required property la respuesta obtenida tendrá un valor en el message que nos indicará los campos que faltan por enviar:

{
    "status": 400,
    "code": 0,
    "message": "Authenticate"
}

Error de Servidor

  • HTTP Status: 500 - Internal Server Error

    Code Message
    13 Internal error

Métodos

Los métodos de acceso al API REST de la aplicación son los siguienes:

Creación o actualización de los atributos de una ZBE

Tanto para la creación como para la actualización de los atributos de una ZBE. Si la ZBE es nueva, se creará, y su ya existe, se actualizarán sus valores.

Información sobre el endpoint:

  • Method: POST

  • URL: {baseUrl}/v1/zbeattr

  • Body:

{
 "type": "Feature",
 "geometry": {
   "type": "Polygon",
   "coordinates": [
       [ [100.0, 0.0], [101.0, 0.0], [101.0, 1.0],
       [100.0, 1.0], [100.0, 0.0] ]
       ]
 },
 "properties": {
   "name": "Madrid",
   "city_ine": [28079,28002],
   "excluded": false
 }
}
Atributo Descripción
name Nombre de la entidad que gestiona la ZBE. Puede ser un Ayuntamiento o entidad, como el Área Metropolitana de XXXXXX
city_ine Array con los códigos INE de los municipios que gestiona
affected_labels Tipo de vehiculos etiquetas medioambientales afectadas
access_conditions Condiciones de acceso a la ZBE
information_url URL donde se describe información de la ZBE
timetable Horario de aplicación de la ZBE. Este puede ser diferente para Laborables “L”, o Festivos “F”
start_time Fecha prevista de entrada en vigor

Borrado de los atributos de una ZBE

Borra los atributos de una ZBE. Solo el creador puede eliminarlos.

Información sobre el endpoint:

  • Method: DEL

  • URL: {baseUrl}/v1/zbeattr

  • Body:

{
 "type": "Feature",
 "geometry": {
   "type": "Polygon",
   "coordinates": [
       [ [100.0, 0.0], [101.0, 0.0], [101.0, 1.0],
       [100.0, 1.0], [100.0, 0.0] ]
       ]
 },
 "properties": {
   "name": "Madrid",
   "city_ine": [28079,28002],
   "excluded": false
 }
}

Listar las ZBE disponibles

Lista las ZBEs disponibles en el sistema.

Información sobre el endpoint:

  • Method: GET

  • URL: {baseUrl}/v1/listzbe

  • Body:

{
 "ts": "2022-06-10T13:15:05Z",
 "zbes": [
        {
        "name": "Madrid",
        "city_ine": [28079,28002],
        "excluded": false
        },
        {
        "name": "Barcelona",
        "city_ine": [08001,08002],
        "excluded": false
        }
 ]
}
Atributo Descripción
ts Instante UTC de la generación del listado
zbes Array con los atributos de las ZBE disponibles

Obtener atributos de una ZBE

Devuelve los atributos de la ZBE solicitada.

Información sobre el endpoint:

  • Method: GET

  • URL: {baseUrl}/v1/zbeattr/{ine_cod}

  • Body:

Creación o actualización de información de restricción de una ZBE

Tanto para la creación como para la actualización de la información de restrición de una ZBE. Si con nuevos, se creará, y su ya existe, se actualizarán sus valores.

Información sobre el endpoint:

  • Method: POST

  • URL: {baseUrl}/v1/zberestric

  • Body:

{
   "name": "Madrid",
   "city_ine": [28079,28002],
   "affected_labels": [1,4,2],
   "access_conditions": "Condiciones ejemplo",
   "information_url": "https://www.ayto.es/infoxxxxx",
   "timetable":[[“L”,"08:00:00", "16:00:00"], [“F”,"18:00:00", "20:00:00"]],
   "start_time": "2021-10-17T20:58:38Z"
}
Atributo Descripción
name Nombre de la entidad que gestiona la ZBE. Puede ser un Ayuntamiento o entidad, como el Área Metropolitana de XXXXXX
city_ine Array con los códigos INE de los municipios que gestiona
affected_labels Tipo de vehiculos etiquetas medioambientales afectadas
access_conditions Condiciones de acceso a la ZBE
information_url URL donde se describe información de la ZBE
timetable Horario de aplicación de la ZBE. Este puede ser diferente para Laborables “L”, o Festivos “F”
start_time Fecha prevista de entrada en vigor

Obtención de información de restricción de una ZBE

Devuelve la última información de restricción de una ZBE.

Información sobre el endpoint:

  • Method: GET

  • URL: {baseUrl}/v1/getzberestric/{ine_cod}

  • Body:

Se devuelven todas las restricciones para esa ZBE

  • Body:
{
    "name": "Madrid",
    "city_ine": [28079,28002],
    "restrictions": [
                {
                "affected_labels": [1,4,2],
                "access_conditions": "Condiciones ejemplo",
                "information_url": "https://www.ayto.es/infoxxxxx",
                "timetable":[[“L”,"08:00:00", "16:00:00"], [“F”,"18:00:00", "20:00:00"]],
                "start_time": "2021-10-17T20:58:38Z"
                },
                {"affected_labels": [3,5],
                "access_conditions": "Condiciones ejemplo",
                "information_url": "https://www.ayto.es/infoxxxxx",
                "timetable":[[“L”,"08:00:00", "23:59:59"], [“F”,"18:00:00", "20:00:00"]],
                "start_time": "2021-10-17T20:58:38Z"
                }

            ]
}

Tablas auxiliares

Para la decodificación de la información de los diferentes mensajes es necesario disponer de unas tablas auxiliares con la misma.

Información sobre etiquetas

Devuelve la última información de las etiquetas que podrán ser afectadas.

Información sobre el endpoint:

  • Method: GET

  • URL: {baseUrl}/v1/taux_labels

  • Body:

Se devuelven todas las etiquetas con su identificador asociado

  • Body:
[
    {
        "id": 1,
        "descrip": "0"
    },
    {
        "id": 2,
        "descrip": "ECO"
    },
    {
        "id": 3,
        "descrip": "C"
    },
    {
        "id": 4,
        "descrip": "B"
    }
]

Correspondencia de los códigos INE con los Municipios

Devuelve la última el código INE asociado a cada Municipio.

Información sobre el endpoint:

  • Method: GET

  • URL: {baseUrl}/v1/taux_ine

  • Body:

Se devuelven todas las etiquetas con su identificador asociado.

  • Body:
[
    {
        "id": 32003,
        "descrip": "A Arnoia"
    },
    {
        "id": 15007,
        "descrip": "A Baña"
    }

]