Skip to main content

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)

Source distribution for Jepy 1.0.0
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)

Table of built distributions (wheels) for Jepy 1.0.0
File Interpreter ABI Platform Actions
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.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page