[READ-ONLY] Mirror of https://github.com/openstatusHQ/sdk-php. php sdk for openstatus www.openstatus.dev
sdk-php CHANGELOG.md
1.9 kB · 40 lines
Markdown
at main

Changelog #

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

Unreleased #

0.1.0 — 2026-05-28 #

Initial release.

Added #

  • Openstatus\Sdk\OpenstatusClient with nested ->v1->serviceName accessors mirroring @openstatus/sdk-node.
  • Hand-written PSR-18 JSON transport over Connect RPC's /rpc/{Service}/{Method} endpoint with application/json payloads.
  • Typed ClientOptions value object (named-args constructor) carrying apiKey, baseUrl, timeout, optional PSR-18/PSR-17/PSR-3 dependencies.
  • Service wrappers for all 6 services and 52 RPCs: Health, Monitor, StatusReport, StatusPage, Maintenance, Notification.
  • Pre-generated PHP message classes from buf.build/openstatus/api pinned at v35.0-7d7b7047611f.1. Regeneration via composer regen (curl + unzip; no Buf CLI required).
  • Connect error envelope → typed exception hierarchy (AuthenticationException, NotFoundException, InvalidArgumentException, PermissionDeniedException, RateLimitException, ServiceUnavailableException). Exceptions carry connectCode(), httpStatus(), details(), rawBody().
  • Env-var fallbacks: OPENSTATUS_API_KEY, OPENSTATUS_API_URL.
  • Per-call header overrides via optional array $headers = [] second arg.
  • examples/basic.php (health + list + logs) and examples/create_monitor.php (full HTTPMonitor with assertions).
  • GitHub Actions: ci.yml (phpstan level 8 + phpunit on PHP 8.4), regen.yml (weekly cron + manual workflow_dispatch with version input).