DOCUMENTACIÓN – API RESTful
CONFIGURACIÓN INICIAL – CREDENCIALES BASE DE DATOS
En la ruta models/[Link] dirigirse al método infoDatabase()
Allí se configura la conexión a la base de datos, agregando el nombre
de la base de datos, el usuario y la contraseña.
[Link]
DOCUMENTACIÓN – API RESTful
CONFIGURACIÓN INICIAL – APIKEY
En la ruta models/[Link] dirigirse al método apikey()
Allí agregas la llave segura de la API (Una contraseña creada
por el administrador).
Esta llave solo la conocerá el administrador de la API, y es la clave que
se usará como Autorización en las cabeceras de cada solicitud HTTP.
[Link]
DOCUMENTACIÓN – API RESTful
CONFIGURACIÓN INICIAL – ACCESO PÚBLICO
En la ruta models/[Link] dirigirse al método publicAccess()
Allí agregas dentro de la matriz las tablas (separadas por coma) que
serán de dominio público, es decir, la información a la que podrán
acceder de forma libre los usuarios de la API.
[Link]
DOCUMENTACIÓN – API RESTful
CONFIGURACIÓN INICIAL - BASE DE DATOS
Las tablas deben estar escritas en plural y el nombre de las columnas deben terminar con el nombre de la
tabla en singular (_sufijo)*.
Tabla: categories
Columnas:
• id_category
• name_category
• date_created_category
• date_updated_category
*Recomendación: Usar idioma inglés para acortar palabras y unir palabras con guion de piso
[Link]
DOCUMENTACIÓN – API RESTful
CONFIGURACIÓN INICIAL - BASE DE DATOS
La primera columna debe ser el ID (auto incrementable) y las dos últimas columnas deben ser la fecha de
creación y la fecha de actualización.
Tabla: categories
Columnas:
• id_category
… Se agregan las columnas necesarias …
• date_created_category
• date_updated_category
[Link]
DOCUMENTACIÓN – API RESTful
CONFIGURACIÓN INICIAL – BASE DE DATOS
Para relacionar tablas, el número del ID de la Tabla Relacionada debe
estar en una columna de la Tabla Principal, y dicha columna debe tener
el siguiente orden de palabras:
id_(Tabla Relacionada en singular)_(Tabla Principal en singular)
Tabla Principal: countries
Tabla Relacionada: codes | Columna: id_code_country
Tabla Relacionada: dialcodes | Columna: id_dialcode_country
[Link]
DOCUMENTACIÓN – API RESTful
CONFIGURACIÓN INICIAL – BASE DE DATOS
Para realizar autenticaciones con la API RESTful, es indispensable que la tabla de autenticación tenga siempre estas 4 columnas:
• email_sufijo
• password_sufijo
• token_sufijo
• token_exp_sufijo
[Link]
DOCUMENTACIÓN – API RESTful
CONFIGURACIÓN INICIAL - AUTORIZACIÓN
Todas las solicitudes a la API deben llevar en la cabecera
(HEADERS) la propiedad Authorization con la respectiva
APIKEY creada por el administrador.
[Link]
DOCUMENTACIÓN – API RESTful
SOLICITUDES DE TIPO GET
La selección básica, consiste simplemente en colocar el
nombre de la tabla luego del ENDPOINT.
*Nota: Si el nombre de la tabla está mal escrito o no existe en la
base de datos recibirá como respuesta un status 404.
[Link]
DOCUMENTACIÓN – API RESTful
SOLICITUDES DE TIPO GET
Seleccionar un dato específico, consiste en agregar el
parámetro select a la url y colocar el nombre exacto (sin
espacios a los lados) de una columna que exista en la
tabla. Puede agregar las columnas que desee separándolas
por coma.
*Nota: Esto ayuda a optimizar el tiempo de entrega de la
información.
[Link]
DOCUMENTACIÓN – API RESTful
SOLICITUDES DE TIPO GET
Filtrar una selección con un solo valor, consiste en
agregar los parámetros linkTo y equalTo a la url. En el
primer parámetro escribir el nombre de columna donde se
desea encontrar la coincidencia, y en el segundo
parámetro colocar el valor exacto de lo que se desea
filtrar.
*Nota: Evita filtrar contenido de textos que contengan alguna coma.
[Link]
DOCUMENTACIÓN – API RESTful
SOLICITUDES DE TIPO GET
Filtrar una selección con varios valores, consiste en
agregar más columnas separadas por comas al parámetro
linkTo y en agregar más valores separados por coma en el
parámetro equalTo.
*Nota: Agregar un solo valor por cada columna adicional.
[Link]
DOCUMENTACIÓN – API RESTful
SOLICITUDES DE TIPO GET
Ordenar datos, consiste en agregar los parámetros
orderBy y orderMode e indicar en orderBy la columna que
ordenará los datos y usar las palabras reservadas ASC o
DESC en el parámetro orderMode para indicar el tipo de
orden (Ascendente o Descendente).
*Nota: El orden se puede aplicar a números, alfabeto o fechas.
[Link]
DOCUMENTACIÓN – API RESTful
SOLICITUDES DE TIPO GET
Limitar datos, consiste en agregar los parámetros startAt
y endAt e indicar en startAt la posición inicial desde donde
se desea limitar los datos (la primera posición es el 0) y en
el parámetro endAt indicar la cantidad de registros que se
desean seleccionar.
*Nota: Se puede combinar el orden y los límites, pero siempre el
orden será la prioridad para la API.
[Link]
DOCUMENTACIÓN – API RESTful
SOLICITUDES DE TIPO GET
Relaciones entre tablas sin filtro, consiste en traer
información entre varias tablas que estén relacionadas por
su ID sin filtrar información.
La estructura de la URL cambia:
• Debemos agregar la palabra relations luego del
ENDPOINT.
• Agregar el parámetro rel: Allí indicar en primer lugar
el nombre de la tabla principal y luego separado por
comas las tablas relacionadas.
• Luego agregar el parámetro type: Allí agregar los
sufijos de las tablas puestas en el parámetro rel.
*Nota: Al no filtrar datos traemos el total de información de todas
las tablas en relación de acuerdo a los datos seleccionados.
[Link]
DOCUMENTACIÓN – API RESTful
SOLICITUDES DE TIPO GET
Relaciones entre tablas con filtros, consiste en traer
información entre varias tablas que estén relacionadas por
su ID filtrando información.
Se repite exactamente el mismo procedimiento que se
hace en la solicitud de tablas relacionadas agregando los
parámetros linkTo y equalTo para buscar coincidencias en
una o varias columnas de cualquiera de las tablas que se
estén relacionando.
[Link]
DOCUMENTACIÓN – API RESTful
SOLICITUDES DE TIPO GET
Búsqueda sin relaciones y con filtros, consiste en realizar
búsquedas en la base de datos en una sola tabla usando
palabras claves y filtrando datos exactos. Usamos el
parámetro linkTo para el nombre de columnas y agregamos
el parámetro search para la búsqueda de la palabra clave
y datos exactos.
*Nota: El primer valor de linkTo debe ser siempre la columna en
donde se realizará la búsqueda, de igual forma, el primer valor de
search debe ser la palabra clave. Luego con comas aplicamos los
filtros.
[Link]
DOCUMENTACIÓN – API RESTful
SOLICITUDES DE TIPO GET
Búsqueda con relaciones y con filtros, consiste en
realizar búsquedas en la base de datos en entre varias
tablas relacionadas usando palabras claves y filtrando
datos exactos. Además de los parámetros linkTo y search,
usamos los parámetros de relación rel y type.
[Link]
DOCUMENTACIÓN – API RESTful
SOLICITUDES DE TIPO GET
Rangos con filtros, consiste en seleccionar un rango de
datos entre números o fechas en una sola tabla agregando
los parámetros between1 para el rango inicial y between2
para el rango final, filtramos la información con el
parámetro filterTo indicando el nombre de columna y el
parámetro inTo para indicar el valor del filtro.
[Link]
DOCUMENTACIÓN – API RESTful
SOLICITUDES DE TIPO GET
Rangos entre relaciones con filtros, consiste en
seleccionar un rango de datos entre varias tablas
relacionadas. Se realiza la solicitud de igual forma a la
anterior agregando los parámetros de relación.
[Link]
DOCUMENTACIÓN – API RESTful
SOLICITUDES DE TIPO POST
Registro usuarios, consiste en registrar usuarios en la base
de datos para luego generar el token de seguridad con su
respectiva fecha de vencimiento al momento de realizar el
login.
Debemos agregar luego del ENDPOINT la tabla donde se
realizará el registro de usuario, acompañado de los
parámetros register con valor true y el parámetro suffix
con el nombre de la tabla en singular.
Los datos mínimos del formulario deben ser el email y el
password.
*Nota: Si la tabla donde se realiza el registro tiene como nombre
users, no es necesario enviar el parámetro suffix.
[Link]
DOCUMENTACIÓN – API RESTful
SOLICITUDES DE TIPO POST
Login de usuarios, es la acción de solicitar el token de
seguridad con su respectiva fecha de vencimiento usando
el email y contraseña que usó en el registro.
Debemos agregar luego del ENDPOINT la tabla donde se
hizo el registro de usuario, acompañado de los parámetros
login con valor true y el parámetro suffix con el nombre
de la tabla en singular.
[Link]
DOCUMENTACIÓN – API RESTful
SOLICITUDES DE TIPO POST
Crear registros, es la acción de crear información en una
tabla de la base de datos.
Debemos agregar luego del ENDPOINT la tabla donde se
desea crear el nuevo registro, acompañado de los
parámetros token con el valor del token entregado luego
del login y los parámetros table y suffix con el nombre de
la tabla en plural y singular de donde viene el usuario
registrado.
*Nota: Los nombres de los campos del formulario deben ser exactos
a los nombres de las columnas de la tabla donde se realizará el
registro.
[Link]
DOCUMENTACIÓN – API RESTful
SOLICITUDES DE TIPO PUT
Editar registros, es la acción de cambiar información en
una tabla de la base de datos.
Debemos agregar luego del ENDPOINT la tabla donde se
desea editar el registro, acompañado de los parámetros
token con el valor del token entregado luego del login.
Además agregar los siguientes parámetros:
• El parámetro id para indicar el id del registro a editar.
• El parámetro nameId para indicar el nombre de la
columna donde se buscará el id.
• Los parámetros table y suffix con el nombre de la tabla
en plural y singular de donde viene el usuario
registrado.
*Nota: Los nombres de los campos del formulario deben ser exactos
a los nombres de las columnas de la tabla donde se editará el
registro. [Link]
DOCUMENTACIÓN – API RESTful
SOLICITUDES DE TIPO DELETE
Eliminar registros, es la acción de eliminar información
en una tabla de la base de datos.
Debemos agregar luego del ENDPOINT la tabla donde se
desea eliminar el registro, acompañado de los parámetros
token con el valor del token entregado luego del login.
Además agregar los siguientes parámetros:
• El parámetro id para indicar el id del registro a
eliminar.
• El parámetro nameId para indicar el nombre de la
columna donde se buscará el id.
• Los parámetros table y suffix con el nombre de la tabla
en plural y singular de donde viene el usuario
registrado.
[Link]
DOCUMENTACIÓN – API RESTful
CREAR O EDITAR UN REGISTRO CON EXCEPCIÓN
Es la acción de crear o editar un registro sin la necesidad
de usar el token de seguridad.
El parámetro token debe ir con el valor no, y agregamos el
parámetro except para indicar cualquier nombre de
columna de la tabla en que se desea hacer cambios.
*Nota: Esto se utiliza cuando necesitamos hacer cambios en la base
de datos sin necesidad de haber generado un “login” de por medio.
[Link]