In den letzten Wochen haben wir an einem SDK für PHP gearbeitet, um PHP-Entwicklern den Einstieg in Hapio zu erleichtern. Wir freuen uns nun, die Freigabe für die Öffentlichkeit bekannt zu geben.
Das Hapio SDK für PHP wurde entwickelt, um die Integration der robusten Buchungs- und Terminplanungsfunktionen von Hapio in PHP-Anwendungen zu vereinfachen und Entwicklern ein leistungsfähiges Werkzeug an die Hand zu geben, um die Funktionalität ihrer Projekte zu verbessern.
Systemanforderungen
Bevor Sie mit dem Hapio SDK für PHP beginnen, sollten Entwickler sicherstellen, dass ihre Umgebung die folgenden Anforderungen erfüllt:
PHP 8.2 oder höher.
Erste Schritte
Die Integration des Hapio SDK in ein PHP-Projekt ist ein unkomplizierter Prozess. Entwickler können Composer, einen beliebten PHP-Abhängigkeitsmanager, verwenden, um das SDK in ihr Projekt zu integrieren. Hier erfahren Sie, wie Sie loslegen:
Öffnen Sie das Terminal oder die Eingabeaufforderung Ihres Projekts.
Führen Sie den folgenden Composer-Befehl aus:
Shell
composer require hapio/hapio-sdk-php
Sobald das SDK erfolgreich installiert ist, können Entwickler es in ihren Projekten verwenden.
Arbeiten mit dem SDK
Die Verwendung des Hapio SDK für PHP ist so einfach wie die Instanziierung eines API-Clients und die Aufnahme der Arbeit. Nachfolgend finden Sie ein Beispiel für die ersten Schritte mit dem 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;
}
}
Dokumentation und Modelle
Das Hapio SDK für PHP bietet eine umfassende Dokumentation und enthält verschiedene Modelle für eine effiziente Interaktion mit der Hapio API. Einige der verfügbaren Modelle sind:
- Projekt
- Standort
- Ressource
- Dienst
- ZeitplanBlock
- RecurringSchedule
- RecurringScheduleBlock
- Buchung
- BookableSlot
- Zeitspanne
- ResourceServiceAssociation
Diese Modelle vereinfachen die Interaktion mit Hapio-Entitäten und erleichtern das Erstellen, Aktualisieren und Abrufen von Daten. Entwickler können Eigenschaften festlegen und mit den Modellen interagieren, indem sie entweder snake_case- oder camelCase-Namenskonventionen verwenden.
Repositories
Um die Kommunikation mit der API zu erleichtern, bietet das Hapio SDK für PHP Repository-Klassen für jeden in Hapio verfügbaren Entitätstyp. Diese Repositories dienen als Gateways zum Senden und Abrufen von Daten und sind über Methoden der ApiClient-Klasse zugänglich.
Einige der verfügbaren Repositories sind:
- ProjektRepository
- LocationRepository
- ResourceRepository
- ServiceRepository
- ScheduleBlockRepository
- RecurringScheduleRepository
- RecurringScheduleBlockRepository
- BookingRepository
Jedes Repository bietet eine Reihe von Methoden, die den verfügbaren API-Endpunkten für den jeweiligen Entitätstyp entsprechen.
Paginierte Antworten
Für API-Endpunkte, die paginierte Datenlisten zurückgeben, bietet das Hapio SDK eine PaginatedResponse-Klasse mit verschiedenen Methoden, um die Handhabung dieser Antworten zu vereinfachen. Entwickler können einfach durch paginierte Daten navigieren, Elemente abrufen und feststellen, ob weitere Seiten verfügbar sind.
Behandlung von Ausnahmen
Das Hapio SDK für PHP enthält eine robuste Ausnahmebehandlung, die sicherstellt, dass Entwickler Fehler effektiv verwalten können. Wenn die API mit den Statuscodes 4XX oder 5XX antwortet, werden entsprechende Ausnahmen ausgelöst. Validierungsfehler mit einem Statuscode von 422 lösen eine ValidationException aus, während andere 4XX- und 5XX-Statuscodes zu einer ErrorException führen. Diese Ausnahmen ermöglichen den Zugriff auf Fehlermeldungen, Statuscodes und ggf. Validierungsfehler.
Mit der Veröffentlichung des Hapio SDK für PHP können Entwickler nun die Buchungs- und Terminplanungsfunktionen von Hapio nahtlos in ihre PHP-Projekte integrieren und so die Effizienz und Funktionalität ihrer Anwendungen verbessern.
Das SDK ist auf Packagist.org verfügbar und kann über Composer installiert werden. Sie können auch den Quellcode auf GitHub einsehen.