[![published](https://static.production.devnetcloud.com/codeexchange/assets/images/devnet-published.svg)](https://developer.cisco.com/codeexchange/github/repo/aatikturk/py-viptela)
# py_viptela
### A Python SDK for Cisco SD-WAN vManage API(20.6.2)
This is a wrapper around Cisco's vManage API. All endpoints in the API are implemented. There's a similar solution provided by Cisco and can be accessed [from DevNet website](https://developer.cisco.com/codeexchange/github/repo/CiscoDevNet/python-viptela/)
Also from [github](https://github.com/CiscoDevNet/python-viptela)
There's a separate repo for a postman collection to use with vManage API. That collection included all endpoints and can be found [here](https://github.com/aatikturk/Cisco-SD-WAN-Full-Postman-Collection)
* #### Why another solution?
It's a great way to learn new things by building things.
* #### Is it completed or a work-in-progress project?
This started as a hobby project and still in progress.
* #### How can I use this?
A How-To document will be available after phase-1, which is implementing all the API endpoints, is completed.
* #### Contributions?
Highly appreciated and welcome.
All Endpoints in vManage API are implemented using the vmanage.json file available through vmanage/apidocs page as a reference
### How to install using pip
```
pip install py-viptela
```
### How to Use
* Clone this repo into your computer.
```
git clone https://github.com/aatikturk/py-viptela
```
* Change directory to "py-viptela"
```
cd py-viptela
```
* Import vmanage module and initiate an instance, and import any api module
Required parameters are as follows:
host: Ip address of the vManage
port: port to access vmanage
username: vManage username
password: vManage password
```
>>>from py_viptela.vmanage import Vmanage
>>>from py_viptela import api
>>>
>>>vmanage = Vmanage(host='198.18.1.10', port=443, username='admin', password='testpassword')
>>>vmanage.login()
```
You're ready to make requests using api endpoints.
Example: Get all users from the vManage
```
>>>
>>>users = api.admin.user.findUsers(vmanage)
>>>
>>>users
[{'userName': 'admin', 'locale': 'en_US', 'group': []},
{'userName': 'dclouddemo',
'description': 'Administrator',
'locale': 'en_US',
'resGroupName': 'global',
'group': ['netadmin']}]
```
Raw data
{
"_id": null,
"home_page": "https://github.com/aatikturk/py_viptela",
"name": "py-viptela",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3",
"maintainer_email": "",
"keywords": "",
"author": "Adem Atikturk",
"author_email": "aatikturk@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/09/04/2a2e863b3014600ed5c322484a85e8a576cb7183025fb2c65f58ed97c77c/py_viptela-0.2.9.8.5.tar.gz",
"platform": null,
"description": "[![published](https://static.production.devnetcloud.com/codeexchange/assets/images/devnet-published.svg)](https://developer.cisco.com/codeexchange/github/repo/aatikturk/py-viptela)\r\n\r\n# py_viptela\r\n### A Python SDK for Cisco SD-WAN vManage API(20.6.2)\r\n\r\nThis is a wrapper around Cisco's vManage API. All endpoints in the API are implemented. There's a similar solution provided by Cisco and can be accessed [from DevNet website](https://developer.cisco.com/codeexchange/github/repo/CiscoDevNet/python-viptela/)\r\n\r\nAlso from [github](https://github.com/CiscoDevNet/python-viptela)\r\n\r\nThere's a separate repo for a postman collection to use with vManage API. That collection included all endpoints and can be found [here](https://github.com/aatikturk/Cisco-SD-WAN-Full-Postman-Collection)\r\n\r\n* #### Why another solution?\r\n It's a great way to learn new things by building things.\r\n\r\n* #### Is it completed or a work-in-progress project?\r\n This started as a hobby project and still in progress. \r\n \r\n* #### How can I use this?\r\n A How-To document will be available after phase-1, which is implementing all the API endpoints, is completed.\r\n\r\n* #### Contributions?\r\n Highly appreciated and welcome.\r\n \r\n\r\nAll Endpoints in vManage API are implemented using the vmanage.json file available through vmanage/apidocs page as a reference\r\n\r\n### How to install using pip\r\n\r\n```\r\npip install py-viptela\r\n```\r\n\r\n\r\n### How to Use\r\n\r\n* Clone this repo into your computer.\r\n```\r\ngit clone https://github.com/aatikturk/py-viptela\r\n```\r\n\r\n* Change directory to \"py-viptela\"\r\n```\r\ncd py-viptela\r\n```\r\n\r\n* Import vmanage module and initiate an instance, and import any api module\r\n Required parameters are as follows:\r\n host: Ip address of the vManage\r\n port: port to access vmanage\r\n username: vManage username\r\n password: vManage password\r\n\r\n```\r\n>>>from py_viptela.vmanage import Vmanage\r\n>>>from py_viptela import api\r\n>>>\r\n>>>vmanage = Vmanage(host='198.18.1.10', port=443, username='admin', password='testpassword')\r\n>>>vmanage.login()\r\n```\r\n\r\nYou're ready to make requests using api endpoints. \r\n\r\nExample: Get all users from the vManage\r\n\r\n```\r\n>>>\r\n>>>users = api.admin.user.findUsers(vmanage)\r\n>>>\r\n>>>users\r\n[{'userName': 'admin', 'locale': 'en_US', 'group': []},\r\n {'userName': 'dclouddemo',\r\n 'description': 'Administrator',\r\n 'locale': 'en_US',\r\n 'resGroupName': 'global',\r\n 'group': ['netadmin']}]\r\n```\r\n",
"bugtrack_url": null,
"license": "GNU General Public License v2.0",
"summary": "A Python wrapper around Cisco vManage API",
"version": "0.2.9.8.5",
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "897a82d3a44e7193a9cceba09580cac02539b15e5cca2ece482883a3a0a4f4a1",
"md5": "a9fa0f9055b0d5af73fdde7714884fce",
"sha256": "0d689bf9ce4ad553c1e96fe912bbe87e4f653c50538a904a34c4482e75bcf9d0"
},
"downloads": -1,
"filename": "py_viptela-0.2.9.8.5-py3-none-any.whl",
"has_sig": false,
"md5_digest": "a9fa0f9055b0d5af73fdde7714884fce",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3",
"size": 192775,
"upload_time": "2023-01-22T16:43:00",
"upload_time_iso_8601": "2023-01-22T16:43:00.776299Z",
"url": "https://files.pythonhosted.org/packages/89/7a/82d3a44e7193a9cceba09580cac02539b15e5cca2ece482883a3a0a4f4a1/py_viptela-0.2.9.8.5-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "09042a2e863b3014600ed5c322484a85e8a576cb7183025fb2c65f58ed97c77c",
"md5": "c18c057c458af8b7ff2dc711853d5cd1",
"sha256": "9931a4653b0cf6b88588cfe14a4aa4dd2a811979aa83dcee58881a952f72aaa3"
},
"downloads": -1,
"filename": "py_viptela-0.2.9.8.5.tar.gz",
"has_sig": false,
"md5_digest": "c18c057c458af8b7ff2dc711853d5cd1",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3",
"size": 84033,
"upload_time": "2023-01-22T16:43:03",
"upload_time_iso_8601": "2023-01-22T16:43:03.683121Z",
"url": "https://files.pythonhosted.org/packages/09/04/2a2e863b3014600ed5c322484a85e8a576cb7183025fb2c65f58ed97c77c/py_viptela-0.2.9.8.5.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-01-22 16:43:03",
"github": true,
"gitlab": false,
"bitbucket": false,
"github_user": "aatikturk",
"github_project": "py_viptela",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "py-viptela"
}