Skip to main content

medialoopster

medialoopster API wrapper for Python

medialoopster is a wrapper library for the HTTP API of the medialoopster Media Asset Management System.

Installation

pip install medialoopster

Features

  • Connect to medialoopster API with authentication
  • Retrieve and manage productions
  • Get, create, update, and delete assets (video, audio, image, project)
  • Search for assets by metadata
  • Archive and restore assets
  • Manage asset approval status
  • Handle shots and sequences for video assets

Usage Examples

Basic Connection

from medialoopster import Medialoopster

# Initialize the client
client = Medialoopster(
    url="https://medialoopster.example.com/api/",
    user="username",
    password="password",
    verify=True  # Set to False to disable SSL verification
)

# Check if the API is reachable
if client.ping():
    print("Connected to medialoopster API!")
else:
    print("Failed to connect to medialoopster API")

Working with Productions

# Get all productions
productions = client.productions()
for production in productions:
    print(f"Production: {production.name} (ID: {production.id})")

# Get a specific production by ID
production = client.production(production_id=123)

# Get a specific production by name
production = client.production(production_name="My Production")

Working with Assets

# Get video assets for a production
assets = client.get_videoassets(production_id=123)
for asset in assets:
    print(f"Asset: {asset.get('name')} (ID: {asset.get('id')})")

# Get a specific asset
asset = client.get_asset(asset_id=456)

# Import a new asset
asset_id = client.asset_import(
    production="My Production",
    asset_type="video",
    name="My Video",
    path_file="/path/to/file.mp4",
    meta_field_store={"key": "value"}
)

# Approve an asset
client.approve_asset(asset_id=456)

# Delete an asset
client.delete_asset(asset_id=456)

Error Handling

from medialoopster import Medialoopster
from medialoopster.exceptions import (
    MedialoopsterError,
    MedialoopsterConnectionError,
    MedialoopsterAuthenticationError,
    MedialoopsterNotFoundError
)

client = Medialoopster(url="https://medialoopster.example.com/api/")

try:
    asset = client.get_asset(asset_id=999999)
except MedialoopsterNotFoundError:
    print("Asset not found")
except MedialoopsterConnectionError:
    print("Connection error")
except MedialoopsterError as e:
    print(f"An error occurred: {e}")

Documentation

For more detailed documentation, please refer to the docstrings in the code or visit the medialoopster API documentation.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Metadata

Release files for medialoopster 0.3.1

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

Source distribution (sdist)

Source distribution for medialoopster 0.3.1
File Size Uploaded
medialoopster-0.3.1.tar.gz 7.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for medialoopster 0.3.1
File Interpreter ABI Platform
medialoopster-0.3.1-py3-none-any.whl Python 3 none any Details

Total release size: 14.3 kB

Release files / medialoopster-0.3.1.tar.gz

Download URL medialoopster-0.3.1.tar.gz
Size 7.2 kB
Tags Source
SHA-256 checksum
How to use checksums
046322be171757fd6a22fecd70df04b14686db4925b9bd3f0a134d45845fb34f
BLAKE2b-256 checksum
How to use checksums
a55b7e709c0f0efe10781a2ef8dd1960a9bb3bf2495e8e2e05a49be3ccefd963
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.3

Release files / medialoopster-0.3.1-py3-none-any.whl

Download URL medialoopster-0.3.1-py3-none-any.whl
Size 7.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
453e8490b5c55678dc83420ef5892d9b04bdd0471411de0a202d11315a4e3015
BLAKE2b-256 checksum
How to use checksums
1741fe7a8129861ebe150eeac979e7875c409cb379597938bddee0303556d4c9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.3

Release history Release notifications | RSS feed

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