Fyle
Python SDK for accessing Fyle Platform APIs. Fyle is an expense management system.
Installation
This project requires Python 3+ and Requests library (pip install requests).
-
Download this project and use it (copy it in your project, etc).
-
Install it from pip.
$ pip install fyle
Usage
To use this SDK you'll need these Fyle credentials used for OAuth2 authentication: client ID, client secret and refresh token. You can follow the steps on this Article or reach out to support@fylehq.com.
This SDK is very easy to use.
- First you'll need to create a connection using the main class Platform.
from fyle.platform import Platform
fyle = Platform(
server_url='FYLE SERVER URL',
token_url='FYLE TOKEN URL',
refresh_token='FYLE REFRESH TOKEN',
client_id='FYLE CLIENT ID',
client_secret='FYLE CLIENT SECRET'
)
- You can access the V1 version of the APIs as follows:
"""
USAGE: <Platform INSTANCE>.<VERSION: eg. v1>.<FYLE ROLE: eg. admin>.<API_NAME: eg. expenses>.<API_METHOD: eg. get>(<PARAMETERS>)
"""
# Get a list of all Expenses in a paginated manner and add to a list
expenses = []
query_params = {
'order': 'created_at.desc'
}
expenses_generator = fyle.v1.admin.expenses.list_all(query_params=query_params)
for response in expenses_generator:
if response.get('data'):
expenses.extend(response['data'])
Integration Tests
- Install pytest package using pip as follows:
pip install pytest
- Add the following environment variables to test_credentials.sh file
export SERVER_URL=<FYLE SERVER URL>
export TOKEN_URL=<FYLE TOKEN URL>
export REFRESH_TOKEN=<FYLE REFRESH TOKEN>
export CLIENT_ID=<FYLE CLIENT ID>
export CLIENT_SECRET=<FYLE CLIENT SECRET>
NOTE: The credentials used should have required roles assigned to them
- Apply secrets and Run integration tests as follows:
source test_credentials.sh && python -m pytest test/integration
- To get the code coverage execute the following:
pytest test/ --cov
Currently the code coverage is at 95%
Release latest version to PyPi
- Open the releases section on GitHub and Draft a new release.
- Check the version in setup.py, make sure you update that version along with your changes.
- Add the version and description and click ok
Publish Releasebutton. - This will trigger the github action and automatically push the SDK to PyPi
License
This project is licensed under the MIT License - see the LICENSE file for details
Metadata
Release files for fyle 1.4.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| fyle-1.4.1.tar.gz | 24.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| fyle-1.4.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 74.8 kB
Release files / fyle-1.4.1.tar.gz
| Download URL | fyle-1.4.1.tar.gz |
|---|---|
| Size | 24.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
fed1a874555dd41819297fedd6e540ed58480460b56347a5031ab6c545e2ec70
|
|
BLAKE2b-256 checksum How to use checksums |
ee588cf7dd8b339fa8a9238c902b73c03248c54a2996c4e776864be65ebdbae4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.8
|
Release files / fyle-1.4.1-py3-none-any.whl
| Download URL | fyle-1.4.1-py3-none-any.whl |
|---|---|
| Size | 50.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
2ca68f74cf67461a12b18805856f6658bdc2418e1aa28103292be1d36ad423e7
|
|
BLAKE2b-256 checksum How to use checksums |
2f4be4f1596446644d1a97debcba29aa932fece1351e0747219a173c5df2e271
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.8
|