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
)
We welcome community contributions to this project.
Please read our Contributor Guide for more information on how to get started.