# exonetapi
Python 3 library for the Exonet API.
[![Latest Version on Packagist][ico-version]][link-pypi]
[![Python Versions][ico-pyversions]][link-pypi]
[![Software License][ico-license]](LICENSE.md)
## Install
Install using pip:
```bash
pip install exonetapi
```
## Usage
Example to get the user details of the authorised user:
```py
from exonetapi import Client
# Create a new Client.
client = Client('https://api.exonet.nl')
# Authorize with a personal access token.
client.authenticator.set_token('<YOUR_TOKEN>')
# Make an API call. Get details of the authorized user.
user_details = client.resource('me').get()
# Print user's name.
print('Autorized as: {name}'.format(
name=user_details.attribute('name')
))
```
See the `/docs` directory for complete documentation and additional code snippets.
## Examples
The `/examples` directory contains ready to use scripts to help you get started. These examples can be executed with your personal access token. One of them gets a ticket with it's emails and prints the details::
```
$ python examples/ticket_details.py <YOUR-TOKEN>
```
This should make two API calls and print the ticket and email details for one of your tickets.
## Change log
Please see [releases][link-releases] for more information on what has changed recently.
# Contributing
When contributing to this repository, please first discuss the change you wish
to make via issue, email, or any other method with the owners of this repository
before making a change.
Please note we have a code of conduct, please follow it in all your interactions
with the project.
### Issues and feature requests
You've found a bug in the source code, a mistake in the documentation or maybe
you'd like a new feature? You can help us by submitting an issue to our
[GitHub Repository][github]. Before you create an issue, make sure you search
the archive, maybe your question was already answered.
Even better: You could submit a pull request with a fix / new feature!
### Pull request process
1. Search our repository for open or closed [pull requests][prs] that relates
to your submission. You don't want to duplicate effort.
2. You may merge the pull request in once you have the sign-off of two other
developers, or if you do not have permission to do that, you may request
the second reviewer to merge it for you.
## Setting up development environment
This Python project is fully managed using the [Poetry][poetry] dependency
manager.
You need at least:
- Python 3.8+
- [Poetry][poetry-install]
Install all packages, including all development requirements:
```bash
poetry install
```
Poetry creates by default an virtual environment where it installs all
necessary pip packages, to enter or exit the venv run the following commands:
```bash
poetry shell
exit
```
*Now you're all set to get started!*
To run the Python tests:
```bash
poetry run pytest
```
To run the bandit checks:
```bash
poetry run bandit
```
## Security
If you discover any security related issues please email [development@exonet.nl](mailto:development@exonet.nl) instead
of using the issue tracker.
## Credits
- [Exonet][link-author]
- [All Contributors][link-contributors]
## License
[MIT License](LICENSE.md)
[ico-version]: https://img.shields.io/pypi/v/exonetapi.svg?style=flat-square
[ico-license]: https://img.shields.io/pypi/l/exonetapi.svg?style=flat-square
[ico-pyversions]: https://img.shields.io/pypi/pyversions/exonetapi.svg?style=flat-square
[github]: https://github.com/exonet/exonet-api-python/issues
[prs]: https://github.com/exonet/exonet-api-python/pulls
[link-pypi]: https://pypi.org/project/exonetapi/
[link-author]: https://github.com/exonet
[link-releases]: https://github.com/exonet/exonet-api-python/releases
[link-contributors]: ../../contributors
[poetry-install]: https://python-poetry.org/docs/#installation
[poetry]: https://python-poetry.org
[pre-commit]: https://pre-commit.com
Raw data
{
"_id": null,
"home_page": "https://github.com/exonet/exonet-api-python",
"name": "exonetapi",
"maintainer": "Exonet",
"docs_url": null,
"requires_python": ">=3.8,<4.0",
"maintainer_email": "development@exonet.nl",
"keywords": "async,client,exonet,exonetapi",
"author": "Exonet",
"author_email": "development@exonet.nl",
"download_url": "https://files.pythonhosted.org/packages/85/08/b7d737089effcbe3a169ab8f394dff8a7c627a5a4fd47ef82475c08c6083/exonetapi-4.0.0.tar.gz",
"platform": null,
"description": "# exonetapi\nPython 3 library for the Exonet API.\n\n[![Latest Version on Packagist][ico-version]][link-pypi]\n[![Python Versions][ico-pyversions]][link-pypi]\n[![Software License][ico-license]](LICENSE.md)\n\n## Install\nInstall using pip:\n\n```bash\npip install exonetapi\n```\n\n## Usage\nExample to get the user details of the authorised user:\n\n```py\nfrom exonetapi import Client\n\n# Create a new Client.\nclient = Client('https://api.exonet.nl')\n\n# Authorize with a personal access token.\nclient.authenticator.set_token('<YOUR_TOKEN>')\n\n# Make an API call. Get details of the authorized user.\nuser_details = client.resource('me').get()\n\n# Print user's name.\nprint('Autorized as: {name}'.format(\n name=user_details.attribute('name')\n))\n```\n\nSee the `/docs` directory for complete documentation and additional code snippets.\n\n## Examples\n\nThe `/examples` directory contains ready to use scripts to help you get started. These examples can be executed with your personal access token. One of them gets a ticket with it's emails and prints the details::\n\n```\n$ python examples/ticket_details.py <YOUR-TOKEN>\n```\nThis should make two API calls and print the ticket and email details for one of your tickets.\n\n## Change log\n\nPlease see [releases][link-releases] for more information on what has changed recently.\n\n# Contributing\n\nWhen contributing to this repository, please first discuss the change you wish\nto make via issue, email, or any other method with the owners of this repository\nbefore making a change.\n\nPlease note we have a code of conduct, please follow it in all your interactions\nwith the project.\n\n### Issues and feature requests\n\nYou've found a bug in the source code, a mistake in the documentation or maybe\nyou'd like a new feature? You can help us by submitting an issue to our\n[GitHub Repository][github]. Before you create an issue, make sure you search\nthe archive, maybe your question was already answered.\n\nEven better: You could submit a pull request with a fix / new feature!\n\n### Pull request process\n\n1. Search our repository for open or closed [pull requests][prs] that relates\n to your submission. You don't want to duplicate effort.\n\n2. You may merge the pull request in once you have the sign-off of two other\n developers, or if you do not have permission to do that, you may request\n the second reviewer to merge it for you.\n\n## Setting up development environment\n\nThis Python project is fully managed using the [Poetry][poetry] dependency\nmanager.\n\nYou need at least:\n\n- Python 3.8+\n- [Poetry][poetry-install]\n\nInstall all packages, including all development requirements:\n\n```bash\npoetry install\n```\n\nPoetry creates by default an virtual environment where it installs all\nnecessary pip packages, to enter or exit the venv run the following commands:\n\n```bash\npoetry shell\nexit\n```\n\n*Now you're all set to get started!*\n\nTo run the Python tests:\n\n```bash\npoetry run pytest\n```\n\nTo run the bandit checks:\n\n```bash\npoetry run bandit\n```\n\n\n## Security\n\nIf you discover any security related issues please email [development@exonet.nl](mailto:development@exonet.nl) instead\nof using the issue tracker.\n\n\n## Credits\n\n- [Exonet][link-author]\n- [All Contributors][link-contributors]\n\n\n## License\n\n[MIT License](LICENSE.md)\n\n[ico-version]: https://img.shields.io/pypi/v/exonetapi.svg?style=flat-square\n[ico-license]: https://img.shields.io/pypi/l/exonetapi.svg?style=flat-square\n[ico-pyversions]: https://img.shields.io/pypi/pyversions/exonetapi.svg?style=flat-square\n\n[github]: https://github.com/exonet/exonet-api-python/issues\n[prs]: https://github.com/exonet/exonet-api-python/pulls\n\n[link-pypi]: https://pypi.org/project/exonetapi/\n[link-author]: https://github.com/exonet\n[link-releases]: https://github.com/exonet/exonet-api-python/releases\n[link-contributors]: ../../contributors\n\n[poetry-install]: https://python-poetry.org/docs/#installation\n[poetry]: https://python-poetry.org\n[pre-commit]: https://pre-commit.com\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Library to interact with the Exonet API.",
"version": "4.0.0",
"project_urls": {
"Documentation": "https://github.com/exonet/exonet-api-python",
"Homepage": "https://github.com/exonet/exonet-api-python",
"Repository": "https://github.com/exonet/exonet-api-python"
},
"split_keywords": [
"async",
"client",
"exonet",
"exonetapi"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "065d05dc6623895ee960207877b7a2dd71550e712d08a823f3bf1b77abf0f511",
"md5": "9afe368191a57dbc7814433005ecd701",
"sha256": "be2a807776fa56e86a2f541e394508c48c2d30ceb91dfca78e2f583050723cd6"
},
"downloads": -1,
"filename": "exonetapi-4.0.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "9afe368191a57dbc7814433005ecd701",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8,<4.0",
"size": 15071,
"upload_time": "2023-10-06T09:01:38",
"upload_time_iso_8601": "2023-10-06T09:01:38.201311Z",
"url": "https://files.pythonhosted.org/packages/06/5d/05dc6623895ee960207877b7a2dd71550e712d08a823f3bf1b77abf0f511/exonetapi-4.0.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "8508b7d737089effcbe3a169ab8f394dff8a7c627a5a4fd47ef82475c08c6083",
"md5": "d90d1e6a3fcdcf1bb3a76b17d14990ce",
"sha256": "29e9ffef45b4bd905a44c4fdbf1a146a2a656947bed18cd717555500401c9c5b"
},
"downloads": -1,
"filename": "exonetapi-4.0.0.tar.gz",
"has_sig": false,
"md5_digest": "d90d1e6a3fcdcf1bb3a76b17d14990ce",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8,<4.0",
"size": 12254,
"upload_time": "2023-10-06T09:01:39",
"upload_time_iso_8601": "2023-10-06T09:01:39.278019Z",
"url": "https://files.pythonhosted.org/packages/85/08/b7d737089effcbe3a169ab8f394dff8a7c627a5a4fd47ef82475c08c6083/exonetapi-4.0.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-10-06 09:01:39",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "exonet",
"github_project": "exonet-api-python",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "exonetapi"
}