apimatic-core-interfaces


Nameapimatic-core-interfaces JSON
Version 0.1.5 PyPI version JSON
download
home_pagehttps://github.com/apimatic/core-interfaces-python
SummaryAn abstract layer of the functionalities provided by apimatic-core-library, requests-client-adapter and APIMatic SDKs.
upload_time2024-05-13 06:06:27
maintainerNone
docs_urlNone
authorAPIMatic
requires_pythonNone
licenseMIT
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # apimatic-core-interfaces
[![PyPI][pypi-version]](https://pypi.org/project/apimatic-core-interfaces/)
[![Licence][license-badge]][license-url]

## Introduction
This project contains the abstract layer for APIMatic's core library. The purpose of creating interfaces is to separate out the functionalities needed by APIMatic's core library module. The goal is to support scalability and feature enhancement of the core library and the SDKs along with avoiding any breaking changes by reducing tight coupling between modules through the introduction of interfaces.

## Version supported 
Currenty APIMatic supports  `Python version 3.7 - 3.11`  hence the apimatic-core-interfaces will need the same versions to be supported.

## Installation 
Simply run the command below in your SDK as the apimatic-core-interfaces will be added as a dependency in the SDK.
```python
pip install apimatic-core-interfaces
```

## Interfaces
| Name                                                                        | Description                                                                               |
|-----------------------------------------------------------------------------|-------------------------------------------------------------------------------------------|
| [`HttpClient`](apimatic_core_interfaces/client/http_client.py)              | To save both Request and Response after the completion of response                        |
| [`ResponseFactory`](apimatic_core_interfaces/factories/response_factory.py) | To convert the client-adapter response into a custom HTTP response                        |
| [`Authentication`](apimatic_core_interfaces/types/authentication.py)        | To setup methods for the validation and application of the required authentication scheme |
| [`UnionType`](apimatic_core_interfaces/types/union_type.py)                 | To setup methods for the validation and deserialization of OneOf/AnyOf union types        |
| [`Logger`](apimatic_core_interfaces/logger/logger.py)                       | An interface for the generic logger facade                                                |
| [`ApiLogger`](apimatic_core_interfaces/logger/api_logger.py)                | An interface for logging API requests and responses                                       |

## Enumerations
| Name                                                                          | Description                                                     |
|-------------------------------------------------------------------------------|-----------------------------------------------------------------|
| [`HttpMethodEnum`](apimatic_core_interfaces/types/http_method_enum.py )       | Enumeration containig HTTP Methods (GET, POST, PATCH, DELETE)   |

[pypi-version]: https://img.shields.io/pypi/v/apimatic-core-interfaces
[license-badge]: https://img.shields.io/badge/licence-MIT-blue
[license-url]: LICENSE

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/apimatic/core-interfaces-python",
    "name": "apimatic-core-interfaces",
    "maintainer": null,
    "docs_url": null,
    "requires_python": null,
    "maintainer_email": null,
    "keywords": null,
    "author": "APIMatic",
    "author_email": "support@apimatic.io",
    "download_url": "https://files.pythonhosted.org/packages/a7/76/c87af838cd9b47c391e706cdc1a34b9367d92e9e104ca96382aacfe4d955/apimatic_core_interfaces-0.1.5.tar.gz",
    "platform": null,
    "description": "# apimatic-core-interfaces\n[![PyPI][pypi-version]](https://pypi.org/project/apimatic-core-interfaces/)\n[![Licence][license-badge]][license-url]\n\n## Introduction\nThis project contains the abstract layer for APIMatic's core library. The purpose of creating interfaces is to separate out the functionalities needed by APIMatic's core library module. The goal is to support scalability and feature enhancement of the core library and the SDKs along with avoiding any breaking changes by reducing tight coupling between modules through the introduction of interfaces.\n\n## Version supported \nCurrenty APIMatic supports  `Python version 3.7 - 3.11`  hence the apimatic-core-interfaces will need the same versions to be supported.\n\n## Installation \nSimply run the command below in your SDK as the apimatic-core-interfaces will be added as a dependency in the SDK.\n```python\npip install apimatic-core-interfaces\n```\n\n## Interfaces\n| Name                                                                        | Description                                                                               |\n|-----------------------------------------------------------------------------|-------------------------------------------------------------------------------------------|\n| [`HttpClient`](apimatic_core_interfaces/client/http_client.py)              | To save both Request and Response after the completion of response                        |\n| [`ResponseFactory`](apimatic_core_interfaces/factories/response_factory.py) | To convert the client-adapter response into a custom HTTP response                        |\n| [`Authentication`](apimatic_core_interfaces/types/authentication.py)        | To setup methods for the validation and application of the required authentication scheme |\n| [`UnionType`](apimatic_core_interfaces/types/union_type.py)                 | To setup methods for the validation and deserialization of OneOf/AnyOf union types        |\n| [`Logger`](apimatic_core_interfaces/logger/logger.py)                       | An interface for the generic logger facade                                                |\n| [`ApiLogger`](apimatic_core_interfaces/logger/api_logger.py)                | An interface for logging API requests and responses                                       |\n\n## Enumerations\n| Name                                                                          | Description                                                     |\n|-------------------------------------------------------------------------------|-----------------------------------------------------------------|\n| [`HttpMethodEnum`](apimatic_core_interfaces/types/http_method_enum.py )       | Enumeration containig HTTP Methods (GET, POST, PATCH, DELETE)   |\n\n[pypi-version]: https://img.shields.io/pypi/v/apimatic-core-interfaces\n[license-badge]: https://img.shields.io/badge/licence-MIT-blue\n[license-url]: LICENSE\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "An abstract layer of the functionalities provided by apimatic-core-library, requests-client-adapter and APIMatic SDKs.",
    "version": "0.1.5",
    "project_urls": {
        "Homepage": "https://github.com/apimatic/core-interfaces-python"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "d973d4f2fb23eecf2ee10056c1c7e96c6e12081c9244ef228a22820e0bbf636f",
                "md5": "8f9d0d9480d4fb577ae8359649c6b518",
                "sha256": "b239c544f688d845726795e8afcb8d64a0acd15682167d89cc60ff3cdbb0a19c"
            },
            "downloads": -1,
            "filename": "apimatic_core_interfaces-0.1.5-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "8f9d0d9480d4fb577ae8359649c6b518",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 7586,
            "upload_time": "2024-05-13T06:06:25",
            "upload_time_iso_8601": "2024-05-13T06:06:25.668191Z",
            "url": "https://files.pythonhosted.org/packages/d9/73/d4f2fb23eecf2ee10056c1c7e96c6e12081c9244ef228a22820e0bbf636f/apimatic_core_interfaces-0.1.5-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "a776c87af838cd9b47c391e706cdc1a34b9367d92e9e104ca96382aacfe4d955",
                "md5": "e51aacffb689836b2240a4beb31eeabf",
                "sha256": "f817de1177ed7ffe79490bbb9e92474c4646423d95d7558d16f89aed0dab0812"
            },
            "downloads": -1,
            "filename": "apimatic_core_interfaces-0.1.5.tar.gz",
            "has_sig": false,
            "md5_digest": "e51aacffb689836b2240a4beb31eeabf",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 5553,
            "upload_time": "2024-05-13T06:06:27",
            "upload_time_iso_8601": "2024-05-13T06:06:27.132209Z",
            "url": "https://files.pythonhosted.org/packages/a7/76/c87af838cd9b47c391e706cdc1a34b9367d92e9e104ca96382aacfe4d955/apimatic_core_interfaces-0.1.5.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-05-13 06:06:27",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "apimatic",
    "github_project": "core-interfaces-python",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "apimatic-core-interfaces"
}
        
Elapsed time: 0.32999s