Skip to main content

Core module for the RunAPI Python SDK

Project description

RunAPI Core Python SDK

The RunAPI Core Python SDK provides shared authentication, HTTP, retry, error, and polling primitives for RunAPI model packages. Install runapi-core only when you are building SDK infrastructure or shared Python tooling; application code should normally install a concrete model package such as runapi-flux-2.

Install

pip install runapi-core

Notes

Use the core package for common client options, error classes, request helpers, file uploads, and task polling behavior that Provider Clients share. Configure it globally or per client:

import runapi.core as runapi

runapi.configure(api_key="sk-...")  # or set RUNAPI_API_KEY in the environment

Request identifiers

RunAPI accepts an optional X-Client-Request-Id header on public API calls. Use printable ASCII values up to 512 characters. Accepted values are echoed in the response and stored with the RunAPI task for support and reconciliation.

High-level Python Provider Client resource methods accept per-request options and keep response headers on the returned model object. This example uses the Suno Provider Client; install runapi-suno to run it.

import os

from runapi.core import RequestOptions
from runapi.suno import SunoClient

client = SunoClient(api_key=os.environ["RUNAPI_API_KEY"])
options = RequestOptions(
    headers={"X-Client-Request-Id": "order-123"},
)

response = client.text_to_music.create(
    prompt="A chill lo-fi beat",
    model="suno-v4.5-plus",
    vocal_mode="instrumental",
    options=options,
)

runapi_task_id = response.runapi_task_id
# Equivalent case-insensitive lookup:
runapi_task_id = response.response_headers["X-RunAPI-Task-Id"]
from runapi.core import FilesClient

files = FilesClient()  # reads RUNAPI_API_KEY, or pass api_key="sk-..."
uploaded = files.create(file="./input.png")
remote = files.create(source="https://cdn.runapi.ai/public/samples/input.png")
inline = files.create(source="iVBORw0KGgo...")
print(uploaded.url)

Public SDK docs live at https://runapi.ai/docs#runapi-sdks and the model catalog lives at https://runapi.ai/models.

License

Licensed under the Apache License, Version 2.0.

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

runapi_core-0.1.6.tar.gz (25.4 kB view details)

Uploaded Source

Built Distribution

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

runapi_core-0.1.6-py3-none-any.whl (23.6 kB view details)

Uploaded Python 3

File details

Details for the file runapi_core-0.1.6.tar.gz.

File metadata

  • Download URL: runapi_core-0.1.6.tar.gz
  • Upload date:
  • Size: 25.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.6

File hashes

Hashes for runapi_core-0.1.6.tar.gz
Algorithm Hash digest
SHA256 1ac7f6a0da1dcf11316791f10f3ab2ceebb6caa30f4f46960b40513d4f652020
MD5 8f188d9b17d9cbe433a19f32e0462e06
BLAKE2b-256 2cd17b3cd4a674f922e916186bcde35135f98e42784d27021ba646d2fe0eb859

See more details on using hashes here.

File details

Details for the file runapi_core-0.1.6-py3-none-any.whl.

File metadata

File hashes

Hashes for runapi_core-0.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 a5a83cd99e39c5b5b2d8805cace4d9abd42e6c72268115c58c333b82271bbf44
MD5 20f9fb2bec25e963044fef9c7299860d
BLAKE2b-256 bd705b367aaf6f27e064f86d58d3513f19267c07dc799363e6d115c022078361

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