Skip to content

A base library for building API clients for micro services

License

Notifications You must be signed in to change notification settings

somnambulist-tech/api-client

Repository files navigation

Somnambulist API Client Library

GitHub Actions Build Status Issues License PHP Version Current Version

The ApiClient library is intended to help build client libraries for consuming JSON APIs. The library provides abstract models for primary resource objects and related value objects. Persistence requests are handled by ApiActions that encapsulate a change request.

Models and ValueObjects make use of somnambulist/attribute-model type casting system.

The library uses Symfony HTTP Client under the hood.

Requirements

  • PHP 8.1+
  • cURL
  • symfony/event-dispatcher
  • symfony/http-client
  • symfony/routing

Installation

Install using composer, or checkout / pull the files from github.com.

  • composer require somnambulist/api-client

Usage

This library provides some building blocks to help you get started with consuming RESTful APIs. Typically, this is for use with a micro-services project where you need to write clients that will be shared amongst other projects.

Please note: this project does not make assumptions about the type of service being used. The included libraries provide suitable defaults, but can be completely replaced by your own implementations.

The docs are available in the docs folder with a suggested reading order as follows:

Tests

PHPUnit 9+ is used for testing. Run tests via vendor/bin/phpunit.

Test data was generated using faker and was randomly generated.

Links

About

A base library for building API clients for micro services

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages