# Isogeo API Python SDK
![PyPI](https://img.shields.io/pypi/v/isogeo-pysdk.svg?style=flat-square) ![PyPI - Python Version](https://img.shields.io/pypi/pyversions/isogeo-pysdk?style=flat-square)
[![Build Status](https://dev.azure.com/isogeo/Python%20SDK/_apis/build/status/isogeo.isogeo-api-py-minsdk?branchName=master)](https://dev.azure.com/isogeo/Python%20SDK/_build/latest?definitionId=3&branchName=master)
![Azure DevOps coverage](https://img.shields.io/azure-devops/coverage/isogeo/Python%20SDK/3?style=flat-square)
[![Documentation Status](https://readthedocs.org/projects/isogeo-api-pysdk/badge/?version=latest)](https://isogeo-api-pysdk.readthedocs.io/en/latest/?badge=latest) [![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
A Python package to use Isogeo REST API.
## Requirements
Isogeo API requires oAuth2 authentication. To obtain credentials, send us your request by email [projects+api@isogeo.com](mailto:projects+api@isogeo.com).
Based on the well known [`requests`](https://github.com/requests/requests) package and the extension [`requests-oauthlib`](https://github.com/requests/requests-oauthlib).
## Documentation
- [Package manual and autogenerated modules doc](https://isogeo-api-pysdk.readthedocs.io)
- [Isogeo API](http://help.isogeo.com/api/)
- [Contribution guidelines (FR)](https://github.com/isogeo/isogeo-api-py-minsdk/wiki/)
## Usage in a nutshell
```powershell
python -m pip install --user isogeo-pysdk
# or using pipenv
python -m pipenv install isogeo-pysdk
```
### Quickstart
```python
from isogeo_pysdk import Isogeo
# authenticate your client application
isogeo = Isogeo(client_id=app_id,
client_secret=app_secret)
# get the token
isogeo.connect()
# search within catalogs shared to the application
search = isogeo.search()
# print some statements
print("Search query parameters: ", search.query)
print("Total count of metadatas shared: ", search.total)
print("Count of resources got by request: {}\n".format(len(search.results)))
# close the session when you finish
isogeo.close()
```
Samples are available in `the source repository <https://github.com/isogeo/isogeo-api-py-minsdk/tree/master/isogeo_pysdk/samples>`_.
### Tests
Tests are performed for each published commit:
- by [Azure Pipelines](https://dev.azure.com/isogeo/Python%20SDK/_build)
```powershell
python -m pip install --upgrade -r tests/requirements_test.txt
python -m pytest
```
Or using the [included Powershell script](https://github.com/isogeo/isogeo-api-py-minsdk/blob/master/tool_test_coverage.ps1):
```powershell
.\tool_test_coverage.ps1
```
### Build
To package and upload:
```powershell
.\tool_build_upload.ps1
```
To build docs:
```powershell
.\tool_docs_build.ps1
```
Raw data
{
"_id": null,
"home_page": "https://github.com/isogeo/isogeo-api-py-minsdk/",
"name": "isogeo-pysdk",
"maintainer": null,
"docs_url": null,
"requires_python": "<4,>=3.7",
"maintainer_email": null,
"keywords": "GIS metadata INSPIRE Isogeo API REST geographical data ISO19139",
"author": "Isogeo",
"author_email": "contact@isogeo.com",
"download_url": "https://files.pythonhosted.org/packages/4d/ca/5ec77271508d7226e73ec24e16b3482c0011a057899c92a87642c645736b/isogeo_pysdk-3.8.4.tar.gz",
"platform": null,
"description": "# Isogeo API Python SDK\r\n\r\n![PyPI](https://img.shields.io/pypi/v/isogeo-pysdk.svg?style=flat-square) ![PyPI - Python Version](https://img.shields.io/pypi/pyversions/isogeo-pysdk?style=flat-square)\r\n\r\n[![Build Status](https://dev.azure.com/isogeo/Python%20SDK/_apis/build/status/isogeo.isogeo-api-py-minsdk?branchName=master)](https://dev.azure.com/isogeo/Python%20SDK/_build/latest?definitionId=3&branchName=master)\r\n![Azure DevOps coverage](https://img.shields.io/azure-devops/coverage/isogeo/Python%20SDK/3?style=flat-square)\r\n\r\n[![Documentation Status](https://readthedocs.org/projects/isogeo-api-pysdk/badge/?version=latest)](https://isogeo-api-pysdk.readthedocs.io/en/latest/?badge=latest) [![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)\r\n\r\nA Python package to use Isogeo REST API.\r\n\r\n## Requirements\r\n\r\nIsogeo API requires oAuth2 authentication. To obtain credentials, send us your request by email [projects+api@isogeo.com](mailto:projects+api@isogeo.com).\r\n\r\nBased on the well known [`requests`](https://github.com/requests/requests) package and the extension [`requests-oauthlib`](https://github.com/requests/requests-oauthlib).\r\n\r\n## Documentation\r\n\r\n- [Package manual and autogenerated modules doc](https://isogeo-api-pysdk.readthedocs.io)\r\n- [Isogeo API](http://help.isogeo.com/api/)\r\n- [Contribution guidelines (FR)](https://github.com/isogeo/isogeo-api-py-minsdk/wiki/)\r\n\r\n## Usage in a nutshell\r\n\r\n```powershell\r\npython -m pip install --user isogeo-pysdk\r\n# or using pipenv\r\npython -m pipenv install isogeo-pysdk\r\n```\r\n\r\n### Quickstart\r\n\r\n```python\r\nfrom isogeo_pysdk import Isogeo\r\n\r\n# authenticate your client application\r\nisogeo = Isogeo(client_id=app_id,\r\n client_secret=app_secret)\r\n\r\n# get the token\r\nisogeo.connect()\r\n\r\n# search within catalogs shared to the application\r\nsearch = isogeo.search()\r\n\r\n# print some statements\r\nprint(\"Search query parameters: \", search.query)\r\nprint(\"Total count of metadatas shared: \", search.total)\r\nprint(\"Count of resources got by request: {}\\n\".format(len(search.results)))\r\n\r\n# close the session when you finish\r\nisogeo.close()\r\n```\r\n\r\nSamples are available in `the source repository <https://github.com/isogeo/isogeo-api-py-minsdk/tree/master/isogeo_pysdk/samples>`_.\r\n\r\n### Tests\r\n\r\nTests are performed for each published commit:\r\n\r\n- by [Azure Pipelines](https://dev.azure.com/isogeo/Python%20SDK/_build)\r\n\r\n```powershell\r\npython -m pip install --upgrade -r tests/requirements_test.txt\r\npython -m pytest\r\n```\r\n\r\nOr using the [included Powershell script](https://github.com/isogeo/isogeo-api-py-minsdk/blob/master/tool_test_coverage.ps1):\r\n\r\n```powershell\r\n.\\tool_test_coverage.ps1\r\n```\r\n\r\n### Build\r\n\r\nTo package and upload:\r\n\r\n```powershell\r\n.\\tool_build_upload.ps1\r\n```\r\n\r\nTo build docs:\r\n\r\n```powershell\r\n.\\tool_docs_build.ps1\r\n```\r\n",
"bugtrack_url": null,
"license": "LGPL3",
"summary": "API wrapper for the Isogeo REST API",
"version": "3.8.4",
"project_urls": {
"Bug Reports": "https://github.com/isogeo/isogeo-api-py-minsdk/issues/",
"Docs": "https://isogeo-api-pysdk.readthedocs.io/",
"Homepage": "https://github.com/isogeo/isogeo-api-py-minsdk/",
"Isogeo API": "http://help.isogeo.com/api/",
"Source": "https://github.com/isogeo/isogeo-api-py-minsdk/"
},
"split_keywords": [
"gis",
"metadata",
"inspire",
"isogeo",
"api",
"rest",
"geographical",
"data",
"iso19139"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "81064957c5d8653e8c344bcff72c86257ee7e855de76694c0057c36daa2bfd4a",
"md5": "f2ed7d651e806a4b52b132c23563463e",
"sha256": "41c755d9b40bee6a6e0b0b051631dd6737dcb39cea7c9b4b05e0d2f4b5b28db3"
},
"downloads": -1,
"filename": "isogeo_pysdk-3.8.4-py3-none-any.whl",
"has_sig": false,
"md5_digest": "f2ed7d651e806a4b52b132c23563463e",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4,>=3.7",
"size": 222779,
"upload_time": "2024-07-12T18:10:21",
"upload_time_iso_8601": "2024-07-12T18:10:21.240301Z",
"url": "https://files.pythonhosted.org/packages/81/06/4957c5d8653e8c344bcff72c86257ee7e855de76694c0057c36daa2bfd4a/isogeo_pysdk-3.8.4-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "4dca5ec77271508d7226e73ec24e16b3482c0011a057899c92a87642c645736b",
"md5": "bce8d3e54a29eb959e07b5a80089a8d4",
"sha256": "57255e365efac51e0844004cb2c001e7cbf25ca5bf3a1fb4371cba81042a9ba0"
},
"downloads": -1,
"filename": "isogeo_pysdk-3.8.4.tar.gz",
"has_sig": false,
"md5_digest": "bce8d3e54a29eb959e07b5a80089a8d4",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4,>=3.7",
"size": 168175,
"upload_time": "2024-07-12T18:10:23",
"upload_time_iso_8601": "2024-07-12T18:10:23.219647Z",
"url": "https://files.pythonhosted.org/packages/4d/ca/5ec77271508d7226e73ec24e16b3482c0011a057899c92a87642c645736b/isogeo_pysdk-3.8.4.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-07-12 18:10:23",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "isogeo",
"github_project": "isogeo-api-py-minsdk",
"travis_ci": false,
"coveralls": true,
"github_actions": true,
"requirements": [
{
"name": "setuptools",
"specs": []
},
{
"name": "wheel",
"specs": []
},
{
"name": "requests",
"specs": [
[
">=",
"2.22.0"
]
]
},
{
"name": "requests-oauthlib",
"specs": [
[
">=",
"1.2.0"
]
]
}
],
"lcname": "isogeo-pysdk"
}