{"library":"pyobjc-framework-videosubscriberaccount","title":"PyObjC Framework VideoSubscriberAccount","description":"pyobjc-framework-videosubscriberaccount provides Python wrappers for Apple's VideoSubscriberAccount framework on macOS. It enables Python applications to interact with TV provider authentication services and manage user subscriptions. The current version is 12.1 and it maintains an active release cadence, frequently aligning with macOS SDK updates and Python version support.","language":"python","status":"active","last_verified":"Sat May 16","install":{"commands":["pip install pyobjc-framework-videosubscriberaccount"],"cli":null},"imports":["import VideoSubscriberAccount","from VideoSubscriberAccount import VSAccountManager"],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"import VideoSubscriberAccount\nfrom Foundation import NSObject # NSObject is fundamental to Objective-C, often needed for PyObjC examples\n\n# The VideoSubscriberAccount framework primarily interacts with TV provider authentication\n# and subscription management, typically within a full macOS application context\n# and requires specific entitlements. This example demonstrates basic class access.\n\n# Get the shared account manager instance\nmanager = VideoSubscriberAccount.VSAccountManager.sharedAccountManager()\n\nprint(f\"VSAccountManager instance: {manager}\")\n\n# Attempting to fetch a property (e.g., current account) would typically\n# require an active application, user interaction, and entitlements.\n# For example, to get the primary account, you would usually call\n# manager.enqueueAccountMetadataRequest:completionHandler:\n# But this is often asynchronous and requires more setup than a quickstart.\n\n# A simple synchronous property if available (conceptual example, may not directly map without setup)\n# if manager.isKeyLoaded(): # Not a real method for VSAccountManager, just illustrative\n#     print(\"Account manager key is loaded.\")\n# else:\n#     print(\"Account manager key not yet loaded or not applicable in this context.\")\n\n# The framework is used to present authentication requests to the user.\n# E.g., presenting a sign-in view controller via VSAccountManager.presentViewController:.\n# This requires a running Cocoa app and is beyond a simple script quickstart.","lang":"python","description":"This quickstart demonstrates how to import the VideoSubscriberAccount framework and access its primary class, `VSAccountManager`. Due to the nature of this framework (TV provider authentication, requiring user interaction and specific application entitlements), a fully functional example within a simple Python script is not feasible. This code shows how to instantiate the `sharedAccountManager` singleton, which is the entry point for most interactions.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":{"tag":null,"tag_description":null,"last_tested":"2026-05-16","installed_version":null,"pypi_latest":"12.1","is_stale":null,"summary":{"python_range":"3.10–3.9","success_rate":0,"avg_install_s":null,"avg_import_s":null,"wheel_type":null},"results":[{"runtime":"python:3.10-alpine","python_version":"3.10","os_libc":"alpine (musl)","variant":"pyobjc-framework-videosubscriberaccount","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.10-slim","python_version":"3.10","os_libc":"slim (glibc)","variant":"pyobjc-framework-videosubscriberaccount","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":3.2,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.11-alpine","python_version":"3.11","os_libc":"alpine (musl)","variant":"pyobjc-framework-videosubscriberaccount","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.11-slim","python_version":"3.11","os_libc":"slim (glibc)","variant":"pyobjc-framework-videosubscriberaccount","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":3.1,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.12-alpine","python_version":"3.12","os_libc":"alpine (musl)","variant":"pyobjc-framework-videosubscriberaccount","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.12-slim","python_version":"3.12","os_libc":"slim (glibc)","variant":"pyobjc-framework-videosubscriberaccount","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":3.2,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.13-alpine","python_version":"3.13","os_libc":"alpine (musl)","variant":"pyobjc-framework-videosubscriberaccount","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.13-slim","python_version":"3.13","os_libc":"slim (glibc)","variant":"pyobjc-framework-videosubscriberaccount","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":2.9,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.9-alpine","python_version":"3.9","os_libc":"alpine (musl)","variant":"pyobjc-framework-videosubscriberaccount","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.9-slim","python_version":"3.9","os_libc":"slim (glibc)","variant":"pyobjc-framework-videosubscriberaccount","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":3.8,"import_time_s":null,"mem_mb":null,"disk_size":null}]}}