Skip to main content

This is Leonardo.ai API.

PyPI version Linters PyPI - License PyPI - Python Version Downloads Downloads

This package contains Python API for Leonardo.ai based on official API documentation.

Leonardo.ai interface

To install the package, please use package from pypi:

pip install leonardo-api

This Python API provides access to Leonardo API using synchronous methods (based on requests library) as well as asynchronous (aiohttp). You can choose one of them - Leonardo or LeonardoAsync.

To start, you must have paid subscription and create an API access token from you settings page->User API. Then, init manager class with using your access_token:

from leonardo_api import Leonardo

leonardo = Leonardo(auth_token='abcd-1234-5678-90ef-deadbeef00000')

Now you can use all API methods, provided by Leonardo.ai API, i.e. starting getting user info and generating your first image:

response = leonardo.get_user_info()  # get your user info
response = leonardo.post_generations(prompt="The quick brown fox jumps over the lazy dog", num_images=1,
                                           negative_prompt='schrodinger cat paradox',
                                           model_id='e316348f-7773-490e-adcd-46757c738eb7', width=1024, height=768,
                                           guidance_scale=7)

In according to API reference, you will get the json answer with content about pending job like following:

{"sdGenerationJob": {"generationId": "123456-0987-aaaa-bbbb-01010101010"}}

To obtain your image you need to use additional method:

response = leonardo.get_single_generation(generation_id)  # get it using response['sdGenerationJob']['generationId']

Or, optionally, you may wait for job completion using following method:

response = leonardo.wait_for_image_generation(generation_id=response['sdGenerationJob']['generationId'])

Finally, you'll get your array of images:

[{'url': 'https://cdn.leonardo.ai/users/abcd-1234-5678-90ef-deadbeef00000/generations/123456-0987-aaaa-bbbb-01010101010/Absolute_Reality_v16_The_quick_brown_fox_jumps_0.jpg', 'nsfw': False, 'id': 'aaaaaa-bbbb-cccc-dddd-ffffffffff', 'likeCount': 0, 'generated_image_variation_generics': []}]

The quick brown fox jumps over the lazy dog

You'll find descriptions for rest of the methods in official API reference.


As option, you may want to use preloaded dicts with models (nsfw/community/platform):

from leonardo_api import platform_models, custom_models, nsfw_models

Which contains details of models like following:

{
    "data": {
        "custom_models": [
            {
                "id": "f1929ea3-b169-4c18-a16c-5d58b4292c69",
                "name": "RPG v5",
                # rest of the model data
            }
            # rest models
        ]
    }
}

Have fun and enjoy!

Donations

If you like this project, you can support it by donating via DonationAlerts or BuyMeACoffee or ThanksDev.

Release files for leonardo-api 0.0.14

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for leonardo-api 0.0.14
File Size Uploaded
leonardo_api-0.0.14.tar.gz 807.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for leonardo-api 0.0.14
File Interpreter ABI Platform
leonardo_api-0.0.14-py3-none-any.whl Python 3 none any Details

Total release size:855.8 kB

Release files / leonardo_api-0.0.14.tar.gz

Download URL leonardo_api-0.0.14.tar.gz
Size 807.2 kB
Tags Source
SHA-256 checksum
How to use checksums
70cb299b7060ffc89e0947fdbfac65c8f06329b654ecc30b1b71981f4ca46fa1
BLAKE2b-256 checksum
How to use checksums
74a622cad52b96829f4d8a61acb874c97afca60ff5075828f012dde46765c94e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.14

Release files / leonardo_api-0.0.14-py3-none-any.whl

Download URL leonardo_api-0.0.14-py3-none-any.whl
Size 48.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
f77972f2be875b3f5fd1a5660192a7b7fe3d7a1acb254620b3ab042277ae43de
BLAKE2b-256 checksum
How to use checksums
7a0688fbd0191b46f74c7a5ebcf5cee8140abc5e16140fd0066eac9597acbd9b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.14

Release history Release notifications | RSS feed

This release

0.0.14 This release

2 release files

0.0.11

2 release files

0.0.10

2 release files

0.0.9

2 release files

0.0.8

2 release files

0.0.7

2 release files

0.0.6

2 release files

0.0.5

2 release files

0.0.4

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page