Changes between Version 6 and Version 7 of ApiRest
- Timestamp:
- Feb 2, 2017, 12:25:22 PM (7 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
ApiRest
v6 v7 41 41 Las llamadas a rutas GET pueden tener parámetros que irán incluidos dentro de la URL. 42 42 43 Las llamadas a rutas POST incluirán sus parámetros en formato "{{{parámetro=valor}}}".43 Las llamadas a rutas POST incluirán sus parámetros en formato JSON. 44 44 45 45 … … 49 49 50 50 - Código de estado HTTP. 51 - Datos en formato JSON, que incluirá al menos, los parámetros: 52 - {{{error}}} (booleano): indicando el éxito ({{{false}}}) o fallo ({{{true}}}) de la operación. 53 - Párametros de salida de la operación (si {{{"error":false}}}). 54 - {{{message}}} (cadena): descripción del error (si {{{"error":true}}}). 51 - Datos en formato JSON. 55 52 56 53 Los códigos de estado HTTP definidos son: … … 74 71 - {{{username}}} (cadena): nombre de usuario. 75 72 - {{{password}}} (cadena): contraseña. 76 - Devuelve: 73 - Devuelve: objeto. 77 74 - {{{userid}}} (entero): identificador del usuario. 78 75 - {{{apikey}}} (cadena): clave de acceso a la API REST. 79 76 77 - {{{/info}}} 78 - Muestra información general del sistema. 79 - Método: GET. 80 - Deveulve: objeto. 81 - {{{project}}} (cadena): nombre del proyecto (OpenGnsys). 82 - {{{version}}} (cadena): versión instalada. 83 - {{{release}}} (cadena): revisión instalada. 84 - {{{services}}} (array de cadenas): lista de servicios iniciados. 85 - {{{ous}}} (array de objetos): datos de los clientes ogLive instalados, compuesta por: 86 - {{{distribution}}} (cadena): distribución Linux del cliente ogLive. 87 - {{{kernel}}} (cadena): versión del Kernel Linux. 88 - {{{revision}}} (cadena): revisión del cliente ogLive. 89 - {{{directory}}} (cadena): subdirectorio de instalación. 90 - {{{iso}}} (cadena): fichero de imagen ISO con el cliente ogLive descargado. 91 92 - {{{/status}}} 93 - Muestra información del estado actual del servidor. 94 - Método: GET. 95 - Deveulve: objeto. 96 - {{{memInfo}}} (objeto): datos de memoria del servidor. 97 - {{{total}}} (cadena): cantidad total de memoria. 98 - {{{used}}} (cadena): cantidad de memoria usada por los procesos en ejecución. 99 - {{{cpu}}} (objeto): datos de procesadores del servidor. 100 - {{{model}}} (cadena): modelo del procesado. 101 - {{{usage}}} (cadena): porcentaje de uso. 102 80 103 - {{{/ous}}} 81 104 - Listar Unidades Organizativas accesibles por el usuario. 82 105 - Método: GET. 83 - Deveulve: 84 - {{{ous}}} (array): datos de las Unidades Organizativas definidas, compuesta por: 85 - {{{ouid}}} (entero): identificador de la UO. 86 - {{{ouname}}} (cadena): nombre de la UO. 106 - Deveulve: array de objetos. 107 - {{{id}}} (entero): identificador de la UO. 108 - {{{name}}} (cadena): nombre de la UO. 87 109 88 110 - {{{/ous/:id1}}} 89 111 - Obtener los datos de la UO con identificador ''id1''. 90 112 - Método: GET. 91 - Devuelve: 92 - {{{ ouid}}} (entero): identificador de la UO.93 - {{{ ouname}}} (cadena): nombre de la UO.113 - Devuelve: objeto 114 - {{{id}}} (entero): identificador de la UO. 115 - {{{name}}} (cadena): nombre de la UO. 94 116 - {{{description}}} (cadena): descripción de la UO. 117 118 - {{{/ous/:id1/groups}}} 119 '''(documentar)''' 95 120 96 121 - {{{/ous/:id1/labs}}} 97 122 - Listar las aulas definidas en la UO ''id1''. 98 123 - Método: GET. 99 - Deveulve: 100 - {{{ouid}}} (entero): identificador de la UO. 101 - {{{labs}}} (array): datos de las aulas definidas, compuesta por: 102 - {{{labid}}} (entero): identificador del aula. 103 - {{{labname}}} (cadena): nombre del aula. 104 - {{{inremotepc}}} (booleano): indica si los recursos del aula están disponibles para el Proyecto Remote PC. 124 - Deveulve: array de objetos. 125 - {{{id}}} (entero): identificador del aula. 126 - {{{name}}} (cadena): nombre del aula. 127 - {{{inremotepc}}} (booleano): indica si los recursos del aula están disponibles para el Proyecto Remote PC. 128 - {{{group}}} (objeto): grupo al que pertenece el aula. 129 - {{{id}}} (entero): identificador del grupo. 130 - {{{ou}}} (objeto): UO a la que pertenece el aula. 131 - {{{id}}} (entero): identificador de la UO. 105 132 106 133 - {{{/ous/:id1/labs/:id2}}} 107 134 - Obtener los datos del aula con identificador ''id2'' de la UO ''id1''. 108 135 - Método: GET. 109 - Devuelve: 110 - {{{labid}}} (entero): identificador del aula. 111 - {{{labname}}} (cadena): nombre del aula. 136 - Devuelve: objeto. 137 - {{{id}}} (entero): identificador del aula. 138 - {{{name}}} (cadena): nombre del aula. 139 - {{{location}}} (cadena): datos de localización del aula. 112 140 - {{{description}}} (cadena): descripción del aula. 113 141 - {{{inremotepc}}} (booleano): indica si los recursos del aula están disponibles para el Proyecto Remote PC. 114 - {{{ maxclients}}} (entero): nº máximo de clientesdel aula.142 - {{{capacity}}} (entero): aforo del aula. 115 143 - {{{defclients}}} (entero): nº de clientes definidos en el aula. 116 144 - {{{projector}}} (booleano): indica si el aula dispone o no de proyector. … … 127 155 - {{{p2pmode}}} (cadena): tipo de conexión P2P ({{{"peer"}}}, {{{"leecher"}}} o {{{"seeder"}}}). 128 156 - {{{p2ptime}}} (entero): tiempo de conexión tras finalizar la recepción P2P (en s.). 157 - {{{picture}}} (cadena): fichero con foto del aula. 129 158 130 159 - {{{/ous/:id1/labs/:id2/clients}}} 131 160 - Listar los clientes definidos en el aula ''id2'' de la UO ''id1''. 132 161 - Método: GET. 133 - Devuelve: 134 - {{{ouid}}} (entero): identificador de la UO. 135 - {{{labid}}} (entero): identificador del aula. 136 - {{{clients}}} (array): datos de los clientes definidas, compuesta por: 137 - {{{clientid}}} (entero): identificador del cliente. 138 - {{{clientname}}} (cadena): nombre del cliente. 162 - Devuelve: array de objetos. 163 - {{{id}}} (entero): identificador del cliente. 164 - {{{name}}} (cadena): nombre del cliente. 165 - {{{mac}}} (cadena): dirección MAC de la interfaz de red (sin caracteres ":"). 166 - {{{ip}}} (cadena): dirección IP del cliente. 167 - {{{ou}}} (objeto): OU a la que pertenecen. 168 - {{{id}}} (entero): identificador de la UO. 169 - {{{lab}}} (objeto): aula a la que pertenecen. 170 - {{{id}}} (entero): identificador de la UO. 139 171 140 172 - {{{/ous/:id1/labs/:id2/clients/:id3}}} 141 173 - Obtener los datos del cliente con identificador ''id3'' del aula ''id2'' de la UO ''id1''. 142 174 - Método: GET. 143 - Devuelve: 144 - {{{clientid}}} (entero): identificador del cliente. 145 - {{{clientname}}} (cadena): nombre del cliente. 175 - Devuelve: objeto. 176 - {{{id}}} (entero): identificador del cliente. 177 - {{{name}}} (cadena): nombre del cliente. 178 - {{{serialno}}} (cadena): nº de serie del cliente. 146 179 - {{{netiface}}} (cadena): interfaz de red por defecto. 147 180 - {{{netdriver}}} (cadena): driver (módulo a cargar) del interfaz de red (si {{{"generic"}}}, no se necesita cargar nada). … … 150 183 - {{{netmask}}} (cadena): máscara de red. 151 184 - {{{routerip}}} (cadena): dirección IP del router por defecto. 152 - {{{repoid}}} (cadena): identificador del repositorio de imágenes. 153 - Otros datos que pueden incluirse: 185 - {{{repo}}} (objeto): repositorio de imágenes. 186 - {{{id}}} (entero): identificador del repositorio. 187 - {{{validation}}} (booleano): indica si se necesita autenticación para entrar en el menú del cliente. 154 188 - {{{boottype}}} (cadena): plantilla asociada para el arranque del equipo. 155 - {{{hardprofid}}} (entero): identificador del perfil de hardware del cliente. 156 - {{{menuid}}} (entero): identificador del menú de inicio del cliente. 157 - {{{validation}}} (booleano): indica si se necesita autenticación para entrar en el menú del cliente. 189 - {{{picture}}} (cadena): fichero con foto del cliente. 158 190 159 191 - {{{/ous/:id1/labs/:id2/clients/:id3/hardware}}} 160 192 - Obtener los datos del perfil de hardware con la lista de dispoistivos del cliente con identificador ''id3'' del aula ''id2'' de la UO ''id1''. 161 193 - Método: GET. 162 - Devuelve: 163 - {{{ clientid}}} (entero): identificador del cliente.164 - {{{ clientname}}} (cadena): nombre del cliente.165 - {{{hardware}}} (array ): datos de los componentes hardware, compuesta por:194 - Devuelve: objeto. 195 - {{{id}}} (entero): identificador del cliente. 196 - {{{name}}} (cadena): nombre del cliente. 197 - {{{hardware}}} (array de objetos): datos de los componentes hardware, compuesta por: 166 198 - {{{type}}} (cadena): tipo de componente, los valores se corresponden con el campo {{{nemonico}}} de la tabla {{{tipohardwares}}}. 167 199 - {{{description}}} (cadena): descripción del componente.