{"id":18051717,"url":"https://github.com/apimatic/core-lib-php","last_synced_at":"2025-04-10T18:15:16.852Z","repository":{"id":60495398,"uuid":"514127773","full_name":"apimatic/core-lib-php","owner":"apimatic","description":"Core logic and the utilities for the APIMatic's PHP SDKs","archived":false,"fork":false,"pushed_at":"2024-05-09T09:36:36.000Z","size":310,"stargazers_count":3,"open_issues_count":1,"forks_count":1,"subscribers_count":4,"default_branch":"master","last_synced_at":"2024-05-10T04:35:19.153Z","etag":null,"topics":["php"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/apimatic.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-07-15T03:58:24.000Z","updated_at":"2024-06-20T21:48:42.071Z","dependencies_parsed_at":"2022-09-30T11:40:13.957Z","dependency_job_id":"b01cb583-47a2-4a56-8625-890c63bf8c6d","html_url":"https://github.com/apimatic/core-lib-php","commit_stats":{"total_commits":102,"total_committers":5,"mean_commits":20.4,"dds":0.0980392156862745,"last_synced_commit":"4634be2262d4946e2bac45707b35f46c226617f8"},"previous_names":[],"tags_count":28,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apimatic%2Fcore-lib-php","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apimatic%2Fcore-lib-php/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apimatic%2Fcore-lib-php/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apimatic%2Fcore-lib-php/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/apimatic","download_url":"https://codeload.github.com/apimatic/core-lib-php/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248269603,"owners_count":21075783,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["php"],"created_at":"2024-10-30T22:55:14.475Z","updated_at":"2025-04-10T18:15:16.834Z","avatar_url":"https://github.com/apimatic.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# APIMatic Core Library for PHP\n\n[![Version][packagist-version]][packagist-url]\n[![Tests][test-badge]][test-url]\n[![Test Coverage](https://api.codeclimate.com/v1/badges/90aa03dca1ef28d9cef3/test_coverage)](https://codeclimate.com/github/apimatic/core-lib-php/test_coverage)\n[![Maintainability](https://api.codeclimate.com/v1/badges/90aa03dca1ef28d9cef3/maintainability)](https://codeclimate.com/github/apimatic/core-lib-php/maintainability)\n[![Licence][license-badge]][license-url]\n\n\n## Introduction\n\nCore logic and the utilities for the Apimatic's PHP SDK.\n\n## Supported PHP Versions\n- PHP 7.2\n- PHP 7.4\n- PHP 8.0\n- PHP 8.1\n- PHP 8.2\n- PHP 8.3\n- PHP 8.4\n\n## Install the Package\n\nRun the following command to install the package and automatically add the dependency to your composer.json file:\n\n```php\ncomposer require \"apimatic/core\"\n```\n\n## Request\n| Name                                                                          | Description                                                           |\n|-------------------------------------------------------------------------------|-----------------------------------------------------------------------|\n| [`AdditionalFormParams`](src/Request/Parameters/AdditionalFormParams.php)     | Used to add additional form params to a request                       |\n| [`AdditionalHeaderParams`](src/Request/Parameters/AdditionalHeaderParams.php) | Used to add additional header params to a request                     |\n| [`AdditionalQueryParams`](src/Request/Parameters/AdditionalQueryParams.php)   | Used to add additional query params to a request                      |\n| [`BodyParam`](src/Request/Parameters/BodyParam.php)                           | Body parameter class                                                  |\n| [`FormParam`](src/Request/Parameters/FormParam.php)                           | Form parameter class                                                  |\n| [`HeaderParam`](src/Request/Parameters/HeaderParam.php)                       | Header parameter class                                                |\n| [`QueryParam`](src/Request/Parameters/QueryParam.php)                         | Query parameter class                                                 |\n| [`TemplateParam`](src/Request/Parameters/TemplateParam.php)                   | Template parameter class                                              |\n| [`RequestBuilder`](src/Request/RequestBuilder.php)                            | Used to instantiate a new Request object with the properties provided |\n| [`Request`](src/Request/Request.php)                                          | Request class for an API call                                         |\n\n## Response\n| Name                                                                        | Description                                                                           |\n|-----------------------------------------------------------------------------|---------------------------------------------------------------------------------------|\n| [`DeserializableType`](src/Response/Types/DeserializableType.php)           | Type handler used to deserialize Enums and DateTime                                   |\n| [`ErrorType`](src/Response/Types/ErrorType.php)                             | Type handler used to throw exceptions from responses                                  |\n| [`ResponseMultiType`](src/Response/Types/ResponseMultiType.php)             | Maps a group of types to response body                                                |\n| [`ResponseType`](src/Response/Types/ResponseType.php)                       | Maps a model to response body                                                         |\n| [`ResponseError`](src/Response/ResponseError.php)                           | Group of error types for response                                                     |\n| [`ResponseHandler`](src/Response/ResponseHandler.php)                       | Response handler for an API call that holds all the above response handling features  |\n| [`Context`](src/Response/Context.php)                                       | Holds the current context i.e. the current request, response and other needed details |\n\n## Logger\n| Name                                                                                        | Description                                                                                 |\n|---------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------|\n| [`ApiLogger`](src/Logger/ApiLogger.php)                                                     | Provides implementation for logging API requests and responses                              |\n| [`NullApiLogger`](src/Logger/NullApiLogger.php)                                             | Provides the default implementation for ApiLogger when no logging configuration is provided |\n| [`ConsoleLogger`](src/Logger/ConsoleLogger.php)                                             | A LoggerInterface implementation that log messages on console                               |\n| [`LoggerConstants`](src/Logger/LoggerConstants.php)                                         | Holds constants like NON_SENSITIVE_HEADERS, etc.                                            |\n| [`BaseHttpLoggingConfiguration`](src/Logger/Configuration/BaseHttpLoggingConfiguration.php) | Common configurations shared by request and response logging configurations                 |\n| [`LoggingConfiguration`](src/Logger/Configuration/LoggingConfiguration.php)                 | Provides client's logging configurations                                                    |\n| [`RequestConfiguration`](src/Logger/Configuration/RequestConfiguration.php)                 | Provides request's logging configurations                                                   |\n| [`ResponseConfiguration`](src/Logger/Configuration/ResponseConfiguration.php)               | Provides response's logging configurations                                                  |\n\n## TestCase\n| Name                                                                                 | Description                                                                   |\n|--------------------------------------------------------------------------------------|-------------------------------------------------------------------------------|\n| [`KeysAndValuesBodyMatcher`](src/TestCase/BodyMatchers/KeysAndValuesBodyMatcher.php) | Matches actual and expected body, considering both the keys and values        |\n| [`KeysBodyMatcher`](src/TestCase/BodyMatchers/KeysBodyMatcher.php)                   | Matches actual and expected body, considering just the keys                   |\n| [`NativeBodyMatcher`](src/TestCase/BodyMatchers/NativeBodyMatcher.php)               | A body matcher for native values like string, int etc                         |\n| [`RawBodyMatcher`](src/TestCase/BodyMatchers/RawBodyMatcher.php)                     | Exactly matches the body received to expected body                            |\n| [`HeadersMatcher`](src/TestCase/HeadersMatcher.php)                                  | Matches the headers received and the headers expected                         |\n| [`StatusCodeMatcher`](src/TestCase/StatusCodeMatcher.php)                            | Matches the HTTP status codes received to the expected ones                   |\n| [`CoreTestCase`](core-lib-php/src/TestCase/CoreTestCase.php)                         | Main class for a test case that performs assertions w/ all the above matchers |\n\n\n[packagist-url]: https://packagist.org/packages/apimatic/core\n[packagist-version]: https://img.shields.io/packagist/v/apimatic/core.svg?style=flat\n[packagist-downloads]: https://img.shields.io/packagist/dm/apimatic/core.svg?style=flat\n[test-badge]: https://github.com/apimatic/core-lib-php/actions/workflows/test.yml/badge.svg\n[test-url]: https://github.com/apimatic/core-lib-php/actions/workflows/test.yml\n[license-badge]: https://img.shields.io/badge/licence-MIT-blue\n[license-url]: LICENSE\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapimatic%2Fcore-lib-php","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fapimatic%2Fcore-lib-php","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapimatic%2Fcore-lib-php/lists"}