vrchatapi-async 1.20.8.dev1__tar.gz → 1.20.8.post1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/PKG-INFO +47 -1
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/README.md +46 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/setup.py +93 -1
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/tests/test_async_sdk.py +24 -0
- vrchatapi_async-1.20.8.post1/tests/test_websocket.py +464 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/__init__.py +1 -1
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/rest.py +27 -13
- vrchatapi_async-1.20.8.post1/vrchatapi/websocket.py +652 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi_async.egg-info/PKG-INFO +47 -1
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi_async.egg-info/SOURCES.txt +2 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/LICENSE +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/pyproject.toml +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/setup.cfg +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/api/__init__.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/api/authentication_api.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/api/avatars_api.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/api/calendar_api.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/api/economy_api.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/api/favorites_api.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/api/files_api.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/api/friends_api.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/api/groups_api.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/api/instances_api.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/api/inventory_api.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/api/invite_api.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/api/jams_api.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/api/miscellaneous_api.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/api/notifications_api.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/api/playermoderation_api.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/api/prints_api.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/api/props_api.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/api/users_api.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/api/worlds_api.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/api_client.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/api_response.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/configuration.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/exceptions.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/__init__.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/account_deletion_log.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/add_favorite_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/add_group_gallery_image_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/admin_asset_bundle.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/admin_unity_package.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/age_verification_status.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/agreement.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/agreement_code.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/agreement_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/agreement_status.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/api_config.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/api_config_access_logs_urls.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/api_config_announcement.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/api_config_audio_config.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/api_config_avatar_perf_limiter.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/api_config_constants.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/api_config_constants_groups.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/api_config_constants_instance.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/api_config_constants_instancepopulationbrackets.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/api_config_constants_instancepopulationbracketscrowded.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/api_config_constants_instancepopulationbracketsfew.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/api_config_constants_instancepopulationbracketsmany.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/api_config_constants_language.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/api_config_download_url_list.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/api_config_events.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/api_config_ios_version.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/api_config_min_supported_client_build_number.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/api_config_offline_analysis.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/api_health.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/avatar.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/avatar_moderation.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/avatar_moderation_created.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/avatar_moderation_type.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/avatar_performance.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/avatar_published_listings_inner.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/avatar_style.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/avatar_styles.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/avatar_unity_package_url_object.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/badge.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/balance.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/ban_group_member_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/boop_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/calendar_day_of_week.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/calendar_event.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/calendar_event_access.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/calendar_event_category.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/calendar_event_discovery.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/calendar_event_discovery_inclusion.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/calendar_event_discovery_scope.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/calendar_event_frequency.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/calendar_event_occurrence_kind.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/calendar_event_platform.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/calendar_event_recurrence.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/calendar_event_recurrence_end.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/calendar_event_recurrence_end_type.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/calendar_event_user_interest.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/change_user_tags_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/change_world_tags_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/content_filter.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/create_avatar_moderation_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/create_avatar_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/create_calendar_event_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/create_file_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/create_file_version_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/create_group_announcement_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/create_group_gallery_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/create_group_invite_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/create_group_post_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/create_group_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/create_group_role_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/create_instance_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/create_jam_submission_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/create_listing_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/create_product_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/create_prop_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/create_world_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/current_user.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/current_user_platform_history_inner.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/current_user_presence.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/decline_group_invite_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/developer_type.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/disable2_fa_result.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/discord_details.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/dynamic_content_row.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/earnings_metrics.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/earnings_metrics_totals.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/economy_account.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/economy_balances.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/economy_payout.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/economy_payout_eligibility.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/economy_payout_list.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/economy_payout_status.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/equip_inventory_item_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/error.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/favorite.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/favorite_group.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/favorite_group_limits.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/favorite_group_visibility.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/favorite_limits.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/favorite_type.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/favorited_world.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/feedback.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/file.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/file_analysis.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/file_analysis_avatar_stats.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/file_data.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/file_status.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/file_upload_url.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/file_version.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/file_version_upload_status.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/finish_file_data_upload_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/follow_calendar_event_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/friend_status.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/get_group_posts200_response.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/get_user_group_instances200_response.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/group.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/group_access_type.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/group_announcement.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/group_audit_log_entry.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/group_gallery.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/group_gallery_file_order.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/group_gallery_file_order_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/group_gallery_image.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/group_instance.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/group_join_request_action.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/group_join_state.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/group_member.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/group_member_limited_user.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/group_member_status.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/group_my_member.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/group_permission.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/group_permissions.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/group_post.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/group_post_visibility.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/group_privacy.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/group_role.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/group_role_template.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/group_role_template_values.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/group_role_template_values_roles.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/group_search_sort.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/group_transferable.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/group_transferable_requirements.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/group_user_visibility.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/image_animation_style.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/image_loop_style.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/image_mask.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/image_purpose.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/info_push.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/info_push_data.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/info_push_data_article.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/info_push_data_article_content.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/info_push_data_clickable.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/instance.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/instance_content_settings.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/instance_platforms.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/instance_region.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/instance_short_name_response.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/instance_type.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/inventory.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/inventory_consumption_results.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/inventory_default_attributes_value.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/inventory_default_attributes_value_validator.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/inventory_drop.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/inventory_equip_slot.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/inventory_flag.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/inventory_item.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/inventory_item_type.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/inventory_metadata.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/inventory_notification_details.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/inventory_spawn.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/inventory_template.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/inventory_user_attributes.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/invite_message.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/invite_message_type.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/invite_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/invite_response.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/jam.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/jam_state_change_dates.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/jam_submission.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/join_group_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/license.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/license_action.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/license_group.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/license_type.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/limited_group.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/limited_unity_package.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/limited_user_friend.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/limited_user_groups.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/limited_user_instance.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/limited_user_search.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/limited_world.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/mime_type.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/model_print.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/moderate_user_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/moderation_report.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/mutual_friend.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/mutuals.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/notification.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/notification_detail_invite.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/notification_detail_invite_response.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/notification_detail_request_invite.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/notification_detail_request_invite_response.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/notification_detail_vote_to_kick.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/notification_type.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/notification_v2.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/notification_v2_details_boop.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/notification_v2_response.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/notification_v2_type.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/ok_status.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/ok_status2.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/order_option.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/order_option_short.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/paginated_calendar_event_list.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/paginated_group_audit_log_entry_list.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/paginated_moderation_report_list.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/past_display_name.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/pending2_fa_result.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/performance_limiter_info.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/performance_ratings.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/permission.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/permission_data.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/platform_build_info.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/player_moderation.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/player_moderation_type.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/print_files.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/private_profile.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/private_profile_activity.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/product.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/product_listing.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/product_listing_type.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/product_listing_variant.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/product_purchase.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/product_purchase_history.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/product_purchase_location_type.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/product_purchase_product.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/product_purchase_purchase_context.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/product_purchase_record.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/product_type.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/profile_represented_group.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/prop.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/prop_publish_status.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/prop_unity_package.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/public_profile.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/purchase_context_data.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/purchase_product_listing_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/region.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/register_user_account_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/release_status.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/report_category.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/report_reason.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/represented_group.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/request_invite_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/respond_group_join_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/respond_notification_v2_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/response.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/reward_badge.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/reward_redemption.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/reward_redemption_data.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/reward_redemption_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/reward_redemption_result.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/search_group_members200_response.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/seller_eligibility.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/sent_notification.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/service_queue_stats.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/service_status.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/share_inventory_item_direct_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/sort_option.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/sort_option_product_purchase.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/store.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/store_context.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/store_shelf.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/store_type.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/store_view.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/submit_moderation_report_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/submit_moderation_report_request_details.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/subscription.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/subscription_period.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/success.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/success_flag.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/tilia_kyc.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/tilia_status.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/tilia_tos.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/token_bundle.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/transaction.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/transaction_agreement.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/transaction_status.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/transaction_steam_info.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/transaction_steam_wallet_info.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/transfer_group_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/tutorial_status.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/two_factor_auth_code.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/two_factor_email_code.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/two_factor_recovery_codes.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/two_factor_recovery_codes_otp_inner.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/unity_package.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/update_asset_review_notes_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/update_avatar_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/update_calendar_event_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/update_favorite_group_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/update_group_gallery_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/update_group_member_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/update_group_representation_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/update_group_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/update_group_role_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/update_inventory_item_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/update_invite_message_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/update_listing_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/update_product_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/update_prop_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/update_tilia_tos_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/update_user_badge_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/update_user_note_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/update_user_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/update_world_request.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/user.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/user_credits_eligible.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/user_exists.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/user_note.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/user_note_target_user.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/user_state.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/user_status.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/user_subscription.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/user_subscription_eligible.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/verify2_fa_email_code_result.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/verify2_fa_result.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/verify_auth_token_result.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/world.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/world_metadata.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/models/world_publish_status.py +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi/py.typed +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi_async.egg-info/dependency_links.txt +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi_async.egg-info/requires.txt +0 -0
- {vrchatapi_async-1.20.8.dev1 → vrchatapi_async-1.20.8.post1}/vrchatapi_async.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: vrchatapi-async
|
|
3
|
-
Version: 1.20.8.
|
|
3
|
+
Version: 1.20.8.post1
|
|
4
4
|
Summary: VRChat API Library for Python (async version)
|
|
5
5
|
Home-page: https://github.com/hi94740/vrchatapi-python-async
|
|
6
6
|
Author: hi94740
|
|
@@ -134,4 +134,50 @@ Compared to [the synchronous SDK](https://github.com/vrchatapi/vrchatapi-python)
|
|
|
134
134
|
## Contributing
|
|
135
135
|
|
|
136
136
|
Contributions are welcome, but do not add features that should be handled by the OpenAPI specification.
|
|
137
|
+
|
|
138
|
+
## Websocket (Pipeline) API
|
|
139
|
+
|
|
140
|
+
The SDK also ships a hand-written async client for VRChat's real-time
|
|
141
|
+
WebSocket (Pipeline) API (`wss://pipeline.vrchat.cloud`), which pushes invites,
|
|
142
|
+
friend requests, friend online/offline events, user and group updates to the
|
|
143
|
+
authenticated client. The connection is receive-only; every message's
|
|
144
|
+
double-encoded `content` field is automatically unpacked into a plain dict.
|
|
145
|
+
|
|
146
|
+
```python
|
|
147
|
+
import asyncio
|
|
148
|
+
|
|
149
|
+
import vrchatapi
|
|
150
|
+
from vrchatapi.api import authentication_api
|
|
151
|
+
from vrchatapi.websocket import VRChatWebSocket
|
|
152
|
+
|
|
153
|
+
|
|
154
|
+
async def main():
|
|
155
|
+
configuration = vrchatapi.Configuration(username="username", password="password")
|
|
156
|
+
async with vrchatapi.ApiClient(configuration) as api_client:
|
|
157
|
+
api_client.user_agent = "ExampleProgram/0.0.1 my@email.com"
|
|
158
|
+
await authentication_api.AuthenticationApi(api_client).get_current_user()
|
|
159
|
+
|
|
160
|
+
# Reads the auth cookie + User-Agent from the logged-in client.
|
|
161
|
+
ws = VRChatWebSocket.from_client(api_client)
|
|
162
|
+
|
|
163
|
+
@ws.on("friend-online")
|
|
164
|
+
async def on_friend_online(event):
|
|
165
|
+
print("online:", event.content["user"]["displayName"])
|
|
166
|
+
|
|
167
|
+
# Or consume the same stream as an async iterator:
|
|
168
|
+
# async for event in ws:
|
|
169
|
+
# print(event.type, event.content)
|
|
170
|
+
|
|
171
|
+
await ws.run() # blocks; reconnects automatically by default
|
|
172
|
+
```
|
|
173
|
+
|
|
174
|
+
`VRChatWebSocket` supports callback registration (`ws.on("friend-online", ...)`
|
|
175
|
+
/ `@ws.on(...)`, a catch-all `ws.on_event(...)`), an async iterator over the
|
|
176
|
+
same event stream, error/connect/disconnect/reconnect hooks, automatic
|
|
177
|
+
reconnection with exponential backoff (`auto_reconnect=False` disables it), and
|
|
178
|
+
a configurable application-level heartbeat (default 30s;
|
|
179
|
+
`heartbeat_interval=None` disables it). See
|
|
180
|
+
[examples/examples-source/websocket.py](examples/examples-source/websocket.py)
|
|
181
|
+
and the [Websocket API reference](https://vrchat.community/websocket) for
|
|
182
|
+
details.
|
|
137
183
|
|
|
@@ -103,3 +103,49 @@ Compared to [the synchronous SDK](https://github.com/vrchatapi/vrchatapi-python)
|
|
|
103
103
|
## Contributing
|
|
104
104
|
|
|
105
105
|
Contributions are welcome, but do not add features that should be handled by the OpenAPI specification.
|
|
106
|
+
|
|
107
|
+
## Websocket (Pipeline) API
|
|
108
|
+
|
|
109
|
+
The SDK also ships a hand-written async client for VRChat's real-time
|
|
110
|
+
WebSocket (Pipeline) API (`wss://pipeline.vrchat.cloud`), which pushes invites,
|
|
111
|
+
friend requests, friend online/offline events, user and group updates to the
|
|
112
|
+
authenticated client. The connection is receive-only; every message's
|
|
113
|
+
double-encoded `content` field is automatically unpacked into a plain dict.
|
|
114
|
+
|
|
115
|
+
```python
|
|
116
|
+
import asyncio
|
|
117
|
+
|
|
118
|
+
import vrchatapi
|
|
119
|
+
from vrchatapi.api import authentication_api
|
|
120
|
+
from vrchatapi.websocket import VRChatWebSocket
|
|
121
|
+
|
|
122
|
+
|
|
123
|
+
async def main():
|
|
124
|
+
configuration = vrchatapi.Configuration(username="username", password="password")
|
|
125
|
+
async with vrchatapi.ApiClient(configuration) as api_client:
|
|
126
|
+
api_client.user_agent = "ExampleProgram/0.0.1 my@email.com"
|
|
127
|
+
await authentication_api.AuthenticationApi(api_client).get_current_user()
|
|
128
|
+
|
|
129
|
+
# Reads the auth cookie + User-Agent from the logged-in client.
|
|
130
|
+
ws = VRChatWebSocket.from_client(api_client)
|
|
131
|
+
|
|
132
|
+
@ws.on("friend-online")
|
|
133
|
+
async def on_friend_online(event):
|
|
134
|
+
print("online:", event.content["user"]["displayName"])
|
|
135
|
+
|
|
136
|
+
# Or consume the same stream as an async iterator:
|
|
137
|
+
# async for event in ws:
|
|
138
|
+
# print(event.type, event.content)
|
|
139
|
+
|
|
140
|
+
await ws.run() # blocks; reconnects automatically by default
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
`VRChatWebSocket` supports callback registration (`ws.on("friend-online", ...)`
|
|
144
|
+
/ `@ws.on(...)`, a catch-all `ws.on_event(...)`), an async iterator over the
|
|
145
|
+
same event stream, error/connect/disconnect/reconnect hooks, automatic
|
|
146
|
+
reconnection with exponential backoff (`auto_reconnect=False` disables it), and
|
|
147
|
+
a configurable application-level heartbeat (default 30s;
|
|
148
|
+
`heartbeat_interval=None` disables it). See
|
|
149
|
+
[examples/examples-source/websocket.py](examples/examples-source/websocket.py)
|
|
150
|
+
and the [Websocket API reference](https://vrchat.community/websocket) for
|
|
151
|
+
details.
|
|
@@ -107,6 +107,52 @@ Compared to [the synchronous SDK](https://github.com/vrchatapi/vrchatapi-python)
|
|
|
107
107
|
|
|
108
108
|
Contributions are welcome, but do not add features that should be handled by the OpenAPI specification.
|
|
109
109
|
|
|
110
|
+
## Websocket (Pipeline) API
|
|
111
|
+
|
|
112
|
+
The SDK also ships a hand-written async client for VRChat's real-time
|
|
113
|
+
WebSocket (Pipeline) API (`wss://pipeline.vrchat.cloud`), which pushes invites,
|
|
114
|
+
friend requests, friend online/offline events, user and group updates to the
|
|
115
|
+
authenticated client. The connection is receive-only; every message's
|
|
116
|
+
double-encoded `content` field is automatically unpacked into a plain dict.
|
|
117
|
+
|
|
118
|
+
```python
|
|
119
|
+
import asyncio
|
|
120
|
+
|
|
121
|
+
import vrchatapi
|
|
122
|
+
from vrchatapi.api import authentication_api
|
|
123
|
+
from vrchatapi.websocket import VRChatWebSocket
|
|
124
|
+
|
|
125
|
+
|
|
126
|
+
async def main():
|
|
127
|
+
configuration = vrchatapi.Configuration(username="username", password="password")
|
|
128
|
+
async with vrchatapi.ApiClient(configuration) as api_client:
|
|
129
|
+
api_client.user_agent = "ExampleProgram/0.0.1 my@email.com"
|
|
130
|
+
await authentication_api.AuthenticationApi(api_client).get_current_user()
|
|
131
|
+
|
|
132
|
+
# Reads the auth cookie + User-Agent from the logged-in client.
|
|
133
|
+
ws = VRChatWebSocket.from_client(api_client)
|
|
134
|
+
|
|
135
|
+
@ws.on("friend-online")
|
|
136
|
+
async def on_friend_online(event):
|
|
137
|
+
print("online:", event.content["user"]["displayName"])
|
|
138
|
+
|
|
139
|
+
# Or consume the same stream as an async iterator:
|
|
140
|
+
# async for event in ws:
|
|
141
|
+
# print(event.type, event.content)
|
|
142
|
+
|
|
143
|
+
await ws.run() # blocks; reconnects automatically by default
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
`VRChatWebSocket` supports callback registration (`ws.on("friend-online", ...)`
|
|
147
|
+
/ `@ws.on(...)`, a catch-all `ws.on_event(...)`), an async iterator over the
|
|
148
|
+
same event stream, error/connect/disconnect/reconnect hooks, automatic
|
|
149
|
+
reconnection with exponential backoff (`auto_reconnect=False` disables it), and
|
|
150
|
+
a configurable application-level heartbeat (default 30s;
|
|
151
|
+
`heartbeat_interval=None` disables it). See
|
|
152
|
+
[examples/examples-source/websocket.py](examples/examples-source/websocket.py)
|
|
153
|
+
and the [Websocket API reference](https://vrchat.community/websocket) for
|
|
154
|
+
details.
|
|
155
|
+
|
|
110
156
|
The version of the OpenAPI document: 1.20.8
|
|
111
157
|
Contact: vrchatapi.lpv0t@aries.fyi
|
|
112
158
|
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
@@ -124,7 +170,7 @@ from setuptools import setup, find_packages # noqa: H301
|
|
|
124
170
|
# prerequisite: setuptools
|
|
125
171
|
# http://pypi.python.org/pypi/setuptools
|
|
126
172
|
NAME = "vrchatapi-async"
|
|
127
|
-
VERSION = "1.20.
|
|
173
|
+
VERSION = "1.20.8.post1"
|
|
128
174
|
PYTHON_REQUIRES = ">= 3.10"
|
|
129
175
|
REQUIRES = [
|
|
130
176
|
"python-dateutil >= 2.8.2",
|
|
@@ -254,6 +300,52 @@ Compared to [the synchronous SDK](https://github.com/vrchatapi/vrchatapi-python)
|
|
|
254
300
|
## Contributing
|
|
255
301
|
|
|
256
302
|
Contributions are welcome, but do not add features that should be handled by the OpenAPI specification.
|
|
303
|
+
|
|
304
|
+
## Websocket (Pipeline) API
|
|
305
|
+
|
|
306
|
+
The SDK also ships a hand-written async client for VRChat's real-time
|
|
307
|
+
WebSocket (Pipeline) API (`wss://pipeline.vrchat.cloud`), which pushes invites,
|
|
308
|
+
friend requests, friend online/offline events, user and group updates to the
|
|
309
|
+
authenticated client. The connection is receive-only; every message's
|
|
310
|
+
double-encoded `content` field is automatically unpacked into a plain dict.
|
|
311
|
+
|
|
312
|
+
```python
|
|
313
|
+
import asyncio
|
|
314
|
+
|
|
315
|
+
import vrchatapi
|
|
316
|
+
from vrchatapi.api import authentication_api
|
|
317
|
+
from vrchatapi.websocket import VRChatWebSocket
|
|
318
|
+
|
|
319
|
+
|
|
320
|
+
async def main():
|
|
321
|
+
configuration = vrchatapi.Configuration(username="username", password="password")
|
|
322
|
+
async with vrchatapi.ApiClient(configuration) as api_client:
|
|
323
|
+
api_client.user_agent = "ExampleProgram/0.0.1 my@email.com"
|
|
324
|
+
await authentication_api.AuthenticationApi(api_client).get_current_user()
|
|
325
|
+
|
|
326
|
+
# Reads the auth cookie + User-Agent from the logged-in client.
|
|
327
|
+
ws = VRChatWebSocket.from_client(api_client)
|
|
328
|
+
|
|
329
|
+
@ws.on("friend-online")
|
|
330
|
+
async def on_friend_online(event):
|
|
331
|
+
print("online:", event.content["user"]["displayName"])
|
|
332
|
+
|
|
333
|
+
# Or consume the same stream as an async iterator:
|
|
334
|
+
# async for event in ws:
|
|
335
|
+
# print(event.type, event.content)
|
|
336
|
+
|
|
337
|
+
await ws.run() # blocks; reconnects automatically by default
|
|
338
|
+
```
|
|
339
|
+
|
|
340
|
+
`VRChatWebSocket` supports callback registration (`ws.on("friend-online", ...)`
|
|
341
|
+
/ `@ws.on(...)`, a catch-all `ws.on_event(...)`), an async iterator over the
|
|
342
|
+
same event stream, error/connect/disconnect/reconnect hooks, automatic
|
|
343
|
+
reconnection with exponential backoff (`auto_reconnect=False` disables it), and
|
|
344
|
+
a configurable application-level heartbeat (default 30s;
|
|
345
|
+
`heartbeat_interval=None` disables it). See
|
|
346
|
+
[examples/examples-source/websocket.py](examples/examples-source/websocket.py)
|
|
347
|
+
and the [Websocket API reference](https://vrchat.community/websocket) for
|
|
348
|
+
details.
|
|
257
349
|
""", # noqa: E501
|
|
258
350
|
package_data={"vrchatapi": ["py.typed"]},
|
|
259
351
|
)
|
|
@@ -15,6 +15,7 @@ the async conversion:
|
|
|
15
15
|
|
|
16
16
|
import base64
|
|
17
17
|
import json
|
|
18
|
+
from unittest.mock import AsyncMock, Mock
|
|
18
19
|
|
|
19
20
|
import aiohttp
|
|
20
21
|
from multidict import CIMultiDict
|
|
@@ -277,6 +278,29 @@ async def test_request_timeout_maps_to_client_timeout():
|
|
|
277
278
|
await rest_client.close()
|
|
278
279
|
|
|
279
280
|
|
|
281
|
+
@pytest.mark.asyncio
|
|
282
|
+
async def test_ssl_context_is_built_lazily_off_the_event_loop(monkeypatch):
|
|
283
|
+
from vrchatapi import rest as rest_module
|
|
284
|
+
|
|
285
|
+
config = Configuration(host="http://localhost")
|
|
286
|
+
build_context = Mock()
|
|
287
|
+
monkeypatch.setattr(rest_module.ssl, "create_default_context", build_context)
|
|
288
|
+
build_context.reset_mock()
|
|
289
|
+
rest_client = rest_module.RESTClientObject(config)
|
|
290
|
+
|
|
291
|
+
build_context.assert_not_called()
|
|
292
|
+
|
|
293
|
+
ssl_context = Mock()
|
|
294
|
+
to_thread = AsyncMock(return_value=ssl_context)
|
|
295
|
+
monkeypatch.setattr(rest_module.asyncio, "to_thread", to_thread)
|
|
296
|
+
monkeypatch.setattr(rest_client, "_create_pool_manager", Mock(return_value=Mock()))
|
|
297
|
+
|
|
298
|
+
await rest_client._ensure_session()
|
|
299
|
+
|
|
300
|
+
to_thread.assert_awaited_once_with(rest_client._build_ssl_context)
|
|
301
|
+
assert rest_client.ssl_context is ssl_context
|
|
302
|
+
|
|
303
|
+
|
|
280
304
|
@pytest.mark.asyncio
|
|
281
305
|
async def test_without_preload_content_returns_raw_response(server):
|
|
282
306
|
config = Configuration(host=server.base_url)
|