API Cita Previa

El objetivo de este documento es, detallar las operaciones y métodos que se encuentran disponibles en el API de cita previa.

Entorno de desarrollo y de producción:

  • Desarrollo: BASE_URL = https://apex-test.zaragoza.es
  • Producción: BASE_URL = http(s)://www.zaragoza.es

Lista de Agendas Disponibles

Descripción de campos

tam_hueco
Minutos que se estima puede durar la atención de cada cita.
max_citas
Máximo número de citas simultáneas permitidas.
id_estructura
Estructura que realiza la atención, más información sobre la estructura en:
BASE_URL/api/recurso/urbanismo-infraestructuras/equipamiento/recurso/[id_estructura].[json,xml]

JSON

GET: BASE_URL/api/recurso/cita-previa.json
{
    "totalCount": 33,
    "start": 0,
    "rows": 33,
    "result": [
        {
            "id": 8,
            "title": "Junta Vecinal Venta del Olivar",
            "uri": "BASE_URL/api/recurso/urbanismo-infraestructuras/equipamiento/recurso/8",
            "agendas": [
                {
                    "id": 922,
                    "title": "Cita Previa Junta Venta del Olivar",
                    "description": "<div class=\"info\">Atención al ciudadano mediante \"Cita Previa\" en la <strong>Junta Vecinal Venta del Olivar</strong>, para los trámites relativos a:<ul>\n</ul> </div><p>",
                    "tam_hueco": 15,
                    "max_citas": 1,
                    "id_estructura": 8
                }
            ]
        },
        {
            "id": 9,
            "title": "Junta Vecinal Monzalbarba",
            "uri": "BASE_URL/api/recurso/urbanismo-infraestructuras/equipamiento/recurso/9",
            "agendas": [
                {
                    "id": 916,
                    "title": "Cita Previa Junta Monzalbarba",
                    "description": "<div class=\"info\">Atención al ciudadano mediante \"Cita Previa\" en la <strong>Junta Vecinal Monzalbarba</strong>, para los trámites relativos a:<ul><li><strong>Padrón Municipal</strong> de Habitantes (altas y cambios de domicilio), es necesario presentar <strong>originales y fotocopias</strong> de la documentacion (DNI  o pasaporte o  NIE)  de todos los que participan y de los <strong>recibos o contrato sellado por la DGA, o  escrituras de  la nueva dirección , o en su defecto autorización escrita del dueño</strong>  del piso o de la persona que este empadronada en dicho domicilio</li><li><strong>Tarjeta Ciudadana</strong>: Solicitudes. Se necesita presentar el DNI</li><li>No se hacen fotocopias</li></ul> </div><p>",
                    "tam_hueco": 15,
                    "max_citas": 1,
                    "id_estructura": 9
                }
            ]
        },
        {
            "id": 10,
            "title": "Junta Vecinal Montañana",
            "uri": "BASE_URL/api/recurso/urbanismo-infraestructuras/equipamiento/recurso/10",
            "agendas": [
                {
                    "id": 915,
                    "title": "Cita Previa Junta Montañana",
                    "description": "<div class=\"info\">Atención al ciudadano mediante \"Cita Previa\" en la <strong>Junta Vecinal Montañana</strong>, para los trámites relativos a:<ul>\n</ul> </div><p>",
                    "tam_hueco": 15,
                    "max_citas": 1,
                    "id_estructura": 10
                }
            ]
        },
        {
            "id": 9145,
            "title": "Oficina de Relaciones con los Ciudadanos (ORC, Edificio Seminario)",
            "uri": "BASE_URL/api/recurso/urbanismo-infraestructuras/equipamiento/recurso/9145",
            "agendas": [
                {
                    "id": 862,
                    "title": "Consultas Edificio Seminario",
                    "description": "<div class=\"info\"><p>La Oficina de Relaciones con los Ciudadanos ofrece los siguientes servicios:<ul><li>Padrón: altas, cambios y renovaciones</li><li>Padrón: Volantes</li></ul><div>Para obtener más información puede contactar con el servicio de atención telefónica municipal 010 (para llamadas desde fuera de Zaragoza: 976 721234).<br/> Algunos operadores aplican tarifas de teléfonos especiales al llamar al 010. También puede contactar con el 010 en el 976 721234.</div></div><p>",
                    "tam_hueco": 15,
                    "max_citas": 5,
                    "id_estructura": 9145
                },
                {
                    "id": 861,
                    "title": "Volantes Edificio Seminario",
                    "description": "<div class=\"info\"><p>La Oficina de Relaciones con los Ciudadanos ofrece los siguientes servicios:<ul><li>Padrón: altas, cambios y renovaciones</li><li>Padrón: Volantes</li><li>Altas de agua por contador</li></ul><div>Para obtener más información puede contactar con el servicio de atención telefónica municipal 010 (para llamadas desde fuera de Zaragoza: 976721234).<br/>Algunos operadores aplican tarifas de teléfonos especiales al llamar al 010. También puede contactar con el 010 en el 976721234.</div></div><p>",
                    "tam_hueco": 15,
                    "max_citas": 4,
                    "id_estructura": 9145
                }
            ]
        }
        ...
    ]
}

XML

GET: BASE_URL/api/recurso/cita-previa.xml
<resultado>
   <totalCount>33</totalCount>
   <start>0</start>
   <rows>33</rows>
   <result>
      <cita-previa>
         <id>8</id>
         <title>Junta Vecinal Venta del Olivar</title>
         <uri>BASE_URL/api/recurso/urbanismo-infraestructuras/equipamiento/recurso/8</uri>
         <agendas>
            <agenda>
               <id>922</id>
               <title>Cita Previa Junta Venta del Olivar</title>
               <description><![CDATA[<div class="info">Atención al ciudadano mediante "Cita Previa" en la <strong>Junta Vecinal Venta del Olivar</strong>, para los trámites relativos a:<ul>
</ul> </div><p>]]></description>
               <tam_hueco>15</tam_hueco>
               <max_citas>1</max_citas>
               <id_estructura>8</id_estructura>
            </agenda>
         </agendas>
      </cita-previa>
      <cita-previa>
         <id>9</id>
         <title>Junta Vecinal Monzalbarba</title>
         <uri>BASE_URL/api/recurso/urbanismo-infraestructuras/equipamiento/recurso/9</uri>
         <agendas>
            <agenda>
               <id>916</id>
               <title>Cita Previa Junta Monzalbarba</title>
               <description><![CDATA[<div class="info">Atención al ciudadano mediante "Cita Previa" en la <strong>Junta Vecinal Monzalbarba</strong>, para los trámites relativos a:<ul><li><strong>Padrón Municipal</strong> de Habitantes (altas y cambios de domicilio), es necesario presentar <strong>originales y fotocopias</strong> de la documentacion (DNI  o pasaporte o  NIE)  de todos los que participan y de los <strong>recibos o contrato sellado por la DGA, o  escrituras de  la nueva dirección , o en su defecto autorización escrita del dueño</strong>  del piso o de la persona que este empadronada en dicho domicilio</li><li><strong>Tarjeta Ciudadana</strong>: Solicitudes. Se necesita presentar el DNI</li><li>No se hacen fotocopias</li></ul> </div><p>]]></description>
               <tam_hueco>15</tam_hueco>
               <max_citas>1</max_citas>
               <id_estructura>9</id_estructura>
            </agenda>
         </agendas>
      </cita-previa>
      <cita-previa>
         <id>10</id>
         <title>Junta Vecinal Montañana</title>
         <uri>BASE_URL/api/recurso/urbanismo-infraestructuras/equipamiento/recurso/10</uri>
         <agendas>
            <agenda>
               <id_agenda>915</id_agenda>
               <title>Cita Previa Junta Montañana</title>
               <description><![CDATA[<div class="info">Atención al ciudadano mediante "Cita Previa" en la <strong>Junta Vecinal Montañana</strong>, para los trámites relativos a:<ul>
</ul> </div><p>]]></description>
               <tam_hueco>15</tam_hueco>
               <max_citas>1</max_citas>
               <id_estructura>10</id_estructura>
            </agenda>
         </agendas>
      </cita-previa>
      <cita-previa>
         <id>9145</id>
         <title>Oficina de Relaciones con los Ciudadanos (ORC, Edificio Seminario)</title>
         <uri>BASE_URL/api/recurso/urbanismo-infraestructuras/equipamiento/recurso/9145</uri>
         <agendas>
            <agenda>
               <id>862</id>
               <title>Consultas Edificio Seminario</title>
               <description><![CDATA[<div class="info"><p>La Oficina de Relaciones con los Ciudadanos ofrece los siguientes servicios:<ul><li>Padrón: altas, cambios y renovaciones</li><li>Padrón: Volantes</li></ul><div>Para obtener más información puede contactar con el servicio de atención telefónica municipal 010 (para llamadas desde fuera de Zaragoza: 976 721234).<br/> Algunos operadores aplican tarifas de teléfonos especiales al llamar al 010. También puede contactar con el 010 en el 976 721234.</div></div><p>]]></description>
               <tam_hueco>15</tam_hueco>
               <max_citas>5</max_citas>
               <id_estructura>9145</id_estructura>
            </agenda>
            <agenda>
               <id>861</id>
               <title>Volantes Edificio Seminario</title>
               <description><![CDATA[<div class="info"><p>La Oficina de Relaciones con los Ciudadanos ofrece los siguientes servicios:<ul><li>Padrón: altas, cambios y renovaciones</li><li>Padrón: Volantes</li><li>Altas de agua por contador</li></ul><div>Para obtener más información puede contactar con el servicio de atención telefónica municipal 010 (para llamadas desde fuera de Zaragoza: 976721234).<br/>Algunos operadores aplican tarifas de teléfonos especiales al llamar al 010. También puede contactar con el 010 en el 976721234.</div></div><p>]]></description>
               <tam_hueco>15</tam_hueco>
               <max_citas>4</max_citas>
               <id_estructura>9145</id_estructura>
            </agenda>
         </agendas>
      </cita-previa>
      ....
   </result>
</resultado>

Detalle de una agenda

Descripción de campos

tam_hueco
Minutos que se estima puede durar la atención de cada cita.
max_citas
Máximo número de citas simultáneas permitidas.
id_estructura
Estructura que realiza la atención, más información sobre la estructura en:
BASE_URL/api/recurso/urbanismo-infraestructuras/equipamiento/recurso/[id_estructura].[json,xml]

JSON

GET: BASE_URL/api/recurso/cita-previa/agendas/861.json
{
	"id": 861,
	"title": "Volantes Edificio Seminario",
	"description": "<div class=\"info\"><p>La Oficina de Relaciones con los Ciudadanos ofrece los siguientes servicios:<ul><li>Padr¿n: altas, cambios y renovaciones</li><li>Padr¿n: Volantes</li><li>Altas de agua por contador</li></ul><div>Para obtener m¿s informaci¿n puede contactar con el servicio de atenci¿n telef¿nica municipal 010 (para llamadas desde fuera de Zaragoza: 976721234).<br/>Algunos operadores aplican tarifas de tel¿fonos especiales al llamar al 010. Tambi¿n puede contactar con el 010 en el 976721234.</div></div><p>",
	"tam_hueco": 15,
	"max_citas": 4,
	"id_estructura": 9145,
	"horarios": [
		{
			"id": 7862,
			"title": "del 25 febrero al 1 de marzo",
			"start_date": "2014-02-25",
			"end_date": "2014-12-07"
		}
	]
}

XML

GET: BASE_URL/api/recurso/cita-previa/agendas/861.xml
<agenda>
 <id>861</id>
 <title>Volantes Edificio Seminario</title>
 <description><![CDATA[<div class="info"><p>La Oficina de Relaciones con los Ciudadanos ofrece los siguientes servicios:<ul><li>Padr¿n: altas, cambios y renovaciones</li><li>Padr¿n: Volantes</li><li>Altas de agua por contador</li></ul><div>Para obtener m¿s informaci¿n puede contactar con el servicio de atenci¿n telef¿nica municipal 010 (para llamadas desde fuera de Zaragoza: 976721234).<br/>Algunos operadores aplican tarifas de tel¿fonos especiales al llamar al 010. Tambi¿n puede contactar con el 010 en el 976721234.</div></div><p>]]></description>
 <tam_hueco>15</tam_hueco>
 <max_citas>4</max_citas>
 <id_estructura>9145</id_estructura>
 <horarios>
	<horario>
	   <id>7862</id>
	   <title>del 25 febrero al 1 de marzo</title>
	   <start_date>2014-02-25</start_date>
	   <end_date>2014-12-07</end_date>
	</horario>
 </horarios>
</agenda>

Estado de citación por día

GET: BASE_URL/api/recurso/cita-previa/agendas/[id_agenda]/[fecha].[xml,json]

Donde:

id_agenda
Identificador de la agenda.
fecha
Formato: dd-mm-yyyy.

Por ejemplo, para obtener el estado del 24 de junio de 2014 para la agenda 861:

JSON

GET: BASE_URL/api/recurso/cita-previa/agendas/861/24-06-2014.json
{
    "totalCount": 24,
    "start": 0,
    "rows": 24,
    "result": [
        {
            "hora": "08:30",
            "max_citas": 1,
            "libres": 1
        },
        {
            "hora": "08:45",
            "max_citas": 1,
            "libres": 1
        },
        {
            "hora": "09:00",
            "max_citas": 1,
            "libres": 1
        },
        {
            "hora": "09:15",
            "max_citas": 1,
            "libres": 1
        },
        {
            "hora": "09:30",
            "max_citas": 1,
            "libres": 1
        },
        {
            "hora": "09:45",
            "max_citas": 1,
            "libres": 1
        },
        {
            "hora": "10:00",
            "max_citas": 1,
            "libres": 1
        },
        {
            "hora": "10:15",
            "max_citas": 1,
            "libres": 1
        },
        {
            "hora": "10:30",
            "max_citas": 1,
            "libres": 1
        },
        {
            "hora": "10:45",
            "max_citas": 1,
            "libres": 1
        },
        {
            "hora": "11:00",
            "max_citas": 1,
            "libres": 1
        },
        {
            "hora": "11:15",
            "max_citas": 1,
            "libres": 1
        },
        {
            "hora": "11:30",
            "max_citas": 1,
            "libres": 1
        },
        {
            "hora": "11:45",
            "max_citas": 1,
            "libres": 1
        },
        {
            "hora": "12:00",
            "max_citas": 1,
            "libres": 1
        },
        {
            "hora": "12:15",
            "max_citas": 1,
            "libres": 1
        },
        {
            "hora": "12:30",
            "max_citas": 1,
            "libres": 1
        },
        {
            "hora": "12:45",
            "max_citas": 1,
            "libres": 1
        },
        {
            "hora": "13:00",
            "max_citas": 1,
            "libres": 1
        },
        {
            "hora": "13:15",
            "max_citas": 1,
            "libres": 1
        },
        {
            "hora": "13:30",
            "max_citas": 1,
            "libres": 1
        },
        {
            "hora": "13:45",
            "max_citas": 1,
            "libres": 1
        },
        {
            "hora": "14:00",
            "max_citas": 1,
            "libres": 1
        },
        {
            "hora": "14:15",
            "max_citas": 1,
            "libres": 1
        }
    ]
}

XML

GET: BASE_URL/api/recurso/cita-previa/agendas/861/24-06-2014.xml
<resultado>
   <totalCount>24</totalCount>
   <start>0</start>
   <rows>24</rows>
   <result>
      <turno>
         <hora>08:30</hora>
         <max_citas>1</max_citas>
         <libres>1</libres>
      </turno>
      <turno>
         <hora>08:45</hora>
         <max_citas>1</max_citas>
         <libres>1</libres>
      </turno>
      <turno>
         <hora>09:00</hora>
         <max_citas>1</max_citas>
         <libres>1</libres>
      </turno>
      <turno>
         <hora>09:15</hora>
         <max_citas>1</max_citas>
         <libres>1</libres>
      </turno>
      <turno>
         <hora>09:30</hora>
         <max_citas>1</max_citas>
         <libres>1</libres>
      </turno>
      <turno>
         <hora>09:45</hora>
         <max_citas>1</max_citas>
         <libres>1</libres>
      </turno>
      <turno>
         <hora>10:00</hora>
         <max_citas>1</max_citas>
         <libres>1</libres>
      </turno>
      <turno>
         <hora>10:15</hora>
         <max_citas>1</max_citas>
         <libres>1</libres>
      </turno>
      <turno>
         <hora>10:30</hora>
         <max_citas>1</max_citas>
         <libres>1</libres>
      </turno>
      <turno>
         <hora>10:45</hora>
         <max_citas>1</max_citas>
         <libres>1</libres>
      </turno>
      <turno>
         <hora>11:00</hora>
         <max_citas>1</max_citas>
         <libres>1</libres>
      </turno>
      <turno>
         <hora>11:15</hora>
         <max_citas>1</max_citas>
         <libres>1</libres>
      </turno>
      <turno>
         <hora>11:30</hora>
         <max_citas>1</max_citas>
         <libres>1</libres>
      </turno>
      <turno>
         <hora>11:45</hora>
         <max_citas>1</max_citas>
         <libres>1</libres>
      </turno>
      <turno>
         <hora>12:00</hora>
         <max_citas>1</max_citas>
         <libres>1</libres>
      </turno>
      <turno>
         <hora>12:15</hora>
         <max_citas>1</max_citas>
         <libres>1</libres>
      </turno>
      <turno>
         <hora>12:30</hora>
         <max_citas>1</max_citas>
         <libres>1</libres>
      </turno>
      <turno>
         <hora>12:45</hora>
         <max_citas>1</max_citas>
         <libres>1</libres>
      </turno>
      <turno>
         <hora>13:00</hora>
         <max_citas>1</max_citas>
         <libres>1</libres>
      </turno>
      <turno>
         <hora>13:15</hora>
         <max_citas>1</max_citas>
         <libres>1</libres>
      </turno>
      <turno>
         <hora>13:30</hora>
         <max_citas>1</max_citas>
         <libres>1</libres>
      </turno>
      <turno>
         <hora>13:45</hora>
         <max_citas>1</max_citas>
         <libres>1</libres>
      </turno>
      <turno>
         <hora>14:00</hora>
         <max_citas>1</max_citas>
         <libres>1</libres>
      </turno>
      <turno>
         <hora>14:15</hora>
         <max_citas>1</max_citas>
         <libres>1</libres>
      </turno>
   </result>
</resultado>

Alta de cita previa

POST: BASE_URL/api/recurso/cita-previa/agendas/[id_agenda]/[fecha(dd-mm-yyyy)]/
HEADERS:
clientID = <Identificador_de_la_aplicación>
Accept = application/json 
HmacSHA1 = Clave HMAC generado de la siguiente forma Hmac(clientId + "POST" + uri + body, clavePrivada)
BODY: 
{
    "hora": "09:00", // obligatorio
    "nombre": "nombre",  // obligatorio
    "apellidos": "apellidos",  // obligatorio
    "nif": "11111111Y",  // obligatorio
    "telefono": "976854574",
    "email": "bweb@zaragoza.es",
    "expediente": "expediente",
    "motivo": "motivo",  // obligatorio
    "observacionesCita": "observaciones",
    "lopd": false, // Autoriza para recibir comunicaciones por correo electrónico.
    "movil": "696587451",
    "telefono2": "976222222"
}
Respuesta:
{
  "id" : 217707,
  "id_agenda" : 861,
  "fecha" : "2014-06-24T00:00:00Z",
  "hora" : "09:00",
  "nombre" : "nombre",
  "apellidos" : "apellidos",
  "nif" : "11111111Y",
  "telefono" : "976854574",
  "email" : "bweb@zaragoza.es",
  "expediente" : "expediente",
  "motivo" : "motivo",
  "observacionesCita" : "observaciones",
  "lopd" : false,
  "movil" : "696587451",
  "telefono2" : "976222222",
  "servicio" : "Direcci¿n de Organizaci¿n Municipal, Eficiencia Administrativa y Relaciones con los Ciudadanos",
  "tramite" : "Oficina de Relaciones con los Ciudadanos (Edificio Seminario)",
  "asunto" : "Padrón Municipal: Solicitud de Volante de Empadronamiento",
  "centro" : "Seminario (Ayuntamiento de Zaragoza)",
  "calle" : "V¿a Hispanidad, 20",
  "localizador" : "Vo09:00.1"
}
Errores: Si se produce un error al dar de alta la cita se obtendrá la siguiente respuesta
{
  "status" : 400,
  "code" : [codigo_error],
  "mensaje" : "[mensaje de error]"
}

El atributo code puede tener los siguientes valores:

20002
No es posible añadir nuevas citas para la fecha y hora seleccionadas puesto que se supera el número máximo de citas de la agenda
20003
La fecha seleccionada para la cita se corresponde con un día festivo
20004
La hora introducida está fuera del horario
20005
La fecha y la hora seleccionadas para la cita no pertenecen a ningún turno establecido para la agenda
20006
La hora seleccionada para la cita no se corresponde con el período o duración de las citas establecido para la agenda
20007
Ya existe una cita dada de alta para ese DNI

Consulta de citas

JSON

GET: BASE_URL/api/recurso/cita-previa/mis-citas?q=nif==11111111Y;nombre==nombre;apellidos==apellidos

HEADERS:
clientID = <Identificador_de_la_aplicación>
HmacSHA1 = Clave HMAC generado de la siguiente forma Hmac(clientId + "GET" + uri + body, clavePrivada)
Accept = application/json
Respuesta:
{
    "totalCount": 1,
    "start": 0,
    "rows": 1,
    "result": [
        {
            "id": 217707,
            "estado": 1, // 1 = CITADO; 2 = EN_ESPERA; 3 = ATENDIENDO; 5 = FINALIZADO
            "id_agenda": 861,
            "fecha": "2014-01-24T00:06:00Z",
            "hora": "09:00",
            "nombre": "APELLIDOS,NOMBRE",
            "nif": "18049394Y",
            "telefono": "976854574",
            "email": "bweb@zaragoza.es",
            "expediente": "expediente",
            "motivo": "motivo",
            "localizador": "Vo09:00.1"
        }
    ]
}

XML

GET: BASE_URL/api/recurso/cita-previa/mis-citas?q=nif==11111111Y;nombre==nombre;apellidos==apellidos
HEADERS:
clientID = <Identificador_de_la_aplicación>
HmacSHA1 = Clave HMAC generado de la siguiente forma Hmac(clientId + "GET" + uri + body, clavePrivada)
Accept = application/xml
Respuesta:
<resultado>
   <totalCount>1</totalCount>
   <start>0</start>
   <rows>1</rows>
   <result>
      <cita>
         <id>217707</id>
         <estado>1</estado> // 1 = CITADO; 2 = EN_ESPERA; 3 = ATENDIENDO; 5 = FINALIZADO 
         <id_agenda>861</id_agenda>
         <fecha>2014-01-24T00:06:00Z</fecha>
         <hora>09:00</hora>
         <nombre>APELLIDOS,NOMBRE</nombre>
         <nif>18049394Y</nif>
         <telefono>976854574</telefono>
         <email>bweb@zaragoza.es</email>
         <expediente>expediente</expediente>
         <motivo>motivo</motivo>
         <localizador>Vo09:00.1</localizador>
      </cita>
   </result>
</resultado>

Cancelar una cita

DELETE BASE_URL/api/recurso/cita-previa/[identificador de cita]
HEADERS:
clientID = <Identificador de la aplicación>
HmacSHA1 = Clave HMAC generado de la siguiente forma Hmac(clientId + "DELETE" + uri + body, clavePrivada)
Accept = application/json
Respuesta:
{
  "status" : 200,
  "mensaje" : "Borrado realizado correctamente"
}