Python SDK
Integrate TubeScript AI into your Python applications with our powerful SDK. Simple, efficient, and developer-friendly.
Quick Installation
Install via pip
pip install tubescript-ai
Install from source
git clone https://github.com/tubescript/python-sdk
cd python-sdk
pip install -e .
Quick Start Example
from tubescript import TubeScriptAI
# Initialize client with your API key
client = TubeScriptAI(api_key="your_api_key_here")
# Generate transcript
result = client.generate_transcript(
youtube_url="https://www.youtube.com/watch?v=VIDEO_ID",
include_timestamps=True
)
if result.success:
print(f"Generated {len(result.transcript)} segments")
print(f"Video title: {result.title}")
# Generate AI summary
summary = client.generate_summary(result.transcript)
print(f"Summary: {summary.overview}")
else:
print(f"Error: {result.error}")
Get Your API Key
Sign in and visit your API Dashboard to create and manage your API keys.
SDK Features
Pythonic API
Clean, intuitive Python interface following best practices and conventions.
Async Support
Full async/await support for high-performance applications and concurrent processing.
Error Handling
Comprehensive error handling with detailed error messages and retry logic.
Configurable
Flexible configuration options for timeouts, retries, and custom endpoints.
Type Hints
Full type annotations for better IDE support and code reliability.
Well Tested
Comprehensive test suite with 95%+ code coverage and CI/CD integration.
Available Methods
generate_transcript()
Generate transcript from YouTube URL with optional timestamp inclusion.
result = client.generate_transcript(
youtube_url="https://www.youtube.com/watch?v=VIDEO_ID",
include_timestamps=True,
format="json"
)
generate_summary()
Generate AI-powered summary from transcript data.
summary = client.generate_summary(
transcript_data=transcript_segments,
summary_type="detailed",
format="structured"
)
process_complete()
Generate both transcript and summary in a single call.
result = client.process_complete(
youtube_url="https://www.youtube.com/watch?v=VIDEO_ID",
include_transcript=True,
include_summary=True
)
Advanced Usage
Async Processing
import asyncio
from tubescript import AsyncTubeScriptAI
async def process_videos():
client = AsyncTubeScriptAI(api_key="your_key")
urls = [
"https://www.youtube.com/watch?v=VIDEO1",
"https://www.youtube.com/watch?v=VIDEO2",
"https://www.youtube.com/watch?v=VIDEO3"
]
tasks = [
client.generate_transcript(url)
for url in urls
]
results = await asyncio.gather(*tasks)
return results
# Run async processing
results = asyncio.run(process_videos())
Error Handling
from tubescript import TubeScriptAI, TubeScriptError
client = TubeScriptAI(api_key="your_key")
try:
result = client.generate_transcript(youtube_url)
if result.success:
print(f"Success: {result.title}")
else:
print(f"API Error: {result.error}")
except TubeScriptError.RateLimitExceeded:
print("Rate limit exceeded, please wait")
except TubeScriptError.InvalidAPIKey:
print("Invalid API key provided")
except TubeScriptError.NetworkError as e:
print(f"Network error: {e}")
Ready to Get Started?
Install the Python SDK and start integrating TubeScript AI into your applications today.