ustglobal / monge-php-api
PHP interface for Monge web services
Installs: 8
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 0
Open Issues: 0
pkg:composer/ustglobal/monge-php-api
Requires
- php: >=7.1.0
- ext-json: *
- guzzlehttp/guzzle: 6.3.3
- kamermans/guzzle-oauth2-subscriber: v1.0.6
- monolog/monolog: v1.24.0
- netresearch/jsonmapper: v1.4.0
Requires (Dev)
- phpunit/phpunit: ^7
This package is auto-updated.
Last update: 2025-12-09 10:44:32 UTC
README
La siguiente librería proporciona una interfaz PHP con los servicios web de Wakup y Monge.
Instalación
El proyecto está desplegada en packagist como una librería de composer. Para incluirla al proyecto basta con añadirla como dependencia:
composer require wakup/monge-php-api
Uso básico
Para acceder al cliente, basta con crear una instancia, que se puede reutilizar para el resto de peticiones. A esta instancia se le debe incluir el logger de monolog a utilizar para el registro de las peticiones:
use Monolog\Logger; use Monolog\Handler\StreamHandler; # Select path for log file $logDir = getcwd().'/my_app.log'; # Create monolog logger $logger = new Logger('HTTP'); $logger->pushHandler(new StreamHandler($logDir, Logger::ERROR)); # Instance client $wakupClient = new \Wakup\Client($logger);
Los métodos de la líbrería tienen tipado fuerte, lo que facilita su uso.
Métodos Wakup
Los métodos asociados a la gestión del catálogo de Wakup son los siguientes:
getPaginatedAttributes
Obtiene el listado de atributos de producto registrados en Wakup.
Toma los siguientes parámetros:
| Parámetro | Tipo | Descripción |
|---|---|---|
page |
int | Número de página a consultar. La primera página es la 0. |
perPage |
int | Cantidad de resultados a obtener por página. |
Devuelve un objeto de tipo PaginatedAttributes.
Ejemplo de uso:
$pagination = $wakupClient->getPaginatedAttributes(0, 100); $attributes = $pagination->getAttributes();
getPaginatedCategories
Obtiene el listado de categorías de producto registrados en Wakup.
Toma los siguientes parámetros:
| Parámetro | Tipo | Descripción |
|---|---|---|
page |
int | Número de página a consultar. La primera página es la 0. |
perPage |
int | Cantidad de resultados a obtener por página. |
Devuelve un objeto de tipo PaginatedCategories.
Ejemplo de uso:
$pagination = $wakupClient->getPaginatedCategories(0, 100); $categories = $pagination->getCategories();
getPaginatedProducts
Obtiene el listado de productos que han cambiado desde la última consulta. El resultado incluirá:
- Stock: número de unidades en stock. Esta información se incluye siempre que el producto se añade al listado
- Precio: información sobre el precio del producto, incluyendo el importe con impuesto, sin impuesto y la tasa aplicada. Este dato sólo se incluye cuando el precio ha cambiado desde la última consulta.
- Detalles: información detallada del producto, incluyendo nombre, imágenes, valores de atributo, etc. Sólo se incluye cuando ha cambiado algún valor desde la última consulta.
- Imágenes: Listado de imágenes del producto. Cada imagen contiene URLs en diferentes tamaños, relación de aspecto y color predominante. Se incluyen todas las imágenes del producto cuando cualquiera de ellas se ha modificado desde la última consulta. Si no ha habido cambios, se envía
null.
Toma los siguientes parámetros:
| Parámetro | Tipo | Descripción |
|---|---|---|
lastUpdate |
DateTime | Fecha de última consulta. Si se envía vacío, se devolverán todos los productos. |
page |
int | Número de página a consultar. La primera página es la 0. |
perPage |
int | Cantidad de resultados a obtener por página. |
Devuelve un objeto de tipo PaginatedProducts.
Ejemplo de uso:
$lastUpdate = new DateTime('2018-12-30 23:21:46'); $pagination = $wakupClient->getPaginatedProducts($lastUpdate, 0, 100); $products = $pagination->getProducts();