twitter-openapi-python-generated 0.0.33__py3-none-any.whl → 0.0.35__py3-none-any.whl
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.
- twitter_openapi_python_generated/__init__.py +906 -330
- twitter_openapi_python_generated/api/default_api.py +1 -2
- twitter_openapi_python_generated/api/other_api.py +1 -2
- twitter_openapi_python_generated/api/post_api.py +2081 -206
- twitter_openapi_python_generated/api/tweet_api.py +3225 -250
- twitter_openapi_python_generated/api/user_api.py +993 -91
- twitter_openapi_python_generated/api/user_list_api.py +2291 -68
- twitter_openapi_python_generated/api/users_api.py +1 -2
- twitter_openapi_python_generated/api/v11_get_api.py +1 -2
- twitter_openapi_python_generated/api/v11_post_api.py +1 -2
- twitter_openapi_python_generated/api/v20_get_api.py +1 -2
- twitter_openapi_python_generated/api_client.py +81 -36
- twitter_openapi_python_generated/configuration.py +103 -30
- twitter_openapi_python_generated/exceptions.py +7 -5
- twitter_openapi_python_generated/models/__init__.py +123 -2
- twitter_openapi_python_generated/models/about_community_result.py +4 -3
- twitter_openapi_python_generated/models/about_community_results.py +4 -3
- twitter_openapi_python_generated/models/about_community_tweet_data.py +4 -3
- twitter_openapi_python_generated/models/additional_media_info.py +7 -4
- twitter_openapi_python_generated/models/additional_media_info_call_to_actions.py +4 -3
- twitter_openapi_python_generated/models/additional_media_info_call_to_actions_url.py +4 -3
- twitter_openapi_python_generated/models/allow_download_status.py +4 -3
- twitter_openapi_python_generated/models/analysis_results.py +4 -3
- twitter_openapi_python_generated/models/article.py +4 -3
- twitter_openapi_python_generated/models/article_cover_media.py +6 -5
- twitter_openapi_python_generated/models/article_cover_media_color_info.py +5 -5
- twitter_openapi_python_generated/models/article_cover_media_color_info_palette.py +4 -3
- twitter_openapi_python_generated/models/article_cover_media_color_info_palette_rgb.py +4 -3
- twitter_openapi_python_generated/models/article_cover_media_info.py +4 -3
- twitter_openapi_python_generated/models/article_lifecycle_state.py +4 -3
- twitter_openapi_python_generated/models/article_metadata.py +4 -3
- twitter_openapi_python_generated/models/article_preview.py +99 -0
- twitter_openapi_python_generated/models/article_result.py +21 -8
- twitter_openapi_python_generated/models/article_results.py +4 -3
- twitter_openapi_python_generated/models/author_community_relationship.py +9 -8
- twitter_openapi_python_generated/models/badge_counts.py +97 -0
- twitter_openapi_python_generated/models/birdwatch_entity.py +4 -3
- twitter_openapi_python_generated/models/birdwatch_entity_ref.py +7 -4
- twitter_openapi_python_generated/models/birdwatch_pivot.py +19 -6
- twitter_openapi_python_generated/models/birdwatch_pivot_call_to_action.py +4 -3
- twitter_openapi_python_generated/models/birdwatch_pivot_footer.py +5 -5
- twitter_openapi_python_generated/models/birdwatch_pivot_note.py +19 -8
- twitter_openapi_python_generated/models/birdwatch_pivot_subtitle.py +5 -5
- twitter_openapi_python_generated/models/bookmarks_response.py +5 -5
- twitter_openapi_python_generated/models/bookmarks_response_data.py +4 -3
- twitter_openapi_python_generated/models/bookmarks_timeline.py +4 -3
- twitter_openapi_python_generated/models/callback.py +4 -3
- twitter_openapi_python_generated/models/cashtag_attachment.py +89 -0
- twitter_openapi_python_generated/models/client_event_info.py +4 -3
- twitter_openapi_python_generated/models/communities_actions.py +4 -3
- twitter_openapi_python_generated/models/community.py +141 -12
- twitter_openapi_python_generated/models/community_about_timeline_response.py +5 -5
- twitter_openapi_python_generated/models/community_actions.py +4 -3
- twitter_openapi_python_generated/models/community_delete_action_result.py +4 -3
- twitter_openapi_python_generated/models/community_discovery_timeline_response.py +102 -0
- twitter_openapi_python_generated/models/community_discovery_timeline_response_data.py +93 -0
- twitter_openapi_python_generated/models/community_discovery_timeline_viewer.py +93 -0
- twitter_openapi_python_generated/models/community_invites_result.py +4 -3
- twitter_openapi_python_generated/models/community_join_action.py +4 -3
- twitter_openapi_python_generated/models/community_join_action_result_union.py +3 -2
- twitter_openapi_python_generated/models/community_join_action_unavailable.py +4 -3
- twitter_openapi_python_generated/models/community_join_requests_result.py +4 -3
- twitter_openapi_python_generated/models/community_leave_action_result.py +4 -3
- twitter_openapi_python_generated/models/community_media_timeline_response.py +5 -5
- twitter_openapi_python_generated/models/community_pin_action_result.py +4 -3
- twitter_openapi_python_generated/models/community_relationship.py +6 -5
- twitter_openapi_python_generated/models/community_result.py +93 -0
- twitter_openapi_python_generated/models/community_rule.py +6 -5
- twitter_openapi_python_generated/models/community_tweets_timeline_response.py +5 -5
- twitter_openapi_python_generated/models/community_unavailable.py +90 -0
- twitter_openapi_python_generated/models/community_union.py +157 -0
- twitter_openapi_python_generated/models/community_unpin_action_result.py +4 -3
- twitter_openapi_python_generated/models/community_urls.py +4 -3
- twitter_openapi_python_generated/models/community_urls_permalink.py +4 -3
- twitter_openapi_python_generated/models/connect_tab_timeline_response.py +102 -0
- twitter_openapi_python_generated/models/connect_tab_timeline_response_data.py +93 -0
- twitter_openapi_python_generated/models/content_disclosure.py +99 -0
- twitter_openapi_python_generated/models/content_disclosure_advertising_disclosure.py +89 -0
- twitter_openapi_python_generated/models/content_disclosure_ai_generated_disclosure.py +103 -0
- twitter_openapi_python_generated/models/content_item_type.py +3 -0
- twitter_openapi_python_generated/models/content_union.py +3 -2
- twitter_openapi_python_generated/models/conversation_control.py +4 -3
- twitter_openapi_python_generated/models/cover_cta.py +5 -5
- twitter_openapi_python_generated/models/create_bookmark_response.py +5 -5
- twitter_openapi_python_generated/models/create_bookmark_response_data.py +4 -3
- twitter_openapi_python_generated/models/create_draft_tweet_response.py +102 -0
- twitter_openapi_python_generated/models/create_draft_tweet_response_data.py +93 -0
- twitter_openapi_python_generated/models/create_draft_tweet_response_tweet.py +97 -0
- twitter_openapi_python_generated/models/create_retweet.py +4 -3
- twitter_openapi_python_generated/models/create_retweet_response.py +5 -5
- twitter_openapi_python_generated/models/create_retweet_response_data.py +4 -3
- twitter_openapi_python_generated/models/create_retweet_response_result.py +4 -3
- twitter_openapi_python_generated/models/create_tweet.py +4 -3
- twitter_openapi_python_generated/models/create_tweet_response.py +5 -5
- twitter_openapi_python_generated/models/create_tweet_response_data.py +4 -3
- twitter_openapi_python_generated/models/create_tweet_response_result.py +4 -3
- twitter_openapi_python_generated/models/cta_client_event_info.py +4 -3
- twitter_openapi_python_generated/models/delete_bookmark_response.py +5 -5
- twitter_openapi_python_generated/models/delete_bookmark_response_data.py +4 -3
- twitter_openapi_python_generated/models/delete_draft_tweets_response.py +102 -0
- twitter_openapi_python_generated/models/delete_draft_tweets_response_data.py +89 -0
- twitter_openapi_python_generated/models/delete_list_response.py +102 -0
- twitter_openapi_python_generated/models/delete_list_response_data.py +89 -0
- twitter_openapi_python_generated/models/delete_retweet.py +5 -5
- twitter_openapi_python_generated/models/delete_retweet_response.py +5 -5
- twitter_openapi_python_generated/models/delete_retweet_response_data.py +4 -3
- twitter_openapi_python_generated/models/delete_retweet_response_result.py +4 -3
- twitter_openapi_python_generated/models/delete_tweet_response.py +5 -5
- twitter_openapi_python_generated/models/delete_tweet_response_data.py +4 -3
- twitter_openapi_python_generated/models/delete_tweet_response_result.py +4 -3
- twitter_openapi_python_generated/models/display_treatment.py +4 -3
- twitter_openapi_python_generated/models/draft_list.py +96 -0
- twitter_openapi_python_generated/models/draft_tweet.py +109 -0
- twitter_openapi_python_generated/models/draft_tweet_create_request.py +99 -0
- twitter_openapi_python_generated/models/draft_tweet_user.py +100 -0
- twitter_openapi_python_generated/models/draft_tweet_user_results.py +93 -0
- twitter_openapi_python_generated/models/draft_tweets_viewer.py +93 -0
- twitter_openapi_python_generated/models/entities.py +24 -15
- twitter_openapi_python_generated/models/error_extensions.py +5 -4
- twitter_openapi_python_generated/models/error_response.py +15 -8
- twitter_openapi_python_generated/models/error_response_path_inner.py +144 -0
- twitter_openapi_python_generated/models/explore_page.py +95 -0
- twitter_openapi_python_generated/models/explore_page_body.py +104 -0
- twitter_openapi_python_generated/models/explore_page_response.py +102 -0
- twitter_openapi_python_generated/models/explore_page_response_data.py +93 -0
- twitter_openapi_python_generated/models/explore_timeline.py +105 -0
- twitter_openapi_python_generated/models/explore_timeline_scribe_config.py +91 -0
- twitter_openapi_python_generated/models/ext_media_availability.py +4 -3
- twitter_openapi_python_generated/models/extended_entities.py +5 -5
- twitter_openapi_python_generated/models/favorite_tweet.py +4 -3
- twitter_openapi_python_generated/models/favorite_tweet_response.py +5 -5
- twitter_openapi_python_generated/models/feedback_info.py +4 -3
- twitter_openapi_python_generated/models/fetch_draft_tweets_response.py +102 -0
- twitter_openapi_python_generated/models/fetch_draft_tweets_response_data.py +93 -0
- twitter_openapi_python_generated/models/fetch_scheduled_tweets_response.py +102 -0
- twitter_openapi_python_generated/models/fetch_scheduled_tweets_response_data.py +93 -0
- twitter_openapi_python_generated/models/follow_response.py +5 -5
- twitter_openapi_python_generated/models/follow_response_data.py +4 -3
- twitter_openapi_python_generated/models/follow_response_result.py +4 -3
- twitter_openapi_python_generated/models/follow_response_user.py +4 -3
- twitter_openapi_python_generated/models/follow_timeline.py +4 -3
- twitter_openapi_python_generated/models/generic_timeline_by_id_response.py +102 -0
- twitter_openapi_python_generated/models/generic_timeline_by_id_response_data.py +93 -0
- twitter_openapi_python_generated/models/grok_annotation.py +89 -0
- twitter_openapi_python_generated/models/grok_entity.py +97 -0
- twitter_openapi_python_generated/models/grok_entity_ref.py +116 -0
- twitter_openapi_python_generated/models/grok_image_annotation.py +4 -3
- twitter_openapi_python_generated/models/grok_share_attachment.py +5 -5
- twitter_openapi_python_generated/models/grok_share_attachment_item.py +7 -4
- twitter_openapi_python_generated/models/grok_translated_bio.py +101 -0
- twitter_openapi_python_generated/models/grok_translated_bio_with_availability.py +97 -0
- twitter_openapi_python_generated/models/grok_translated_community_note.py +104 -0
- twitter_openapi_python_generated/models/grok_translated_community_note_with_availability.py +95 -0
- twitter_openapi_python_generated/models/grok_translated_post.py +103 -0
- twitter_openapi_python_generated/models/grok_translated_post_with_availability.py +95 -0
- twitter_openapi_python_generated/models/highlight.py +5 -5
- twitter_openapi_python_generated/models/home_timeline_home.py +4 -3
- twitter_openapi_python_generated/models/home_timeline_response_data.py +4 -3
- twitter_openapi_python_generated/models/instruction_union.py +3 -2
- twitter_openapi_python_generated/models/item_content_union.py +68 -10
- twitter_openapi_python_generated/models/item_result.py +4 -3
- twitter_openapi_python_generated/models/limited_action_results_data.py +4 -3
- twitter_openapi_python_generated/models/list_banner_media.py +93 -0
- twitter_openapi_python_generated/models/list_banner_media_info.py +99 -0
- twitter_openapi_python_generated/models/list_banner_media_salient_rect.py +95 -0
- twitter_openapi_python_generated/models/list_latest_tweets_timeline_response.py +5 -5
- twitter_openapi_python_generated/models/list_members_list.py +93 -0
- twitter_openapi_python_generated/models/list_members_response.py +102 -0
- twitter_openapi_python_generated/models/list_members_response_data.py +93 -0
- twitter_openapi_python_generated/models/list_recommended_users_list.py +93 -0
- twitter_openapi_python_generated/models/list_recommended_users_response.py +102 -0
- twitter_openapi_python_generated/models/list_recommended_users_response_data.py +93 -0
- twitter_openapi_python_generated/models/list_response.py +102 -0
- twitter_openapi_python_generated/models/list_response_data.py +93 -0
- twitter_openapi_python_generated/models/list_subscribers_list.py +93 -0
- twitter_openapi_python_generated/models/list_subscribers_response.py +102 -0
- twitter_openapi_python_generated/models/list_subscribers_response_data.py +93 -0
- twitter_openapi_python_generated/models/list_tweets_timeline_data.py +4 -3
- twitter_openapi_python_generated/models/list_tweets_timeline_list.py +4 -3
- twitter_openapi_python_generated/models/location.py +4 -3
- twitter_openapi_python_generated/models/media.py +23 -11
- twitter_openapi_python_generated/models/media_community_result.py +4 -3
- twitter_openapi_python_generated/models/media_community_results.py +4 -3
- twitter_openapi_python_generated/models/media_community_tweet_data.py +4 -3
- twitter_openapi_python_generated/models/media_extended.py +20 -10
- twitter_openapi_python_generated/models/media_original_info.py +5 -5
- twitter_openapi_python_generated/models/media_original_info_focus_rect.py +4 -3
- twitter_openapi_python_generated/models/media_result.py +4 -3
- twitter_openapi_python_generated/models/media_results.py +4 -3
- twitter_openapi_python_generated/models/media_size.py +4 -3
- twitter_openapi_python_generated/models/media_sizes.py +4 -3
- twitter_openapi_python_generated/models/media_stats.py +4 -3
- twitter_openapi_python_generated/models/media_video_info.py +5 -5
- twitter_openapi_python_generated/models/media_video_info_variant.py +4 -3
- twitter_openapi_python_generated/models/media_visibility_results.py +4 -3
- twitter_openapi_python_generated/models/media_visibility_results_blurred_image_interstitial.py +4 -3
- twitter_openapi_python_generated/models/module_entry.py +4 -3
- twitter_openapi_python_generated/models/module_item.py +6 -5
- twitter_openapi_python_generated/models/note_tweet.py +6 -5
- twitter_openapi_python_generated/models/note_tweet_result.py +4 -3
- twitter_openapi_python_generated/models/note_tweet_result_data.py +6 -5
- twitter_openapi_python_generated/models/note_tweet_result_media.py +5 -5
- twitter_openapi_python_generated/models/note_tweet_result_media_inline_media.py +6 -5
- twitter_openapi_python_generated/models/note_tweet_result_rich_text.py +5 -5
- twitter_openapi_python_generated/models/note_tweet_result_rich_text_tag.py +4 -3
- twitter_openapi_python_generated/models/notification_template.py +4 -3
- twitter_openapi_python_generated/models/notifications_result.py +6 -5
- twitter_openapi_python_generated/models/notifications_timeline_data.py +4 -3
- twitter_openapi_python_generated/models/notifications_timeline_response.py +5 -5
- twitter_openapi_python_generated/models/notifications_user_results.py +4 -3
- twitter_openapi_python_generated/models/notifications_viewer_v2.py +4 -3
- twitter_openapi_python_generated/models/one_factor_login_eligibility.py +4 -3
- twitter_openapi_python_generated/models/other_object_all.py +4 -3
- twitter_openapi_python_generated/models/post_create_bookmark_request.py +5 -4
- twitter_openapi_python_generated/models/post_create_bookmark_request_variables.py +6 -5
- twitter_openapi_python_generated/models/post_create_draft_tweet_request.py +95 -0
- twitter_openapi_python_generated/models/post_create_draft_tweet_request_variables.py +93 -0
- twitter_openapi_python_generated/models/post_create_draft_tweet_request_variables_post_tweet_request.py +97 -0
- twitter_openapi_python_generated/models/post_create_list_request.py +101 -0
- twitter_openapi_python_generated/models/post_create_list_request_features.py +97 -0
- twitter_openapi_python_generated/models/post_create_list_request_variables.py +93 -0
- twitter_openapi_python_generated/models/post_create_retweet_request.py +6 -5
- twitter_openapi_python_generated/models/post_create_retweet_request_variables.py +7 -6
- twitter_openapi_python_generated/models/post_create_tweet_request.py +6 -5
- twitter_openapi_python_generated/models/post_create_tweet_request_features.py +60 -43
- twitter_openapi_python_generated/models/post_create_tweet_request_variables.py +8 -7
- twitter_openapi_python_generated/models/post_create_tweet_request_variables_conversation_control.py +6 -5
- twitter_openapi_python_generated/models/post_create_tweet_request_variables_media.py +7 -7
- twitter_openapi_python_generated/models/post_create_tweet_request_variables_media_media_entities_inner.py +6 -5
- twitter_openapi_python_generated/models/post_create_tweet_request_variables_reply.py +6 -5
- twitter_openapi_python_generated/models/post_cta.py +101 -0
- twitter_openapi_python_generated/models/post_cta_title_text.py +98 -0
- twitter_openapi_python_generated/models/post_cta_title_text_entity.py +97 -0
- twitter_openapi_python_generated/models/post_cta_title_text_entity_ref.py +96 -0
- twitter_openapi_python_generated/models/post_cta_user_results.py +93 -0
- twitter_openapi_python_generated/models/post_cta_user_results_avatar.py +89 -0
- twitter_openapi_python_generated/models/post_cta_user_results_result.py +96 -0
- twitter_openapi_python_generated/models/post_delete_bookmark_request.py +5 -4
- twitter_openapi_python_generated/models/post_delete_draft_tweets_request.py +95 -0
- twitter_openapi_python_generated/models/post_delete_draft_tweets_request_variables.py +89 -0
- twitter_openapi_python_generated/models/post_delete_list_request.py +95 -0
- twitter_openapi_python_generated/models/post_delete_list_request_variables.py +89 -0
- twitter_openapi_python_generated/models/post_delete_retweet_request.py +6 -5
- twitter_openapi_python_generated/models/post_delete_retweet_request_variables.py +7 -6
- twitter_openapi_python_generated/models/post_delete_tweet_request.py +6 -5
- twitter_openapi_python_generated/models/post_favorite_tweet_request.py +5 -4
- twitter_openapi_python_generated/models/post_list_add_member_request.py +101 -0
- twitter_openapi_python_generated/models/post_list_add_member_request_variables.py +91 -0
- twitter_openapi_python_generated/models/post_list_remove_member_request.py +101 -0
- twitter_openapi_python_generated/models/post_unfavorite_tweet_request.py +5 -4
- twitter_openapi_python_generated/models/primary_community_topic.py +6 -5
- twitter_openapi_python_generated/models/profile_bio.py +97 -0
- twitter_openapi_python_generated/models/profile_bio_entities.py +98 -0
- twitter_openapi_python_generated/models/profile_bio_entities_urls.py +96 -0
- twitter_openapi_python_generated/models/profile_response.py +5 -5
- twitter_openapi_python_generated/models/profile_response_data.py +4 -3
- twitter_openapi_python_generated/models/quoted_ref_result.py +4 -3
- twitter_openapi_python_generated/models/quoted_status_permalink.py +4 -3
- twitter_openapi_python_generated/models/ranked_community_result.py +4 -3
- twitter_openapi_python_generated/models/ranked_community_results.py +4 -3
- twitter_openapi_python_generated/models/ranked_community_tweet_data.py +4 -3
- twitter_openapi_python_generated/models/retweet.py +8 -7
- twitter_openapi_python_generated/models/retweet_legacy.py +4 -3
- twitter_openapi_python_generated/models/rich_message.py +4 -3
- twitter_openapi_python_generated/models/scheduled_tweets_viewer.py +89 -0
- twitter_openapi_python_generated/models/search_by_raw_query.py +4 -3
- twitter_openapi_python_generated/models/search_timeline.py +4 -3
- twitter_openapi_python_generated/models/search_timeline_data.py +4 -3
- twitter_openapi_python_generated/models/search_timeline_response.py +5 -5
- twitter_openapi_python_generated/models/self_thread.py +6 -5
- twitter_openapi_python_generated/models/sensitive_media_warning.py +4 -3
- twitter_openapi_python_generated/models/session.py +12 -11
- twitter_openapi_python_generated/models/smarttag.py +97 -0
- twitter_openapi_python_generated/models/smarttag_tag.py +89 -0
- twitter_openapi_python_generated/models/social_context_landing_url.py +4 -3
- twitter_openapi_python_generated/models/social_context_union.py +3 -2
- twitter_openapi_python_generated/models/super_follow_user_profile.py +89 -0
- twitter_openapi_python_generated/models/super_follows_reply_user_result.py +4 -3
- twitter_openapi_python_generated/models/super_follows_reply_user_result_core.py +89 -0
- twitter_openapi_python_generated/models/super_follows_reply_user_result_data.py +12 -11
- twitter_openapi_python_generated/models/super_follows_reply_user_result_legacy.py +4 -3
- twitter_openapi_python_generated/models/text.py +5 -5
- twitter_openapi_python_generated/models/text_entity.py +4 -3
- twitter_openapi_python_generated/models/text_entity_ref.py +4 -3
- twitter_openapi_python_generated/models/text_highlight.py +4 -3
- twitter_openapi_python_generated/models/thumbnail_image.py +4 -3
- twitter_openapi_python_generated/models/timeline.py +5 -5
- twitter_openapi_python_generated/models/timeline_add_entries.py +5 -5
- twitter_openapi_python_generated/models/timeline_add_entry.py +8 -7
- twitter_openapi_python_generated/models/timeline_add_to_module.py +5 -5
- twitter_openapi_python_generated/models/timeline_clear_cache.py +4 -3
- twitter_openapi_python_generated/models/timeline_clear_entries_unread_state.py +4 -3
- twitter_openapi_python_generated/models/timeline_community.py +4 -3
- twitter_openapi_python_generated/models/timeline_cover_behavior.py +4 -3
- twitter_openapi_python_generated/models/timeline_cover_behavior_url.py +4 -3
- twitter_openapi_python_generated/models/timeline_frame.py +97 -0
- twitter_openapi_python_generated/models/timeline_general_context.py +4 -3
- twitter_openapi_python_generated/models/timeline_half_cover.py +5 -5
- twitter_openapi_python_generated/models/timeline_label.py +101 -0
- twitter_openapi_python_generated/models/timeline_mark_entries_unread_greater_than_sort_index.py +6 -5
- twitter_openapi_python_generated/models/timeline_message_prompt.py +4 -3
- twitter_openapi_python_generated/models/timeline_notification.py +4 -3
- twitter_openapi_python_generated/models/timeline_pin_entry.py +4 -3
- twitter_openapi_python_generated/models/timeline_prompt.py +4 -3
- twitter_openapi_python_generated/models/timeline_replace_entry.py +4 -3
- twitter_openapi_python_generated/models/timeline_response.py +5 -5
- twitter_openapi_python_generated/models/timeline_result.py +4 -3
- twitter_openapi_python_generated/models/timeline_show_alert.py +18 -7
- twitter_openapi_python_generated/models/timeline_show_alert_rich_text.py +4 -3
- twitter_openapi_python_generated/models/timeline_show_cover.py +4 -3
- twitter_openapi_python_generated/models/timeline_terminate_timeline.py +4 -3
- twitter_openapi_python_generated/models/timeline_timeline_cursor.py +4 -3
- twitter_openapi_python_generated/models/timeline_timeline_item.py +4 -3
- twitter_openapi_python_generated/models/timeline_timeline_module.py +5 -5
- twitter_openapi_python_generated/models/timeline_tombstone.py +4 -3
- twitter_openapi_python_generated/models/timeline_topic_context.py +4 -3
- twitter_openapi_python_generated/models/timeline_trend.py +20 -7
- twitter_openapi_python_generated/models/timeline_tweet.py +4 -3
- twitter_openapi_python_generated/models/timeline_twitter_list.py +101 -0
- twitter_openapi_python_generated/models/timeline_user.py +4 -3
- twitter_openapi_python_generated/models/timestamp.py +4 -3
- twitter_openapi_python_generated/models/tombstone_entity.py +4 -3
- twitter_openapi_python_generated/models/tombstone_info.py +4 -3
- twitter_openapi_python_generated/models/tombstone_ref.py +4 -3
- twitter_openapi_python_generated/models/tombstone_rich_text.py +5 -5
- twitter_openapi_python_generated/models/topic_context.py +4 -3
- twitter_openapi_python_generated/models/tracing.py +6 -5
- twitter_openapi_python_generated/models/trend_image.py +4 -3
- twitter_openapi_python_generated/models/trend_metadata.py +8 -5
- twitter_openapi_python_generated/models/trend_results.py +6 -5
- twitter_openapi_python_generated/models/tweet.py +52 -9
- twitter_openapi_python_generated/models/tweet_card.py +4 -3
- twitter_openapi_python_generated/models/tweet_card_legacy.py +6 -7
- twitter_openapi_python_generated/models/tweet_card_legacy_binding_value.py +4 -3
- twitter_openapi_python_generated/models/tweet_card_legacy_binding_value_data.py +4 -3
- twitter_openapi_python_generated/models/tweet_card_legacy_binding_value_data_image.py +4 -3
- twitter_openapi_python_generated/models/tweet_card_platform.py +4 -3
- twitter_openapi_python_generated/models/tweet_card_platform_audience.py +4 -3
- twitter_openapi_python_generated/models/tweet_card_platform_data.py +4 -3
- twitter_openapi_python_generated/models/tweet_card_platform_device.py +6 -5
- twitter_openapi_python_generated/models/tweet_detail_response.py +5 -5
- twitter_openapi_python_generated/models/tweet_detail_response_data.py +4 -3
- twitter_openapi_python_generated/models/tweet_edit_control.py +10 -9
- twitter_openapi_python_generated/models/tweet_edit_control_initial.py +8 -7
- twitter_openapi_python_generated/models/tweet_edit_prespective.py +4 -3
- twitter_openapi_python_generated/models/tweet_favoriters_response.py +5 -5
- twitter_openapi_python_generated/models/tweet_favoriters_response_data.py +4 -3
- twitter_openapi_python_generated/models/tweet_interstitial.py +6 -5
- twitter_openapi_python_generated/models/tweet_interstitial_reveal_text.py +5 -5
- twitter_openapi_python_generated/models/tweet_interstitial_text.py +5 -5
- twitter_openapi_python_generated/models/tweet_interstitial_text_entity.py +4 -3
- twitter_openapi_python_generated/models/tweet_interstitial_text_entity_ref.py +4 -3
- twitter_openapi_python_generated/models/tweet_legacy.py +20 -19
- twitter_openapi_python_generated/models/tweet_legacy_scopes.py +4 -3
- twitter_openapi_python_generated/models/tweet_limited_action_results.py +5 -5
- twitter_openapi_python_generated/models/tweet_post_cta.py +105 -0
- twitter_openapi_python_generated/models/tweet_preview_display.py +4 -3
- twitter_openapi_python_generated/models/tweet_preview_display_cta.py +4 -3
- twitter_openapi_python_generated/models/tweet_preview_display_cta_url.py +4 -3
- twitter_openapi_python_generated/models/tweet_preview_display_tweet.py +17 -10
- twitter_openapi_python_generated/models/tweet_preview_display_tweet_view_count.py +6 -5
- twitter_openapi_python_generated/models/tweet_previous_counts.py +4 -3
- twitter_openapi_python_generated/models/tweet_result_by_rest_id_data.py +4 -3
- twitter_openapi_python_generated/models/tweet_result_by_rest_id_response.py +5 -5
- twitter_openapi_python_generated/models/tweet_retweeters_response.py +5 -5
- twitter_openapi_python_generated/models/tweet_retweeters_response_data.py +4 -3
- twitter_openapi_python_generated/models/tweet_tombstone.py +4 -3
- twitter_openapi_python_generated/models/tweet_unavailable.py +4 -3
- twitter_openapi_python_generated/models/tweet_union.py +3 -2
- twitter_openapi_python_generated/models/tweet_view.py +6 -5
- twitter_openapi_python_generated/models/tweet_with_visibility_results.py +4 -3
- twitter_openapi_python_generated/models/twitter_list.py +146 -0
- twitter_openapi_python_generated/models/type_name.py +6 -0
- twitter_openapi_python_generated/models/unfavorite_tweet.py +4 -3
- twitter_openapi_python_generated/models/unfavorite_tweet_response.py +5 -5
- twitter_openapi_python_generated/models/unified_card.py +4 -3
- twitter_openapi_python_generated/models/url.py +4 -3
- twitter_openapi_python_generated/models/urt_endpoint_options.py +7 -7
- twitter_openapi_python_generated/models/urt_endpoint_request_params.py +4 -3
- twitter_openapi_python_generated/models/user.py +150 -12
- twitter_openapi_python_generated/models/user_action_counts.py +89 -0
- twitter_openapi_python_generated/models/user_avatar.py +89 -0
- twitter_openapi_python_generated/models/user_banner.py +89 -0
- twitter_openapi_python_generated/models/user_core.py +101 -0
- twitter_openapi_python_generated/models/user_dm_permissions.py +89 -0
- twitter_openapi_python_generated/models/user_features.py +4 -3
- twitter_openapi_python_generated/models/user_highlights_info.py +4 -3
- twitter_openapi_python_generated/models/user_highlights_tweets_data.py +4 -3
- twitter_openapi_python_generated/models/user_highlights_tweets_response.py +5 -5
- twitter_openapi_python_generated/models/user_highlights_tweets_result.py +4 -3
- twitter_openapi_python_generated/models/user_highlights_tweets_timeline.py +4 -3
- twitter_openapi_python_generated/models/user_highlights_tweets_user.py +4 -3
- twitter_openapi_python_generated/models/user_legacy.py +26 -14
- twitter_openapi_python_generated/models/user_legacy_extended_profile.py +4 -3
- twitter_openapi_python_generated/models/user_legacy_extended_profile_birthdate.py +4 -3
- twitter_openapi_python_generated/models/user_location.py +89 -0
- twitter_openapi_python_generated/models/user_media_permissions.py +89 -0
- twitter_openapi_python_generated/models/user_notifications_settings.py +89 -0
- twitter_openapi_python_generated/models/user_pinned_items.py +90 -0
- twitter_openapi_python_generated/models/user_privacy.py +89 -0
- twitter_openapi_python_generated/models/user_professional.py +9 -9
- twitter_openapi_python_generated/models/user_professional_category.py +4 -3
- twitter_openapi_python_generated/models/user_profile.py +93 -0
- twitter_openapi_python_generated/models/user_profile_metadata.py +89 -0
- twitter_openapi_python_generated/models/user_profile_translation.py +89 -0
- twitter_openapi_python_generated/models/user_relationship_counts.py +91 -0
- twitter_openapi_python_generated/models/user_relationship_perspectives.py +99 -0
- twitter_openapi_python_generated/models/user_response.py +5 -5
- twitter_openapi_python_generated/models/user_response_data.py +4 -3
- twitter_openapi_python_generated/models/user_result_by_screen_name.py +6 -5
- twitter_openapi_python_generated/models/user_result_by_screen_name_core.py +91 -0
- twitter_openapi_python_generated/models/user_result_by_screen_name_legacy.py +4 -3
- twitter_openapi_python_generated/models/user_result_by_screen_name_result.py +32 -11
- twitter_openapi_python_generated/models/user_result_core.py +7 -4
- twitter_openapi_python_generated/models/user_result_privacy.py +89 -0
- twitter_openapi_python_generated/models/user_result_relationship_perspectives.py +95 -0
- twitter_openapi_python_generated/models/user_results.py +7 -4
- twitter_openapi_python_generated/models/user_tip_jar_settings.py +4 -3
- twitter_openapi_python_generated/models/user_tweet_counts.py +91 -0
- twitter_openapi_python_generated/models/user_tweets_data.py +4 -3
- twitter_openapi_python_generated/models/user_tweets_response.py +5 -5
- twitter_openapi_python_generated/models/user_tweets_result_v1.py +4 -3
- twitter_openapi_python_generated/models/user_tweets_result_v2.py +4 -3
- twitter_openapi_python_generated/models/user_tweets_user.py +4 -3
- twitter_openapi_python_generated/models/user_unavailable.py +4 -3
- twitter_openapi_python_generated/models/user_union.py +6 -3
- twitter_openapi_python_generated/models/user_value.py +12 -9
- twitter_openapi_python_generated/models/user_verification.py +101 -0
- twitter_openapi_python_generated/models/user_verification_info.py +4 -3
- twitter_openapi_python_generated/models/user_verification_info_reason.py +6 -5
- twitter_openapi_python_generated/models/user_verification_info_reason_description.py +5 -5
- twitter_openapi_python_generated/models/user_verification_info_reason_description_entities.py +4 -3
- twitter_openapi_python_generated/models/user_verification_info_reason_description_entities_ref.py +4 -3
- twitter_openapi_python_generated/models/user_website.py +89 -0
- twitter_openapi_python_generated/models/users_response.py +5 -5
- twitter_openapi_python_generated/models/users_response_data.py +5 -5
- twitter_openapi_python_generated/models/viewer_badge_counts_response.py +102 -0
- twitter_openapi_python_generated/models/viewer_badge_counts_response_data.py +93 -0
- twitter_openapi_python_generated/models/viewer_badge_counts_result.py +96 -0
- twitter_openapi_python_generated/models/viewer_badge_counts_user_results.py +93 -0
- twitter_openapi_python_generated/models/viewer_badge_counts_viewer.py +93 -0
- twitter_openapi_python_generated/rest.py +86 -10
- twitter_openapi_python_generated-0.0.35.dist-info/METADATA +926 -0
- twitter_openapi_python_generated-0.0.35.dist-info/RECORD +456 -0
- {twitter_openapi_python_generated-0.0.33.dist-info → twitter_openapi_python_generated-0.0.35.dist-info}/WHEEL +1 -1
- {twitter_openapi_python_generated-0.0.33.dist-info → twitter_openapi_python_generated-0.0.35.dist-info}/licenses/LICENSE +31 -31
- {twitter_openapi_python_generated-0.0.33.dist-info → twitter_openapi_python_generated-0.0.35.dist-info}/licenses/LICENSE.AGPL +660 -660
- twitter_openapi_python_generated/models/community_data.py +0 -219
- twitter_openapi_python_generated-0.0.33.dist-info/METADATA +0 -29
- twitter_openapi_python_generated-0.0.33.dist-info/RECORD +0 -335
- {twitter_openapi_python_generated-0.0.33.dist-info → twitter_openapi_python_generated-0.0.35.dist-info}/top_level.txt +0 -0
|
@@ -20,17 +20,20 @@ import json
|
|
|
20
20
|
|
|
21
21
|
from pydantic import BaseModel, ConfigDict, Field, StrictInt, StrictStr, field_validator
|
|
22
22
|
from typing import Any, ClassVar, Dict, List, Optional
|
|
23
|
+
from twitter_openapi_python_generated.models.client_event_info import ClientEventInfo
|
|
23
24
|
from twitter_openapi_python_generated.models.instruction_type import InstructionType
|
|
24
25
|
from twitter_openapi_python_generated.models.timeline_show_alert_rich_text import TimelineShowAlertRichText
|
|
25
26
|
from twitter_openapi_python_generated.models.user_results import UserResults
|
|
26
27
|
from typing import Optional, Set
|
|
27
28
|
from typing_extensions import Self
|
|
29
|
+
from pydantic_core import to_jsonable_python
|
|
28
30
|
|
|
29
31
|
class TimelineShowAlert(BaseModel):
|
|
30
32
|
"""
|
|
31
33
|
TimelineShowAlert
|
|
32
34
|
""" # noqa: E501
|
|
33
35
|
alert_type: Optional[StrictStr] = Field(default=None, alias="alertType")
|
|
36
|
+
client_event_info: Optional[ClientEventInfo] = Field(default=None, alias="clientEventInfo")
|
|
34
37
|
color_config: Optional[Dict[str, Any]] = Field(default=None, alias="colorConfig")
|
|
35
38
|
display_duration_ms: Optional[StrictInt] = Field(default=None, alias="displayDurationMs")
|
|
36
39
|
display_location: Optional[StrictStr] = Field(default=None, alias="displayLocation")
|
|
@@ -38,8 +41,8 @@ class TimelineShowAlert(BaseModel):
|
|
|
38
41
|
rich_text: TimelineShowAlertRichText = Field(alias="richText")
|
|
39
42
|
trigger_delay_ms: Optional[StrictInt] = Field(default=None, alias="triggerDelayMs")
|
|
40
43
|
type: InstructionType
|
|
41
|
-
users_results: List[UserResults] = Field(alias="usersResults")
|
|
42
|
-
__properties: ClassVar[List[str]] = ["alertType", "colorConfig", "displayDurationMs", "displayLocation", "iconDisplayInfo", "richText", "triggerDelayMs", "type", "usersResults"]
|
|
44
|
+
users_results: Optional[List[UserResults]] = Field(alias="usersResults")
|
|
45
|
+
__properties: ClassVar[List[str]] = ["alertType", "clientEventInfo", "colorConfig", "displayDurationMs", "displayLocation", "iconDisplayInfo", "richText", "triggerDelayMs", "type", "usersResults"]
|
|
43
46
|
|
|
44
47
|
@field_validator('alert_type')
|
|
45
48
|
def alert_type_validate_enum(cls, value):
|
|
@@ -62,7 +65,8 @@ class TimelineShowAlert(BaseModel):
|
|
|
62
65
|
return value
|
|
63
66
|
|
|
64
67
|
model_config = ConfigDict(
|
|
65
|
-
|
|
68
|
+
validate_by_name=True,
|
|
69
|
+
validate_by_alias=True,
|
|
66
70
|
validate_assignment=True,
|
|
67
71
|
protected_namespaces=(),
|
|
68
72
|
)
|
|
@@ -74,8 +78,7 @@ class TimelineShowAlert(BaseModel):
|
|
|
74
78
|
|
|
75
79
|
def to_json(self) -> str:
|
|
76
80
|
"""Returns the JSON representation of the model using alias"""
|
|
77
|
-
|
|
78
|
-
return json.dumps(self.to_dict())
|
|
81
|
+
return json.dumps(to_jsonable_python(self.to_dict()))
|
|
79
82
|
|
|
80
83
|
@classmethod
|
|
81
84
|
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
@@ -100,6 +103,9 @@ class TimelineShowAlert(BaseModel):
|
|
|
100
103
|
exclude=excluded_fields,
|
|
101
104
|
exclude_none=True,
|
|
102
105
|
)
|
|
106
|
+
# override the default output from pydantic by calling `to_dict()` of client_event_info
|
|
107
|
+
if self.client_event_info:
|
|
108
|
+
_dict['clientEventInfo'] = self.client_event_info.to_dict()
|
|
103
109
|
# override the default output from pydantic by calling `to_dict()` of rich_text
|
|
104
110
|
if self.rich_text:
|
|
105
111
|
_dict['richText'] = self.rich_text.to_dict()
|
|
@@ -107,9 +113,13 @@ class TimelineShowAlert(BaseModel):
|
|
|
107
113
|
_items = []
|
|
108
114
|
if self.users_results:
|
|
109
115
|
for _item_users_results in self.users_results:
|
|
110
|
-
if _item_users_results
|
|
111
|
-
_items.append(_item_users_results.to_dict())
|
|
116
|
+
_items.append(_item_users_results.to_dict() if _item_users_results is not None else None)
|
|
112
117
|
_dict['usersResults'] = _items
|
|
118
|
+
# set to None if users_results (nullable) is None
|
|
119
|
+
# and model_fields_set contains the field
|
|
120
|
+
if self.users_results is None and "users_results" in self.model_fields_set:
|
|
121
|
+
_dict['usersResults'] = None
|
|
122
|
+
|
|
113
123
|
return _dict
|
|
114
124
|
|
|
115
125
|
@classmethod
|
|
@@ -123,6 +133,7 @@ class TimelineShowAlert(BaseModel):
|
|
|
123
133
|
|
|
124
134
|
_obj = cls.model_validate({
|
|
125
135
|
"alertType": obj.get("alertType"),
|
|
136
|
+
"clientEventInfo": ClientEventInfo.from_dict(obj["clientEventInfo"]) if obj.get("clientEventInfo") is not None else None,
|
|
126
137
|
"colorConfig": obj.get("colorConfig"),
|
|
127
138
|
"displayDurationMs": obj.get("displayDurationMs"),
|
|
128
139
|
"displayLocation": obj.get("displayLocation"),
|
|
@@ -22,6 +22,7 @@ from pydantic import BaseModel, ConfigDict, StrictStr
|
|
|
22
22
|
from typing import Any, ClassVar, Dict, List, Optional
|
|
23
23
|
from typing import Optional, Set
|
|
24
24
|
from typing_extensions import Self
|
|
25
|
+
from pydantic_core import to_jsonable_python
|
|
25
26
|
|
|
26
27
|
class TimelineShowAlertRichText(BaseModel):
|
|
27
28
|
"""
|
|
@@ -32,7 +33,8 @@ class TimelineShowAlertRichText(BaseModel):
|
|
|
32
33
|
__properties: ClassVar[List[str]] = ["entities", "text"]
|
|
33
34
|
|
|
34
35
|
model_config = ConfigDict(
|
|
35
|
-
|
|
36
|
+
validate_by_name=True,
|
|
37
|
+
validate_by_alias=True,
|
|
36
38
|
validate_assignment=True,
|
|
37
39
|
protected_namespaces=(),
|
|
38
40
|
)
|
|
@@ -44,8 +46,7 @@ class TimelineShowAlertRichText(BaseModel):
|
|
|
44
46
|
|
|
45
47
|
def to_json(self) -> str:
|
|
46
48
|
"""Returns the JSON representation of the model using alias"""
|
|
47
|
-
|
|
48
|
-
return json.dumps(self.to_dict())
|
|
49
|
+
return json.dumps(to_jsonable_python(self.to_dict()))
|
|
49
50
|
|
|
50
51
|
@classmethod
|
|
51
52
|
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
@@ -25,6 +25,7 @@ from twitter_openapi_python_generated.models.instruction_type import Instruction
|
|
|
25
25
|
from twitter_openapi_python_generated.models.timeline_half_cover import TimelineHalfCover
|
|
26
26
|
from typing import Optional, Set
|
|
27
27
|
from typing_extensions import Self
|
|
28
|
+
from pydantic_core import to_jsonable_python
|
|
28
29
|
|
|
29
30
|
class TimelineShowCover(BaseModel):
|
|
30
31
|
"""
|
|
@@ -36,7 +37,8 @@ class TimelineShowCover(BaseModel):
|
|
|
36
37
|
__properties: ClassVar[List[str]] = ["clientEventInfo", "cover", "type"]
|
|
37
38
|
|
|
38
39
|
model_config = ConfigDict(
|
|
39
|
-
|
|
40
|
+
validate_by_name=True,
|
|
41
|
+
validate_by_alias=True,
|
|
40
42
|
validate_assignment=True,
|
|
41
43
|
protected_namespaces=(),
|
|
42
44
|
)
|
|
@@ -48,8 +50,7 @@ class TimelineShowCover(BaseModel):
|
|
|
48
50
|
|
|
49
51
|
def to_json(self) -> str:
|
|
50
52
|
"""Returns the JSON representation of the model using alias"""
|
|
51
|
-
|
|
52
|
-
return json.dumps(self.to_dict())
|
|
53
|
+
return json.dumps(to_jsonable_python(self.to_dict()))
|
|
53
54
|
|
|
54
55
|
@classmethod
|
|
55
56
|
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
@@ -23,6 +23,7 @@ from typing import Any, ClassVar, Dict, List
|
|
|
23
23
|
from twitter_openapi_python_generated.models.instruction_type import InstructionType
|
|
24
24
|
from typing import Optional, Set
|
|
25
25
|
from typing_extensions import Self
|
|
26
|
+
from pydantic_core import to_jsonable_python
|
|
26
27
|
|
|
27
28
|
class TimelineTerminateTimeline(BaseModel):
|
|
28
29
|
"""
|
|
@@ -40,7 +41,8 @@ class TimelineTerminateTimeline(BaseModel):
|
|
|
40
41
|
return value
|
|
41
42
|
|
|
42
43
|
model_config = ConfigDict(
|
|
43
|
-
|
|
44
|
+
validate_by_name=True,
|
|
45
|
+
validate_by_alias=True,
|
|
44
46
|
validate_assignment=True,
|
|
45
47
|
protected_namespaces=(),
|
|
46
48
|
)
|
|
@@ -52,8 +54,7 @@ class TimelineTerminateTimeline(BaseModel):
|
|
|
52
54
|
|
|
53
55
|
def to_json(self) -> str:
|
|
54
56
|
"""Returns the JSON representation of the model using alias"""
|
|
55
|
-
|
|
56
|
-
return json.dumps(self.to_dict())
|
|
57
|
+
return json.dumps(to_jsonable_python(self.to_dict()))
|
|
57
58
|
|
|
58
59
|
@classmethod
|
|
59
60
|
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
@@ -26,6 +26,7 @@ from twitter_openapi_python_generated.models.display_treatment import DisplayTre
|
|
|
26
26
|
from twitter_openapi_python_generated.models.type_name import TypeName
|
|
27
27
|
from typing import Optional, Set
|
|
28
28
|
from typing_extensions import Self
|
|
29
|
+
from pydantic_core import to_jsonable_python
|
|
29
30
|
|
|
30
31
|
class TimelineTimelineCursor(BaseModel):
|
|
31
32
|
"""
|
|
@@ -41,7 +42,8 @@ class TimelineTimelineCursor(BaseModel):
|
|
|
41
42
|
__properties: ClassVar[List[str]] = ["__typename", "cursorType", "displayTreatment", "entryType", "itemType", "stopOnEmptyResponse", "value"]
|
|
42
43
|
|
|
43
44
|
model_config = ConfigDict(
|
|
44
|
-
|
|
45
|
+
validate_by_name=True,
|
|
46
|
+
validate_by_alias=True,
|
|
45
47
|
validate_assignment=True,
|
|
46
48
|
protected_namespaces=(),
|
|
47
49
|
)
|
|
@@ -53,8 +55,7 @@ class TimelineTimelineCursor(BaseModel):
|
|
|
53
55
|
|
|
54
56
|
def to_json(self) -> str:
|
|
55
57
|
"""Returns the JSON representation of the model using alias"""
|
|
56
|
-
|
|
57
|
-
return json.dumps(self.to_dict())
|
|
58
|
+
return json.dumps(to_jsonable_python(self.to_dict()))
|
|
58
59
|
|
|
59
60
|
@classmethod
|
|
60
61
|
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
@@ -26,6 +26,7 @@ from twitter_openapi_python_generated.models.item_content_union import ItemConte
|
|
|
26
26
|
from twitter_openapi_python_generated.models.type_name import TypeName
|
|
27
27
|
from typing import Optional, Set
|
|
28
28
|
from typing_extensions import Self
|
|
29
|
+
from pydantic_core import to_jsonable_python
|
|
29
30
|
|
|
30
31
|
class TimelineTimelineItem(BaseModel):
|
|
31
32
|
"""
|
|
@@ -39,7 +40,8 @@ class TimelineTimelineItem(BaseModel):
|
|
|
39
40
|
__properties: ClassVar[List[str]] = ["__typename", "clientEventInfo", "entryType", "feedbackInfo", "itemContent"]
|
|
40
41
|
|
|
41
42
|
model_config = ConfigDict(
|
|
42
|
-
|
|
43
|
+
validate_by_name=True,
|
|
44
|
+
validate_by_alias=True,
|
|
43
45
|
validate_assignment=True,
|
|
44
46
|
protected_namespaces=(),
|
|
45
47
|
)
|
|
@@ -51,8 +53,7 @@ class TimelineTimelineItem(BaseModel):
|
|
|
51
53
|
|
|
52
54
|
def to_json(self) -> str:
|
|
53
55
|
"""Returns the JSON representation of the model using alias"""
|
|
54
|
-
|
|
55
|
-
return json.dumps(self.to_dict())
|
|
56
|
+
return json.dumps(to_jsonable_python(self.to_dict()))
|
|
56
57
|
|
|
57
58
|
@classmethod
|
|
58
59
|
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
@@ -27,6 +27,7 @@ from twitter_openapi_python_generated.models.feedback_info import FeedbackInfo
|
|
|
27
27
|
from twitter_openapi_python_generated.models.module_item import ModuleItem
|
|
28
28
|
from typing import Optional, Set
|
|
29
29
|
from typing_extensions import Self
|
|
30
|
+
from pydantic_core import to_jsonable_python
|
|
30
31
|
|
|
31
32
|
class TimelineTimelineModule(BaseModel):
|
|
32
33
|
"""
|
|
@@ -44,7 +45,8 @@ class TimelineTimelineModule(BaseModel):
|
|
|
44
45
|
__properties: ClassVar[List[str]] = ["__typename", "clientEventInfo", "displayType", "entryType", "feedbackInfo", "footer", "header", "items", "metadata"]
|
|
45
46
|
|
|
46
47
|
model_config = ConfigDict(
|
|
47
|
-
|
|
48
|
+
validate_by_name=True,
|
|
49
|
+
validate_by_alias=True,
|
|
48
50
|
validate_assignment=True,
|
|
49
51
|
protected_namespaces=(),
|
|
50
52
|
)
|
|
@@ -56,8 +58,7 @@ class TimelineTimelineModule(BaseModel):
|
|
|
56
58
|
|
|
57
59
|
def to_json(self) -> str:
|
|
58
60
|
"""Returns the JSON representation of the model using alias"""
|
|
59
|
-
|
|
60
|
-
return json.dumps(self.to_dict())
|
|
61
|
+
return json.dumps(to_jsonable_python(self.to_dict()))
|
|
61
62
|
|
|
62
63
|
@classmethod
|
|
63
64
|
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
@@ -92,8 +93,7 @@ class TimelineTimelineModule(BaseModel):
|
|
|
92
93
|
_items = []
|
|
93
94
|
if self.items:
|
|
94
95
|
for _item_items in self.items:
|
|
95
|
-
if _item_items
|
|
96
|
-
_items.append(_item_items.to_dict())
|
|
96
|
+
_items.append(_item_items.to_dict() if _item_items is not None else None)
|
|
97
97
|
_dict['items'] = _items
|
|
98
98
|
return _dict
|
|
99
99
|
|
|
@@ -25,6 +25,7 @@ from twitter_openapi_python_generated.models.tombstone_info import TombstoneInfo
|
|
|
25
25
|
from twitter_openapi_python_generated.models.type_name import TypeName
|
|
26
26
|
from typing import Optional, Set
|
|
27
27
|
from typing_extensions import Self
|
|
28
|
+
from pydantic_core import to_jsonable_python
|
|
28
29
|
|
|
29
30
|
class TimelineTombstone(BaseModel):
|
|
30
31
|
"""
|
|
@@ -47,7 +48,8 @@ class TimelineTombstone(BaseModel):
|
|
|
47
48
|
return value
|
|
48
49
|
|
|
49
50
|
model_config = ConfigDict(
|
|
50
|
-
|
|
51
|
+
validate_by_name=True,
|
|
52
|
+
validate_by_alias=True,
|
|
51
53
|
validate_assignment=True,
|
|
52
54
|
protected_namespaces=(),
|
|
53
55
|
)
|
|
@@ -59,8 +61,7 @@ class TimelineTombstone(BaseModel):
|
|
|
59
61
|
|
|
60
62
|
def to_json(self) -> str:
|
|
61
63
|
"""Returns the JSON representation of the model using alias"""
|
|
62
|
-
|
|
63
|
-
return json.dumps(self.to_dict())
|
|
64
|
+
return json.dumps(to_jsonable_python(self.to_dict()))
|
|
64
65
|
|
|
65
66
|
@classmethod
|
|
66
67
|
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
@@ -24,6 +24,7 @@ from twitter_openapi_python_generated.models.social_context_union_type import So
|
|
|
24
24
|
from twitter_openapi_python_generated.models.topic_context import TopicContext
|
|
25
25
|
from typing import Optional, Set
|
|
26
26
|
from typing_extensions import Self
|
|
27
|
+
from pydantic_core import to_jsonable_python
|
|
27
28
|
|
|
28
29
|
class TimelineTopicContext(BaseModel):
|
|
29
30
|
"""
|
|
@@ -45,7 +46,8 @@ class TimelineTopicContext(BaseModel):
|
|
|
45
46
|
return value
|
|
46
47
|
|
|
47
48
|
model_config = ConfigDict(
|
|
48
|
-
|
|
49
|
+
validate_by_name=True,
|
|
50
|
+
validate_by_alias=True,
|
|
49
51
|
validate_assignment=True,
|
|
50
52
|
protected_namespaces=(),
|
|
51
53
|
)
|
|
@@ -57,8 +59,7 @@ class TimelineTopicContext(BaseModel):
|
|
|
57
59
|
|
|
58
60
|
def to_json(self) -> str:
|
|
59
61
|
"""Returns the JSON representation of the model using alias"""
|
|
60
|
-
|
|
61
|
-
return json.dumps(self.to_dict())
|
|
62
|
+
return json.dumps(to_jsonable_python(self.to_dict()))
|
|
62
63
|
|
|
63
64
|
@classmethod
|
|
64
65
|
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
@@ -18,8 +18,9 @@ import pprint
|
|
|
18
18
|
import re # noqa: F401
|
|
19
19
|
import json
|
|
20
20
|
|
|
21
|
-
from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictStr
|
|
21
|
+
from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictStr, field_validator
|
|
22
22
|
from typing import Any, ClassVar, Dict, List, Optional
|
|
23
|
+
from typing_extensions import Annotated
|
|
23
24
|
from twitter_openapi_python_generated.models.content_item_type import ContentItemType
|
|
24
25
|
from twitter_openapi_python_generated.models.social_context_landing_url import SocialContextLandingUrl
|
|
25
26
|
from twitter_openapi_python_generated.models.social_context_union import SocialContextUnion
|
|
@@ -29,6 +30,7 @@ from twitter_openapi_python_generated.models.trend_metadata import TrendMetadata
|
|
|
29
30
|
from twitter_openapi_python_generated.models.type_name import TypeName
|
|
30
31
|
from typing import Optional, Set
|
|
31
32
|
from typing_extensions import Self
|
|
33
|
+
from pydantic_core import to_jsonable_python
|
|
32
34
|
|
|
33
35
|
class TimelineTrend(BaseModel):
|
|
34
36
|
"""
|
|
@@ -39,14 +41,26 @@ class TimelineTrend(BaseModel):
|
|
|
39
41
|
is_ai_trend: Optional[StrictBool] = None
|
|
40
42
|
item_type: Optional[ContentItemType] = Field(default=None, alias="itemType")
|
|
41
43
|
name: StrictStr
|
|
44
|
+
rank: Optional[Annotated[str, Field(strict=True)]] = None
|
|
42
45
|
social_context: Optional[SocialContextUnion] = None
|
|
43
46
|
thumbnail_image: Optional[ThumbnailImage] = None
|
|
44
47
|
trend_metadata: TrendMetadata
|
|
45
48
|
trend_url: SocialContextLandingUrl
|
|
46
|
-
__properties: ClassVar[List[str]] = ["__typename", "images", "is_ai_trend", "itemType", "name", "social_context", "thumbnail_image", "trend_metadata", "trend_url"]
|
|
49
|
+
__properties: ClassVar[List[str]] = ["__typename", "images", "is_ai_trend", "itemType", "name", "rank", "social_context", "thumbnail_image", "trend_metadata", "trend_url"]
|
|
50
|
+
|
|
51
|
+
@field_validator('rank', mode="before")
|
|
52
|
+
def rank_validate_regular_expression(cls, value):
|
|
53
|
+
"""Validates the regular expression"""
|
|
54
|
+
if value is None:
|
|
55
|
+
return value
|
|
56
|
+
|
|
57
|
+
if isinstance(value, str) and not re.match(r"^[0-9]+$", value):
|
|
58
|
+
raise ValueError(r"must validate the regular expression /^[0-9]+$/")
|
|
59
|
+
return value
|
|
47
60
|
|
|
48
61
|
model_config = ConfigDict(
|
|
49
|
-
|
|
62
|
+
validate_by_name=True,
|
|
63
|
+
validate_by_alias=True,
|
|
50
64
|
validate_assignment=True,
|
|
51
65
|
protected_namespaces=(),
|
|
52
66
|
)
|
|
@@ -58,8 +72,7 @@ class TimelineTrend(BaseModel):
|
|
|
58
72
|
|
|
59
73
|
def to_json(self) -> str:
|
|
60
74
|
"""Returns the JSON representation of the model using alias"""
|
|
61
|
-
|
|
62
|
-
return json.dumps(self.to_dict())
|
|
75
|
+
return json.dumps(to_jsonable_python(self.to_dict()))
|
|
63
76
|
|
|
64
77
|
@classmethod
|
|
65
78
|
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
@@ -88,8 +101,7 @@ class TimelineTrend(BaseModel):
|
|
|
88
101
|
_items = []
|
|
89
102
|
if self.images:
|
|
90
103
|
for _item_images in self.images:
|
|
91
|
-
if _item_images
|
|
92
|
-
_items.append(_item_images.to_dict())
|
|
104
|
+
_items.append(_item_images.to_dict() if _item_images is not None else None)
|
|
93
105
|
_dict['images'] = _items
|
|
94
106
|
# override the default output from pydantic by calling `to_dict()` of social_context
|
|
95
107
|
if self.social_context:
|
|
@@ -120,6 +132,7 @@ class TimelineTrend(BaseModel):
|
|
|
120
132
|
"is_ai_trend": obj.get("is_ai_trend"),
|
|
121
133
|
"itemType": obj.get("itemType"),
|
|
122
134
|
"name": obj.get("name"),
|
|
135
|
+
"rank": obj.get("rank"),
|
|
123
136
|
"social_context": SocialContextUnion.from_dict(obj["social_context"]) if obj.get("social_context") is not None else None,
|
|
124
137
|
"thumbnail_image": ThumbnailImage.from_dict(obj["thumbnail_image"]) if obj.get("thumbnail_image") is not None else None,
|
|
125
138
|
"trend_metadata": TrendMetadata.from_dict(obj["trend_metadata"]) if obj.get("trend_metadata") is not None else None,
|
|
@@ -27,6 +27,7 @@ from twitter_openapi_python_generated.models.social_context_union import SocialC
|
|
|
27
27
|
from twitter_openapi_python_generated.models.type_name import TypeName
|
|
28
28
|
from typing import Optional, Set
|
|
29
29
|
from typing_extensions import Self
|
|
30
|
+
from pydantic_core import to_jsonable_python
|
|
30
31
|
|
|
31
32
|
class TimelineTweet(BaseModel):
|
|
32
33
|
"""
|
|
@@ -50,7 +51,8 @@ class TimelineTweet(BaseModel):
|
|
|
50
51
|
return value
|
|
51
52
|
|
|
52
53
|
model_config = ConfigDict(
|
|
53
|
-
|
|
54
|
+
validate_by_name=True,
|
|
55
|
+
validate_by_alias=True,
|
|
54
56
|
validate_assignment=True,
|
|
55
57
|
protected_namespaces=(),
|
|
56
58
|
)
|
|
@@ -62,8 +64,7 @@ class TimelineTweet(BaseModel):
|
|
|
62
64
|
|
|
63
65
|
def to_json(self) -> str:
|
|
64
66
|
"""Returns the JSON representation of the model using alias"""
|
|
65
|
-
|
|
66
|
-
return json.dumps(self.to_dict())
|
|
67
|
+
return json.dumps(to_jsonable_python(self.to_dict()))
|
|
67
68
|
|
|
68
69
|
@classmethod
|
|
69
70
|
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
Twitter OpenAPI
|
|
5
|
+
|
|
6
|
+
Twitter OpenAPI(Swagger) specification
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: 0.0.1
|
|
9
|
+
Contact: yuki@yuki0311.com
|
|
10
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
|
+
|
|
12
|
+
Do not edit the class manually.
|
|
13
|
+
""" # noqa: E501
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
from __future__ import annotations
|
|
17
|
+
import pprint
|
|
18
|
+
import re # noqa: F401
|
|
19
|
+
import json
|
|
20
|
+
|
|
21
|
+
from pydantic import BaseModel, ConfigDict, Field, StrictStr
|
|
22
|
+
from typing import Any, ClassVar, Dict, List, Optional
|
|
23
|
+
from twitter_openapi_python_generated.models.content_item_type import ContentItemType
|
|
24
|
+
from twitter_openapi_python_generated.models.twitter_list import TwitterList
|
|
25
|
+
from twitter_openapi_python_generated.models.type_name import TypeName
|
|
26
|
+
from typing import Optional, Set
|
|
27
|
+
from typing_extensions import Self
|
|
28
|
+
from pydantic_core import to_jsonable_python
|
|
29
|
+
|
|
30
|
+
class TimelineTwitterList(BaseModel):
|
|
31
|
+
"""
|
|
32
|
+
TimelineTwitterList
|
|
33
|
+
""" # noqa: E501
|
|
34
|
+
typename: TypeName = Field(alias="__typename")
|
|
35
|
+
display_type: Optional[StrictStr] = Field(default=None, alias="displayType")
|
|
36
|
+
item_type: ContentItemType = Field(alias="itemType")
|
|
37
|
+
list: TwitterList
|
|
38
|
+
__properties: ClassVar[List[str]] = ["__typename", "displayType", "itemType", "list"]
|
|
39
|
+
|
|
40
|
+
model_config = ConfigDict(
|
|
41
|
+
validate_by_name=True,
|
|
42
|
+
validate_by_alias=True,
|
|
43
|
+
validate_assignment=True,
|
|
44
|
+
protected_namespaces=(),
|
|
45
|
+
)
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
def to_str(self) -> str:
|
|
49
|
+
"""Returns the string representation of the model using alias"""
|
|
50
|
+
return pprint.pformat(self.model_dump(by_alias=True))
|
|
51
|
+
|
|
52
|
+
def to_json(self) -> str:
|
|
53
|
+
"""Returns the JSON representation of the model using alias"""
|
|
54
|
+
return json.dumps(to_jsonable_python(self.to_dict()))
|
|
55
|
+
|
|
56
|
+
@classmethod
|
|
57
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
58
|
+
"""Create an instance of TimelineTwitterList from a JSON string"""
|
|
59
|
+
return cls.from_dict(json.loads(json_str))
|
|
60
|
+
|
|
61
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
62
|
+
"""Return the dictionary representation of the model using alias.
|
|
63
|
+
|
|
64
|
+
This has the following differences from calling pydantic's
|
|
65
|
+
`self.model_dump(by_alias=True)`:
|
|
66
|
+
|
|
67
|
+
* `None` is only added to the output dict for nullable fields that
|
|
68
|
+
were set at model initialization. Other fields with value `None`
|
|
69
|
+
are ignored.
|
|
70
|
+
"""
|
|
71
|
+
excluded_fields: Set[str] = set([
|
|
72
|
+
])
|
|
73
|
+
|
|
74
|
+
_dict = self.model_dump(
|
|
75
|
+
by_alias=True,
|
|
76
|
+
exclude=excluded_fields,
|
|
77
|
+
exclude_none=True,
|
|
78
|
+
)
|
|
79
|
+
# override the default output from pydantic by calling `to_dict()` of list
|
|
80
|
+
if self.list:
|
|
81
|
+
_dict['list'] = self.list.to_dict()
|
|
82
|
+
return _dict
|
|
83
|
+
|
|
84
|
+
@classmethod
|
|
85
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
86
|
+
"""Create an instance of TimelineTwitterList from a dict"""
|
|
87
|
+
if obj is None:
|
|
88
|
+
return None
|
|
89
|
+
|
|
90
|
+
if not isinstance(obj, dict):
|
|
91
|
+
return cls.model_validate(obj)
|
|
92
|
+
|
|
93
|
+
_obj = cls.model_validate({
|
|
94
|
+
"__typename": obj.get("__typename"),
|
|
95
|
+
"displayType": obj.get("displayType"),
|
|
96
|
+
"itemType": obj.get("itemType"),
|
|
97
|
+
"list": TwitterList.from_dict(obj["list"]) if obj.get("list") is not None else None
|
|
98
|
+
})
|
|
99
|
+
return _obj
|
|
100
|
+
|
|
101
|
+
|
|
@@ -26,6 +26,7 @@ from twitter_openapi_python_generated.models.type_name import TypeName
|
|
|
26
26
|
from twitter_openapi_python_generated.models.user_results import UserResults
|
|
27
27
|
from typing import Optional, Set
|
|
28
28
|
from typing_extensions import Self
|
|
29
|
+
from pydantic_core import to_jsonable_python
|
|
29
30
|
|
|
30
31
|
class TimelineUser(BaseModel):
|
|
31
32
|
"""
|
|
@@ -46,7 +47,8 @@ class TimelineUser(BaseModel):
|
|
|
46
47
|
return value
|
|
47
48
|
|
|
48
49
|
model_config = ConfigDict(
|
|
49
|
-
|
|
50
|
+
validate_by_name=True,
|
|
51
|
+
validate_by_alias=True,
|
|
50
52
|
validate_assignment=True,
|
|
51
53
|
protected_namespaces=(),
|
|
52
54
|
)
|
|
@@ -58,8 +60,7 @@ class TimelineUser(BaseModel):
|
|
|
58
60
|
|
|
59
61
|
def to_json(self) -> str:
|
|
60
62
|
"""Returns the JSON representation of the model using alias"""
|
|
61
|
-
|
|
62
|
-
return json.dumps(self.to_dict())
|
|
63
|
+
return json.dumps(to_jsonable_python(self.to_dict()))
|
|
63
64
|
|
|
64
65
|
@classmethod
|
|
65
66
|
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
@@ -22,6 +22,7 @@ from pydantic import BaseModel, ConfigDict, StrictInt, StrictStr
|
|
|
22
22
|
from typing import Any, ClassVar, Dict, List
|
|
23
23
|
from typing import Optional, Set
|
|
24
24
|
from typing_extensions import Self
|
|
25
|
+
from pydantic_core import to_jsonable_python
|
|
25
26
|
|
|
26
27
|
class Timestamp(BaseModel):
|
|
27
28
|
"""
|
|
@@ -33,7 +34,8 @@ class Timestamp(BaseModel):
|
|
|
33
34
|
__properties: ClassVar[List[str]] = ["indices", "seconds", "text"]
|
|
34
35
|
|
|
35
36
|
model_config = ConfigDict(
|
|
36
|
-
|
|
37
|
+
validate_by_name=True,
|
|
38
|
+
validate_by_alias=True,
|
|
37
39
|
validate_assignment=True,
|
|
38
40
|
protected_namespaces=(),
|
|
39
41
|
)
|
|
@@ -45,8 +47,7 @@ class Timestamp(BaseModel):
|
|
|
45
47
|
|
|
46
48
|
def to_json(self) -> str:
|
|
47
49
|
"""Returns the JSON representation of the model using alias"""
|
|
48
|
-
|
|
49
|
-
return json.dumps(self.to_dict())
|
|
50
|
+
return json.dumps(to_jsonable_python(self.to_dict()))
|
|
50
51
|
|
|
51
52
|
@classmethod
|
|
52
53
|
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
@@ -23,6 +23,7 @@ from typing import Any, ClassVar, Dict, List, Optional
|
|
|
23
23
|
from twitter_openapi_python_generated.models.tombstone_ref import TombstoneRef
|
|
24
24
|
from typing import Optional, Set
|
|
25
25
|
from typing_extensions import Self
|
|
26
|
+
from pydantic_core import to_jsonable_python
|
|
26
27
|
|
|
27
28
|
class TombstoneEntity(BaseModel):
|
|
28
29
|
"""
|
|
@@ -34,7 +35,8 @@ class TombstoneEntity(BaseModel):
|
|
|
34
35
|
__properties: ClassVar[List[str]] = ["fromIndex", "ref", "toIndex"]
|
|
35
36
|
|
|
36
37
|
model_config = ConfigDict(
|
|
37
|
-
|
|
38
|
+
validate_by_name=True,
|
|
39
|
+
validate_by_alias=True,
|
|
38
40
|
validate_assignment=True,
|
|
39
41
|
protected_namespaces=(),
|
|
40
42
|
)
|
|
@@ -46,8 +48,7 @@ class TombstoneEntity(BaseModel):
|
|
|
46
48
|
|
|
47
49
|
def to_json(self) -> str:
|
|
48
50
|
"""Returns the JSON representation of the model using alias"""
|
|
49
|
-
|
|
50
|
-
return json.dumps(self.to_dict())
|
|
51
|
+
return json.dumps(to_jsonable_python(self.to_dict()))
|
|
51
52
|
|
|
52
53
|
@classmethod
|
|
53
54
|
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
@@ -23,6 +23,7 @@ from typing import Any, ClassVar, Dict, List, Optional
|
|
|
23
23
|
from twitter_openapi_python_generated.models.tombstone_rich_text import TombstoneRichText
|
|
24
24
|
from typing import Optional, Set
|
|
25
25
|
from typing_extensions import Self
|
|
26
|
+
from pydantic_core import to_jsonable_python
|
|
26
27
|
|
|
27
28
|
class TombstoneInfo(BaseModel):
|
|
28
29
|
"""
|
|
@@ -33,7 +34,8 @@ class TombstoneInfo(BaseModel):
|
|
|
33
34
|
__properties: ClassVar[List[str]] = ["richText", "text"]
|
|
34
35
|
|
|
35
36
|
model_config = ConfigDict(
|
|
36
|
-
|
|
37
|
+
validate_by_name=True,
|
|
38
|
+
validate_by_alias=True,
|
|
37
39
|
validate_assignment=True,
|
|
38
40
|
protected_namespaces=(),
|
|
39
41
|
)
|
|
@@ -45,8 +47,7 @@ class TombstoneInfo(BaseModel):
|
|
|
45
47
|
|
|
46
48
|
def to_json(self) -> str:
|
|
47
49
|
"""Returns the JSON representation of the model using alias"""
|
|
48
|
-
|
|
49
|
-
return json.dumps(self.to_dict())
|
|
50
|
+
return json.dumps(to_jsonable_python(self.to_dict()))
|
|
50
51
|
|
|
51
52
|
@classmethod
|
|
52
53
|
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
@@ -22,6 +22,7 @@ from pydantic import BaseModel, ConfigDict, Field, StrictStr, field_validator
|
|
|
22
22
|
from typing import Any, ClassVar, Dict, List, Optional
|
|
23
23
|
from typing import Optional, Set
|
|
24
24
|
from typing_extensions import Self
|
|
25
|
+
from pydantic_core import to_jsonable_python
|
|
25
26
|
|
|
26
27
|
class TombstoneRef(BaseModel):
|
|
27
28
|
"""
|
|
@@ -53,7 +54,8 @@ class TombstoneRef(BaseModel):
|
|
|
53
54
|
return value
|
|
54
55
|
|
|
55
56
|
model_config = ConfigDict(
|
|
56
|
-
|
|
57
|
+
validate_by_name=True,
|
|
58
|
+
validate_by_alias=True,
|
|
57
59
|
validate_assignment=True,
|
|
58
60
|
protected_namespaces=(),
|
|
59
61
|
)
|
|
@@ -65,8 +67,7 @@ class TombstoneRef(BaseModel):
|
|
|
65
67
|
|
|
66
68
|
def to_json(self) -> str:
|
|
67
69
|
"""Returns the JSON representation of the model using alias"""
|
|
68
|
-
|
|
69
|
-
return json.dumps(self.to_dict())
|
|
70
|
+
return json.dumps(to_jsonable_python(self.to_dict()))
|
|
70
71
|
|
|
71
72
|
@classmethod
|
|
72
73
|
def from_json(cls, json_str: str) -> Optional[Self]:
|