Skip to main content

Official lightweight client wrapper library for the JAAT API.

Project description

jaat-api

PyPI version License

The official, lightweight Python client library for the JAAT suite of tools.

jaat-api is an easy-to-use, intuitive, session-managed SDK for programtically accessing the open-source JAAT modules. Securely send text batches to the openly hosted JAAT modules.


Installation

Install directly from PyPI:

pip install jaat-api

Quick Start

Initialize the JAATClient with your API key (provided by us) and execute JAAT on your batch texts seamlessly:

from jaat_api import JAATClient

client = JAATClient(api_key="jaat_app_your_secret_production_key_here")

job_ads = [
    "[JOB AD TEXT 1]",
    "[JOB AD TEXT 2]",
    "..."
]


task_results = client.run_batch("task", job_ads) # alternatively, client.get_tasks(job_ads)

# continue to run other jobs
skill_results = client.run_batch("skill", job_ads)

Helpful Tips

Sandbox Public Evaluation

Anyone looking to evaluate the platform programmatically before contacting us for a dedicated token can use the public sandbox key:

client = JAATClient(api_key="jaat_public_sandbox_testing_key")

try:
    results = client.get_tasks(["JOB AD TEXT"])
    print(results)
except JAATError as e:
    if e.status_code == 429:
        print("Sandbox daily evaluation volume exhausted. Please rotate to a private key.")

As can be seen, the public API key is highly throttled and is strictly for testing purposes. The current usage of this key is limited to one request per day, per IP.

Handling Exceptions

The SDK provides a structured JAATError instance whenever an operation breaks down or fails. Ideally, wrap jobs within try/except blocks to handle these conditions gracefully:

from jaat_api import JAATError

try:
    ## as before
except JAATError as e:
    print(f"Extraction failed (Status Code: {e.status_code})")
    print(f"Error Context: {e.message}")

License

jaat-api (and JAAT) are distributed under the MIT License. See LICENSE for more information.

Getting a Key

We will soon be releasing a contact form to let us know your interest in receiving a private API key. Stay tuned!

Citation

This code and the overarching JAAT package is part of ongoing work to leverage lightweight, but powerful NLP tools to unlock structured, coded data from job posting data.

If you find this software useful, please consider citing:

@article{meisenbacher2025extracting,
  title={Extracting O* NET Features from the NLx Corpus to Build Public Use Aggregate Labor Market Data},
  author={Meisenbacher, Stephen and Nestorov, Svetlozar and Norlander, Peter},
  journal={arXiv preprint arXiv:2510.01470},
  year={2025}
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jaat_api-0.1.1.tar.gz (5.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

jaat_api-0.1.1-py3-none-any.whl (5.6 kB view details)

Uploaded Python 3

File details

Details for the file jaat_api-0.1.1.tar.gz.

File metadata

  • Download URL: jaat_api-0.1.1.tar.gz
  • Upload date:
  • Size: 5.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.20

File hashes

Hashes for jaat_api-0.1.1.tar.gz
Algorithm Hash digest
SHA256 3086f19e000177efdd4b2ac1db31bcd25cc9ed868d47df943664c8dfd3ac6cb4
MD5 aaf47e34b56de165ba186ff771890056
BLAKE2b-256 954730a442b9a56710e2c1504b08161203d2f2ced56b8f8c7a58e1ccf646ce41

See more details on using hashes here.

File details

Details for the file jaat_api-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: jaat_api-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 5.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.20

File hashes

Hashes for jaat_api-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 46af3742bbe925ddc67745e0b89cfa3d240db450659a6a73f4c0764f371fe174
MD5 2da9d9d52c55bbf9978d46945c1f23c0
BLAKE2b-256 6a560be6035d1e1f97bbe0191607c36602689dac707809de371f46c1aafe0175

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page