Skip to main content

A client library for accessing Windmill API

Project description

Autogenerated Windmill OpenApi Client

This is the raw autogenerated api client. You are most likely more interested in wmill which leverages this client to offer an user friendly experience. We use this openapi python client generator

windmill-api

A client library for accessing Windmill API

Usage

First, create a client:

from windmill_api import Client

client = Client(base_url="https://api.example.com")

If the endpoints you're going to hit require authentication, use AuthenticatedClient instead:

from windmill_api import AuthenticatedClient

client = AuthenticatedClient(base_url="https://api.example.com", token="SuperSecretToken")

Now call your endpoint and use your models:

from windmill_api.models import MyDataModel
from windmill_api.api.my_tag import get_my_data_model
from windmill_api.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 windmill_api.models import MyDataModel
from windmill_api.api.my_tag import get_my_data_model
from windmill_api.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)

By default, when you're calling an HTTPS API it will attempt to verify that SSL is working correctly. Using certificate verification is highly recommended most of the time, but sometimes you may need to authenticate to a server (especially an internal server) using a custom certificate bundle.

client = AuthenticatedClient(
    base_url="https://internal_api.example.com", 
    token="SuperSecretToken",
    verify_ssl="/path/to/certificate_bundle.pem",
)

You can also disable certificate validation altogether, but beware that this is a security risk.

client = AuthenticatedClient(
    base_url="https://internal_api.example.com", 
    token="SuperSecretToken", 
    verify_ssl=False
)

Things to know:

  1. Every path/method combo becomes a Python module with four functions:

    1. sync: Blocking request that returns parsed data (if successful) or None
    2. sync_detailed: Blocking request that always returns a Request, optionally with parsed set if the request was successful.
    3. asyncio: Like sync but async instead of blocking
    4. asyncio_detailed: Like sync_detailed but async instead of blocking
  2. All path/query params, and bodies become method arguments.

  3. If your endpoint had any tags on it, the first tag will be used as a module name for the function (my_tag above)

  4. Any endpoint which did not have a tag will be in windmill_api.api.default

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

windmill_api-1.62.0.tar.gz (291.9 kB view details)

Uploaded Source

Built Distribution

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

windmill_api-1.62.0-py3-none-any.whl (1.2 MB view details)

Uploaded Python 3

File details

Details for the file windmill_api-1.62.0.tar.gz.

File metadata

  • Download URL: windmill_api-1.62.0.tar.gz
  • Upload date:
  • Size: 291.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.2.2 CPython/3.11.0 Linux/5.15.0-1031-azure

File hashes

Hashes for windmill_api-1.62.0.tar.gz
Algorithm Hash digest
SHA256 9779e98f5d243b8df2d1f0b52c4940e6b6eb23b1d7465959a6827b2fdcb6b9fe
MD5 8663323ec2d5be2f46dc409bde2b218e
BLAKE2b-256 c2200ab11f257ae2b797375620b39c5fee8189758a2a796369e6cfbc104c3ab2

See more details on using hashes here.

File details

Details for the file windmill_api-1.62.0-py3-none-any.whl.

File metadata

  • Download URL: windmill_api-1.62.0-py3-none-any.whl
  • Upload date:
  • Size: 1.2 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.2.2 CPython/3.11.0 Linux/5.15.0-1031-azure

File hashes

Hashes for windmill_api-1.62.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ae927db75117a88ce60198d3fb8fac82b5eb7b68f078c46d867b6544b7526525
MD5 c70a3148d0eb022b616b493d4bfd9d4c
BLAKE2b-256 443181d1420315ff4c0e67ccea6bc184cb5891a7cf93cc5acac50f6090d9e6d6

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