Jepy
A simple Python wrapper to access the Johns Eastern Company API.
Installation
To get Jepy on your machine, ensure you're running Python 3.7 or higher and use pip install jepy.
(Note that it will almost definitely work on Python 3.4+ and will likely work on any version of Python 3 or higher but has not been tested below 3.7).
Getting Started
Jepy is designed to handle the JWT authentication required by the API for you easily.
Import Jepy and set up the client.
from jepy import Jepy
creds = {'user_id': '0123456789', 'password': '0123456789876543210'}
client = Jepy(**creds)
Then use the client you've set up to make calls.
client.claims(claim_num = '012345')
Usage
Jepy supports all endpoints of the API. See the wiki for detailed information.
For information on the API itself, see the API wiki.
Interpreting Results
Changed as of version 1.0.0
All responses return a JepyServerResponse object which inherits from the quick_rest.ServerResponse object. This object has methods that allow you to easily manipulate data.
You can use JepyServerResponse.decode() to get the response content directly.
The API answers calls by dumping results into a JSON file with one of three keys. Jepy handles these as follows:
- Results - Returns a dictionary keyed as 'results', value will be a list of dictionaries.
- Message - Like results, this returns a dictionary keyed as 'message', the value is a message from the server that is not an error. Most often this means no results were found.
- Error - May raise an exception in certain cases. Usually indicates authentication failed, the request syntax is bad, or the server is down.
Troubleshooting
If you're continuously getting errors, check the status of the server to ensure it is up.
Simply checking server status does not require authentication (and is the only command that does not).
Run print(Jepy()) with no arguments. You'll either get JEAPI is up. or an exception. (Note that if you do try to check status with credentials a la print(Jepy(**creds)) you will get the object).
If the server is up, your credentials may be invalid and you should contact the Johns Eastern Helpdesk for assistance.
You can also click here to see if the server is up, too.
Operating System
This package is operating system agnostic. It has been tested on Windows 10 and Ubuntu 19.10.
Dependencies
Changed as of version 1.0.0
Jepy no longer makes calls with requests directly, it relies on quick_rest which in turn uses requests but does some error handling and provides results in an easily manipulated way.
To allow conversion of JSON results to XML via JepyServerResponse.to_xml, dicttoxml is required.
All dependencies are installed automatically during setup.
Bug Reports/Feature Requests
To report a bug, please use the "New issue" button on the project's Issues page. You may also contact the help desk below to report bugs.
Please submit a ticket at the Johns Eastern Helpdesk for all feature requests.
Note that features that require changes to the API itself may not require any update in the wrapper (such as a change to a query). In this case, the branch will not be public and will exist under the API's repository.
License
This project is licensed under the GNU General Public License v3.0. Please see the LICENSE.md file for details.
Metadata
Release files for Jepy 1.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| Jepy-1.0.0.tar.gz | 19.0 kB | Without provenance | Details for Jepy-1.0.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| Jepy-1.0.0-py3-none-any.whl | Python 3 | none | any | Details for Jepy-1.0.0-py3-none-any.whl |
Total release size: 36.5 kB
Release files / Jepy-1.0.0.tar.gz
| Download URL | Jepy-1.0.0.tar.gz |
|---|---|
| Size | 19.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f0320d7afcd86029aaec5080d9133b8b285651cc73b26939baa6e7af37d53122
|
|
BLAKE2b-256 checksum How to use checksums |
bfc472f6f5c41efd1fc755e9d4194d19cf4176006416a34ded3429df6bb1928f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.4.2 importlib_metadata/4.6.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.9.6
|
Release files / Jepy-1.0.0-py3-none-any.whl
| Download URL | Jepy-1.0.0-py3-none-any.whl |
|---|---|
| Size | 17.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
747c7b8706f9e68663684086dacbe5e7df4376d891433f4e6b3337d1c2b29907
|
|
BLAKE2b-256 checksum How to use checksums |
8108179a876c2affac17334eee2e639a47fc6898a0b5e1643034ba472faa062f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.4.2 importlib_metadata/4.6.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.9.6
|
Security for Jepy 1.0.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.