Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/apimatic/core-interfaces-php
Definition of the behavior of core-lib-php, unirest-php and APIMatic's PHP SDK
https://github.com/apimatic/core-interfaces-php
php sdk
Last synced: 15 days ago
JSON representation
Definition of the behavior of core-lib-php, unirest-php and APIMatic's PHP SDK
- Host: GitHub
- URL: https://github.com/apimatic/core-interfaces-php
- Owner: apimatic
- License: mit
- Created: 2022-07-21T03:07:24.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2024-05-09T06:34:37.000Z (6 months ago)
- Last Synced: 2024-09-22T18:37:40.985Z (about 2 months ago)
- Topics: php, sdk
- Language: PHP
- Homepage:
- Size: 65.4 KB
- Stars: 4
- Watchers: 3
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# APIMatic Core Library Interfaces
[![version][packagist-version]][packagist-url]
[![Maintainability](https://api.codeclimate.com/v1/badges/8c44cc226ce627f4efab/maintainability)](https://codeclimate.com/github/apimatic/core-interfaces-php/maintainability)
[![Licence][license-badge]][license-url]## Introduction
Definition of the behavior of apimatic/core, apimatic/unirest-php and APIMatic's PHP SDK## Supported PHP Versions
- PHP 7.2
- PHP 7.4
- PHP 8.0
- PHP 8.1
- PHP 8.2## Install the Package
Run the following command to install the package and automatically add the dependency to your composer.json file:
```php
composer require "apimatic/core-interfaces"
```## Interfaces
| Name | Description |
|-------------------------------------------------------------------------|--------------------------------------------------------------------|
| [`ContextInterface`](src/Core/ContextInterface.php) | To save both Request and Response after the completion of response |
| [`AuthInterface`](src/Core/Authentication/AuthInterface.php) | To Provide abstraction for all AuthManagers |
| [`ApiLoggerInterface`](src/Core/Logger/ApiLoggerInterface.php) | To set up an abstract layer for logging requests and responses |
| [`RequestInterface`](src/Core/Request/RequestInterface.php) | To get the properties from the instance of Request |
| [`RequestSetterInterface`](src/Core/Request/RequestSetterInterface.php) | To update the instance of Request |
| [`ParamInterface`](src/Core/Request/ParamInterface.php) | To Provide abstraction for common functionality of Parameters |
| [`NonEmptyParamInterface`](src/Core/Request/NonEmptyParamInterface.php) | An extension of ParamInterface, for validation of non-empty values |
| [`TypeValidatorInterface`](src/Core/Request/TypeValidatorInterface.php) | To Provide abstraction for type validation in Parameters |
| [`ResponseInterface`](src/Core/Response/ResponseInterface.php) | To get the properties from the instance of Response |
| [`HttpConfigurations`](src/Http/HttpConfigurations.php) | To hold the default configurations for HttpClient |
| [`HttpClientInterface`](src/Http/HttpClientInterface.php) | To provide abstraction to execute API call in HttpClient |
| [`ConverterInterface`](src/Sdk/ConverterInterface.php) | Holds required converter methods to create SDK classes |
| [`ExceptionInterface`](src/Sdk/ExceptionInterface.php) | Default interface for all the exception models in SDK |## Enumerations
| Name | Description |
|-------------------------------------------------------------------------------|-----------------------------------------------------------------|
| [`AuthGroup`](src/Core/Authentication/AuthGroup.php) | Enumeration for multiple Auth groups |
| [`RequestArraySerialization`](src/Core/Request/RequestArraySerialization.php) | Enumeration for all ArraySerialization formats |
| [`RequestMethod`](src/Core/Request/RequestMethod.php) | Enumeration for all possible types of requests |
| [`Format`](src/Core/Format.php) | Enumeration for different formats of request body and responses |
| [`RetryOption`](src/Http/RetryOption.php) | Enumeration for RetryingOption of each API call |[packagist-url]: https://packagist.org/packages/apimatic/core-interfaces
[packagist-version]: https://img.shields.io/packagist/v/apimatic/core-interfaces.svg?style=flat
[packagist-downloads]: https://img.shields.io/packagist/dm/apimatic/core-interfaces.svg?style=flat
[license-badge]: https://img.shields.io/badge/license-MIT-blue
[license-url]: LICENSE