{"library":"pyodata","title":"pyodata","description":"pyodata is an enterprise-ready Python OData client that provides a comfortable and Python-agnostic way to communicate with OData services. It abstracts away OData protocol implementation details, primarily supporting OData V2, with future plans for V4 support. The library is actively maintained, with frequent minor releases, and its current version is 1.11.2.","language":"python","status":"active","last_verified":"Thu Apr 16","install":{"commands":["pip install -U pyodata"],"cli":null},"imports":["import pyodata\n# ...\nclient = pyodata.Client(...)","from pyodata.v2.service import GetEntitySetFilter as esf","from pyodata.exceptions import HttpError"],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"import requests\nimport pyodata\nimport os\n\n# Replace with your OData service URL\nSERVICE_URL = os.environ.get('PYODATA_SERVICE_URL', 'http://services.odata.org/V2/Northwind/Northwind.svc/')\n\nsession = requests.Session()\n\n# For services requiring authentication\n# username = os.environ.get('PYODATA_USERNAME', '')\n# password = os.environ.get('PYODATA_PASSWORD', '')\n# if username and password:\n#     session.auth = (username, password)\n\n# Create instance of OData client\nclient = pyodata.Client(SERVICE_URL, session)\n\n# Example: Query all products\nproducts_request = client.entity_sets.Products.get_entities()\nproducts = products_request.execute()\n\nprint(f\"Found {len(products)} products:\")\nfor product in products[:3]: # Print first 3 products\n    print(f\"- {product.ProductName} (ID: {product.ProductID})\")\n","lang":"python","description":"Initializes an OData client using `requests.Session` and queries the 'Products' entity set from the Northwind OData V2 sample service. This demonstrates basic client setup and data retrieval.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":null}