Referencia
API del backend
Endpoints y autenticación de la API de ServiciosApp
API del backend
La API del backend está documentada con OpenAPI (Swagger). Esta guía ofrece una visión general de los principales endpoints disponibles.
Base URL
https://api.serviciosapp.com/api
Autenticación
La API utiliza JWT (JSON Web Tokens) para autenticación. Los tokens se envían como cookies HTTP-only.
Registro
POST /auth/register
Content-Type: application/json
{
"email": "usuario@correo.com",
"password": "mi-contraseña",
"firstName": "Juan",
"lastName": "Pérez",
"secondLastName": "García",
"municipalityId": "uuid-del-municipio"
}
Inicio de sesión
POST /auth/login
Content-Type: application/json
{
"email": "usuario@correo.com",
"password": "mi-contraseña"
}
También puedes iniciar sesión con número de teléfono:
{
"cellphone": "6671234567",
"password": "mi-contraseña"
}
Refrescar token
POST /auth/refresh-access-token
Endpoints públicos
Estos endpoints no requieren autenticación:
Buscar servicios
GET /public/services/search?query=peluquería&categoryId=uuid&minPrice=10&maxPrice=100&minRating=4&page=0&size=20&sort=relevance
Buscar categorías
GET /public/categories/search?query=salud
Buscar subcategorías
GET /public/categories/{parentId}/subcategories?query=belleza
Ver sucursales de un servicio
GET /public/services/{serviceId}/branches?userLat=25.0&userLng=-100.0
Endpoints autenticados (usuario)
Favoritos
GET /favorite-services?page=0&size=20 # Listar favoritos
POST /favorite-services # Agregar favorito
DELETE /favorite-services/{serviceId} # Eliminar favorito
GET /favorite-services/{serviceId}/status # Ver estado del favorito
Reviews
POST /company-service-reviews # Crear review
DELETE /company-service-reviews/{reviewId} # Eliminar review
GET /company-service-reviews/{serviceId}/limit-status # Ver límite
Endpoints autenticados (empresa)
Empresa
POST /companies # Crear empresa
PUT /companies # Actualizar empresa
GET /companies/{id} # Obtener empresa
GET /companies/active-counts # Contar sucursales y servicios activos
Sucursales
POST /companies/branches # Crear sucursal
PUT /companies/branches # Actualizar sucursal
GET /companies/branches # Listar sucursales
GET /companies/branches/{id} # Obtener sucursal por ID
DELETE /companies/branches/{id} # Eliminar sucursal
POST /companies/branches/{id}/deactivate # Desactivar sucursal
POST /companies/branches/{id}/reactivate # Reactivar sucursal
POST /companies/branches/with-images # Crear sucursal con imágenes
PUT /companies/branches/with-images # Actualizar sucursal con imágenes
Servicios de empresa
POST /companies/services # Crear servicio
PUT /companies/services # Actualizar servicio
GET /companies/services # Listar servicios de la empresa
GET /companies/services/{id} # Obtener servicio por ID
GET /companies/services/by-branch/{branchId} # Servicios por sucursal
POST /companies/services/{id}/activate # Activar servicio
POST /companies/services/{id}/deactivate # Desactivar servicio
DELETE /companies/services # Eliminar servicio
Canales de servicio
POST /companies/service-channels # Crear canal
PUT /companies/service-channels # Actualizar canal
DELETE /companies/service-channels/{id} # Eliminar canal
GET /companies/service-channels/{id} # Obtener canal por ID
POST /companies/service-channels/{id}/activate
POST /companies/service-channels/{id}/deactivate
Horarios
# Horarios de sucursal
POST /companies/branch-schedules # Crear horario
PUT /companies/branch-schedules # Actualizar horario
DELETE /companies/branch-schedules/{id} # Eliminar horario
POST /companies/branch-schedules/sync # Sincronizar horarios
# Horarios de canal de servicio
POST /companies/service-channel-schedules # Crear horario de canal
DELETE /companies/service-channel-schedules/{id} # Eliminar horario de canal