byt3bl33d3r /
DeathStar
Uses Empire's (https://github.com/BC-SECURITY/Empire) RESTful API to automate gaining Domain and/or Enterprise Admin rights in Active Directory environments using some of the most common offensive TTPs.
88/100 healthLoading repository data…
sebas3536 / repository
API RESTful de gestión de clientes desarrollada con Flask, SQLAlchemy y Marshmallow. Implementa operaciones CRUD con validaciones, manejo de errores y persistencia en SQLite. Incluye documentación clara en el README para instalación, ejecución y pruebas de endpoints.
A transparent discovery signal based on current public GitHub metadata.
This score does not audit code, security, maintainers, documentation quality, or suitability. Verify the repository and its current documentation before adoption.
API REST para la gestión integral de clientes. Construida con arquitectura modular y escalable, proporciona operaciones CRUD completas con validación robusta, manejo de errores centralizado y logging integrado.
| Tecnología | Versión | Descripción |
|---|---|---|
| Python | 3.8+ | Lenguaje principal |
| Flask | 2.0+ | Framework web |
| SQLAlchemy | 1.4+ | ORM para base de datos |
| Marshmallow | 3.0+ | Validación y serialización |
| SQLite | 3.0+ | Base de datos (desarrollo) |
git clone https://github.com/sebas3536/CRUD-PYTHON.git
cd CRUD-PYTHON
# En Linux/macOS
python3 -m venv venv
source venv/bin/activate
# En Windows
python -m venv venv
venv\Scripts\activate
pip install -r requirements.txt
cp .env.example .env
# Editar .env con tus configuraciones
# Desarrollo
python run.py
# Producción
gunicorn -w 4 -b 0.0.0.0:8000 app:app
El servidor estará disponible en http://127.0.0.1:8080/api/v1/clientes
Nota: La base de datos se crea automáticamente al iniciar. En desarrollo, los datos se resetean con cada reinicio.
http://localhost:8080/api/v1
POST /clientes
Content-Type: application/json
# Cliente único
{
"nombre": "Juan Pérez García",
"email": "juan@ejemplo.com",
"telefono": "+34 612 345 678",
"estado": "activo"
}
# Múltiples clientes
[
{
"nombre": "María López",
"email": "maria@ejemplo.com",
"telefono": "+34 612 345 679"
},
{
"nombre": "Carlos Rodríguez",
"email": "carlos@ejemplo.com"
}
]
Respuesta (201 Created):
{
"success": true,
"message": "Cliente creado exitosamente",
"data": {
"id": 1,
"nombre": "Juan Pérez García",
"email": "juan@ejemplo.com",
"telefono": "+34 612 345 678",
"estado": "activo",
"fecha_creacion": "2025-01-20T15:30:45",
"fecha_actualizacion": "2025-01-20T15:30:45"
}
}
GET /clientes?page=1&per_page=10&estado=activo
Parámetros de Query:
page (int): Número de página (default: 1)per_page (int): Resultados por página (default: 10, máximo: 100)estado (string): Filtrar por estado (activo/inactivo)Respuesta (200 OK):
{
"success": true,
"message": "Listado de clientes obtenido",
"pagination": {
"page": 1,
"per_page": 10,
"total": 25,
"pages": 3
},
"data": [
{
"id": 1,
"nombre": "Juan Pérez",
"email": "juan@ejemplo.com",
"telefono": "+34 612 345 678",
"estado": "activo",
"fecha_creacion": "2025-01-20T15:30:45",
"fecha_actualizacion": "2025-01-20T15:30:45"
}
]
}
GET /clientes/1
Respuesta (200 OK):
{
"success": true,
"message": "Cliente obtenido exitosamente",
"data": {
"id": 1,
"nombre": "Juan Pérez",
"email": "juan@ejemplo.com",
"telefono": "+34 612 345 678",
"estado": "activo",
"fecha_creacion": "2025-01-20T15:30:45",
"fecha_actualizacion": "2025-01-20T15:30:45"
}
}
PUT /clientes/1
Content-Type: application/json
{
"nombre": "Juan Pérez García Actualizado",
"telefono": "+34 612 999 999",
"estado": "inactivo"
}
Respuesta (200 OK):
{
"success": true,
"message": "Cliente actualizado exitosamente",
"data": {
"id": 1,
"nombre": "Juan Pérez García Actualizado",
"email": "juan@ejemplo.com",
"telefono": "+34 612 999 999",
"estado": "inactivo",
"fecha_creacion": "2025-01-20T15:30:45",
"fecha_actualizacion": "2025-01-20T16:45:20"
}
}
DELETE /clientes/1
Respuesta (200 OK):
{
"success": true,
"message": "Cliente eliminado exitosamente"
}
| Código | Tipo | Descripción |
|---|---|---|
| 400 | BAD_REQUEST | Solicitud mal formada o datos ausentes |
| 404 | NOT_FOUND | Recurso no encontrado |
| 409 | INTEGRITY_ERROR | Violación de restricciones (email duplicado) |
| 422 | VALIDATION_ERROR | Datos no válidos según las reglas de validación |
| 500 | INTERNAL_SERVER_ERROR | Error interno del servidor |
Crear cliente:
curl -X POST http://localhost:5000/api/v1/clientes \
-H "Content-Type: application/json" \
-d '{
"nombre": "Juan Pérez",
"email": "juan@ejemplo.com",
"telefono": "+34 612 345 678"
}'
Obtener todos los clientes:
curl http://localhost:5000/api/v1/clientes?page=1&per_page=5
Obtener cliente por ID:
curl http://localhost:5000/api/v1/clientes/1
Actualizar cliente:
curl -X PUT http://localhost:5000/api/v1/clientes/1 \
-H "Content-Type: application/json" \
-d '{
"nombre": "Juan Pérez Actualizado",
"estado": "inactivo"
}'
Eliminar cliente:
curl -X DELETE http://localhost:5000/api/v1/clientes/1
El sistema implementa validación exhaustiva en múltiples niveles:
Cliente:
{
"success": false,
"error": {
"type": "VALIDATION_ERROR",
"message": "Los datos no cumplen con los requisitos de validación",
"details": {
"nombre": ["El nombre es requerido"],
"email": ["El formato del email no es válido"]
}
}
}
Flask==2.3.3
Flask-SQLAlchemy==3.0.5
SQLAlchemy==2.0.20
marshmallow==3.20.1
marshmallow-sqlalchemy==0.29.0
python-dotenv==1.0.0
gunicorn==21.2.0
Las contribuciones son bienvenidas. Por favor:
git clone https://github.com/tu-usuario/CRUD-PYTHON.git)git checkout -b feature/nueva-funcionalidad)git commit -m 'Agregar nueva funcionalidad')git push origin feature/nueva-funcionalidad)Sebastián
Última actualización: Noviembre 2025 | Versión: 1.0.0
Selected from shared topics, language and repository description—not editorial ratings.
byt3bl33d3r /
Uses Empire's (https://github.com/BC-SECURITY/Empire) RESTful API to automate gaining Domain and/or Enterprise Admin rights in Active Directory environments using some of the most common offensive TTPs.
88/100 healthTrainingByPackt /
Develop a full-stack web application with Python and Flask
45/100 healthUskoKruM /
Estructura de un proyecto web (RESTful API) de Python y Flask, con organización de archivos y carpetas de forma ordenada, incluyendo directorios para: routes, models, services, testing y más.
GaedoC /
Listado de API's Públicas en Chile Listado de API's Públicas para distintos tipos de servicios digitales nacionales Enlace Servicios Públicos / Gobierno API Biblioteca del Congreso Leyes, Proyectos de Ley y Normas. API Mercado Público: Todo lo que necesitas es estar conectado con los servicios de información disponibles en api.mercadopublico.cl para crear notificaciones y estar siempre actualizado de los negocios con el Estado. API División Político Administrativa: Permite obtener Regiones, Provincias y Comunas. API Portal ChileAtiende: API del Portal de Servicios del Estado - ChileAtiende. Plataforma Ley de Lobby La API de la plataforma Ley de Lobby implementada para el Gobierno de Chile, es la interfaz para programadores que permite integrar los contenidos de este portal en tu sitio web. API Energía Abierta - Comisión Nacional de Energía: API permite el acceso directo a los datos publicados en el sitio de datos abiertos de Comision Nacional de Energía. API Comisión Nacional de Energía: Provee el público acceso a la información que se genera dentro de la CNE considerando sus distintos sistemas de información. Usado en Bencina en línea API Datos Peñalolen - Municipalidad de Peñalolen: API que permite el acceso directo a los datos publicados en el sitio de datos abiertos de Peñalolén. API Datos Providencia - Municipalidad de Providencia: API que permite el acceso directo a los datos publicados en el sitio de datos abiertos de la Municipalidad de Providencia. Compras Transparentes: Desarrollada en Falcon y Python, contiene todos los detalles de la API de Compras Transparentes que permite explorar las transacciones entre el Estado de Chile y las empresas, las cuales se efectúan a través de la plataforma de compras públicas. ChileCompra: La API permite el acceso directo a los datos publicados en el portal de datos abiertos de ChileCompra desde tu aplicación. Usa una interfaz RESTful y retorna los datos en formato JSON. Las vistas invocadas a través de la API proveen un acceso estándar online a datos contenidos en páginas HTML, XLS, CSV y otros archivos similares disponibles en Internet. Portal de Datos Públicos: La versión actual de la API es 1.0. La mayoría de los métodos retorna sus resultados en formato JSON, excepto el metodo invoke donde puede elegirse entre varios formatos de salida. Cada key obtenida para la API del Portal de Datos Públicos del Gobierno de Chile está limitada a 10.000 reqs/mes y 1 req/seg. Seguimiento de pedidos de Correos de Chile: Módulo npm para hacer el seguimiento de uno o más pedidos de Correos de Chile. Correos Chile Tracking API: AfterShip Restful JSON APIs and webhooks allow developers to add Correos Chile tracking function easily. Support APIs Client Libraries for PHP, Java, Node.js, Python, .NET, Ruby. Correos Chile API: EasyPost is a multi-carrier shipping solution. The EasyPost API is one integration point for 60+ carriers, including Correos Chile. Feriados en Chile 2017: API con info de feriados en Chile año 2017. Feriados Legales en Chile: API sin restricciones y costos, que contiene todos los feriados legales de Chile. Turnos de Farmacia: URL para obtener en formato JSON el listado de farmacias del país y sus turnos nocturnos legales, directamente desde FARMANET del Ministerio de Salud. Transporte BIP: Get balance of bip card (Chile) by scrapping http://www.tarjetabip.cl/ Economía Indicadores económicos diarios: Este es un servicio open source (web service) que entrega los principales indicadores económicos para Chile en formato JSON. Tanto los indicadores diarios como históricos para que desarrolladores puedan utilizarlos en sus aplicaciones o sitios web. Indicadores del Día: Los indicadores que entregamos en el servicio, aparecen en el sitio del Banco Central de Chile (http://www.bcentral.cl/), estos datos son actualizados cada una hora y servidos en diferentes formatos como xml, json, csv y javascript. API SBIF: La API de SBIF permite obtener información de manera directa desde la base de datos del sitio web utilizando los servicios web provistos en esta plataforma. Buda.com: La API REST de Buda.com, exchange de criptomonedas por moneda local en Chile, Colombia, Perú y Argentina. Permite el manejo de ordenes de compra/venta, abonos/retiros e información del mercado en tiempo real. BCI: API públicas del Banco de Crédito e Inversiones. Permite obtener información sobre cuentas, indicadores económicos, información del banco, entre otros. Medios de Pago Khipu: API REST para crear cobros y recibir pagos con Khipu. Flow: Flow es una plataforma de pagos online que te permite pagar y recibir pagos de cualquier persona usando tarjetas de credito o débito. Sistemas de Alerta Sismos Chile: Últimos sismos en Chile. Chile Alerta - Api: Boletines de Tsunami en Chile, Últimos sismos en Chile y Últimos sismos en países específicos y el Mundo. Mapas / Geocodificación API Planos.cl: API Planos.cl de hibu está conformada por clases desarrolladas en lenguaje Javascript. API de Mapas y Geocodificación de Mapcity: La API de MapCity es una extensión de Openlayers y ExtCore. Los tipos básicos de la API y los controles son derivados de los tipos y controles de OpenLayers, por lo tanto la mayoría de las funciones de OpenLayers aplican a las funciones de la API. Entretención y ocio Horóscopo Yolanda Sultana: Obtiene el horóscopo del día desde Login.cl. No hay forma de obtener horóscopos anteriores, porque es de mala suerte. Clima API Tiempo Meteored.cl: La Api de Meteored.cl es una aplicación con la que usted puede obtener la predicción meteorológica de las localidades que desee a diario. Cómo Aportar: Seguir el siguiente formato: - [Nombre / Título sitio web](URL documentación API): Descripción corta de qué se trata este servicio, en general se encuentra
73/100 healthbase4sistemas /
Compartilhamento de Equipamentos SAT via RESTful API
25/100 healthUskoKruM /
Implementación de Autenticación (Authentication) y Autorización (Authorization) usando JWT (JSON Web Tokens) en una RESTful API creada con Python y Flask y conectada a una base de datos MySQL.
39/100 health