apimatic-core


Nameapimatic-core JSON
Version 0.2.14 PyPI version JSON
download
home_pagehttps://github.com/apimatic/core-lib-python
SummaryA library that contains core logic and utilities for consuming REST APIs using Python SDKs generated by APIMatic.
upload_time2024-06-04 07:31:59
maintainerNone
docs_urlNone
authorAPIMatic
requires_pythonNone
licenseMIT
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage
            # apimatic-core
[![PyPI][pypi-version]][apimatic-core-pypi-url]
[![Tests][test-badge]][test-url]
[![Test Coverage][test-coverage-url]][code-climate-url]
[![Licence][license-badge]][license-url]

## Introduction
The APIMatic Core libraries provide a stable runtime that powers all the functionality of SDKs. This includes functionality like the ability to create HTTP requests, handle responses, apply authentication schemes, convert API responses back to object instances, and validate user and server data.


## Installation
You will need Python 3.7-3.11 to support this package.

Simply run the command below to install the core library in your SDK. The core library will be added as a dependency your SDK.

```php
pip install apimatic-core
```
## API Call Classes
| Name                                                        | Description                                                           |
|-------------------------------------------------------------|-----------------------------------------------------------------------|
| [`RequestBuilder`](apimatic_core/request_builder.py)        | A builder class used to build an API Request                          |
| [`APICall`](apimatic_core/api_call.py)                      | A class used to create an API Call object                             |
| [`ResponseHandler`](apimatic_core/response_handler.py )     | Used to handle the response returned by the server                    |


## Authentication
| Name                                                               | Description                                                                          |
|--------------------------------------------------------------------|--------------------------------------------------------------------------------------|
| [`HeaderAuth`](apimatic_core/authentication/header_auth.py)        | A class supports HTTP authentication through HTTP Headers                            |
| [`QueryAuth`](apimatic_core/authentication/query_auth.py)          | A class supports HTTP authentication through query parameters                        |
| [`AuthGroup`](apimatic_core/authentication/multiple/auth_group.py) | A helper class to support  multiple authentication operation                         |
| [`And`](apimatic_core/authentication/multiple/and_auth_group.py)   | A helper class to support AND operation between multiple authentication types        |
| [`Or`](apimatic_core/authentication/multiple/or_auth_group.py)     | A helper class to support OR operation between multiple authentication  types        |
| [`Single`](apimatic_core/authentication/multiple/single_auth.py)   | A helper class to support single authentication                                      |


## Configurations
| Name                                                                             | Description                                                                          |
|----------------------------------------------------------------------------------|--------------------------------------------------------------------------------------|
| [`EndpointConfiguration`](apimatic_core/configurations/endpoint_configuration.py)| A class which hold the possible configurations for an endpoint                       |
| [`GlobalConfiguration`](apimatic_core/configurations/global_configuration.py )   | A class which hold the global configuration properties to make a successful Api Call |

## Decorators
| Name                                                         | Description                                                                          |
|--------------------------------------------------------------|--------------------------------------------------------------------------------------|
| [`LazyProperty`](apimatic_core/decorators/lazy_property.py)  | A decorator class for lazy instantiation                                             |

## Exceptions
| Name                                                                                 | Description                                                              |
|--------------------------------------------------------------------------------------|--------------------------------------------------------------------------|
| [`OneOfValidationException`](apimatic_core/exceptions/oneof_validation_exception.py) | An exception class for the failed validation of oneOf (union-type) cases |
| [`AnyOfValidationException`](apimatic_core/exceptions/anyof_validation_exception.py) | An exception class for the failed validation of anyOf (union-type) cases |
| [`AuthValidationException`](apimatic_core/exceptions/auth_validation_exception.py)   | An exception class for the failed validation of authentication schemes   |

## Factories
| Name                                                                      | Description                                                                 |
|---------------------------------------------------------------------------|-----------------------------------------------------------------------------|
| [`HttpResponseFactory`](apimatic_core/factories/http_response_factory.py) | A factory class to create an HTTP Response                                  |

## HTTP
| Name                                                                                        | Description                                                 |
|---------------------------------------------------------------------------------------------|-------------------------------------------------------------|
| [`HttpCallBack`](apimatic_core/factories/http_response_factory.py)                          | A factory class to create an HTTP Response                  |
| [`HttpClientConfiguration`](apimatic_core/http/configurations/http_client_configuration.py) | A class used for configuring the SDK by a user              |
| [`HttpRequest`](apimatic_core/http/request/http_request.py)                                 | A class which contains information about the HTTP Response  |
| [`ApiResponse`](apimatic_core/http/response/api_response.py)                                | A wrapper class for Api Response                            |
| [`HttpResponse`](apimatic_core/http/response/http_response.py)                              | A class which contains information about the HTTP Response  |

## Logging Configuration
| Name                                                                                                 | Description                                                 |
|------------------------------------------------------------------------------------------------------|-------------------------------------------------------------|
| [`ApiLoggingConfiguration`](apimatic_core/logger/configuration/api_logging_configuration.py)         | Holds overall logging configuration for logging an API call |
| [`ApiRequestLoggingConfiguration`](apimatic_core/logger/configuration/api_logging_configuration.py)  | Holds logging configuration for API request                 |
| [`ApiResponseLoggingConfiguration`](apimatic_core/logger/configuration/api_logging_configuration.py) | Holds logging configuration for API response                |


## Logger
| Name                                                      | Description                                                                                                                                                       |
|-----------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [`SdkLogger`](apimatic_core/logger/sdk_logger.py)         | Responsible for logging the request and response of an API call, it represents the default implementation of ApiLogger when there exist any logging configuration |
| [`NoneSdkLogger`](apimatic_core/logger/sdk_logger.py)     | Represents the default implementation for ApiLogger when no logging configuration is provided                                                                     |
| [`ConsoleLogger`](apimatic_core/logger/default_logger.py) | Represents the default implementation for Logger when no custom implementation is provided                                                                        |
| [`LoggerFactory`](apimatic_core/logger/sdk_logger.py)     | Responsible for providing the ApiLogger implementation (`SdkLogger` \| `NoneSdkLogger`) based on the logging configuration                                        |

## Types
| Name                                                                          | Description                                                                  |
|-------------------------------------------------------------------------------|------------------------------------------------------------------------------|
| [`SerializationFormats`](apimatic_core/types/array_serialization_format.py)   | An Enumeration of Array serialization formats                                |
| [`DateTimeFormat`](apimatic_core/types/datetime_format.py )                   | An Enumeration of Date Time formats                                          |
| [`ErrorCase`](apimatic_core/types/error_case.py )                             | A class to represent Exception types                                         |
| [`FileWrapper`](apimatic_core/types/file_wrapper.py)                          | A wrapper to allow passing in content type for file uploads                  |
| [`Parameter`](apimatic_core/types/parameter.py )                              | A class to represent information about a Parameter passed in an endpoint     |
| [`XmlAttributes`](apimatic_core/types/xml_attributes.py )                     | A class to represent information about a XML Parameter passed in an endpoint |
| [`OneOf`](apimatic_core/types/union_types/one_of.py )                         | A class to represent information about OneOf union types                     |
| [`AnyOf`](apimatic_core/types/union_types/any_of.py )                         | A class to represent information about AnyOf union types                     |
| [`LeafType`](apimatic_core/types/union_types/leaf_type.py )                   | A class to represent the case information in an OneOf or AnyOf union type    |

## Utilities
| Name                                                               | Description                                                                                              |
|--------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------|
| [`ApiHelper`](apimatic_core/utilities/api_helper.py)               | A Helper Class with various functions associated with making an API Call                                 |
| [`AuthHelper`](apimatic_core/utilities/auth_helper.py)             | A Helper Class with various functions associated with authentication in API Calls                        |
| [`ComparisonHelper`](apimatic_core/utilities/comparison_helper.py) | A Helper Class used for the comparison of expected and actual API response                               |
| [`FileHelper`](apimatic_core/utilities/file_helper.py)             | A Helper Class for files                                                                                 |
| [`XmlHelper`](apimatic_core/utilities/xml_helper.py )              | A Helper class that holds utility methods for xml serialization and deserialization.                     |
| [`DateTimeHelper`](apimatic_core/utilities/datetime_helper.py )    | A Helper class that holds utility methods for validation of different datetime formats.                  |
| [`UnionTypeHelper`](apimatic_core/utilities/union_type_helper.py ) | A Helper class that holds utility methods for deserialization and validation of OneOf/AnyOf union types. |

## Links
* [apimatic-core-interfaces](https://pypi.org/project/apimatic-core-interfaces/)


[pypi-version]: https://img.shields.io/pypi/v/apimatic-core
[apimatic-core-pypi-url]: https://pypi.org/project/apimatic-core/
[test-badge]: https://github.com/apimatic/core-lib-python/actions/workflows/test-runner.yml/badge.svg
[test-url]: https://github.com/apimatic/core-lib-python/actions/workflows/test-runner.yml
[code-climate-url]: https://codeclimate.com/github/apimatic/core-lib-python
[maintainability-url]: https://api.codeclimate.com/v1/badges/32e7abfdd4d27613ae76/maintainability
[test-coverage-url]: https://api.codeclimate.com/v1/badges/32e7abfdd4d27613ae76/test_coverage
[license-badge]: https://img.shields.io/badge/licence-MIT-blue
[license-url]: LICENSE

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/apimatic/core-lib-python",
    "name": "apimatic-core",
    "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/4e/e5/cc566e810ef8f9b845826f5ee196a5738fc9c9cdb61bde5420237c54c87c/apimatic_core-0.2.14.tar.gz",
    "platform": null,
    "description": "# apimatic-core\n[![PyPI][pypi-version]][apimatic-core-pypi-url]\n[![Tests][test-badge]][test-url]\n[![Test Coverage][test-coverage-url]][code-climate-url]\n[![Licence][license-badge]][license-url]\n\n## Introduction\nThe APIMatic Core libraries provide a stable runtime that powers all the functionality of SDKs. This includes functionality like the ability to create HTTP requests, handle responses, apply authentication schemes, convert API responses back to object instances, and validate user and server data.\n\n\n## Installation\nYou will need Python 3.7-3.11 to support this package.\n\nSimply run the command below to install the core library in your SDK. The core library will be added as a dependency your SDK.\n\n```php\npip install apimatic-core\n```\n## API Call Classes\n| Name                                                        | Description                                                           |\n|-------------------------------------------------------------|-----------------------------------------------------------------------|\n| [`RequestBuilder`](apimatic_core/request_builder.py)        | A builder class used to build an API Request                          |\n| [`APICall`](apimatic_core/api_call.py)                      | A class used to create an API Call object                             |\n| [`ResponseHandler`](apimatic_core/response_handler.py )     | Used to handle the response returned by the server                    |\n\n\n## Authentication\n| Name                                                               | Description                                                                          |\n|--------------------------------------------------------------------|--------------------------------------------------------------------------------------|\n| [`HeaderAuth`](apimatic_core/authentication/header_auth.py)        | A class supports HTTP authentication through HTTP Headers                            |\n| [`QueryAuth`](apimatic_core/authentication/query_auth.py)          | A class supports HTTP authentication through query parameters                        |\n| [`AuthGroup`](apimatic_core/authentication/multiple/auth_group.py) | A helper class to support  multiple authentication operation                         |\n| [`And`](apimatic_core/authentication/multiple/and_auth_group.py)   | A helper class to support AND operation between multiple authentication types        |\n| [`Or`](apimatic_core/authentication/multiple/or_auth_group.py)     | A helper class to support OR operation between multiple authentication  types        |\n| [`Single`](apimatic_core/authentication/multiple/single_auth.py)   | A helper class to support single authentication                                      |\n\n\n## Configurations\n| Name                                                                             | Description                                                                          |\n|----------------------------------------------------------------------------------|--------------------------------------------------------------------------------------|\n| [`EndpointConfiguration`](apimatic_core/configurations/endpoint_configuration.py)| A class which hold the possible configurations for an endpoint                       |\n| [`GlobalConfiguration`](apimatic_core/configurations/global_configuration.py )   | A class which hold the global configuration properties to make a successful Api Call |\n\n## Decorators\n| Name                                                         | Description                                                                          |\n|--------------------------------------------------------------|--------------------------------------------------------------------------------------|\n| [`LazyProperty`](apimatic_core/decorators/lazy_property.py)  | A decorator class for lazy instantiation                                             |\n\n## Exceptions\n| Name                                                                                 | Description                                                              |\n|--------------------------------------------------------------------------------------|--------------------------------------------------------------------------|\n| [`OneOfValidationException`](apimatic_core/exceptions/oneof_validation_exception.py) | An exception class for the failed validation of oneOf (union-type) cases |\n| [`AnyOfValidationException`](apimatic_core/exceptions/anyof_validation_exception.py) | An exception class for the failed validation of anyOf (union-type) cases |\n| [`AuthValidationException`](apimatic_core/exceptions/auth_validation_exception.py)   | An exception class for the failed validation of authentication schemes   |\n\n## Factories\n| Name                                                                      | Description                                                                 |\n|---------------------------------------------------------------------------|-----------------------------------------------------------------------------|\n| [`HttpResponseFactory`](apimatic_core/factories/http_response_factory.py) | A factory class to create an HTTP Response                                  |\n\n## HTTP\n| Name                                                                                        | Description                                                 |\n|---------------------------------------------------------------------------------------------|-------------------------------------------------------------|\n| [`HttpCallBack`](apimatic_core/factories/http_response_factory.py)                          | A factory class to create an HTTP Response                  |\n| [`HttpClientConfiguration`](apimatic_core/http/configurations/http_client_configuration.py) | A class used for configuring the SDK by a user              |\n| [`HttpRequest`](apimatic_core/http/request/http_request.py)                                 | A class which contains information about the HTTP Response  |\n| [`ApiResponse`](apimatic_core/http/response/api_response.py)                                | A wrapper class for Api Response                            |\n| [`HttpResponse`](apimatic_core/http/response/http_response.py)                              | A class which contains information about the HTTP Response  |\n\n## Logging Configuration\n| Name                                                                                                 | Description                                                 |\n|------------------------------------------------------------------------------------------------------|-------------------------------------------------------------|\n| [`ApiLoggingConfiguration`](apimatic_core/logger/configuration/api_logging_configuration.py)         | Holds overall logging configuration for logging an API call |\n| [`ApiRequestLoggingConfiguration`](apimatic_core/logger/configuration/api_logging_configuration.py)  | Holds logging configuration for API request                 |\n| [`ApiResponseLoggingConfiguration`](apimatic_core/logger/configuration/api_logging_configuration.py) | Holds logging configuration for API response                |\n\n\n## Logger\n| Name                                                      | Description                                                                                                                                                       |\n|-----------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| [`SdkLogger`](apimatic_core/logger/sdk_logger.py)         | Responsible for logging the request and response of an API call, it represents the default implementation of ApiLogger when there exist any logging configuration |\n| [`NoneSdkLogger`](apimatic_core/logger/sdk_logger.py)     | Represents the default implementation for ApiLogger when no logging configuration is provided                                                                     |\n| [`ConsoleLogger`](apimatic_core/logger/default_logger.py) | Represents the default implementation for Logger when no custom implementation is provided                                                                        |\n| [`LoggerFactory`](apimatic_core/logger/sdk_logger.py)     | Responsible for providing the ApiLogger implementation (`SdkLogger` \\| `NoneSdkLogger`) based on the logging configuration                                        |\n\n## Types\n| Name                                                                          | Description                                                                  |\n|-------------------------------------------------------------------------------|------------------------------------------------------------------------------|\n| [`SerializationFormats`](apimatic_core/types/array_serialization_format.py)   | An Enumeration of Array serialization formats                                |\n| [`DateTimeFormat`](apimatic_core/types/datetime_format.py )                   | An Enumeration of Date Time formats                                          |\n| [`ErrorCase`](apimatic_core/types/error_case.py )                             | A class to represent Exception types                                         |\n| [`FileWrapper`](apimatic_core/types/file_wrapper.py)                          | A wrapper to allow passing in content type for file uploads                  |\n| [`Parameter`](apimatic_core/types/parameter.py )                              | A class to represent information about a Parameter passed in an endpoint     |\n| [`XmlAttributes`](apimatic_core/types/xml_attributes.py )                     | A class to represent information about a XML Parameter passed in an endpoint |\n| [`OneOf`](apimatic_core/types/union_types/one_of.py )                         | A class to represent information about OneOf union types                     |\n| [`AnyOf`](apimatic_core/types/union_types/any_of.py )                         | A class to represent information about AnyOf union types                     |\n| [`LeafType`](apimatic_core/types/union_types/leaf_type.py )                   | A class to represent the case information in an OneOf or AnyOf union type    |\n\n## Utilities\n| Name                                                               | Description                                                                                              |\n|--------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------|\n| [`ApiHelper`](apimatic_core/utilities/api_helper.py)               | A Helper Class with various functions associated with making an API Call                                 |\n| [`AuthHelper`](apimatic_core/utilities/auth_helper.py)             | A Helper Class with various functions associated with authentication in API Calls                        |\n| [`ComparisonHelper`](apimatic_core/utilities/comparison_helper.py) | A Helper Class used for the comparison of expected and actual API response                               |\n| [`FileHelper`](apimatic_core/utilities/file_helper.py)             | A Helper Class for files                                                                                 |\n| [`XmlHelper`](apimatic_core/utilities/xml_helper.py )              | A Helper class that holds utility methods for xml serialization and deserialization.                     |\n| [`DateTimeHelper`](apimatic_core/utilities/datetime_helper.py )    | A Helper class that holds utility methods for validation of different datetime formats.                  |\n| [`UnionTypeHelper`](apimatic_core/utilities/union_type_helper.py ) | A Helper class that holds utility methods for deserialization and validation of OneOf/AnyOf union types. |\n\n## Links\n* [apimatic-core-interfaces](https://pypi.org/project/apimatic-core-interfaces/)\n\n\n[pypi-version]: https://img.shields.io/pypi/v/apimatic-core\n[apimatic-core-pypi-url]: https://pypi.org/project/apimatic-core/\n[test-badge]: https://github.com/apimatic/core-lib-python/actions/workflows/test-runner.yml/badge.svg\n[test-url]: https://github.com/apimatic/core-lib-python/actions/workflows/test-runner.yml\n[code-climate-url]: https://codeclimate.com/github/apimatic/core-lib-python\n[maintainability-url]: https://api.codeclimate.com/v1/badges/32e7abfdd4d27613ae76/maintainability\n[test-coverage-url]: https://api.codeclimate.com/v1/badges/32e7abfdd4d27613ae76/test_coverage\n[license-badge]: https://img.shields.io/badge/licence-MIT-blue\n[license-url]: LICENSE\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "A library that contains core logic and utilities for consuming REST APIs using Python SDKs generated by APIMatic.",
    "version": "0.2.14",
    "project_urls": {
        "Homepage": "https://github.com/apimatic/core-lib-python"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "4ceb242ab78f101c47b03900394e6366850d8a990d64a64322789b85097d481f",
                "md5": "7286a1c661a2003fdc66996478ecdda4",
                "sha256": "2f941929beaf8cf675b2c8e89b9a1698f1a16c317611767afe1fa97ec34834ff"
            },
            "downloads": -1,
            "filename": "apimatic_core-0.2.14-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "7286a1c661a2003fdc66996478ecdda4",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 120312,
            "upload_time": "2024-06-04T07:31:58",
            "upload_time_iso_8601": "2024-06-04T07:31:58.221623Z",
            "url": "https://files.pythonhosted.org/packages/4c/eb/242ab78f101c47b03900394e6366850d8a990d64a64322789b85097d481f/apimatic_core-0.2.14-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "4ee5cc566e810ef8f9b845826f5ee196a5738fc9c9cdb61bde5420237c54c87c",
                "md5": "50c1ab27ab405fc903a04d6e978ce88d",
                "sha256": "1cf18ddcefb25acc240c4daf430e4a80cbc17bf6e4726ad5169a84cb7dd691f3"
            },
            "downloads": -1,
            "filename": "apimatic_core-0.2.14.tar.gz",
            "has_sig": false,
            "md5_digest": "50c1ab27ab405fc903a04d6e978ce88d",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 82069,
            "upload_time": "2024-06-04T07:31:59",
            "upload_time_iso_8601": "2024-06-04T07:31:59.753330Z",
            "url": "https://files.pythonhosted.org/packages/4e/e5/cc566e810ef8f9b845826f5ee196a5738fc9c9cdb61bde5420237c54c87c/apimatic_core-0.2.14.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-06-04 07:31:59",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "apimatic",
    "github_project": "core-lib-python",
    "travis_ci": false,
    "coveralls": true,
    "github_actions": true,
    "requirements": [],
    "lcname": "apimatic-core"
}
        
Elapsed time: 0.76161s