Skip to content

MechanicalFlower/godot-asset-library-client

Repository files navigation

🐦 godot-asset-library-client

Python Version license standard-readme compliant

linting - Ruff format - black types - mypy

A client library for accessing Godot Asset Library.

Usage

First, create a client:

from godot_asset_library_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 godot_asset_library_client import AuthenticatedClient

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

Now call your endpoint and use your models:

from godot_asset_library_client.models import MyDataModel
from godot_asset_library_client.api.my_tag import get_my_data_model
from godot_asset_library_client.types import Response

with client as client:
    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 godot_asset_library_client.models import MyDataModel
from godot_asset_library_client.api.my_tag import get_my_data_model
from godot_asset_library_client.types import Response

async with client as client:
    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
)

Contributing

Contributor Covenant

We welcome community contributions to this project.

Please read our Contributor Guide for more information on how to get started.

About

🐦 Godot Asset Library Client

Resources

License

Stars

Watchers

Forks

Releases

No releases published