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. This tool works great for integrating JAAT into your workflows or applications, and it enablings accessing JAAT with running it locally!


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_private_key_here")

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

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

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

Of course, you can also use the client to process single texts:

task_result = client.run("task", job_ads[0]) # alternatively, client.get_tasks(job_ads)

skill_result = client.run("skill", job_ads[0])

Helpful Tips

Currently Supported JAAT Modules

As of the current version of jaat-api, the following JAAT modules are supported:

Supported from Version: jaat-api ID JAAT Module
0.1.0 task TaskMatch
0.1.0 skill SkillMatch
0.1.0 ai AIMatch
0.2.0 title TitleMatch

The API is currently running JAAT: PyPI version

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}")

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.

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.3.0.tar.gz (5.4 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.3.0-py3-none-any.whl (5.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: jaat_api-0.3.0.tar.gz
  • Upload date:
  • Size: 5.4 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.3.0.tar.gz
Algorithm Hash digest
SHA256 22f0bca1b705c947c3d44a80a3f0b611bf551128f02199e730fc66c62ace2896
MD5 550259d211141aa606879b7a8c5c1857
BLAKE2b-256 0bbb53b51012e270550dc9eb22af3f8fd62bf5d6de62b3297bc60237af8fac13

See more details on using hashes here.

File details

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

File metadata

  • Download URL: jaat_api-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 5.9 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.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 dd70a1f314b86c59295768707b58d9a42bfd6dd20554c0c15d5d717273cc8b26
MD5 c7251b6890d8b14cfbf32b3dbba73712
BLAKE2b-256 a5c261605bacd332a112d2b01654c1ed5b758e242c40f9261abebaf186ff0d28

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