Python OData client which provides comfortable Python agnostic way for communication with OData services.
The goal of this Python module is to hide all OData protocol implementation details.
- OData V2
Install and update using pip:
pip install -U pyodataYou can start building your OData projects straight away after installing the Python module without any additional configuration steps needed.
There have been no limitations discovered yet.
There are no known issues at this time.
We accept bug reports, feature requests, questions and comments via GitHub issues
The only thing you need to do is to import the pyodata Python module and provide an object implementing interface compatible with Session Object for the library Requests.
import requests
import pyodata
SERVICE_URL = 'http://services.odata.org/V2/Northwind/Northwind.svc/'
# Create instance of OData client
client = pyodata.Client(SERVICE_URL, requests.Session())Find more sophisticated examples in The User Guide.
Please, go through the Contributing guideline.
Here's an example workflow for a project PyOData hosted on Github
Your username is yourname and you're submitting a basic bugfix or feature.
- Hit 'fork' on Github, creating e.g.
yourname/PyOData. git clone [email protected]:yourname/PyODatagit checkout -b foo_the_barsto create new local branch named foo_the_bars- Hack, hack, hack
- Run
python3 -m pytestormake check git statusgit addgit commit -s -m "Foo the bars"git push -u origin HEADto create foo_the_bars branch in your fork- Visit your fork at Github and click handy "Pull request" button.
- In the description field, write down issue number (if submitting code fixing an existing issue) or describe the issue + your fix (if submitting a wholly new bugfix).
- Hit 'submit'! And please be patient - the maintainers will get to you when they can.
Copyright (c) 2025 SAP SE or an SAP affiliate company. All rights reserved. This file is licensed under the Apache Software License, v. 2 except as noted otherwise in the LICENSE file