{"id":23396,"library":"catalystwan","title":"Cisco Catalyst WAN SDK","description":"Official Python SDK for automating Cisco Catalyst SD-WAN (Viptela) solutions. Current version 0.41.5, released monthly. Supports Python 3.8+ and provides both synchronous and asynchronous clients to interact with vManage API endpoints, including device configuration, policy management, templates, and monitoring.","status":"active","version":"0.41.5","language":"python","source_language":"en","source_url":"https://github.com/cisco-en-programmability/catalystwan-sdk","tags":["cisco","catalystwan","sd-wan","viptela","network-automation"],"install":[{"cmd":"pip install catalystwan","lang":"bash","label":"Install from PyPI"}],"dependencies":[{"reason":"HTTP client used by async session","package":"httpx","optional":false},{"reason":"HTTP client used by synchronous session","package":"requests","optional":false}],"imports":[{"note":"ManagerSession is not exposed at package root; must import from submodule.","wrong":"from catalystwan import ManagerSession","symbol":"ManagerSession","correct":"from catalystwan.session import ManagerSession"},{"note":"Same as above - function is in session module.","wrong":"from catalystwan import create_manager_session","symbol":"create_manager_session","correct":"from catalystwan.session import create_manager_session"}],"quickstart":{"code":"from catalystwan.session import create_manager_session\nimport os\n\nurl = os.environ.get('VMANAGE_URL', 'https://10.0.0.1')\nusername = os.environ.get('VMANAGE_USERNAME', 'admin')\npassword = os.environ.get('VMANAGE_PASSWORD', 'admin')\n\nwith create_manager_session(url=url, username=username, password=password) as session:\n    devices = session.api.devices.get()\n    print(len(devices))","lang":"python","description":"Authenticate and list devices using synchronous session."},"warnings":[{"fix":"Update imports: from catalystwan.session import ManagerSession, create_manager_session","message":"In v0.41.0, the import path for session functions changed. Use 'catalystwan.session' instead of 'catalystwan'.","severity":"breaking","affected_versions":">=0.41.0"},{"fix":"Replace ManagerSession() with create_manager_session() in a with statement.","message":"The 'ManagerSession' class is deprecated in favor of 'create_manager_session' context manager.","severity":"deprecated","affected_versions":">=0.41.0"},{"fix":"Use full URL like 'https://vmanage.example.com:8443' if non-default port.","message":"vManage API requires port 443; do not include port in URL if default, but if custom port needed, include it as :port.","severity":"gotcha","affected_versions":"all"}],"env_vars":null,"search_vec":"'0.41.5':19 '3.8':24 'api':36 'asynchron':30 'autom':9,54 'catalyst':2,11 'catalystwan':47 'cisco':1,10,46 'client':31 'configur':40 'current':17 'devic':39 'endpoint':37 'includ':38 'interact':33 'manag':42 'monitor':45 'month':21 'network':53 'network-autom':52 'offici':5 'polici':41 'provid':26 'python':6,23 'releas':20 'sd':13,49 'sd-wan':12,48 'sdk':4,7 'solut':16 'support':22 'synchron':28 'templat':43 'version':18 'viptela':15,51 'vmanag':35 'wan':3,14,50","created_at":"2026-05-01T08:07:33.523480+00:00","updated_at":"2026-05-01T08:07:33.523480+00:00","problems":[{"fix":"Run: pip install catalystwan","cause":"Package not installed.","error":"ModuleNotFoundError: No module named 'catalystwan'"},{"fix":"Use: from catalystwan.session import ManagerSession","cause":"Incorrect import path - ManagerSession is not at package root.","error":"ImportError: cannot import name 'ManagerSession' from 'catalystwan'"},{"fix":"Verify VMANAGE_URL, VMANAGE_USERNAME, VMANAGE_PASSWORD environment variables or arguments.","cause":"Invalid username, password, or vManage URL.","error":"catalystwan.exceptions.CatalystWanError: Login failed. Check your credentials."}],"ecosystem":"pypi","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":"0.41.5","cli_name":"catalystwan","cli_version":"sh: 1: catalystwan: not found","type":"library","homepage":null,"github":"https://github.com/cisco-en-programmability/catalystwan-sdk","docs":null,"changelog":null,"pypi":"https://pypi.org/project/catalystwan/","npm":null,"openapi_spec":null,"status_page":null,"smithery":null,"categories":["http-networking","devops","aws"],"base_url":null,"auth_type":null,"provenance":{"verified_status":"passing","verified_at":"2026-06-29","last_verified":"2026-06-29","next_check":"2026-07-29","install_tag":null}}