mirror of
https://github.com/mii443/vrchatapi-rust.git
synced 2025-08-22 15:45:35 +00:00
Upgrade Rust SDK to spec 1.18.1
This commit is contained in:
@ -1,6 +1,6 @@
|
|||||||
[package]
|
[package]
|
||||||
name = "vrchatapi"
|
name = "vrchatapi"
|
||||||
version = "1.18.0"
|
version = "1.18.1"
|
||||||
authors = ["vrchatapi.lpv0t@aries.fyi"]
|
authors = ["vrchatapi.lpv0t@aries.fyi"]
|
||||||
description = "VRChat API Client for Rust"
|
description = "VRChat API Client for Rust"
|
||||||
license = "MIT"
|
license = "MIT"
|
||||||
|
@ -9,28 +9,41 @@ Name | Type | Description | Notes
|
|||||||
**address** | **String** | VRChat's office address |
|
**address** | **String** | VRChat's office address |
|
||||||
**announcements** | [**Vec<models::ApiConfigAnnouncement>**](APIConfigAnnouncement.md) | Public Announcements |
|
**announcements** | [**Vec<models::ApiConfigAnnouncement>**](APIConfigAnnouncement.md) | Public Announcements |
|
||||||
**app_name** | **String** | Game name | [default to VrChat]
|
**app_name** | **String** | Game name | [default to VrChat]
|
||||||
|
**available_language_codes** | **Vec<String>** | List of supported Languages |
|
||||||
|
**available_languages** | **Vec<String>** | List of supported Languages |
|
||||||
**build_version_tag** | **String** | Build tag of the API server |
|
**build_version_tag** | **String** | Build tag of the API server |
|
||||||
**client_api_key** | **String** | apiKey to be used for all other requests |
|
**client_api_key** | **String** | apiKey to be used for all other requests |
|
||||||
**client_bps_ceiling** | **i32** | Unknown | [default to 18432]
|
**client_bps_ceiling** | **i32** | Unknown | [default to 18432]
|
||||||
**client_disconnect_timeout** | **i32** | Unknown | [default to 30000]
|
**client_disconnect_timeout** | **i32** | Unknown | [default to 30000]
|
||||||
|
**client_net_dispatch_thread** | Option<**bool**> | Unknown | [optional][default to false]
|
||||||
|
**client_net_in_thread** | Option<**bool**> | Unknown | [optional][default to false]
|
||||||
|
**client_net_in_thread2** | Option<**bool**> | Unknown | [optional][default to false]
|
||||||
|
**client_net_in_thread_mobile** | Option<**bool**> | Unknown | [optional][default to false]
|
||||||
|
**client_net_in_thread_mobile2** | Option<**bool**> | Unknown | [optional][default to false]
|
||||||
|
**client_net_out_thread** | Option<**bool**> | Unknown | [optional][default to false]
|
||||||
|
**client_net_out_thread2** | Option<**bool**> | Unknown | [optional][default to false]
|
||||||
|
**client_net_out_thread_mobile** | Option<**bool**> | Unknown | [optional][default to false]
|
||||||
|
**client_net_out_thread_mobile2** | Option<**bool**> | Unknown | [optional][default to false]
|
||||||
|
**client_qr** | Option<**i32**> | Unknown | [optional][default to 1]
|
||||||
**client_reserved_player_bps** | **i32** | Unknown | [default to 7168]
|
**client_reserved_player_bps** | **i32** | Unknown | [default to 7168]
|
||||||
**client_sent_count_allowance** | **i32** | Unknown | [default to 15]
|
**client_sent_count_allowance** | **i32** | Unknown | [default to 15]
|
||||||
**contact_email** | **String** | VRChat's contact email |
|
**contact_email** | **String** | VRChat's contact email |
|
||||||
**copyright_email** | **String** | VRChat's copyright-issues-related email |
|
**copyright_email** | **String** | VRChat's copyright-issues-related email |
|
||||||
|
**current_privacy_version** | Option<**i32**> | Current version number of the Privacy Agreement | [optional][default to 1]
|
||||||
**current_tos_version** | **i32** | Current version number of the Terms of Service |
|
**current_tos_version** | **i32** | Current version number of the Terms of Service |
|
||||||
**default_avatar** | **String** | |
|
**default_avatar** | **String** | |
|
||||||
**deployment_group** | [**models::DeploymentGroup**](DeploymentGroup.md) | |
|
**deployment_group** | [**models::DeploymentGroup**](DeploymentGroup.md) | |
|
||||||
**dev_app_version_standalone** | **String** | Version number for game development build |
|
**dev_language_codes** | Option<**Vec<String>**> | Unknown | [optional]
|
||||||
**dev_download_link_windows** | **String** | Developer Download link |
|
|
||||||
**dev_sdk_url** | **String** | Link to download the development SDK, use downloadUrls instead |
|
**dev_sdk_url** | **String** | Link to download the development SDK, use downloadUrls instead |
|
||||||
**dev_sdk_version** | **String** | Version of the development SDK |
|
**dev_sdk_version** | **String** | Version of the development SDK |
|
||||||
**dev_server_version_standalone** | **String** | Version number for server development build |
|
|
||||||
**dis_countdown** | **String** | Unknown, \"dis\" maybe for disconnect? |
|
**dis_countdown** | **String** | Unknown, \"dis\" maybe for disconnect? |
|
||||||
|
**disable_av_pro_in_proton** | Option<**bool**> | Unknown | [optional][default to false]
|
||||||
**disable_avatar_copying** | **bool** | Toggles if copying avatars should be disabled | [default to false]
|
**disable_avatar_copying** | **bool** | Toggles if copying avatars should be disabled | [default to false]
|
||||||
**disable_avatar_gating** | **bool** | Toggles if avatar gating should be disabled. Avatar gating restricts uploading of avatars to people with the `system_avatar_access` Tag or `admin_avatar_access` Tag | [default to false]
|
**disable_avatar_gating** | **bool** | Toggles if avatar gating should be disabled. Avatar gating restricts uploading of avatars to people with the `system_avatar_access` Tag or `admin_avatar_access` Tag | [default to false]
|
||||||
**disable_community_labs** | **bool** | Toggles if the Community Labs should be disabled | [default to false]
|
**disable_community_labs** | **bool** | Toggles if the Community Labs should be disabled | [default to false]
|
||||||
**disable_community_labs_promotion** | **bool** | Toggles if promotion out of Community Labs should be disabled | [default to false]
|
**disable_community_labs_promotion** | **bool** | Toggles if promotion out of Community Labs should be disabled | [default to false]
|
||||||
**disable_email** | **bool** | Unknown | [default to false]
|
**disable_email** | **bool** | Unknown | [default to false]
|
||||||
|
**disable_captcha** | Option<**bool**> | Unknown | [optional][default to true]
|
||||||
**disable_event_stream** | **bool** | Toggles if Analytics should be disabled. | [default to false]
|
**disable_event_stream** | **bool** | Toggles if Analytics should be disabled. | [default to false]
|
||||||
**disable_feedback_gating** | **bool** | Toggles if feedback gating should be disabled. Feedback gating restricts submission of feedback (reporting a World or User) to people with the `system_feedback_access` Tag. | [default to false]
|
**disable_feedback_gating** | **bool** | Toggles if feedback gating should be disabled. Feedback gating restricts submission of feedback (reporting a World or User) to people with the `system_feedback_access` Tag. | [default to false]
|
||||||
**disable_frontend_builds** | **bool** | Unknown, probably toggles compilation of frontend web builds? So internal flag? | [default to false]
|
**disable_frontend_builds** | **bool** | Unknown, probably toggles compilation of frontend web builds? So internal flag? | [default to false]
|
||||||
@ -44,26 +57,23 @@ Name | Type | Description | Notes
|
|||||||
**download_link_windows** | **String** | Download link for game on the Oculus Rift website. |
|
**download_link_windows** | **String** | Download link for game on the Oculus Rift website. |
|
||||||
**download_urls** | [**models::ApiConfigDownloadUrlList**](APIConfigDownloadURLList.md) | |
|
**download_urls** | [**models::ApiConfigDownloadUrlList**](APIConfigDownloadURLList.md) | |
|
||||||
**dynamic_world_rows** | [**Vec<models::DynamicContentRow>**](DynamicContentRow.md) | Array of DynamicWorldRow objects, used by the game to display the list of world rows |
|
**dynamic_world_rows** | [**Vec<models::DynamicContentRow>**](DynamicContentRow.md) | Array of DynamicWorldRow objects, used by the game to display the list of world rows |
|
||||||
|
**economy_pause_end** | Option<**String**> | Unknown | [optional]
|
||||||
|
**economy_pause_start** | Option<**String**> | Unknown | [optional]
|
||||||
|
**economy_state** | Option<**i32**> | Unknown | [optional][default to 1]
|
||||||
**events** | [**models::ApiConfigEvents**](APIConfigEvents.md) | |
|
**events** | [**models::ApiConfigEvents**](APIConfigEvents.md) | |
|
||||||
**gear_demo_room_id** | **String** | Unknown |
|
|
||||||
**home_world_id** | **String** | WorldID be \"offline\" on User profiles if you are not friends with that user. |
|
**home_world_id** | **String** | WorldID be \"offline\" on User profiles if you are not friends with that user. |
|
||||||
**homepage_redirect_target** | **String** | Redirect target if you try to open the base API domain in your browser | [default to https://hello.vrchat.com]
|
**homepage_redirect_target** | **String** | Redirect target if you try to open the base API domain in your browser | [default to https://hello.vrchat.com]
|
||||||
**hub_world_id** | **String** | WorldID be \"offline\" on User profiles if you are not friends with that user. |
|
**hub_world_id** | **String** | WorldID be \"offline\" on User profiles if you are not friends with that user. |
|
||||||
|
**image_host_url_list** | **Vec<String>** | A list of explicitly allowed origins that worlds can request images from via the Udon's [VRCImageDownloader#DownloadImage](https://creators.vrchat.com/worlds/udon/image-loading/#downloadimage). |
|
||||||
**jobs_email** | **String** | VRChat's job application email |
|
**jobs_email** | **String** | VRChat's job application email |
|
||||||
**message_of_the_day** | **String** | MOTD |
|
|
||||||
**moderation_email** | **String** | VRChat's moderation related email |
|
**moderation_email** | **String** | VRChat's moderation related email |
|
||||||
**moderation_query_period** | **i32** | Unknown |
|
|
||||||
**not_allowed_to_select_avatar_in_private_world_message** | **String** | Used in-game to notify a user they aren't allowed to select avatars in private worlds |
|
**not_allowed_to_select_avatar_in_private_world_message** | **String** | Used in-game to notify a user they aren't allowed to select avatars in private worlds |
|
||||||
**plugin** | **String** | Extra [plugin](https://doc.photonengine.com/en-us/server/current/plugins/manual) to run in each instance |
|
|
||||||
**release_app_version_standalone** | **String** | Version number for game release build |
|
|
||||||
**release_sdk_url** | **String** | Link to download the release SDK |
|
|
||||||
**release_sdk_version** | **String** | Version of the release SDK |
|
|
||||||
**release_server_version_standalone** | **String** | Version number for server release build |
|
|
||||||
**sdk_developer_faq_url** | **String** | Link to the developer FAQ |
|
**sdk_developer_faq_url** | **String** | Link to the developer FAQ |
|
||||||
**sdk_discord_url** | **String** | Link to the official VRChat Discord |
|
**sdk_discord_url** | **String** | Link to the official VRChat Discord |
|
||||||
**sdk_not_allowed_to_publish_message** | **String** | Used in the SDK to notify a user they aren't allowed to upload avatars/worlds yet |
|
**sdk_not_allowed_to_publish_message** | **String** | Used in the SDK to notify a user they aren't allowed to upload avatars/worlds yet |
|
||||||
**sdk_unity_version** | **String** | Unity version supported by the SDK |
|
**sdk_unity_version** | **String** | Unity version supported by the SDK |
|
||||||
**server_name** | **String** | Server name of the API server currently responding |
|
**server_name** | **String** | Server name of the API server currently responding |
|
||||||
|
**string_host_url_list** | **Vec<String>** | A list of explicitly allowed origins that worlds can request strings from via the Udon's [VRCStringDownloader.LoadUrl](https://creators.vrchat.com/worlds/udon/string-loading/#ivrcstringdownload). |
|
||||||
**support_email** | **String** | VRChat's support email |
|
**support_email** | **String** | VRChat's support email |
|
||||||
**time_out_world_id** | **String** | WorldID be \"offline\" on User profiles if you are not friends with that user. |
|
**time_out_world_id** | **String** | WorldID be \"offline\" on User profiles if you are not friends with that user. |
|
||||||
**tutorial_world_id** | **String** | WorldID be \"offline\" on User profiles if you are not friends with that user. |
|
**tutorial_world_id** | **String** | WorldID be \"offline\" on User profiles if you are not friends with that user. |
|
||||||
@ -74,15 +84,10 @@ Name | Type | Description | Notes
|
|||||||
**upload_analysis_percent** | **i32** | Unknown |
|
**upload_analysis_percent** | **i32** | Unknown |
|
||||||
**url_list** | **Vec<String>** | List of allowed URLs that bypass the \"Allow untrusted URL's\" setting in-game |
|
**url_list** | **Vec<String>** | List of allowed URLs that bypass the \"Allow untrusted URL's\" setting in-game |
|
||||||
**use_reliable_udp_for_voice** | **bool** | Unknown | [default to false]
|
**use_reliable_udp_for_voice** | **bool** | Unknown | [default to false]
|
||||||
**user_update_period** | **i32** | Unknown |
|
|
||||||
**user_verification_delay** | **i32** | Unknown |
|
|
||||||
**user_verification_retry** | **i32** | Unknown |
|
|
||||||
**user_verification_timeout** | **i32** | Unknown |
|
|
||||||
**vive_windows_url** | **String** | Download link for game on the Steam website. |
|
**vive_windows_url** | **String** | Download link for game on the Steam website. |
|
||||||
**white_listed_asset_urls** | **Vec<String>** | List of allowed URLs that are allowed to host avatar assets |
|
**white_listed_asset_urls** | **Vec<String>** | List of allowed URLs that are allowed to host avatar assets |
|
||||||
**world_update_period** | **i32** | Unknown |
|
|
||||||
**player_url_resolver_hash** | **String** | Currently used youtube-dl.exe hash in SHA-256-delimited format |
|
|
||||||
**player_url_resolver_version** | **String** | Currently used youtube-dl.exe version |
|
**player_url_resolver_version** | **String** | Currently used youtube-dl.exe version |
|
||||||
|
**player_url_resolver_sha1** | **String** | Currently used youtube-dl.exe hash in SHA1-delimited format |
|
||||||
|
|
||||||
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
|
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
|
||||||
|
|
||||||
|
@ -17,7 +17,7 @@ Method | HTTP request | Description
|
|||||||
|
|
||||||
## check_user_exists
|
## check_user_exists
|
||||||
|
|
||||||
> models::UserExists check_user_exists(email, display_name, user_id, exclude_user_id)
|
> models::UserExists check_user_exists(email, display_name, username, exclude_user_id)
|
||||||
Check User Exists
|
Check User Exists
|
||||||
|
|
||||||
Checks if a user by a given `username`, `displayName` or `email` exist. This is used during registration to check if a username has already been taken, during change of displayName to check if a displayName is available, and during change of email to check if the email is already used. In the later two cases the `excludeUserId` is used to exclude oneself, otherwise the result would always be true. It is **REQUIRED** to include **AT LEAST** `username`, `displayName` **or** `email` query parameter. Although they can be combined - in addition with `excludeUserId` (generally to exclude yourself) - to further fine-tune the search.
|
Checks if a user by a given `username`, `displayName` or `email` exist. This is used during registration to check if a username has already been taken, during change of displayName to check if a displayName is available, and during change of email to check if the email is already used. In the later two cases the `excludeUserId` is used to exclude oneself, otherwise the result would always be true. It is **REQUIRED** to include **AT LEAST** `username`, `displayName` **or** `email` query parameter. Although they can be combined - in addition with `excludeUserId` (generally to exclude yourself) - to further fine-tune the search.
|
||||||
@ -29,7 +29,7 @@ Name | Type | Description | Required | Notes
|
|||||||
------------- | ------------- | ------------- | ------------- | -------------
|
------------- | ------------- | ------------- | ------------- | -------------
|
||||||
**email** | Option<**String**> | Filter by email. | |
|
**email** | Option<**String**> | Filter by email. | |
|
||||||
**display_name** | Option<**String**> | Filter by displayName. | |
|
**display_name** | Option<**String**> | Filter by displayName. | |
|
||||||
**user_id** | Option<**String**> | Filter by UserID. | |
|
**username** | Option<**String**> | Filter by Username. | |
|
||||||
**exclude_user_id** | Option<**String**> | Exclude by UserID. | |
|
**exclude_user_id** | Option<**String**> | Exclude by UserID. | |
|
||||||
|
|
||||||
### Return type
|
### Return type
|
||||||
|
@ -6,7 +6,7 @@ Name | Type | Description | Notes
|
|||||||
------------ | ------------- | ------------- | -------------
|
------------ | ------------- | ------------- | -------------
|
||||||
**category** | **String** | | [default to Queued]
|
**category** | **String** | | [default to Queued]
|
||||||
**file_name** | **String** | |
|
**file_name** | **String** | |
|
||||||
**md5** | **String** | |
|
**md5** | Option<**String**> | | [optional]
|
||||||
**size_in_bytes** | **i32** | |
|
**size_in_bytes** | **i32** | |
|
||||||
**status** | [**models::FileStatus**](FileStatus.md) | |
|
**status** | [**models::FileStatus**](FileStatus.md) | |
|
||||||
**upload_id** | **String** | | [default to ]
|
**upload_id** | **String** | | [default to ]
|
||||||
|
@ -80,7 +80,7 @@ Name | Type | Description | Required | Notes
|
|||||||
|
|
||||||
## delete_file
|
## delete_file
|
||||||
|
|
||||||
> models::Success delete_file(file_id)
|
> models::File delete_file(file_id)
|
||||||
Delete File
|
Delete File
|
||||||
|
|
||||||
Deletes a File object.
|
Deletes a File object.
|
||||||
@ -94,7 +94,7 @@ Name | Type | Description | Required | Notes
|
|||||||
|
|
||||||
### Return type
|
### Return type
|
||||||
|
|
||||||
[**models::Success**](Success.md)
|
[**models::File**](File.md)
|
||||||
|
|
||||||
### Authorization
|
### Authorization
|
||||||
|
|
||||||
@ -165,7 +165,7 @@ Name | Type | Description | Required | Notes
|
|||||||
### HTTP request headers
|
### HTTP request headers
|
||||||
|
|
||||||
- **Content-Type**: Not defined
|
- **Content-Type**: Not defined
|
||||||
- **Accept**: Not defined
|
- **Accept**: application/json
|
||||||
|
|
||||||
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
|
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
|
||||||
|
|
||||||
|
@ -23,8 +23,11 @@ Name | Type | Description | Notes
|
|||||||
**is_verified** | Option<**bool**> | | [optional][default to false]
|
**is_verified** | Option<**bool**> | | [optional][default to false]
|
||||||
**join_state** | Option<[**models::GroupJoinState**](GroupJoinState.md)> | | [optional]
|
**join_state** | Option<[**models::GroupJoinState**](GroupJoinState.md)> | | [optional]
|
||||||
**tags** | Option<**Vec<String>**> | | [optional]
|
**tags** | Option<**Vec<String>**> | | [optional]
|
||||||
|
**transfer_target_id** | Option<**String**> | A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. | [optional]
|
||||||
**galleries** | Option<[**Vec<models::GroupGallery>**](GroupGallery.md)> | | [optional]
|
**galleries** | Option<[**Vec<models::GroupGallery>**](GroupGallery.md)> | | [optional]
|
||||||
**created_at** | Option<**String**> | | [optional]
|
**created_at** | Option<**String**> | | [optional]
|
||||||
|
**updated_at** | Option<**String**> | | [optional]
|
||||||
|
**last_post_created_at** | Option<**String**> | | [optional]
|
||||||
**online_member_count** | Option<**i32**> | | [optional]
|
**online_member_count** | Option<**i32**> | | [optional]
|
||||||
**membership_status** | Option<[**models::GroupMemberStatus**](GroupMemberStatus.md)> | | [optional]
|
**membership_status** | Option<[**models::GroupMemberStatus**](GroupMemberStatus.md)> | | [optional]
|
||||||
**my_member** | Option<[**models::GroupMyMember**](GroupMyMember.md)> | | [optional]
|
**my_member** | Option<[**models::GroupMyMember**](GroupMyMember.md)> | | [optional]
|
||||||
|
@ -8,6 +8,9 @@ Name | Type | Description | Notes
|
|||||||
**group_id** | Option<**String**> | | [optional]
|
**group_id** | Option<**String**> | | [optional]
|
||||||
**user_id** | Option<**String**> | A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. | [optional]
|
**user_id** | Option<**String**> | A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. | [optional]
|
||||||
**role_ids** | Option<**Vec<String>**> | | [optional]
|
**role_ids** | Option<**Vec<String>**> | | [optional]
|
||||||
|
**accepted_by_display_name** | Option<**String**> | | [optional]
|
||||||
|
**accepted_by_id** | Option<**String**> | A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. | [optional]
|
||||||
|
**created_at** | Option<**String**> | | [optional]
|
||||||
**manager_notes** | Option<**String**> | | [optional]
|
**manager_notes** | Option<**String**> | | [optional]
|
||||||
**membership_status** | Option<**String**> | | [optional]
|
**membership_status** | Option<**String**> | | [optional]
|
||||||
**is_subscribed_to_announcements** | Option<**bool**> | | [optional][default to true]
|
**is_subscribed_to_announcements** | Option<**bool**> | | [optional][default to true]
|
||||||
@ -16,6 +19,9 @@ Name | Type | Description | Notes
|
|||||||
**joined_at** | Option<**String**> | | [optional]
|
**joined_at** | Option<**String**> | | [optional]
|
||||||
**banned_at** | Option<**String**> | | [optional]
|
**banned_at** | Option<**String**> | | [optional]
|
||||||
**has2_fa** | Option<**bool**> | | [optional][default to false]
|
**has2_fa** | Option<**bool**> | | [optional][default to false]
|
||||||
|
**has_joined_from_purchase** | Option<**bool**> | | [optional][default to false]
|
||||||
|
**last_post_read_at** | Option<**String**> | | [optional]
|
||||||
|
**m_role_ids** | Option<**Vec<String>**> | | [optional]
|
||||||
**permissions** | Option<**Vec<String>**> | | [optional]
|
**permissions** | Option<**Vec<String>**> | | [optional]
|
||||||
|
|
||||||
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
|
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
|
||||||
|
@ -5,6 +5,7 @@
|
|||||||
Name | Type | Description | Notes
|
Name | Type | Description | Notes
|
||||||
------------ | ------------- | ------------- | -------------
|
------------ | ------------- | ------------- | -------------
|
||||||
**id** | **String** | |
|
**id** | **String** | |
|
||||||
|
**owner_display_name** | **String** | |
|
||||||
**name** | **String** | |
|
**name** | **String** | |
|
||||||
**owner_id** | **String** | A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. |
|
**owner_id** | **String** | A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. |
|
||||||
**data** | Option<[**serde_json::Value**](.md)> | | [optional]
|
**data** | Option<[**serde_json::Value**](.md)> | | [optional]
|
||||||
|
@ -6,6 +6,7 @@ Name | Type | Description | Notes
|
|||||||
------------ | ------------- | ------------- | -------------
|
------------ | ------------- | ------------- | -------------
|
||||||
**agreement_id** | **String** | |
|
**agreement_id** | **String** | |
|
||||||
**item_id** | **f64** | |
|
**item_id** | **f64** | |
|
||||||
|
**agreement** | **String** | |
|
||||||
**status** | **String** | This is NOT TransactionStatus, but whatever Steam return. |
|
**status** | **String** | This is NOT TransactionStatus, but whatever Steam return. |
|
||||||
**period** | **String** | |
|
**period** | **String** | |
|
||||||
**frequency** | **f64** | |
|
**frequency** | **f64** | |
|
||||||
|
@ -14,6 +14,7 @@ Name | Type | Description | Notes
|
|||||||
**tier** | **f64** | |
|
**tier** | **f64** | |
|
||||||
**active** | **bool** | | [default to true]
|
**active** | **bool** | | [default to true]
|
||||||
**status** | [**models::TransactionStatus**](TransactionStatus.md) | |
|
**status** | [**models::TransactionStatus**](TransactionStatus.md) | |
|
||||||
|
**starts** | Option<**String**> | | [optional]
|
||||||
**expires** | **String** | |
|
**expires** | **String** | |
|
||||||
**created_at** | **String** | |
|
**created_at** | **String** | |
|
||||||
**updated_at** | **String** | |
|
**updated_at** | **String** | |
|
||||||
|
@ -358,7 +358,7 @@ Name | Type | Description | Required | Notes
|
|||||||
|
|
||||||
## search_worlds
|
## search_worlds
|
||||||
|
|
||||||
> Vec<models::LimitedWorld> search_worlds(featured, sort, user, user_id, n, order, offset, search, tag, notag, release_status, max_unity_version, min_unity_version, platform)
|
> Vec<models::LimitedWorld> search_worlds(featured, sort, user, user_id, n, order, offset, search, tag, notag, release_status, max_unity_version, min_unity_version, platform, fuzzy)
|
||||||
Search All Worlds
|
Search All Worlds
|
||||||
|
|
||||||
Search and list any worlds by query filters.
|
Search and list any worlds by query filters.
|
||||||
@ -382,6 +382,7 @@ Name | Type | Description | Required | Notes
|
|||||||
**max_unity_version** | Option<**String**> | The maximum Unity version supported by the asset. | |
|
**max_unity_version** | Option<**String**> | The maximum Unity version supported by the asset. | |
|
||||||
**min_unity_version** | Option<**String**> | The minimum Unity version supported by the asset. | |
|
**min_unity_version** | Option<**String**> | The minimum Unity version supported by the asset. | |
|
||||||
**platform** | Option<**String**> | The platform the asset supports. | |
|
**platform** | Option<**String**> | The platform the asset supports. | |
|
||||||
|
**fuzzy** | Option<**bool**> | | |
|
||||||
|
|
||||||
### Return type
|
### Return type
|
||||||
|
|
||||||
|
@ -79,7 +79,7 @@ pub enum VerifyRecoveryCodeError {
|
|||||||
|
|
||||||
|
|
||||||
/// Checks if a user by a given `username`, `displayName` or `email` exist. This is used during registration to check if a username has already been taken, during change of displayName to check if a displayName is available, and during change of email to check if the email is already used. In the later two cases the `excludeUserId` is used to exclude oneself, otherwise the result would always be true. It is **REQUIRED** to include **AT LEAST** `username`, `displayName` **or** `email` query parameter. Although they can be combined - in addition with `excludeUserId` (generally to exclude yourself) - to further fine-tune the search.
|
/// Checks if a user by a given `username`, `displayName` or `email` exist. This is used during registration to check if a username has already been taken, during change of displayName to check if a displayName is available, and during change of email to check if the email is already used. In the later two cases the `excludeUserId` is used to exclude oneself, otherwise the result would always be true. It is **REQUIRED** to include **AT LEAST** `username`, `displayName` **or** `email` query parameter. Although they can be combined - in addition with `excludeUserId` (generally to exclude yourself) - to further fine-tune the search.
|
||||||
pub async fn check_user_exists(configuration: &configuration::Configuration, email: Option<&str>, display_name: Option<&str>, user_id: Option<&str>, exclude_user_id: Option<&str>) -> Result<models::UserExists, Error<CheckUserExistsError>> {
|
pub async fn check_user_exists(configuration: &configuration::Configuration, email: Option<&str>, display_name: Option<&str>, username: Option<&str>, exclude_user_id: Option<&str>) -> Result<models::UserExists, Error<CheckUserExistsError>> {
|
||||||
let local_var_configuration = configuration;
|
let local_var_configuration = configuration;
|
||||||
|
|
||||||
let local_var_client = &local_var_configuration.client;
|
let local_var_client = &local_var_configuration.client;
|
||||||
@ -93,8 +93,8 @@ pub async fn check_user_exists(configuration: &configuration::Configuration, ema
|
|||||||
if let Some(ref local_var_str) = display_name {
|
if let Some(ref local_var_str) = display_name {
|
||||||
local_var_req_builder = local_var_req_builder.query(&[("displayName", &local_var_str.to_string())]);
|
local_var_req_builder = local_var_req_builder.query(&[("displayName", &local_var_str.to_string())]);
|
||||||
}
|
}
|
||||||
if let Some(ref local_var_str) = user_id {
|
if let Some(ref local_var_str) = username {
|
||||||
local_var_req_builder = local_var_req_builder.query(&[("userId", &local_var_str.to_string())]);
|
local_var_req_builder = local_var_req_builder.query(&[("username", &local_var_str.to_string())]);
|
||||||
}
|
}
|
||||||
if let Some(ref local_var_str) = exclude_user_id {
|
if let Some(ref local_var_str) = exclude_user_id {
|
||||||
local_var_req_builder = local_var_req_builder.query(&[("excludeUserId", &local_var_str.to_string())]);
|
local_var_req_builder = local_var_req_builder.query(&[("excludeUserId", &local_var_str.to_string())]);
|
||||||
|
@ -48,6 +48,7 @@ pub enum DeleteFileVersionError {
|
|||||||
#[derive(Debug, Clone, Serialize, Deserialize)]
|
#[derive(Debug, Clone, Serialize, Deserialize)]
|
||||||
#[serde(untagged)]
|
#[serde(untagged)]
|
||||||
pub enum DownloadFileVersionError {
|
pub enum DownloadFileVersionError {
|
||||||
|
Status404(models::Error),
|
||||||
UnknownValue(serde_json::Value),
|
UnknownValue(serde_json::Value),
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -148,7 +149,7 @@ pub async fn create_file_version(configuration: &configuration::Configuration, f
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// Deletes a File object.
|
/// Deletes a File object.
|
||||||
pub async fn delete_file(configuration: &configuration::Configuration, file_id: &str) -> Result<models::Success, Error<DeleteFileError>> {
|
pub async fn delete_file(configuration: &configuration::Configuration, file_id: &str) -> Result<models::File, Error<DeleteFileError>> {
|
||||||
let local_var_configuration = configuration;
|
let local_var_configuration = configuration;
|
||||||
|
|
||||||
let local_var_client = &local_var_configuration.client;
|
let local_var_client = &local_var_configuration.client;
|
||||||
|
@ -201,6 +201,7 @@ pub enum GetGroupAuditLogsError {
|
|||||||
#[serde(untagged)]
|
#[serde(untagged)]
|
||||||
pub enum GetGroupBansError {
|
pub enum GetGroupBansError {
|
||||||
Status401(models::Error),
|
Status401(models::Error),
|
||||||
|
Status403(models::Error),
|
||||||
Status404(models::Error),
|
Status404(models::Error),
|
||||||
UnknownValue(serde_json::Value),
|
UnknownValue(serde_json::Value),
|
||||||
}
|
}
|
||||||
@ -238,6 +239,7 @@ pub enum GetGroupInvitesError {
|
|||||||
#[serde(untagged)]
|
#[serde(untagged)]
|
||||||
pub enum GetGroupMemberError {
|
pub enum GetGroupMemberError {
|
||||||
Status401(models::Error),
|
Status401(models::Error),
|
||||||
|
Status403(models::Error),
|
||||||
Status404(models::Error),
|
Status404(models::Error),
|
||||||
UnknownValue(serde_json::Value),
|
UnknownValue(serde_json::Value),
|
||||||
}
|
}
|
||||||
|
@ -522,7 +522,7 @@ pub async fn publish_world(configuration: &configuration::Configuration, world_i
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// Search and list any worlds by query filters.
|
/// Search and list any worlds by query filters.
|
||||||
pub async fn search_worlds(configuration: &configuration::Configuration, featured: Option<bool>, sort: Option<models::SortOption>, user: Option<&str>, user_id: Option<&str>, n: Option<i32>, order: Option<models::OrderOption>, offset: Option<i32>, search: Option<&str>, tag: Option<&str>, notag: Option<&str>, release_status: Option<models::ReleaseStatus>, max_unity_version: Option<&str>, min_unity_version: Option<&str>, platform: Option<&str>) -> Result<Vec<models::LimitedWorld>, Error<SearchWorldsError>> {
|
pub async fn search_worlds(configuration: &configuration::Configuration, featured: Option<bool>, sort: Option<models::SortOption>, user: Option<&str>, user_id: Option<&str>, n: Option<i32>, order: Option<models::OrderOption>, offset: Option<i32>, search: Option<&str>, tag: Option<&str>, notag: Option<&str>, release_status: Option<models::ReleaseStatus>, max_unity_version: Option<&str>, min_unity_version: Option<&str>, platform: Option<&str>, fuzzy: Option<bool>) -> Result<Vec<models::LimitedWorld>, Error<SearchWorldsError>> {
|
||||||
let local_var_configuration = configuration;
|
let local_var_configuration = configuration;
|
||||||
|
|
||||||
let local_var_client = &local_var_configuration.client;
|
let local_var_client = &local_var_configuration.client;
|
||||||
@ -572,6 +572,9 @@ pub async fn search_worlds(configuration: &configuration::Configuration, feature
|
|||||||
if let Some(ref local_var_str) = platform {
|
if let Some(ref local_var_str) = platform {
|
||||||
local_var_req_builder = local_var_req_builder.query(&[("platform", &local_var_str.to_string())]);
|
local_var_req_builder = local_var_req_builder.query(&[("platform", &local_var_str.to_string())]);
|
||||||
}
|
}
|
||||||
|
if let Some(ref local_var_str) = fuzzy {
|
||||||
|
local_var_req_builder = local_var_req_builder.query(&[("fuzzy", &local_var_str.to_string())]);
|
||||||
|
}
|
||||||
if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
|
if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
|
||||||
local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
|
local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
|
||||||
}
|
}
|
||||||
|
@ -27,6 +27,12 @@ pub struct ApiConfig {
|
|||||||
/// Game name
|
/// Game name
|
||||||
#[serde(rename = "appName")]
|
#[serde(rename = "appName")]
|
||||||
pub app_name: String,
|
pub app_name: String,
|
||||||
|
/// List of supported Languages
|
||||||
|
#[serde(rename = "availableLanguageCodes")]
|
||||||
|
pub available_language_codes: Vec<String>,
|
||||||
|
/// List of supported Languages
|
||||||
|
#[serde(rename = "availableLanguages")]
|
||||||
|
pub available_languages: Vec<String>,
|
||||||
/// Build tag of the API server
|
/// Build tag of the API server
|
||||||
#[serde(rename = "buildVersionTag")]
|
#[serde(rename = "buildVersionTag")]
|
||||||
pub build_version_tag: String,
|
pub build_version_tag: String,
|
||||||
@ -40,6 +46,36 @@ pub struct ApiConfig {
|
|||||||
#[serde(rename = "clientDisconnectTimeout")]
|
#[serde(rename = "clientDisconnectTimeout")]
|
||||||
pub client_disconnect_timeout: i32,
|
pub client_disconnect_timeout: i32,
|
||||||
/// Unknown
|
/// Unknown
|
||||||
|
#[serde(rename = "clientNetDispatchThread", skip_serializing_if = "Option::is_none")]
|
||||||
|
pub client_net_dispatch_thread: Option<bool>,
|
||||||
|
/// Unknown
|
||||||
|
#[serde(rename = "clientNetInThread", skip_serializing_if = "Option::is_none")]
|
||||||
|
pub client_net_in_thread: Option<bool>,
|
||||||
|
/// Unknown
|
||||||
|
#[serde(rename = "clientNetInThread2", skip_serializing_if = "Option::is_none")]
|
||||||
|
pub client_net_in_thread2: Option<bool>,
|
||||||
|
/// Unknown
|
||||||
|
#[serde(rename = "clientNetInThreadMobile", skip_serializing_if = "Option::is_none")]
|
||||||
|
pub client_net_in_thread_mobile: Option<bool>,
|
||||||
|
/// Unknown
|
||||||
|
#[serde(rename = "clientNetInThreadMobile2", skip_serializing_if = "Option::is_none")]
|
||||||
|
pub client_net_in_thread_mobile2: Option<bool>,
|
||||||
|
/// Unknown
|
||||||
|
#[serde(rename = "clientNetOutThread", skip_serializing_if = "Option::is_none")]
|
||||||
|
pub client_net_out_thread: Option<bool>,
|
||||||
|
/// Unknown
|
||||||
|
#[serde(rename = "clientNetOutThread2", skip_serializing_if = "Option::is_none")]
|
||||||
|
pub client_net_out_thread2: Option<bool>,
|
||||||
|
/// Unknown
|
||||||
|
#[serde(rename = "clientNetOutThreadMobile", skip_serializing_if = "Option::is_none")]
|
||||||
|
pub client_net_out_thread_mobile: Option<bool>,
|
||||||
|
/// Unknown
|
||||||
|
#[serde(rename = "clientNetOutThreadMobile2", skip_serializing_if = "Option::is_none")]
|
||||||
|
pub client_net_out_thread_mobile2: Option<bool>,
|
||||||
|
/// Unknown
|
||||||
|
#[serde(rename = "clientQR", skip_serializing_if = "Option::is_none")]
|
||||||
|
pub client_qr: Option<i32>,
|
||||||
|
/// Unknown
|
||||||
#[serde(rename = "clientReservedPlayerBPS")]
|
#[serde(rename = "clientReservedPlayerBPS")]
|
||||||
pub client_reserved_player_bps: i32,
|
pub client_reserved_player_bps: i32,
|
||||||
/// Unknown
|
/// Unknown
|
||||||
@ -51,6 +87,9 @@ pub struct ApiConfig {
|
|||||||
/// VRChat's copyright-issues-related email
|
/// VRChat's copyright-issues-related email
|
||||||
#[serde(rename = "copyrightEmail")]
|
#[serde(rename = "copyrightEmail")]
|
||||||
pub copyright_email: String,
|
pub copyright_email: String,
|
||||||
|
/// Current version number of the Privacy Agreement
|
||||||
|
#[serde(rename = "currentPrivacyVersion", skip_serializing_if = "Option::is_none")]
|
||||||
|
pub current_privacy_version: Option<i32>,
|
||||||
/// Current version number of the Terms of Service
|
/// Current version number of the Terms of Service
|
||||||
#[serde(rename = "currentTOSVersion")]
|
#[serde(rename = "currentTOSVersion")]
|
||||||
pub current_tos_version: i32,
|
pub current_tos_version: i32,
|
||||||
@ -58,24 +97,21 @@ pub struct ApiConfig {
|
|||||||
pub default_avatar: String,
|
pub default_avatar: String,
|
||||||
#[serde(rename = "deploymentGroup")]
|
#[serde(rename = "deploymentGroup")]
|
||||||
pub deployment_group: models::DeploymentGroup,
|
pub deployment_group: models::DeploymentGroup,
|
||||||
/// Version number for game development build
|
/// Unknown
|
||||||
#[serde(rename = "devAppVersionStandalone")]
|
#[serde(rename = "devLanguageCodes", skip_serializing_if = "Option::is_none")]
|
||||||
pub dev_app_version_standalone: String,
|
pub dev_language_codes: Option<Vec<String>>,
|
||||||
/// Developer Download link
|
|
||||||
#[serde(rename = "devDownloadLinkWindows")]
|
|
||||||
pub dev_download_link_windows: String,
|
|
||||||
/// Link to download the development SDK, use downloadUrls instead
|
/// Link to download the development SDK, use downloadUrls instead
|
||||||
#[serde(rename = "devSdkUrl")]
|
#[serde(rename = "devSdkUrl")]
|
||||||
pub dev_sdk_url: String,
|
pub dev_sdk_url: String,
|
||||||
/// Version of the development SDK
|
/// Version of the development SDK
|
||||||
#[serde(rename = "devSdkVersion")]
|
#[serde(rename = "devSdkVersion")]
|
||||||
pub dev_sdk_version: String,
|
pub dev_sdk_version: String,
|
||||||
/// Version number for server development build
|
|
||||||
#[serde(rename = "devServerVersionStandalone")]
|
|
||||||
pub dev_server_version_standalone: String,
|
|
||||||
/// Unknown, \"dis\" maybe for disconnect?
|
/// Unknown, \"dis\" maybe for disconnect?
|
||||||
#[serde(rename = "dis-countdown")]
|
#[serde(rename = "dis-countdown")]
|
||||||
pub dis_countdown: String,
|
pub dis_countdown: String,
|
||||||
|
/// Unknown
|
||||||
|
#[serde(rename = "disableAVProInProton", skip_serializing_if = "Option::is_none")]
|
||||||
|
pub disable_av_pro_in_proton: Option<bool>,
|
||||||
/// Toggles if copying avatars should be disabled
|
/// Toggles if copying avatars should be disabled
|
||||||
#[serde(rename = "disableAvatarCopying")]
|
#[serde(rename = "disableAvatarCopying")]
|
||||||
pub disable_avatar_copying: bool,
|
pub disable_avatar_copying: bool,
|
||||||
@ -91,6 +127,9 @@ pub struct ApiConfig {
|
|||||||
/// Unknown
|
/// Unknown
|
||||||
#[serde(rename = "disableEmail")]
|
#[serde(rename = "disableEmail")]
|
||||||
pub disable_email: bool,
|
pub disable_email: bool,
|
||||||
|
/// Unknown
|
||||||
|
#[serde(rename = "disableCaptcha", skip_serializing_if = "Option::is_none")]
|
||||||
|
pub disable_captcha: Option<bool>,
|
||||||
/// Toggles if Analytics should be disabled.
|
/// Toggles if Analytics should be disabled.
|
||||||
#[serde(rename = "disableEventStream")]
|
#[serde(rename = "disableEventStream")]
|
||||||
pub disable_event_stream: bool,
|
pub disable_event_stream: bool,
|
||||||
@ -129,11 +168,17 @@ pub struct ApiConfig {
|
|||||||
/// Array of DynamicWorldRow objects, used by the game to display the list of world rows
|
/// Array of DynamicWorldRow objects, used by the game to display the list of world rows
|
||||||
#[serde(rename = "dynamicWorldRows")]
|
#[serde(rename = "dynamicWorldRows")]
|
||||||
pub dynamic_world_rows: Vec<models::DynamicContentRow>,
|
pub dynamic_world_rows: Vec<models::DynamicContentRow>,
|
||||||
|
/// Unknown
|
||||||
|
#[serde(rename = "economyPauseEnd", skip_serializing_if = "Option::is_none")]
|
||||||
|
pub economy_pause_end: Option<String>,
|
||||||
|
/// Unknown
|
||||||
|
#[serde(rename = "economyPauseStart", skip_serializing_if = "Option::is_none")]
|
||||||
|
pub economy_pause_start: Option<String>,
|
||||||
|
/// Unknown
|
||||||
|
#[serde(rename = "economyState", skip_serializing_if = "Option::is_none")]
|
||||||
|
pub economy_state: Option<i32>,
|
||||||
#[serde(rename = "events")]
|
#[serde(rename = "events")]
|
||||||
pub events: Box<models::ApiConfigEvents>,
|
pub events: Box<models::ApiConfigEvents>,
|
||||||
/// Unknown
|
|
||||||
#[serde(rename = "gearDemoRoomId")]
|
|
||||||
pub gear_demo_room_id: String,
|
|
||||||
/// WorldID be \"offline\" on User profiles if you are not friends with that user.
|
/// WorldID be \"offline\" on User profiles if you are not friends with that user.
|
||||||
#[serde(rename = "homeWorldId")]
|
#[serde(rename = "homeWorldId")]
|
||||||
pub home_world_id: String,
|
pub home_world_id: String,
|
||||||
@ -143,36 +188,18 @@ pub struct ApiConfig {
|
|||||||
/// WorldID be \"offline\" on User profiles if you are not friends with that user.
|
/// WorldID be \"offline\" on User profiles if you are not friends with that user.
|
||||||
#[serde(rename = "hubWorldId")]
|
#[serde(rename = "hubWorldId")]
|
||||||
pub hub_world_id: String,
|
pub hub_world_id: String,
|
||||||
|
/// A list of explicitly allowed origins that worlds can request images from via the Udon's [VRCImageDownloader#DownloadImage](https://creators.vrchat.com/worlds/udon/image-loading/#downloadimage).
|
||||||
|
#[serde(rename = "imageHostUrlList")]
|
||||||
|
pub image_host_url_list: Vec<String>,
|
||||||
/// VRChat's job application email
|
/// VRChat's job application email
|
||||||
#[serde(rename = "jobsEmail")]
|
#[serde(rename = "jobsEmail")]
|
||||||
pub jobs_email: String,
|
pub jobs_email: String,
|
||||||
/// MOTD
|
|
||||||
#[serde(rename = "messageOfTheDay")]
|
|
||||||
pub message_of_the_day: String,
|
|
||||||
/// VRChat's moderation related email
|
/// VRChat's moderation related email
|
||||||
#[serde(rename = "moderationEmail")]
|
#[serde(rename = "moderationEmail")]
|
||||||
pub moderation_email: String,
|
pub moderation_email: String,
|
||||||
/// Unknown
|
|
||||||
#[serde(rename = "moderationQueryPeriod")]
|
|
||||||
pub moderation_query_period: i32,
|
|
||||||
/// Used in-game to notify a user they aren't allowed to select avatars in private worlds
|
/// Used in-game to notify a user they aren't allowed to select avatars in private worlds
|
||||||
#[serde(rename = "notAllowedToSelectAvatarInPrivateWorldMessage")]
|
#[serde(rename = "notAllowedToSelectAvatarInPrivateWorldMessage")]
|
||||||
pub not_allowed_to_select_avatar_in_private_world_message: String,
|
pub not_allowed_to_select_avatar_in_private_world_message: String,
|
||||||
/// Extra [plugin](https://doc.photonengine.com/en-us/server/current/plugins/manual) to run in each instance
|
|
||||||
#[serde(rename = "plugin")]
|
|
||||||
pub plugin: String,
|
|
||||||
/// Version number for game release build
|
|
||||||
#[serde(rename = "releaseAppVersionStandalone")]
|
|
||||||
pub release_app_version_standalone: String,
|
|
||||||
/// Link to download the release SDK
|
|
||||||
#[serde(rename = "releaseSdkUrl")]
|
|
||||||
pub release_sdk_url: String,
|
|
||||||
/// Version of the release SDK
|
|
||||||
#[serde(rename = "releaseSdkVersion")]
|
|
||||||
pub release_sdk_version: String,
|
|
||||||
/// Version number for server release build
|
|
||||||
#[serde(rename = "releaseServerVersionStandalone")]
|
|
||||||
pub release_server_version_standalone: String,
|
|
||||||
/// Link to the developer FAQ
|
/// Link to the developer FAQ
|
||||||
#[serde(rename = "sdkDeveloperFaqUrl")]
|
#[serde(rename = "sdkDeveloperFaqUrl")]
|
||||||
pub sdk_developer_faq_url: String,
|
pub sdk_developer_faq_url: String,
|
||||||
@ -188,6 +215,9 @@ pub struct ApiConfig {
|
|||||||
/// Server name of the API server currently responding
|
/// Server name of the API server currently responding
|
||||||
#[serde(rename = "serverName")]
|
#[serde(rename = "serverName")]
|
||||||
pub server_name: String,
|
pub server_name: String,
|
||||||
|
/// A list of explicitly allowed origins that worlds can request strings from via the Udon's [VRCStringDownloader.LoadUrl](https://creators.vrchat.com/worlds/udon/string-loading/#ivrcstringdownload).
|
||||||
|
#[serde(rename = "stringHostUrlList")]
|
||||||
|
pub string_host_url_list: Vec<String>,
|
||||||
/// VRChat's support email
|
/// VRChat's support email
|
||||||
#[serde(rename = "supportEmail")]
|
#[serde(rename = "supportEmail")]
|
||||||
pub support_email: String,
|
pub support_email: String,
|
||||||
@ -218,65 +248,63 @@ pub struct ApiConfig {
|
|||||||
/// Unknown
|
/// Unknown
|
||||||
#[serde(rename = "useReliableUdpForVoice")]
|
#[serde(rename = "useReliableUdpForVoice")]
|
||||||
pub use_reliable_udp_for_voice: bool,
|
pub use_reliable_udp_for_voice: bool,
|
||||||
/// Unknown
|
|
||||||
#[serde(rename = "userUpdatePeriod")]
|
|
||||||
pub user_update_period: i32,
|
|
||||||
/// Unknown
|
|
||||||
#[serde(rename = "userVerificationDelay")]
|
|
||||||
pub user_verification_delay: i32,
|
|
||||||
/// Unknown
|
|
||||||
#[serde(rename = "userVerificationRetry")]
|
|
||||||
pub user_verification_retry: i32,
|
|
||||||
/// Unknown
|
|
||||||
#[serde(rename = "userVerificationTimeout")]
|
|
||||||
pub user_verification_timeout: i32,
|
|
||||||
/// Download link for game on the Steam website.
|
/// Download link for game on the Steam website.
|
||||||
#[serde(rename = "viveWindowsUrl")]
|
#[serde(rename = "viveWindowsUrl")]
|
||||||
pub vive_windows_url: String,
|
pub vive_windows_url: String,
|
||||||
/// List of allowed URLs that are allowed to host avatar assets
|
/// List of allowed URLs that are allowed to host avatar assets
|
||||||
#[serde(rename = "whiteListedAssetUrls")]
|
#[serde(rename = "whiteListedAssetUrls")]
|
||||||
pub white_listed_asset_urls: Vec<String>,
|
pub white_listed_asset_urls: Vec<String>,
|
||||||
/// Unknown
|
|
||||||
#[serde(rename = "worldUpdatePeriod")]
|
|
||||||
pub world_update_period: i32,
|
|
||||||
/// Currently used youtube-dl.exe hash in SHA-256-delimited format
|
|
||||||
#[serde(rename = "player-url-resolver-hash")]
|
|
||||||
pub player_url_resolver_hash: String,
|
|
||||||
/// Currently used youtube-dl.exe version
|
/// Currently used youtube-dl.exe version
|
||||||
#[serde(rename = "player-url-resolver-version")]
|
#[serde(rename = "player-url-resolver-version")]
|
||||||
pub player_url_resolver_version: String,
|
pub player_url_resolver_version: String,
|
||||||
|
/// Currently used youtube-dl.exe hash in SHA1-delimited format
|
||||||
|
#[serde(rename = "player-url-resolver-sha1")]
|
||||||
|
pub player_url_resolver_sha1: String,
|
||||||
}
|
}
|
||||||
|
|
||||||
impl ApiConfig {
|
impl ApiConfig {
|
||||||
pub fn new(voice_enable_degradation: bool, voice_enable_receiver_limiting: bool, address: String, announcements: Vec<models::ApiConfigAnnouncement>, app_name: String, build_version_tag: String, client_api_key: String, client_bps_ceiling: i32, client_disconnect_timeout: i32, client_reserved_player_bps: i32, client_sent_count_allowance: i32, contact_email: String, copyright_email: String, current_tos_version: i32, default_avatar: String, deployment_group: models::DeploymentGroup, dev_app_version_standalone: String, dev_download_link_windows: String, dev_sdk_url: String, dev_sdk_version: String, dev_server_version_standalone: String, dis_countdown: String, disable_avatar_copying: bool, disable_avatar_gating: bool, disable_community_labs: bool, disable_community_labs_promotion: bool, disable_email: bool, disable_event_stream: bool, disable_feedback_gating: bool, disable_frontend_builds: bool, disable_hello: bool, disable_oculus_subs: bool, disable_registration: bool, disable_steam_networking: bool, disable_two_factor_auth: bool, disable_udon: bool, disable_upgrade_account: bool, download_link_windows: String, download_urls: models::ApiConfigDownloadUrlList, dynamic_world_rows: Vec<models::DynamicContentRow>, events: models::ApiConfigEvents, gear_demo_room_id: String, home_world_id: String, homepage_redirect_target: String, hub_world_id: String, jobs_email: String, message_of_the_day: String, moderation_email: String, moderation_query_period: i32, not_allowed_to_select_avatar_in_private_world_message: String, plugin: String, release_app_version_standalone: String, release_sdk_url: String, release_sdk_version: String, release_server_version_standalone: String, sdk_developer_faq_url: String, sdk_discord_url: String, sdk_not_allowed_to_publish_message: String, sdk_unity_version: String, server_name: String, support_email: String, time_out_world_id: String, tutorial_world_id: String, update_rate_ms_maximum: i32, update_rate_ms_minimum: i32, update_rate_ms_normal: i32, update_rate_ms_udon_manual: i32, upload_analysis_percent: i32, url_list: Vec<String>, use_reliable_udp_for_voice: bool, user_update_period: i32, user_verification_delay: i32, user_verification_retry: i32, user_verification_timeout: i32, vive_windows_url: String, white_listed_asset_urls: Vec<String>, world_update_period: i32, player_url_resolver_hash: String, player_url_resolver_version: String) -> ApiConfig {
|
pub fn new(voice_enable_degradation: bool, voice_enable_receiver_limiting: bool, address: String, announcements: Vec<models::ApiConfigAnnouncement>, app_name: String, available_language_codes: Vec<String>, available_languages: Vec<String>, build_version_tag: String, client_api_key: String, client_bps_ceiling: i32, client_disconnect_timeout: i32, client_reserved_player_bps: i32, client_sent_count_allowance: i32, contact_email: String, copyright_email: String, current_tos_version: i32, default_avatar: String, deployment_group: models::DeploymentGroup, dev_sdk_url: String, dev_sdk_version: String, dis_countdown: String, disable_avatar_copying: bool, disable_avatar_gating: bool, disable_community_labs: bool, disable_community_labs_promotion: bool, disable_email: bool, disable_event_stream: bool, disable_feedback_gating: bool, disable_frontend_builds: bool, disable_hello: bool, disable_oculus_subs: bool, disable_registration: bool, disable_steam_networking: bool, disable_two_factor_auth: bool, disable_udon: bool, disable_upgrade_account: bool, download_link_windows: String, download_urls: models::ApiConfigDownloadUrlList, dynamic_world_rows: Vec<models::DynamicContentRow>, events: models::ApiConfigEvents, home_world_id: String, homepage_redirect_target: String, hub_world_id: String, image_host_url_list: Vec<String>, jobs_email: String, moderation_email: String, not_allowed_to_select_avatar_in_private_world_message: String, sdk_developer_faq_url: String, sdk_discord_url: String, sdk_not_allowed_to_publish_message: String, sdk_unity_version: String, server_name: String, string_host_url_list: Vec<String>, support_email: String, time_out_world_id: String, tutorial_world_id: String, update_rate_ms_maximum: i32, update_rate_ms_minimum: i32, update_rate_ms_normal: i32, update_rate_ms_udon_manual: i32, upload_analysis_percent: i32, url_list: Vec<String>, use_reliable_udp_for_voice: bool, vive_windows_url: String, white_listed_asset_urls: Vec<String>, player_url_resolver_version: String, player_url_resolver_sha1: String) -> ApiConfig {
|
||||||
ApiConfig {
|
ApiConfig {
|
||||||
voice_enable_degradation,
|
voice_enable_degradation,
|
||||||
voice_enable_receiver_limiting,
|
voice_enable_receiver_limiting,
|
||||||
address,
|
address,
|
||||||
announcements,
|
announcements,
|
||||||
app_name,
|
app_name,
|
||||||
|
available_language_codes,
|
||||||
|
available_languages,
|
||||||
build_version_tag,
|
build_version_tag,
|
||||||
client_api_key,
|
client_api_key,
|
||||||
client_bps_ceiling,
|
client_bps_ceiling,
|
||||||
client_disconnect_timeout,
|
client_disconnect_timeout,
|
||||||
|
client_net_dispatch_thread: None,
|
||||||
|
client_net_in_thread: None,
|
||||||
|
client_net_in_thread2: None,
|
||||||
|
client_net_in_thread_mobile: None,
|
||||||
|
client_net_in_thread_mobile2: None,
|
||||||
|
client_net_out_thread: None,
|
||||||
|
client_net_out_thread2: None,
|
||||||
|
client_net_out_thread_mobile: None,
|
||||||
|
client_net_out_thread_mobile2: None,
|
||||||
|
client_qr: None,
|
||||||
client_reserved_player_bps,
|
client_reserved_player_bps,
|
||||||
client_sent_count_allowance,
|
client_sent_count_allowance,
|
||||||
contact_email,
|
contact_email,
|
||||||
copyright_email,
|
copyright_email,
|
||||||
|
current_privacy_version: None,
|
||||||
current_tos_version,
|
current_tos_version,
|
||||||
default_avatar,
|
default_avatar,
|
||||||
deployment_group,
|
deployment_group,
|
||||||
dev_app_version_standalone,
|
dev_language_codes: None,
|
||||||
dev_download_link_windows,
|
|
||||||
dev_sdk_url,
|
dev_sdk_url,
|
||||||
dev_sdk_version,
|
dev_sdk_version,
|
||||||
dev_server_version_standalone,
|
|
||||||
dis_countdown,
|
dis_countdown,
|
||||||
|
disable_av_pro_in_proton: None,
|
||||||
disable_avatar_copying,
|
disable_avatar_copying,
|
||||||
disable_avatar_gating,
|
disable_avatar_gating,
|
||||||
disable_community_labs,
|
disable_community_labs,
|
||||||
disable_community_labs_promotion,
|
disable_community_labs_promotion,
|
||||||
disable_email,
|
disable_email,
|
||||||
|
disable_captcha: None,
|
||||||
disable_event_stream,
|
disable_event_stream,
|
||||||
disable_feedback_gating,
|
disable_feedback_gating,
|
||||||
disable_frontend_builds,
|
disable_frontend_builds,
|
||||||
@ -290,26 +318,23 @@ impl ApiConfig {
|
|||||||
download_link_windows,
|
download_link_windows,
|
||||||
download_urls: Box::new(download_urls),
|
download_urls: Box::new(download_urls),
|
||||||
dynamic_world_rows,
|
dynamic_world_rows,
|
||||||
|
economy_pause_end: None,
|
||||||
|
economy_pause_start: None,
|
||||||
|
economy_state: None,
|
||||||
events: Box::new(events),
|
events: Box::new(events),
|
||||||
gear_demo_room_id,
|
|
||||||
home_world_id,
|
home_world_id,
|
||||||
homepage_redirect_target,
|
homepage_redirect_target,
|
||||||
hub_world_id,
|
hub_world_id,
|
||||||
|
image_host_url_list,
|
||||||
jobs_email,
|
jobs_email,
|
||||||
message_of_the_day,
|
|
||||||
moderation_email,
|
moderation_email,
|
||||||
moderation_query_period,
|
|
||||||
not_allowed_to_select_avatar_in_private_world_message,
|
not_allowed_to_select_avatar_in_private_world_message,
|
||||||
plugin,
|
|
||||||
release_app_version_standalone,
|
|
||||||
release_sdk_url,
|
|
||||||
release_sdk_version,
|
|
||||||
release_server_version_standalone,
|
|
||||||
sdk_developer_faq_url,
|
sdk_developer_faq_url,
|
||||||
sdk_discord_url,
|
sdk_discord_url,
|
||||||
sdk_not_allowed_to_publish_message,
|
sdk_not_allowed_to_publish_message,
|
||||||
sdk_unity_version,
|
sdk_unity_version,
|
||||||
server_name,
|
server_name,
|
||||||
|
string_host_url_list,
|
||||||
support_email,
|
support_email,
|
||||||
time_out_world_id,
|
time_out_world_id,
|
||||||
tutorial_world_id,
|
tutorial_world_id,
|
||||||
@ -320,15 +345,10 @@ impl ApiConfig {
|
|||||||
upload_analysis_percent,
|
upload_analysis_percent,
|
||||||
url_list,
|
url_list,
|
||||||
use_reliable_udp_for_voice,
|
use_reliable_udp_for_voice,
|
||||||
user_update_period,
|
|
||||||
user_verification_delay,
|
|
||||||
user_verification_retry,
|
|
||||||
user_verification_timeout,
|
|
||||||
vive_windows_url,
|
vive_windows_url,
|
||||||
white_listed_asset_urls,
|
white_listed_asset_urls,
|
||||||
world_update_period,
|
|
||||||
player_url_resolver_hash,
|
|
||||||
player_url_resolver_version,
|
player_url_resolver_version,
|
||||||
|
player_url_resolver_sha1,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -16,8 +16,8 @@ pub struct FileData {
|
|||||||
pub category: Category,
|
pub category: Category,
|
||||||
#[serde(rename = "fileName")]
|
#[serde(rename = "fileName")]
|
||||||
pub file_name: String,
|
pub file_name: String,
|
||||||
#[serde(rename = "md5")]
|
#[serde(rename = "md5", skip_serializing_if = "Option::is_none")]
|
||||||
pub md5: String,
|
pub md5: Option<String>,
|
||||||
#[serde(rename = "sizeInBytes")]
|
#[serde(rename = "sizeInBytes")]
|
||||||
pub size_in_bytes: i32,
|
pub size_in_bytes: i32,
|
||||||
#[serde(rename = "status")]
|
#[serde(rename = "status")]
|
||||||
@ -29,11 +29,11 @@ pub struct FileData {
|
|||||||
}
|
}
|
||||||
|
|
||||||
impl FileData {
|
impl FileData {
|
||||||
pub fn new(category: Category, file_name: String, md5: String, size_in_bytes: i32, status: models::FileStatus, upload_id: String, url: String) -> FileData {
|
pub fn new(category: Category, file_name: String, size_in_bytes: i32, status: models::FileStatus, upload_id: String, url: String) -> FileData {
|
||||||
FileData {
|
FileData {
|
||||||
category,
|
category,
|
||||||
file_name,
|
file_name,
|
||||||
md5,
|
md5: None,
|
||||||
size_in_bytes,
|
size_in_bytes,
|
||||||
status,
|
status,
|
||||||
upload_id,
|
upload_id,
|
||||||
|
@ -50,10 +50,17 @@ pub struct Group {
|
|||||||
pub join_state: Option<models::GroupJoinState>,
|
pub join_state: Option<models::GroupJoinState>,
|
||||||
#[serde(rename = "tags", skip_serializing_if = "Option::is_none")]
|
#[serde(rename = "tags", skip_serializing_if = "Option::is_none")]
|
||||||
pub tags: Option<Vec<String>>,
|
pub tags: Option<Vec<String>>,
|
||||||
|
/// A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed.
|
||||||
|
#[serde(rename = "transferTargetId", skip_serializing_if = "Option::is_none")]
|
||||||
|
pub transfer_target_id: Option<String>,
|
||||||
#[serde(rename = "galleries", skip_serializing_if = "Option::is_none")]
|
#[serde(rename = "galleries", skip_serializing_if = "Option::is_none")]
|
||||||
pub galleries: Option<Vec<models::GroupGallery>>,
|
pub galleries: Option<Vec<models::GroupGallery>>,
|
||||||
#[serde(rename = "createdAt", skip_serializing_if = "Option::is_none")]
|
#[serde(rename = "createdAt", skip_serializing_if = "Option::is_none")]
|
||||||
pub created_at: Option<String>,
|
pub created_at: Option<String>,
|
||||||
|
#[serde(rename = "updatedAt", skip_serializing_if = "Option::is_none")]
|
||||||
|
pub updated_at: Option<String>,
|
||||||
|
#[serde(rename = "lastPostCreatedAt", skip_serializing_if = "Option::is_none")]
|
||||||
|
pub last_post_created_at: Option<String>,
|
||||||
#[serde(rename = "onlineMemberCount", skip_serializing_if = "Option::is_none")]
|
#[serde(rename = "onlineMemberCount", skip_serializing_if = "Option::is_none")]
|
||||||
pub online_member_count: Option<i32>,
|
pub online_member_count: Option<i32>,
|
||||||
#[serde(rename = "membershipStatus", skip_serializing_if = "Option::is_none")]
|
#[serde(rename = "membershipStatus", skip_serializing_if = "Option::is_none")]
|
||||||
@ -87,8 +94,11 @@ impl Group {
|
|||||||
is_verified: None,
|
is_verified: None,
|
||||||
join_state: None,
|
join_state: None,
|
||||||
tags: None,
|
tags: None,
|
||||||
|
transfer_target_id: None,
|
||||||
galleries: None,
|
galleries: None,
|
||||||
created_at: None,
|
created_at: None,
|
||||||
|
updated_at: None,
|
||||||
|
last_post_created_at: None,
|
||||||
online_member_count: None,
|
online_member_count: None,
|
||||||
membership_status: None,
|
membership_status: None,
|
||||||
my_member: None,
|
my_member: None,
|
||||||
|
@ -20,6 +20,13 @@ pub struct GroupMyMember {
|
|||||||
pub user_id: Option<String>,
|
pub user_id: Option<String>,
|
||||||
#[serde(rename = "roleIds", skip_serializing_if = "Option::is_none")]
|
#[serde(rename = "roleIds", skip_serializing_if = "Option::is_none")]
|
||||||
pub role_ids: Option<Vec<String>>,
|
pub role_ids: Option<Vec<String>>,
|
||||||
|
#[serde(rename = "acceptedByDisplayName", skip_serializing_if = "Option::is_none")]
|
||||||
|
pub accepted_by_display_name: Option<String>,
|
||||||
|
/// A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed.
|
||||||
|
#[serde(rename = "acceptedById", skip_serializing_if = "Option::is_none")]
|
||||||
|
pub accepted_by_id: Option<String>,
|
||||||
|
#[serde(rename = "createdAt", skip_serializing_if = "Option::is_none")]
|
||||||
|
pub created_at: Option<String>,
|
||||||
#[serde(rename = "managerNotes", skip_serializing_if = "Option::is_none")]
|
#[serde(rename = "managerNotes", skip_serializing_if = "Option::is_none")]
|
||||||
pub manager_notes: Option<String>,
|
pub manager_notes: Option<String>,
|
||||||
#[serde(rename = "membershipStatus", skip_serializing_if = "Option::is_none")]
|
#[serde(rename = "membershipStatus", skip_serializing_if = "Option::is_none")]
|
||||||
@ -36,6 +43,12 @@ pub struct GroupMyMember {
|
|||||||
pub banned_at: Option<Option<String>>,
|
pub banned_at: Option<Option<String>>,
|
||||||
#[serde(rename = "has2FA", skip_serializing_if = "Option::is_none")]
|
#[serde(rename = "has2FA", skip_serializing_if = "Option::is_none")]
|
||||||
pub has2_fa: Option<bool>,
|
pub has2_fa: Option<bool>,
|
||||||
|
#[serde(rename = "hasJoinedFromPurchase", skip_serializing_if = "Option::is_none")]
|
||||||
|
pub has_joined_from_purchase: Option<bool>,
|
||||||
|
#[serde(rename = "lastPostReadAt", skip_serializing_if = "Option::is_none")]
|
||||||
|
pub last_post_read_at: Option<String>,
|
||||||
|
#[serde(rename = "mRoleIds", skip_serializing_if = "Option::is_none")]
|
||||||
|
pub m_role_ids: Option<Vec<String>>,
|
||||||
#[serde(rename = "permissions", skip_serializing_if = "Option::is_none")]
|
#[serde(rename = "permissions", skip_serializing_if = "Option::is_none")]
|
||||||
pub permissions: Option<Vec<String>>,
|
pub permissions: Option<Vec<String>>,
|
||||||
}
|
}
|
||||||
@ -47,6 +60,9 @@ impl GroupMyMember {
|
|||||||
group_id: None,
|
group_id: None,
|
||||||
user_id: None,
|
user_id: None,
|
||||||
role_ids: None,
|
role_ids: None,
|
||||||
|
accepted_by_display_name: None,
|
||||||
|
accepted_by_id: None,
|
||||||
|
created_at: None,
|
||||||
manager_notes: None,
|
manager_notes: None,
|
||||||
membership_status: None,
|
membership_status: None,
|
||||||
is_subscribed_to_announcements: None,
|
is_subscribed_to_announcements: None,
|
||||||
@ -55,6 +71,9 @@ impl GroupMyMember {
|
|||||||
joined_at: None,
|
joined_at: None,
|
||||||
banned_at: None,
|
banned_at: None,
|
||||||
has2_fa: None,
|
has2_fa: None,
|
||||||
|
has_joined_from_purchase: None,
|
||||||
|
last_post_read_at: None,
|
||||||
|
m_role_ids: None,
|
||||||
permissions: None,
|
permissions: None,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -14,6 +14,8 @@ use serde::{Deserialize, Serialize};
|
|||||||
pub struct Permission {
|
pub struct Permission {
|
||||||
#[serde(rename = "id")]
|
#[serde(rename = "id")]
|
||||||
pub id: String,
|
pub id: String,
|
||||||
|
#[serde(rename = "ownerDisplayName")]
|
||||||
|
pub owner_display_name: String,
|
||||||
#[serde(rename = "name")]
|
#[serde(rename = "name")]
|
||||||
pub name: String,
|
pub name: String,
|
||||||
/// A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed.
|
/// A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed.
|
||||||
@ -24,9 +26,10 @@ pub struct Permission {
|
|||||||
}
|
}
|
||||||
|
|
||||||
impl Permission {
|
impl Permission {
|
||||||
pub fn new(id: String, name: String, owner_id: String) -> Permission {
|
pub fn new(id: String, owner_display_name: String, name: String, owner_id: String) -> Permission {
|
||||||
Permission {
|
Permission {
|
||||||
id,
|
id,
|
||||||
|
owner_display_name,
|
||||||
name,
|
name,
|
||||||
owner_id,
|
owner_id,
|
||||||
data: None,
|
data: None,
|
||||||
|
@ -9,13 +9,15 @@
|
|||||||
use crate::models;
|
use crate::models;
|
||||||
use serde::{Deserialize, Serialize};
|
use serde::{Deserialize, Serialize};
|
||||||
|
|
||||||
/// TransactionAgreement :
|
/// TransactionAgreement : Represents a single Transaction, which is likely between VRChat and Steam.
|
||||||
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
|
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
|
||||||
pub struct TransactionAgreement {
|
pub struct TransactionAgreement {
|
||||||
#[serde(rename = "agreementId")]
|
#[serde(rename = "agreementId")]
|
||||||
pub agreement_id: String,
|
pub agreement_id: String,
|
||||||
#[serde(rename = "itemId")]
|
#[serde(rename = "itemId")]
|
||||||
pub item_id: f64,
|
pub item_id: f64,
|
||||||
|
#[serde(rename = "agreement")]
|
||||||
|
pub agreement: String,
|
||||||
/// This is NOT TransactionStatus, but whatever Steam return.
|
/// This is NOT TransactionStatus, but whatever Steam return.
|
||||||
#[serde(rename = "status")]
|
#[serde(rename = "status")]
|
||||||
pub status: String,
|
pub status: String,
|
||||||
@ -50,10 +52,12 @@ pub struct TransactionAgreement {
|
|||||||
}
|
}
|
||||||
|
|
||||||
impl TransactionAgreement {
|
impl TransactionAgreement {
|
||||||
pub fn new(agreement_id: String, item_id: f64, status: String, period: String, frequency: f64, billing_type: String, start_date: String, end_date: String, recurring_amt: f64, currency: String, time_created: String, next_payment: String, last_payment: String, last_amount: f64, last_amount_vat: f64, outstanding: f64, failed_attempts: f64) -> TransactionAgreement {
|
/// Represents a single Transaction, which is likely between VRChat and Steam.
|
||||||
|
pub fn new(agreement_id: String, item_id: f64, agreement: String, status: String, period: String, frequency: f64, billing_type: String, start_date: String, end_date: String, recurring_amt: f64, currency: String, time_created: String, next_payment: String, last_payment: String, last_amount: f64, last_amount_vat: f64, outstanding: f64, failed_attempts: f64) -> TransactionAgreement {
|
||||||
TransactionAgreement {
|
TransactionAgreement {
|
||||||
agreement_id,
|
agreement_id,
|
||||||
item_id,
|
item_id,
|
||||||
|
agreement,
|
||||||
status,
|
status,
|
||||||
period,
|
period,
|
||||||
frequency,
|
frequency,
|
||||||
|
@ -33,6 +33,8 @@ pub struct UserSubscription {
|
|||||||
pub active: bool,
|
pub active: bool,
|
||||||
#[serde(rename = "status")]
|
#[serde(rename = "status")]
|
||||||
pub status: models::TransactionStatus,
|
pub status: models::TransactionStatus,
|
||||||
|
#[serde(rename = "starts", skip_serializing_if = "Option::is_none")]
|
||||||
|
pub starts: Option<String>,
|
||||||
#[serde(rename = "expires")]
|
#[serde(rename = "expires")]
|
||||||
pub expires: String,
|
pub expires: String,
|
||||||
#[serde(rename = "created_at")]
|
#[serde(rename = "created_at")]
|
||||||
@ -58,6 +60,7 @@ impl UserSubscription {
|
|||||||
tier,
|
tier,
|
||||||
active,
|
active,
|
||||||
status,
|
status,
|
||||||
|
starts: None,
|
||||||
expires,
|
expires,
|
||||||
created_at,
|
created_at,
|
||||||
updated_at,
|
updated_at,
|
||||||
|
Reference in New Issue
Block a user