Skip to content

Proveedores

Proveedores

Prefijo: /api/proveedores
Requiere Auth:
Permiso requerido: proveedores, *

Módulo de proveedores para gestionar los suministradores de productos del catálogo.

GET /api/proveedores/

Descripción: Lista todos los proveedores con paginación
Requiere Auth:
Permiso requerido: proveedores, leer

Respuesta exitosa: 200 OK

Response:

[
{
"id": 1,
"ruc": 900123456,
"nombre": "Proveedor Ejemplo",
"telefono": "3001234567",
"direccion": "Calle 123 #45-67",
"razon": "Proveedor Ejemplo SAS",
"tenant_id": "uuid-tenant",
"fecha": "2025-01-01T00:00:00"
}
]

cURL:

Terminal window
curl "http://localhost/api/proveedores/?skip=0&limit=10" -H "Authorization: Bearer <token>"

Python:

import httpx
resp = httpx.get("http://localhost/api/proveedores/",
headers={"Authorization": f"Bearer {token}"})
proveedores = resp.json()

JavaScript:

const resp = await fetch('http://localhost/api/proveedores/', {
headers: {'Authorization': `Bearer ${token}`}
});
const proveedores = await resp.json();

GET /api/proveedores/{proveedor_id}

Descripción: Obtiene un proveedor por ID
Requiere Auth:
Permiso requerido: proveedores, leer

Respuesta exitosa: 200 OK
Errores: 404 (no encontrado)

cURL:

Terminal window
curl http://localhost/api/proveedores/1 -H "Authorization: Bearer <token>"

POST /api/proveedores/

Descripción: Crea un nuevo proveedor
Requiere Auth:
Permiso requerido: proveedores, crear

Request:

{
"ruc": 900123457,
"nombre": "Nuevo Proveedor",
"telefono": "3007654321",
"direccion": "Carrera 50 #20-30",
"razon": "Nuevo Proveedor SAS"
}

Respuesta exitosa: 201 Created

cURL:

Terminal window
curl -X POST http://localhost/api/proveedores/ \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <token>" \
-d '{"ruc":900123457,"nombre":"Nuevo Proveedor","telefono":"3007654321","direccion":"Carrera 50 #20-30","razon":"Nuevo Proveedor SAS"}'

Python:

import httpx
resp = httpx.post("http://localhost/api/proveedores/",
json={"ruc": 900123457, "nombre": "Nuevo Proveedor", "telefono": "3007654321", "direccion": "Carrera 50 #20-30", "razon": "Nuevo Proveedor SAS"},
headers={"Authorization": f"Bearer {token}"})
proveedor = resp.json()

JavaScript:

const resp = await fetch('http://localhost/api/proveedores/', {
method: 'POST',
headers: {'Content-Type': 'application/json', 'Authorization': `Bearer ${token}`},
body: JSON.stringify({ruc: 900123457, nombre: 'Nuevo Proveedor', telefono: '3007654321', direccion: 'Carrera 50 #20-30', razon: 'Nuevo Proveedor SAS'})
});

PUT /api/proveedores/{proveedor_id}

Descripción: Actualiza un proveedor
Requiere Auth:
Permiso requerido: proveedores, actualizar

Respuesta exitosa: 200 OK
Errores: 404 (no encontrado)

cURL:

Terminal window
curl -X PUT http://localhost/api/proveedores/1 \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <token>" \
-d '{"nombre":"Proveedor Actualizado","telefono":"3009876543"}'

DELETE /api/proveedores/{proveedor_id}

Descripción: Elimina un proveedor
Requiere Auth:
Permiso requerido: proveedores, eliminar

Respuesta exitosa: 204 No Content
Errores: 404 (no encontrado)

cURL:

Terminal window
curl -X DELETE http://localhost/api/proveedores/1 -H "Authorization: Bearer <token>"