A client library for accessing The Jira Cloud platform REST API
Project description
openapi-jira-client
A client library for accessing The Jira Cloud platform REST API
Usage
First, create a client:
from openapi_jira_client import Client
client = Client(base_url="https://api.example.com")
If the endpoints you're going to hit require authentication, use AuthenticatedClient
instead:
from openapi_jira_client import AuthenticatedClient
client = AuthenticatedClient(base_url="https://api.example.com", token="SuperSecretToken")
Now call your endpoint and use your models:
from openapi_jira_client.models import MyDataModel
from openapi_jira_client.api.my_tag import get_my_data_model
from openapi_jira_client.types import Response
my_data: MyDataModel = get_my_data_model.sync(client=client)
# or if you need more info (e.g. status_code)
response: Response[MyDataModel] = get_my_data_model.sync_detailed(client=client)
Or do the same thing with an async version:
from openapi_jira_client.models import MyDataModel
from openapi_jira_client.api.my_tag import get_my_data_model
from openapi_jira_client.types import Response
my_data: MyDataModel = await get_my_data_model.asyncio(client=client)
response: Response[MyDataModel] = await get_my_data_model.asyncio_detailed(client=client)
Things to know:
-
Every path/method combo becomes a Python module with four functions:
sync
: Blocking request that returns parsed data (if successful) orNone
sync_detailed
: Blocking request that always returns aRequest
, optionally withparsed
set if the request was successful.asyncio
: Likesync
but the async instead of blockingasyncio_detailed
: Likesync_detailed
by async instead of blocking
-
All path/query params, and bodies become method arguments.
-
If your endpoint had any tags on it, the first tag will be used as a module name for the function (my_tag above)
-
Any endpoint which did not have a tag will be in
openapi_jira_client.api.default
Building / publishing this Client
This project uses Poetry to manage dependencies and packaging. Here are the basics:
- Update the metadata in pyproject.toml (e.g. authors, version)
- If you're using a private repository, configure it with Poetry
poetry config repositories.<your-repository-name> <url-to-your-repository>
poetry config http-basic.<your-repository-name> <username> <password>
- Publish the client with
poetry publish --build -r <your-repository-name>
or, if for public PyPI, justpoetry publish --build
If you want to install this client into another project without publishing it (e.g. for development) then:
- If that project is using Poetry, you can simply do
poetry add <path-to-this-client>
from that project - If that project is not using Poetry:
- Build a wheel with
poetry build -f wheel
- Install that wheel from the other project
pip install <path-to-wheel>
- Build a wheel with
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for openapi-jira-client-0.0.1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0b71c0529deb2758867e4334cfcea629f21f6056dbb13a93361daa2d16696f3e |
|
MD5 | ab605165f11669b1168309e69ccb13fe |
|
BLAKE2b-256 | 5be20cf746e4b2d34730d9974a3df80217fe6f97552dd9f83a9400b8817d693d |
Hashes for openapi_jira_client-0.0.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 45b67da57b5b31ee31ad6163cd1be785e778b57aa1f7a668de0818b9a1eebad8 |
|
MD5 | 9b0fc4818872dedcbe1fe381d35f82e0 |
|
BLAKE2b-256 | 18343514251684f98c475b2e10f6bae45dd8c5e3a1c6c3990ba5376850b15665 |