Skip to main content

Python SDK для NexusAPI — генерация видео и изображений через единый API (Veo, Kling, Seedance, Nano-Banana)

Project description

NexusAPI Python SDK

Официальный Python SDK для NexusAPI — единый API для генерации видео и изображений через Veo, Kling, Seedance, Nano-Banana и др.

Установка

pip install nexusapi-sdk

Пакет на PyPI называется nexusapi-sdk (имя nexusapi зарезервировано похожим проектом). Импорт остаётся from nexusapi import ....

Quickstart

from nexusapi import NexusClient

client = NexusClient(api_key="ВАШ_КЛЮЧ")  # создать в panel.nexusapi.dev

# Изображение (sync — SDK сам опрашивает статус)
img = client.images.generate(
    model="nano-banana",
    prompt="Минималистичный логотип кофейни",
    aspect_ratio="1:1",
)
print(img.image_url)
# → https://nexusapi-s3.../result.png

# Видео (async — получаем Task, ждём отдельно)
task = client.videos.create(
    model="veo-3-fast",
    prompt="Кот играет на пианино",
    duration=8,
    aspect_ratio="16:9",
)
print(f"Created task {task.id}, status={task.status}")

# Polling до завершения (до 10 минут)
result = task.wait(timeout=600)
print(result.video_url)

Возможности

  • Все native-параметры через **kwargswebhook_url, negative_prompt, image_url, cfg_scale, video_urls для seedance, source_video_url для veo-extend, и т.д. Передаются прямо в create()/generate().
  • Auto-polling для image-моделей (sync UX). Для видео — task.wait().
  • Типизированные ошибкиNexusError, BillingError, RateLimitError, ValidationError, NotFoundError, NexusTimeoutError.
  • Context managerwith NexusClient(api_key=...) as client: ... закрывает HTTP-соединение автоматически.

Примеры

Webhook вместо polling

task = client.videos.create(
    model="veo-3-fast",
    prompt="...",
    duration=8,
    webhook_url="https://your-app.com/nexus-callback",
)
# Не вызываем .wait() — NexusAPI POST'нет на webhook_url когда видео готово
return task.id  # сохраним в БД, дождёмся колбэка

Image-to-video (Kling motion)

video = client.videos.create(
    model="kling-v2.6-motion-1080p",
    prompt="Камера медленно отъезжает, раскрывая пейзаж",
    duration=8,
    image_url="https://your-bucket.s3.../start-frame.jpg",
).wait(timeout=600)
print(video.video_url)

Image edit (nano-banana)

edited = client.images.generate(
    model="nano-banana-pro",
    prompt="Сделай небо более драматичным",
    image_url="https://your-bucket.s3.../photo.jpg",
)
print(edited.image_url)

Извлечение результата

task = client.videos.create(...).wait()
print(task.video_url)        # для видео-моделей
print(task.image_url)        # для image-моделей (берёт первое из image_urls)
print(task.image_urls)       # для image-моделей с несколькими изображениями
print(task.result)           # сырой dict с провайдер-специфичным контентом

Обработка ошибок

from nexusapi import NexusClient, BillingError, RateLimitError, ValidationError

try:
    task = client.videos.create(model="veo-3-fast", prompt="...", duration=8).wait()
except BillingError:
    print("Недостаточно средств — пополни баланс в боте")
except RateLimitError:
    print("Превышен rate-limit ключа — подожди минуту")
except ValidationError as e:
    print(f"Невалидные параметры: {e}")

Каталог моделей

models = client.models.list()
for m in models:
    print(f"{m['id']}: {m['priceRub']}₽ за {m['unit']}")

Документация

Лицензия

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nexusapi_sdk-0.1.0.tar.gz (9.6 kB view details)

Uploaded Source

Built Distribution

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

nexusapi_sdk-0.1.0-py3-none-any.whl (9.9 kB view details)

Uploaded Python 3

File details

Details for the file nexusapi_sdk-0.1.0.tar.gz.

File metadata

  • Download URL: nexusapi_sdk-0.1.0.tar.gz
  • Upload date:
  • Size: 9.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.9

File hashes

Hashes for nexusapi_sdk-0.1.0.tar.gz
Algorithm Hash digest
SHA256 3e62beaf3c0f43a9ea52b0d0b38347d48272f83af18e31a8b3c51fab627b958c
MD5 9d1181644b835056f96290448f3b0794
BLAKE2b-256 fdc1abe6a8d8d3ed42f3f503ca6f1b9360f8527cf2dccd1b7fbbc0597b9fba8a

See more details on using hashes here.

File details

Details for the file nexusapi_sdk-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: nexusapi_sdk-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 9.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.9

File hashes

Hashes for nexusapi_sdk-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d310004363e04d0e9afaa83525b5eed2e91de6f92e6cf57a9f4e079fe9070137
MD5 d9008517d408c6ca328e4bc408c3a2d5
BLAKE2b-256 2efa441541fe751324f15957e4d7efc775d716f060b6e52a0847b59b8c5365a7

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