Hapio lanza el SDK para PHP - Simplificación de la integración con la API de reservas y horarios

El SDK de Hapio para PHP está diseñado para agilizar la integración de las sólidas capacidades de reserva y programación de Hapio en aplicaciones PHP, proporcionando a los desarrolladores una potente herramienta para mejorar la funcionalidad de sus proyectos.

Requisitos del sistema

Antes de empezar a utilizar el SDK de Hapio para PHP, los desarrolladores deben asegurarse de que su entorno cumple los siguientes requisitos:
PHP 8.2 o posterior.

Primeros pasos

Integrar el SDK de Hapio en un proyecto PHP es un proceso sencillo. Los desarrolladores pueden utilizar Composer, un popular gestor de dependencias de PHP, para incluir el SDK en su proyecto. He aquí cómo empezar:

Abra el terminal o el símbolo del sistema de su proyecto.
Ejecute el siguiente comando de Composer:

concha
composer require hapio/hapio-sdk-php

Una vez instalado correctamente el SDK, los desarrolladores pueden empezar a utilizarlo en sus proyectos.

Trabajar con el SDK

Utilizar el SDK de Hapio para PHP es tan sencillo como instanciar un cliente API y ponerse a trabajar. A continuación se muestra un ejemplo de cómo empezar a utilizar el SDK:

php
// Require the Composer autoloader
require __DIR__ . '/vendor/autoload.php';

use Hapio\Sdk\ApiClient;

// Instantiate a Hapio API client
$apiClient = new ApiClient('your-api-token');

// Get a list of all bookings this week
$response = $apiClient->bookings()->list([
    'from' => new DateTime('monday this week 00:00:00'),
    'to' => new DateTime('friday this week 23:59:59'),
]);

while ($response) {
    foreach ($response->getItems() as $booking) {
        var_dump($booking);
    }

    if ($response->hasMoreItems()) {
        $response = $response->getNextPage();
    } else {
        $response = null;
    }
}

Documentación y modelos

El SDK de Hapio para PHP ofrece una completa documentación e incluye varios modelos para interactuar con la API de Hapio de forma eficiente. Algunos de los modelos disponibles incluyen:

Estos modelos simplifican la interacción con las entidades de Hapio, facilitando la creación, actualización y recuperación de datos. Los desarrolladores pueden establecer propiedades e interactuar con los modelos utilizando convenciones de nomenclatura snake_case o camelCase.

Repositorios

Para facilitar la comunicación con la API, el SDK de Hapio para PHP proporciona clases de repositorio para cada tipo de entidad disponible en Hapio. Estos repositorios sirven como pasarelas para enviar y recuperar datos y son accesibles a través de métodos en la clase ApiClient.

Algunos de los repositorios disponibles son:

Cada repositorio ofrece un conjunto de métodos que corresponden a los puntos finales de la API disponibles para el tipo de entidad respectivo.

Respuestas paginadas

Para los puntos finales de la API que devuelven listas paginadas de datos, el SDK de Hapio proporciona una clase PaginatedResponse con varios métodos para simplificar el manejo de estas respuestas. Los desarrolladores pueden navegar fácilmente por los datos paginados, recuperar elementos y determinar si hay más páginas disponibles.

Gestión de excepciones

El SDK de Hapio para PHP incluye un robusto manejo de excepciones, asegurando que los desarrolladores puedan gestionar los errores de forma efectiva. Cuando la API responde con códigos de estado 4XX o 5XX, se lanzan las excepciones apropiadas. Los errores de validación con un código de estado 422 lanzarán una ValidationException, mientras que otros códigos de estado 4XX y 5XX dan lugar a una ErrorException. Estas excepciones proporcionan acceso a los mensajes de error, códigos de estado y errores de validación cuando proceda.

Con el lanzamiento del SDK de Hapio para PHP, los desarrolladores pueden ahora integrar sin problemas las capacidades de reserva y programación de Hapio en sus proyectos PHP, mejorando la eficiencia y funcionalidad de sus aplicaciones.

El SDK está disponible en Packagist.org, listo para ser instalado a través de Composer. También puedes consultar el código fuente en GitHub.

Autor

Jesper