twitter-openapi-python-generated 0.0.14__py3-none-any.whl → 0.0.16__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 +28 -1
- twitter_openapi_python_generated/api/default_api.py +23 -6
- twitter_openapi_python_generated/api/other_api.py +3 -3
- twitter_openapi_python_generated/api/post_api.py +691 -77
- twitter_openapi_python_generated/api/tweet_api.py +33 -33
- twitter_openapi_python_generated/api/user_api.py +6 -6
- twitter_openapi_python_generated/api/user_list_api.py +15 -15
- twitter_openapi_python_generated/api/users_api.py +3 -3
- twitter_openapi_python_generated/api/v11_get_api.py +6 -6
- twitter_openapi_python_generated/api/v11_post_api.py +6 -6
- twitter_openapi_python_generated/api/v20_get_api.py +3 -3
- twitter_openapi_python_generated/api_client.py +36 -24
- twitter_openapi_python_generated/configuration.py +14 -14
- twitter_openapi_python_generated/models/__init__.py +27 -0
- twitter_openapi_python_generated/models/additional_media_info.py +6 -6
- twitter_openapi_python_generated/models/additional_media_info_call_to_actions.py +6 -6
- twitter_openapi_python_generated/models/additional_media_info_call_to_actions_url.py +6 -6
- twitter_openapi_python_generated/models/allow_download_status.py +88 -0
- twitter_openapi_python_generated/models/article.py +92 -0
- twitter_openapi_python_generated/models/article_cover_media.py +106 -0
- twitter_openapi_python_generated/models/article_cover_media_color_info.py +96 -0
- twitter_openapi_python_generated/models/article_cover_media_color_info_palette.py +94 -0
- twitter_openapi_python_generated/models/article_cover_media_color_info_palette_rgb.py +92 -0
- twitter_openapi_python_generated/models/article_cover_media_info.py +101 -0
- twitter_openapi_python_generated/models/article_lifecycle_state.py +88 -0
- twitter_openapi_python_generated/models/article_metadata.py +88 -0
- twitter_openapi_python_generated/models/article_result.py +120 -0
- twitter_openapi_python_generated/models/article_results.py +92 -0
- twitter_openapi_python_generated/models/author_community_relationship.py +6 -6
- twitter_openapi_python_generated/models/birdwatch_entity.py +6 -6
- twitter_openapi_python_generated/models/birdwatch_entity_ref.py +6 -6
- twitter_openapi_python_generated/models/birdwatch_pivot.py +6 -6
- twitter_openapi_python_generated/models/birdwatch_pivot_call_to_action.py +6 -6
- twitter_openapi_python_generated/models/birdwatch_pivot_footer.py +6 -6
- twitter_openapi_python_generated/models/birdwatch_pivot_note.py +6 -6
- twitter_openapi_python_generated/models/birdwatch_pivot_subtitle.py +6 -6
- twitter_openapi_python_generated/models/bookmarks_response.py +6 -6
- twitter_openapi_python_generated/models/bookmarks_response_data.py +6 -6
- twitter_openapi_python_generated/models/bookmarks_timeline.py +6 -6
- twitter_openapi_python_generated/models/callback.py +6 -6
- twitter_openapi_python_generated/models/client_event_info.py +6 -6
- twitter_openapi_python_generated/models/communities_actions.py +6 -6
- twitter_openapi_python_generated/models/community.py +6 -6
- twitter_openapi_python_generated/models/community_actions.py +6 -6
- twitter_openapi_python_generated/models/community_data.py +6 -6
- twitter_openapi_python_generated/models/community_delete_action_result.py +6 -6
- twitter_openapi_python_generated/models/community_invites_result.py +6 -6
- twitter_openapi_python_generated/models/community_join_action_result.py +6 -6
- twitter_openapi_python_generated/models/community_join_requests_result.py +6 -6
- twitter_openapi_python_generated/models/community_leave_action_result.py +6 -6
- twitter_openapi_python_generated/models/community_pin_action_result.py +6 -6
- twitter_openapi_python_generated/models/community_rule.py +6 -6
- twitter_openapi_python_generated/models/community_urls.py +6 -6
- twitter_openapi_python_generated/models/community_urls_permalink.py +6 -6
- twitter_openapi_python_generated/models/content_union.py +7 -7
- twitter_openapi_python_generated/models/cover_cta.py +6 -6
- twitter_openapi_python_generated/models/create_bookmark_response.py +92 -0
- twitter_openapi_python_generated/models/create_bookmark_response_data.py +88 -0
- twitter_openapi_python_generated/models/create_retweet.py +6 -6
- twitter_openapi_python_generated/models/create_retweet_response.py +6 -6
- twitter_openapi_python_generated/models/create_retweet_response_data.py +6 -6
- twitter_openapi_python_generated/models/create_retweet_response_result.py +6 -6
- twitter_openapi_python_generated/models/create_tweet.py +6 -6
- twitter_openapi_python_generated/models/create_tweet_response.py +6 -6
- twitter_openapi_python_generated/models/create_tweet_response_data.py +6 -6
- twitter_openapi_python_generated/models/create_tweet_response_result.py +6 -6
- twitter_openapi_python_generated/models/cta_client_event_info.py +6 -6
- twitter_openapi_python_generated/models/delete_bookmark_response.py +92 -0
- twitter_openapi_python_generated/models/delete_bookmark_response_data.py +88 -0
- twitter_openapi_python_generated/models/delete_retweet.py +6 -6
- twitter_openapi_python_generated/models/delete_retweet_response.py +6 -6
- twitter_openapi_python_generated/models/delete_retweet_response_data.py +6 -6
- twitter_openapi_python_generated/models/delete_retweet_response_result.py +6 -6
- twitter_openapi_python_generated/models/delete_tweet_response.py +6 -6
- twitter_openapi_python_generated/models/delete_tweet_response_data.py +6 -6
- twitter_openapi_python_generated/models/delete_tweet_response_result.py +6 -6
- twitter_openapi_python_generated/models/display_treatment.py +6 -6
- twitter_openapi_python_generated/models/entities.py +6 -6
- twitter_openapi_python_generated/models/error.py +6 -6
- twitter_openapi_python_generated/models/error_extensions.py +6 -6
- twitter_openapi_python_generated/models/error_response.py +6 -6
- twitter_openapi_python_generated/models/errors.py +6 -6
- twitter_openapi_python_generated/models/ext_media_availability.py +6 -6
- twitter_openapi_python_generated/models/extended_entities.py +6 -6
- twitter_openapi_python_generated/models/extensions.py +6 -6
- twitter_openapi_python_generated/models/favorite_tweet.py +6 -6
- twitter_openapi_python_generated/models/favorite_tweet_response_data.py +6 -6
- twitter_openapi_python_generated/models/feedback_info.py +6 -6
- twitter_openapi_python_generated/models/follow_response.py +6 -6
- twitter_openapi_python_generated/models/follow_response_data.py +6 -6
- twitter_openapi_python_generated/models/follow_response_result.py +6 -6
- twitter_openapi_python_generated/models/follow_response_user.py +6 -6
- twitter_openapi_python_generated/models/follow_timeline.py +6 -6
- twitter_openapi_python_generated/models/get_bookmarks200_response.py +7 -7
- twitter_openapi_python_generated/models/get_favoriters200_response.py +7 -7
- twitter_openapi_python_generated/models/get_followers200_response.py +7 -7
- twitter_openapi_python_generated/models/get_home_latest_timeline200_response.py +7 -7
- twitter_openapi_python_generated/models/get_likes200_response.py +7 -7
- twitter_openapi_python_generated/models/get_list_latest_tweets_timeline200_response.py +7 -7
- twitter_openapi_python_generated/models/get_profile_spotlights_query200_response.py +7 -7
- twitter_openapi_python_generated/models/get_retweeters200_response.py +7 -7
- twitter_openapi_python_generated/models/get_search_timeline200_response.py +7 -7
- twitter_openapi_python_generated/models/get_tweet_detail200_response.py +7 -7
- twitter_openapi_python_generated/models/get_tweet_result_by_rest_id200_response.py +7 -7
- twitter_openapi_python_generated/models/get_user_by_rest_id200_response.py +7 -7
- twitter_openapi_python_generated/models/get_user_highlights_tweets200_response.py +7 -7
- twitter_openapi_python_generated/models/get_users_by_rest_ids200_response.py +7 -7
- twitter_openapi_python_generated/models/highlight.py +6 -6
- twitter_openapi_python_generated/models/home_timeline_home.py +6 -6
- twitter_openapi_python_generated/models/home_timeline_response_data.py +6 -6
- twitter_openapi_python_generated/models/instruction_union.py +7 -7
- twitter_openapi_python_generated/models/item_content_union.py +7 -7
- twitter_openapi_python_generated/models/item_result.py +6 -6
- twitter_openapi_python_generated/models/list_latest_tweets_timeline_response.py +6 -6
- twitter_openapi_python_generated/models/list_tweets_timeline.py +6 -6
- twitter_openapi_python_generated/models/list_tweets_timeline_data.py +6 -6
- twitter_openapi_python_generated/models/list_tweets_timeline_list.py +6 -6
- twitter_openapi_python_generated/models/location.py +6 -6
- twitter_openapi_python_generated/models/media.py +31 -11
- twitter_openapi_python_generated/models/media_extended.py +19 -7
- twitter_openapi_python_generated/models/media_original_info.py +6 -6
- twitter_openapi_python_generated/models/media_original_info_focus_rect.py +6 -6
- twitter_openapi_python_generated/models/media_result.py +88 -0
- twitter_openapi_python_generated/models/media_results.py +92 -0
- twitter_openapi_python_generated/models/media_size.py +6 -6
- twitter_openapi_python_generated/models/media_sizes.py +6 -6
- twitter_openapi_python_generated/models/media_stats.py +6 -6
- twitter_openapi_python_generated/models/media_video_info.py +6 -6
- twitter_openapi_python_generated/models/media_video_info_variant.py +6 -6
- twitter_openapi_python_generated/models/media_visibility_results.py +92 -0
- twitter_openapi_python_generated/models/media_visibility_results_blurred_image_interstitial.py +99 -0
- twitter_openapi_python_generated/models/module_entry.py +6 -6
- twitter_openapi_python_generated/models/module_item.py +6 -6
- twitter_openapi_python_generated/models/note_tweet.py +6 -6
- twitter_openapi_python_generated/models/note_tweet_result.py +6 -6
- twitter_openapi_python_generated/models/note_tweet_result_data.py +6 -6
- twitter_openapi_python_generated/models/note_tweet_result_media.py +6 -6
- twitter_openapi_python_generated/models/note_tweet_result_media_inline_media.py +6 -6
- twitter_openapi_python_generated/models/note_tweet_result_rich_text.py +6 -6
- twitter_openapi_python_generated/models/note_tweet_result_rich_text_tag.py +6 -6
- twitter_openapi_python_generated/models/one_factor_login_eligibility.py +6 -6
- twitter_openapi_python_generated/models/other200_response.py +7 -7
- twitter_openapi_python_generated/models/other_response.py +6 -6
- twitter_openapi_python_generated/models/post_create_bookmark200_response.py +138 -0
- twitter_openapi_python_generated/models/post_create_bookmark_request.py +94 -0
- twitter_openapi_python_generated/models/post_create_bookmark_request_variables.py +88 -0
- twitter_openapi_python_generated/models/post_create_retweet200_response.py +7 -7
- twitter_openapi_python_generated/models/post_create_retweet_request.py +6 -6
- twitter_openapi_python_generated/models/post_create_retweet_request_variables.py +6 -6
- twitter_openapi_python_generated/models/post_create_tweet200_response.py +7 -7
- twitter_openapi_python_generated/models/post_create_tweet_request.py +6 -6
- twitter_openapi_python_generated/models/post_create_tweet_request_features.py +6 -6
- twitter_openapi_python_generated/models/post_create_tweet_request_variables.py +6 -6
- twitter_openapi_python_generated/models/post_create_tweet_request_variables_media.py +6 -6
- twitter_openapi_python_generated/models/post_create_tweet_request_variables_media_media_entities_inner.py +6 -6
- twitter_openapi_python_generated/models/post_create_tweet_request_variables_reply.py +6 -6
- twitter_openapi_python_generated/models/post_delete_bookmark200_response.py +138 -0
- twitter_openapi_python_generated/models/post_delete_bookmark_request.py +94 -0
- twitter_openapi_python_generated/models/post_delete_retweet200_response.py +7 -7
- twitter_openapi_python_generated/models/post_delete_retweet_request.py +6 -6
- twitter_openapi_python_generated/models/post_delete_retweet_request_variables.py +6 -6
- twitter_openapi_python_generated/models/post_delete_tweet200_response.py +7 -7
- twitter_openapi_python_generated/models/post_delete_tweet_request.py +6 -6
- twitter_openapi_python_generated/models/post_favorite_tweet200_response.py +7 -7
- twitter_openapi_python_generated/models/post_favorite_tweet_request.py +6 -6
- twitter_openapi_python_generated/models/post_unfavorite_tweet200_response.py +7 -7
- twitter_openapi_python_generated/models/post_unfavorite_tweet_request.py +6 -6
- twitter_openapi_python_generated/models/primary_community_topic.py +6 -6
- twitter_openapi_python_generated/models/profile_response.py +6 -6
- twitter_openapi_python_generated/models/profile_response_data.py +6 -6
- twitter_openapi_python_generated/models/quoted_ref_result.py +6 -6
- twitter_openapi_python_generated/models/quoted_status_permalink.py +6 -6
- twitter_openapi_python_generated/models/retweet.py +6 -6
- twitter_openapi_python_generated/models/retweet_legacy.py +6 -6
- twitter_openapi_python_generated/models/search_by_raw_query.py +6 -6
- twitter_openapi_python_generated/models/search_timeline.py +6 -6
- twitter_openapi_python_generated/models/search_timeline_data.py +6 -6
- twitter_openapi_python_generated/models/search_timeline_response.py +6 -6
- twitter_openapi_python_generated/models/self_thread.py +6 -6
- twitter_openapi_python_generated/models/sensitive_media_warning.py +6 -6
- twitter_openapi_python_generated/models/session.py +6 -6
- twitter_openapi_python_generated/models/social_context_landing_url.py +6 -6
- twitter_openapi_python_generated/models/social_context_union.py +7 -7
- twitter_openapi_python_generated/models/super_follows_reply_user_result.py +6 -6
- twitter_openapi_python_generated/models/super_follows_reply_user_result_data.py +6 -6
- twitter_openapi_python_generated/models/super_follows_reply_user_result_legacy.py +6 -6
- twitter_openapi_python_generated/models/text.py +6 -6
- twitter_openapi_python_generated/models/text_entity.py +6 -6
- twitter_openapi_python_generated/models/text_entity_ref.py +6 -6
- twitter_openapi_python_generated/models/text_highlight.py +6 -6
- twitter_openapi_python_generated/models/timeline.py +6 -6
- twitter_openapi_python_generated/models/timeline_add_entries.py +6 -6
- twitter_openapi_python_generated/models/timeline_add_entry.py +6 -6
- twitter_openapi_python_generated/models/timeline_add_to_module.py +6 -6
- twitter_openapi_python_generated/models/timeline_clear_cache.py +6 -6
- twitter_openapi_python_generated/models/timeline_community.py +6 -6
- twitter_openapi_python_generated/models/timeline_cover_behavior.py +6 -6
- twitter_openapi_python_generated/models/timeline_general_context.py +6 -6
- twitter_openapi_python_generated/models/timeline_half_cover.py +6 -6
- twitter_openapi_python_generated/models/timeline_message_prompt.py +6 -6
- twitter_openapi_python_generated/models/timeline_pin_entry.py +6 -6
- twitter_openapi_python_generated/models/timeline_prompt.py +6 -6
- twitter_openapi_python_generated/models/timeline_replace_entry.py +6 -6
- twitter_openapi_python_generated/models/timeline_response.py +6 -6
- twitter_openapi_python_generated/models/timeline_show_alert.py +6 -6
- twitter_openapi_python_generated/models/timeline_show_alert_rich_text.py +6 -6
- twitter_openapi_python_generated/models/timeline_show_cover.py +6 -6
- twitter_openapi_python_generated/models/timeline_terminate_timeline.py +6 -6
- twitter_openapi_python_generated/models/timeline_timeline_cursor.py +6 -6
- twitter_openapi_python_generated/models/timeline_timeline_item.py +6 -6
- twitter_openapi_python_generated/models/timeline_timeline_module.py +6 -6
- twitter_openapi_python_generated/models/timeline_topic_context.py +6 -6
- twitter_openapi_python_generated/models/timeline_tweet.py +13 -6
- twitter_openapi_python_generated/models/timeline_user.py +6 -6
- twitter_openapi_python_generated/models/timeline_v2.py +6 -6
- twitter_openapi_python_generated/models/timestamp.py +6 -6
- twitter_openapi_python_generated/models/topic_context.py +6 -6
- twitter_openapi_python_generated/models/tracing.py +6 -6
- twitter_openapi_python_generated/models/tweet.py +13 -7
- twitter_openapi_python_generated/models/tweet_card.py +6 -6
- twitter_openapi_python_generated/models/tweet_card_legacy.py +6 -6
- twitter_openapi_python_generated/models/tweet_card_legacy_binding_value.py +6 -6
- twitter_openapi_python_generated/models/tweet_card_legacy_binding_value_data.py +6 -6
- twitter_openapi_python_generated/models/tweet_card_legacy_binding_value_data_image.py +6 -6
- twitter_openapi_python_generated/models/tweet_card_platform.py +6 -6
- twitter_openapi_python_generated/models/tweet_card_platform_audience.py +6 -6
- twitter_openapi_python_generated/models/tweet_card_platform_data.py +6 -6
- twitter_openapi_python_generated/models/tweet_card_platform_device.py +6 -6
- twitter_openapi_python_generated/models/tweet_detail_response.py +6 -6
- twitter_openapi_python_generated/models/tweet_detail_response_data.py +6 -6
- twitter_openapi_python_generated/models/tweet_edit_control.py +6 -6
- twitter_openapi_python_generated/models/tweet_edit_control_initial.py +6 -6
- twitter_openapi_python_generated/models/tweet_edit_prespective.py +6 -6
- twitter_openapi_python_generated/models/tweet_favoriters_response.py +6 -6
- twitter_openapi_python_generated/models/tweet_favoriters_response_data.py +6 -6
- twitter_openapi_python_generated/models/tweet_interstitial.py +6 -6
- twitter_openapi_python_generated/models/tweet_interstitial_reveal_text.py +6 -6
- twitter_openapi_python_generated/models/tweet_interstitial_text.py +6 -6
- twitter_openapi_python_generated/models/tweet_interstitial_text_entity.py +6 -6
- twitter_openapi_python_generated/models/tweet_interstitial_text_entity_ref.py +6 -6
- twitter_openapi_python_generated/models/tweet_legacy.py +6 -6
- twitter_openapi_python_generated/models/tweet_legacy_scopes.py +6 -6
- twitter_openapi_python_generated/models/tweet_previous_counts.py +6 -6
- twitter_openapi_python_generated/models/tweet_result_by_rest_id_data.py +6 -6
- twitter_openapi_python_generated/models/tweet_result_by_rest_id_response.py +6 -6
- twitter_openapi_python_generated/models/tweet_retweeters_response.py +6 -6
- twitter_openapi_python_generated/models/tweet_retweeters_response_data.py +6 -6
- twitter_openapi_python_generated/models/tweet_tombstone.py +6 -6
- twitter_openapi_python_generated/models/tweet_union.py +7 -7
- twitter_openapi_python_generated/models/tweet_view.py +6 -6
- twitter_openapi_python_generated/models/tweet_with_visibility_results.py +13 -7
- twitter_openapi_python_generated/models/type_name.py +1 -0
- twitter_openapi_python_generated/models/unfavorite_tweet.py +6 -6
- twitter_openapi_python_generated/models/unfavorite_tweet_response_data.py +6 -6
- twitter_openapi_python_generated/models/unified_card.py +6 -6
- twitter_openapi_python_generated/models/url.py +8 -8
- twitter_openapi_python_generated/models/urt_endpoint_options.py +6 -6
- twitter_openapi_python_generated/models/urt_endpoint_request_params.py +6 -6
- twitter_openapi_python_generated/models/user.py +19 -7
- twitter_openapi_python_generated/models/user_features.py +6 -6
- twitter_openapi_python_generated/models/user_highlights_info.py +6 -6
- twitter_openapi_python_generated/models/user_highlights_tweets_data.py +6 -6
- twitter_openapi_python_generated/models/user_highlights_tweets_response.py +6 -6
- twitter_openapi_python_generated/models/user_highlights_tweets_result.py +6 -6
- twitter_openapi_python_generated/models/user_highlights_tweets_timeline.py +6 -6
- twitter_openapi_python_generated/models/user_highlights_tweets_user.py +6 -6
- twitter_openapi_python_generated/models/user_legacy.py +6 -6
- twitter_openapi_python_generated/models/user_legacy_extended_profile.py +92 -0
- twitter_openapi_python_generated/models/user_legacy_extended_profile_birthdate.py +110 -0
- twitter_openapi_python_generated/models/user_professional.py +6 -6
- twitter_openapi_python_generated/models/user_professional_category.py +6 -6
- twitter_openapi_python_generated/models/user_response.py +6 -6
- twitter_openapi_python_generated/models/user_response_data.py +6 -6
- twitter_openapi_python_generated/models/user_result_by_screen_name.py +6 -6
- twitter_openapi_python_generated/models/user_result_by_screen_name_legacy.py +6 -6
- twitter_openapi_python_generated/models/user_result_by_screen_name_result.py +6 -6
- twitter_openapi_python_generated/models/user_result_core.py +6 -6
- twitter_openapi_python_generated/models/user_results.py +6 -6
- twitter_openapi_python_generated/models/user_tip_jar_settings.py +100 -0
- twitter_openapi_python_generated/models/user_tweets_data.py +6 -6
- twitter_openapi_python_generated/models/user_tweets_response.py +6 -6
- twitter_openapi_python_generated/models/user_tweets_result.py +6 -6
- twitter_openapi_python_generated/models/user_tweets_user.py +6 -6
- twitter_openapi_python_generated/models/user_unavailable.py +6 -6
- twitter_openapi_python_generated/models/user_union.py +7 -7
- twitter_openapi_python_generated/models/user_value.py +6 -6
- twitter_openapi_python_generated/models/user_verification_info.py +6 -6
- twitter_openapi_python_generated/models/user_verification_info_reason.py +6 -6
- twitter_openapi_python_generated/models/user_verification_info_reason_description.py +6 -6
- twitter_openapi_python_generated/models/user_verification_info_reason_description_entities.py +6 -6
- twitter_openapi_python_generated/models/user_verification_info_reason_description_entities_ref.py +6 -6
- twitter_openapi_python_generated/models/users_response.py +6 -6
- twitter_openapi_python_generated/models/users_response_data.py +6 -6
- twitter_openapi_python_generated/rest.py +2 -0
- {twitter_openapi_python_generated-0.0.14.dist-info → twitter_openapi_python_generated-0.0.16.dist-info}/METADATA +1 -1
- twitter_openapi_python_generated-0.0.16.dist-info/RECORD +310 -0
- twitter_openapi_python_generated-0.0.14.dist-info/RECORD +0 -283
- {twitter_openapi_python_generated-0.0.14.dist-info → twitter_openapi_python_generated-0.0.16.dist-info}/LICENSE +0 -0
- {twitter_openapi_python_generated-0.0.14.dist-info → twitter_openapi_python_generated-0.0.16.dist-info}/LICENSE.AGPL +0 -0
- {twitter_openapi_python_generated-0.0.14.dist-info → twitter_openapi_python_generated-0.0.16.dist-info}/WHEEL +0 -0
- {twitter_openapi_python_generated-0.0.14.dist-info → twitter_openapi_python_generated-0.0.16.dist-info}/top_level.txt +0 -0
|
@@ -23,7 +23,8 @@ import re
|
|
|
23
23
|
import tempfile
|
|
24
24
|
|
|
25
25
|
from urllib.parse import quote
|
|
26
|
-
from typing import Tuple, Optional, List, Dict
|
|
26
|
+
from typing import Tuple, Optional, List, Dict, Union
|
|
27
|
+
from pydantic import SecretStr
|
|
27
28
|
|
|
28
29
|
from twitter_openapi_python_generated.configuration import Configuration
|
|
29
30
|
from twitter_openapi_python_generated.api_response import ApiResponse, T as ApiResponseT
|
|
@@ -88,7 +89,7 @@ class ApiClient:
|
|
|
88
89
|
self.default_headers[header_name] = header_value
|
|
89
90
|
self.cookie = cookie
|
|
90
91
|
# Set default User-Agent.
|
|
91
|
-
self.user_agent = 'OpenAPI-Generator/0.0.
|
|
92
|
+
self.user_agent = 'OpenAPI-Generator/0.0.16/python'
|
|
92
93
|
self.client_side_validation = configuration.client_side_validation
|
|
93
94
|
|
|
94
95
|
def __enter__(self):
|
|
@@ -208,7 +209,8 @@ class ApiClient:
|
|
|
208
209
|
post_params,
|
|
209
210
|
collection_formats
|
|
210
211
|
)
|
|
211
|
-
|
|
212
|
+
if files:
|
|
213
|
+
post_params.extend(self.files_parameters(files))
|
|
212
214
|
|
|
213
215
|
# auth setting
|
|
214
216
|
self.update_params_for_auth(
|
|
@@ -313,7 +315,10 @@ class ApiClient:
|
|
|
313
315
|
match = re.search(r"charset=([a-zA-Z\-\d]+)[\s;]?", content_type)
|
|
314
316
|
encoding = match.group(1) if match else "utf-8"
|
|
315
317
|
response_text = response_data.data.decode(encoding)
|
|
316
|
-
|
|
318
|
+
if response_type in ["bytearray", "str"]:
|
|
319
|
+
return_data = self.__deserialize_primitive(response_text, response_type)
|
|
320
|
+
else:
|
|
321
|
+
return_data = self.deserialize(response_text, response_type)
|
|
317
322
|
finally:
|
|
318
323
|
if not 200 <= response_data.status <= 299:
|
|
319
324
|
raise ApiException.from_response(
|
|
@@ -333,6 +338,7 @@ class ApiClient:
|
|
|
333
338
|
"""Builds a JSON POST object.
|
|
334
339
|
|
|
335
340
|
If obj is None, return None.
|
|
341
|
+
If obj is SecretStr, return obj.get_secret_value()
|
|
336
342
|
If obj is str, int, long, float, bool, return directly.
|
|
337
343
|
If obj is datetime.datetime, datetime.date
|
|
338
344
|
convert to string in iso8601 format.
|
|
@@ -345,6 +351,10 @@ class ApiClient:
|
|
|
345
351
|
"""
|
|
346
352
|
if obj is None:
|
|
347
353
|
return None
|
|
354
|
+
elif isinstance(obj, Enum):
|
|
355
|
+
return obj.value
|
|
356
|
+
elif isinstance(obj, SecretStr):
|
|
357
|
+
return obj.get_secret_value()
|
|
348
358
|
elif isinstance(obj, self.PRIMITIVE_TYPES):
|
|
349
359
|
return obj
|
|
350
360
|
elif isinstance(obj, list):
|
|
@@ -366,7 +376,10 @@ class ApiClient:
|
|
|
366
376
|
# and attributes which value is not None.
|
|
367
377
|
# Convert attribute name to json key in
|
|
368
378
|
# model definition for request.
|
|
369
|
-
|
|
379
|
+
if hasattr(obj, 'to_dict') and callable(getattr(obj, 'to_dict')):
|
|
380
|
+
obj_dict = obj.to_dict()
|
|
381
|
+
else:
|
|
382
|
+
obj_dict = obj.__dict__
|
|
370
383
|
|
|
371
384
|
return {
|
|
372
385
|
key: self.sanitize_for_serialization(val)
|
|
@@ -505,31 +518,30 @@ class ApiClient:
|
|
|
505
518
|
|
|
506
519
|
return "&".join(["=".join(map(str, item)) for item in new_params])
|
|
507
520
|
|
|
508
|
-
def files_parameters(self, files
|
|
521
|
+
def files_parameters(self, files: Dict[str, Union[str, bytes]]):
|
|
509
522
|
"""Builds form parameters.
|
|
510
523
|
|
|
511
524
|
:param files: File parameters.
|
|
512
525
|
:return: Form parameters with files.
|
|
513
526
|
"""
|
|
514
527
|
params = []
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
528
|
+
for k, v in files.items():
|
|
529
|
+
if isinstance(v, str):
|
|
530
|
+
with open(v, 'rb') as f:
|
|
531
|
+
filename = os.path.basename(f.name)
|
|
532
|
+
filedata = f.read()
|
|
533
|
+
elif isinstance(v, bytes):
|
|
534
|
+
filename = k
|
|
535
|
+
filedata = v
|
|
536
|
+
else:
|
|
537
|
+
raise ValueError("Unsupported file value")
|
|
538
|
+
mimetype = (
|
|
539
|
+
mimetypes.guess_type(filename)[0]
|
|
540
|
+
or 'application/octet-stream'
|
|
541
|
+
)
|
|
542
|
+
params.append(
|
|
543
|
+
tuple([k, tuple([filename, filedata, mimetype])])
|
|
544
|
+
)
|
|
533
545
|
return params
|
|
534
546
|
|
|
535
547
|
def select_header_accept(self, accepts: List[str]) -> Optional[str]:
|
|
@@ -432,15 +432,6 @@ conf = twitter_openapi_python_generated.Configuration(
|
|
|
432
432
|
'key': 'Authorization',
|
|
433
433
|
'value': 'Bearer ' + self.access_token
|
|
434
434
|
}
|
|
435
|
-
if 'CacheControl' in self.api_key:
|
|
436
|
-
auth['CacheControl'] = {
|
|
437
|
-
'type': 'api_key',
|
|
438
|
-
'in': 'header',
|
|
439
|
-
'key': 'Cache-Control',
|
|
440
|
-
'value': self.get_api_key_with_prefix(
|
|
441
|
-
'CacheControl',
|
|
442
|
-
),
|
|
443
|
-
}
|
|
444
435
|
if 'ClientLanguage' in self.api_key:
|
|
445
436
|
auth['ClientLanguage'] = {
|
|
446
437
|
'type': 'api_key',
|
|
@@ -486,13 +477,22 @@ conf = twitter_openapi_python_generated.Configuration(
|
|
|
486
477
|
'GuestToken',
|
|
487
478
|
),
|
|
488
479
|
}
|
|
489
|
-
if '
|
|
490
|
-
auth['
|
|
480
|
+
if 'Priority' in self.api_key:
|
|
481
|
+
auth['Priority'] = {
|
|
482
|
+
'type': 'api_key',
|
|
483
|
+
'in': 'header',
|
|
484
|
+
'key': 'Priority',
|
|
485
|
+
'value': self.get_api_key_with_prefix(
|
|
486
|
+
'Priority',
|
|
487
|
+
),
|
|
488
|
+
}
|
|
489
|
+
if 'Referer' in self.api_key:
|
|
490
|
+
auth['Referer'] = {
|
|
491
491
|
'type': 'api_key',
|
|
492
492
|
'in': 'header',
|
|
493
|
-
'key': '
|
|
493
|
+
'key': 'Referer',
|
|
494
494
|
'value': self.get_api_key_with_prefix(
|
|
495
|
-
'
|
|
495
|
+
'Referer',
|
|
496
496
|
),
|
|
497
497
|
}
|
|
498
498
|
if 'SecChUa' in self.api_key:
|
|
@@ -569,7 +569,7 @@ conf = twitter_openapi_python_generated.Configuration(
|
|
|
569
569
|
"OS: {env}\n"\
|
|
570
570
|
"Python Version: {pyversion}\n"\
|
|
571
571
|
"Version of the API: 0.0.1\n"\
|
|
572
|
-
"SDK Package Version: 0.0.
|
|
572
|
+
"SDK Package Version: 0.0.16".\
|
|
573
573
|
format(env=sys.platform, pyversion=sys.version)
|
|
574
574
|
|
|
575
575
|
def get_host_settings(self):
|
|
@@ -18,6 +18,17 @@
|
|
|
18
18
|
from twitter_openapi_python_generated.models.additional_media_info import AdditionalMediaInfo
|
|
19
19
|
from twitter_openapi_python_generated.models.additional_media_info_call_to_actions import AdditionalMediaInfoCallToActions
|
|
20
20
|
from twitter_openapi_python_generated.models.additional_media_info_call_to_actions_url import AdditionalMediaInfoCallToActionsUrl
|
|
21
|
+
from twitter_openapi_python_generated.models.allow_download_status import AllowDownloadStatus
|
|
22
|
+
from twitter_openapi_python_generated.models.article import Article
|
|
23
|
+
from twitter_openapi_python_generated.models.article_cover_media import ArticleCoverMedia
|
|
24
|
+
from twitter_openapi_python_generated.models.article_cover_media_color_info import ArticleCoverMediaColorInfo
|
|
25
|
+
from twitter_openapi_python_generated.models.article_cover_media_color_info_palette import ArticleCoverMediaColorInfoPalette
|
|
26
|
+
from twitter_openapi_python_generated.models.article_cover_media_color_info_palette_rgb import ArticleCoverMediaColorInfoPaletteRGB
|
|
27
|
+
from twitter_openapi_python_generated.models.article_cover_media_info import ArticleCoverMediaInfo
|
|
28
|
+
from twitter_openapi_python_generated.models.article_lifecycle_state import ArticleLifecycleState
|
|
29
|
+
from twitter_openapi_python_generated.models.article_metadata import ArticleMetadata
|
|
30
|
+
from twitter_openapi_python_generated.models.article_result import ArticleResult
|
|
31
|
+
from twitter_openapi_python_generated.models.article_results import ArticleResults
|
|
21
32
|
from twitter_openapi_python_generated.models.author_community_relationship import AuthorCommunityRelationship
|
|
22
33
|
from twitter_openapi_python_generated.models.birdwatch_entity import BirdwatchEntity
|
|
23
34
|
from twitter_openapi_python_generated.models.birdwatch_entity_ref import BirdwatchEntityRef
|
|
@@ -48,6 +59,8 @@ from twitter_openapi_python_generated.models.content_entry_type import ContentEn
|
|
|
48
59
|
from twitter_openapi_python_generated.models.content_item_type import ContentItemType
|
|
49
60
|
from twitter_openapi_python_generated.models.content_union import ContentUnion
|
|
50
61
|
from twitter_openapi_python_generated.models.cover_cta import CoverCta
|
|
62
|
+
from twitter_openapi_python_generated.models.create_bookmark_response import CreateBookmarkResponse
|
|
63
|
+
from twitter_openapi_python_generated.models.create_bookmark_response_data import CreateBookmarkResponseData
|
|
51
64
|
from twitter_openapi_python_generated.models.create_retweet import CreateRetweet
|
|
52
65
|
from twitter_openapi_python_generated.models.create_retweet_response import CreateRetweetResponse
|
|
53
66
|
from twitter_openapi_python_generated.models.create_retweet_response_data import CreateRetweetResponseData
|
|
@@ -58,6 +71,8 @@ from twitter_openapi_python_generated.models.create_tweet_response_data import C
|
|
|
58
71
|
from twitter_openapi_python_generated.models.create_tweet_response_result import CreateTweetResponseResult
|
|
59
72
|
from twitter_openapi_python_generated.models.cta_client_event_info import CtaClientEventInfo
|
|
60
73
|
from twitter_openapi_python_generated.models.cursor_type import CursorType
|
|
74
|
+
from twitter_openapi_python_generated.models.delete_bookmark_response import DeleteBookmarkResponse
|
|
75
|
+
from twitter_openapi_python_generated.models.delete_bookmark_response_data import DeleteBookmarkResponseData
|
|
61
76
|
from twitter_openapi_python_generated.models.delete_retweet import DeleteRetweet
|
|
62
77
|
from twitter_openapi_python_generated.models.delete_retweet_response import DeleteRetweetResponse
|
|
63
78
|
from twitter_openapi_python_generated.models.delete_retweet_response_data import DeleteRetweetResponseData
|
|
@@ -113,11 +128,15 @@ from twitter_openapi_python_generated.models.media import Media
|
|
|
113
128
|
from twitter_openapi_python_generated.models.media_extended import MediaExtended
|
|
114
129
|
from twitter_openapi_python_generated.models.media_original_info import MediaOriginalInfo
|
|
115
130
|
from twitter_openapi_python_generated.models.media_original_info_focus_rect import MediaOriginalInfoFocusRect
|
|
131
|
+
from twitter_openapi_python_generated.models.media_result import MediaResult
|
|
132
|
+
from twitter_openapi_python_generated.models.media_results import MediaResults
|
|
116
133
|
from twitter_openapi_python_generated.models.media_size import MediaSize
|
|
117
134
|
from twitter_openapi_python_generated.models.media_sizes import MediaSizes
|
|
118
135
|
from twitter_openapi_python_generated.models.media_stats import MediaStats
|
|
119
136
|
from twitter_openapi_python_generated.models.media_video_info import MediaVideoInfo
|
|
120
137
|
from twitter_openapi_python_generated.models.media_video_info_variant import MediaVideoInfoVariant
|
|
138
|
+
from twitter_openapi_python_generated.models.media_visibility_results import MediaVisibilityResults
|
|
139
|
+
from twitter_openapi_python_generated.models.media_visibility_results_blurred_image_interstitial import MediaVisibilityResultsBlurredImageInterstitial
|
|
121
140
|
from twitter_openapi_python_generated.models.module_entry import ModuleEntry
|
|
122
141
|
from twitter_openapi_python_generated.models.module_item import ModuleItem
|
|
123
142
|
from twitter_openapi_python_generated.models.note_tweet import NoteTweet
|
|
@@ -130,6 +149,9 @@ from twitter_openapi_python_generated.models.note_tweet_result_rich_text_tag imp
|
|
|
130
149
|
from twitter_openapi_python_generated.models.one_factor_login_eligibility import OneFactorLoginEligibility
|
|
131
150
|
from twitter_openapi_python_generated.models.other200_response import Other200Response
|
|
132
151
|
from twitter_openapi_python_generated.models.other_response import OtherResponse
|
|
152
|
+
from twitter_openapi_python_generated.models.post_create_bookmark200_response import PostCreateBookmark200Response
|
|
153
|
+
from twitter_openapi_python_generated.models.post_create_bookmark_request import PostCreateBookmarkRequest
|
|
154
|
+
from twitter_openapi_python_generated.models.post_create_bookmark_request_variables import PostCreateBookmarkRequestVariables
|
|
133
155
|
from twitter_openapi_python_generated.models.post_create_retweet200_response import PostCreateRetweet200Response
|
|
134
156
|
from twitter_openapi_python_generated.models.post_create_retweet_request import PostCreateRetweetRequest
|
|
135
157
|
from twitter_openapi_python_generated.models.post_create_retweet_request_variables import PostCreateRetweetRequestVariables
|
|
@@ -140,6 +162,8 @@ from twitter_openapi_python_generated.models.post_create_tweet_request_variables
|
|
|
140
162
|
from twitter_openapi_python_generated.models.post_create_tweet_request_variables_media import PostCreateTweetRequestVariablesMedia
|
|
141
163
|
from twitter_openapi_python_generated.models.post_create_tweet_request_variables_media_media_entities_inner import PostCreateTweetRequestVariablesMediaMediaEntitiesInner
|
|
142
164
|
from twitter_openapi_python_generated.models.post_create_tweet_request_variables_reply import PostCreateTweetRequestVariablesReply
|
|
165
|
+
from twitter_openapi_python_generated.models.post_delete_bookmark200_response import PostDeleteBookmark200Response
|
|
166
|
+
from twitter_openapi_python_generated.models.post_delete_bookmark_request import PostDeleteBookmarkRequest
|
|
143
167
|
from twitter_openapi_python_generated.models.post_delete_retweet200_response import PostDeleteRetweet200Response
|
|
144
168
|
from twitter_openapi_python_generated.models.post_delete_retweet_request import PostDeleteRetweetRequest
|
|
145
169
|
from twitter_openapi_python_generated.models.post_delete_retweet_request_variables import PostDeleteRetweetRequestVariables
|
|
@@ -250,6 +274,8 @@ from twitter_openapi_python_generated.models.user_highlights_tweets_result impor
|
|
|
250
274
|
from twitter_openapi_python_generated.models.user_highlights_tweets_timeline import UserHighlightsTweetsTimeline
|
|
251
275
|
from twitter_openapi_python_generated.models.user_highlights_tweets_user import UserHighlightsTweetsUser
|
|
252
276
|
from twitter_openapi_python_generated.models.user_legacy import UserLegacy
|
|
277
|
+
from twitter_openapi_python_generated.models.user_legacy_extended_profile import UserLegacyExtendedProfile
|
|
278
|
+
from twitter_openapi_python_generated.models.user_legacy_extended_profile_birthdate import UserLegacyExtendedProfileBirthdate
|
|
253
279
|
from twitter_openapi_python_generated.models.user_professional import UserProfessional
|
|
254
280
|
from twitter_openapi_python_generated.models.user_professional_category import UserProfessionalCategory
|
|
255
281
|
from twitter_openapi_python_generated.models.user_response import UserResponse
|
|
@@ -259,6 +285,7 @@ from twitter_openapi_python_generated.models.user_result_by_screen_name_legacy i
|
|
|
259
285
|
from twitter_openapi_python_generated.models.user_result_by_screen_name_result import UserResultByScreenNameResult
|
|
260
286
|
from twitter_openapi_python_generated.models.user_result_core import UserResultCore
|
|
261
287
|
from twitter_openapi_python_generated.models.user_results import UserResults
|
|
288
|
+
from twitter_openapi_python_generated.models.user_tip_jar_settings import UserTipJarSettings
|
|
262
289
|
from twitter_openapi_python_generated.models.user_tweets_data import UserTweetsData
|
|
263
290
|
from twitter_openapi_python_generated.models.user_tweets_response import UserTweetsResponse
|
|
264
291
|
from twitter_openapi_python_generated.models.user_tweets_result import UserTweetsResult
|
|
@@ -18,7 +18,7 @@ import pprint
|
|
|
18
18
|
import re # noqa: F401
|
|
19
19
|
import json
|
|
20
20
|
|
|
21
|
-
from pydantic import BaseModel, StrictBool, StrictStr
|
|
21
|
+
from pydantic import BaseModel, ConfigDict, StrictBool, StrictStr
|
|
22
22
|
from typing import Any, ClassVar, Dict, List, Optional
|
|
23
23
|
from twitter_openapi_python_generated.models.additional_media_info_call_to_actions import AdditionalMediaInfoCallToActions
|
|
24
24
|
from twitter_openapi_python_generated.models.user_result_core import UserResultCore
|
|
@@ -37,11 +37,11 @@ class AdditionalMediaInfo(BaseModel):
|
|
|
37
37
|
title: Optional[StrictStr] = None
|
|
38
38
|
__properties: ClassVar[List[str]] = ["call_to_actions", "description", "embeddable", "monetizable", "source_user", "title"]
|
|
39
39
|
|
|
40
|
-
model_config =
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
40
|
+
model_config = ConfigDict(
|
|
41
|
+
populate_by_name=True,
|
|
42
|
+
validate_assignment=True,
|
|
43
|
+
protected_namespaces=(),
|
|
44
|
+
)
|
|
45
45
|
|
|
46
46
|
|
|
47
47
|
def to_str(self) -> str:
|
|
@@ -18,7 +18,7 @@ import pprint
|
|
|
18
18
|
import re # noqa: F401
|
|
19
19
|
import json
|
|
20
20
|
|
|
21
|
-
from pydantic import BaseModel
|
|
21
|
+
from pydantic import BaseModel, ConfigDict
|
|
22
22
|
from typing import Any, ClassVar, Dict, List, Optional
|
|
23
23
|
from twitter_openapi_python_generated.models.additional_media_info_call_to_actions_url import AdditionalMediaInfoCallToActionsUrl
|
|
24
24
|
from typing import Optional, Set
|
|
@@ -32,11 +32,11 @@ class AdditionalMediaInfoCallToActions(BaseModel):
|
|
|
32
32
|
watch_now: Optional[AdditionalMediaInfoCallToActionsUrl] = None
|
|
33
33
|
__properties: ClassVar[List[str]] = ["visit_site", "watch_now"]
|
|
34
34
|
|
|
35
|
-
model_config =
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
35
|
+
model_config = ConfigDict(
|
|
36
|
+
populate_by_name=True,
|
|
37
|
+
validate_assignment=True,
|
|
38
|
+
protected_namespaces=(),
|
|
39
|
+
)
|
|
40
40
|
|
|
41
41
|
|
|
42
42
|
def to_str(self) -> str:
|
|
@@ -18,7 +18,7 @@ import pprint
|
|
|
18
18
|
import re # noqa: F401
|
|
19
19
|
import json
|
|
20
20
|
|
|
21
|
-
from pydantic import BaseModel, StrictStr
|
|
21
|
+
from pydantic import BaseModel, ConfigDict, StrictStr
|
|
22
22
|
from typing import Any, ClassVar, Dict, List
|
|
23
23
|
from typing import Optional, Set
|
|
24
24
|
from typing_extensions import Self
|
|
@@ -30,11 +30,11 @@ class AdditionalMediaInfoCallToActionsUrl(BaseModel):
|
|
|
30
30
|
url: StrictStr
|
|
31
31
|
__properties: ClassVar[List[str]] = ["url"]
|
|
32
32
|
|
|
33
|
-
model_config =
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
33
|
+
model_config = ConfigDict(
|
|
34
|
+
populate_by_name=True,
|
|
35
|
+
validate_assignment=True,
|
|
36
|
+
protected_namespaces=(),
|
|
37
|
+
)
|
|
38
38
|
|
|
39
39
|
|
|
40
40
|
def to_str(self) -> str:
|
|
@@ -0,0 +1,88 @@
|
|
|
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, StrictBool
|
|
22
|
+
from typing import Any, ClassVar, Dict, List
|
|
23
|
+
from typing import Optional, Set
|
|
24
|
+
from typing_extensions import Self
|
|
25
|
+
|
|
26
|
+
class AllowDownloadStatus(BaseModel):
|
|
27
|
+
"""
|
|
28
|
+
AllowDownloadStatus
|
|
29
|
+
""" # noqa: E501
|
|
30
|
+
allow_download: StrictBool
|
|
31
|
+
__properties: ClassVar[List[str]] = ["allow_download"]
|
|
32
|
+
|
|
33
|
+
model_config = ConfigDict(
|
|
34
|
+
populate_by_name=True,
|
|
35
|
+
validate_assignment=True,
|
|
36
|
+
protected_namespaces=(),
|
|
37
|
+
)
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
def to_str(self) -> str:
|
|
41
|
+
"""Returns the string representation of the model using alias"""
|
|
42
|
+
return pprint.pformat(self.model_dump(by_alias=True))
|
|
43
|
+
|
|
44
|
+
def to_json(self) -> str:
|
|
45
|
+
"""Returns the JSON representation of the model using alias"""
|
|
46
|
+
# TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
|
|
47
|
+
return json.dumps(self.to_dict())
|
|
48
|
+
|
|
49
|
+
@classmethod
|
|
50
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
51
|
+
"""Create an instance of AllowDownloadStatus from a JSON string"""
|
|
52
|
+
return cls.from_dict(json.loads(json_str))
|
|
53
|
+
|
|
54
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
55
|
+
"""Return the dictionary representation of the model using alias.
|
|
56
|
+
|
|
57
|
+
This has the following differences from calling pydantic's
|
|
58
|
+
`self.model_dump(by_alias=True)`:
|
|
59
|
+
|
|
60
|
+
* `None` is only added to the output dict for nullable fields that
|
|
61
|
+
were set at model initialization. Other fields with value `None`
|
|
62
|
+
are ignored.
|
|
63
|
+
"""
|
|
64
|
+
excluded_fields: Set[str] = set([
|
|
65
|
+
])
|
|
66
|
+
|
|
67
|
+
_dict = self.model_dump(
|
|
68
|
+
by_alias=True,
|
|
69
|
+
exclude=excluded_fields,
|
|
70
|
+
exclude_none=True,
|
|
71
|
+
)
|
|
72
|
+
return _dict
|
|
73
|
+
|
|
74
|
+
@classmethod
|
|
75
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
76
|
+
"""Create an instance of AllowDownloadStatus from a dict"""
|
|
77
|
+
if obj is None:
|
|
78
|
+
return None
|
|
79
|
+
|
|
80
|
+
if not isinstance(obj, dict):
|
|
81
|
+
return cls.model_validate(obj)
|
|
82
|
+
|
|
83
|
+
_obj = cls.model_validate({
|
|
84
|
+
"allow_download": obj.get("allow_download")
|
|
85
|
+
})
|
|
86
|
+
return _obj
|
|
87
|
+
|
|
88
|
+
|
|
@@ -0,0 +1,92 @@
|
|
|
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
|
|
22
|
+
from typing import Any, ClassVar, Dict, List
|
|
23
|
+
from twitter_openapi_python_generated.models.article_results import ArticleResults
|
|
24
|
+
from typing import Optional, Set
|
|
25
|
+
from typing_extensions import Self
|
|
26
|
+
|
|
27
|
+
class Article(BaseModel):
|
|
28
|
+
"""
|
|
29
|
+
Article
|
|
30
|
+
""" # noqa: E501
|
|
31
|
+
article_results: ArticleResults
|
|
32
|
+
__properties: ClassVar[List[str]] = ["article_results"]
|
|
33
|
+
|
|
34
|
+
model_config = ConfigDict(
|
|
35
|
+
populate_by_name=True,
|
|
36
|
+
validate_assignment=True,
|
|
37
|
+
protected_namespaces=(),
|
|
38
|
+
)
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
def to_str(self) -> str:
|
|
42
|
+
"""Returns the string representation of the model using alias"""
|
|
43
|
+
return pprint.pformat(self.model_dump(by_alias=True))
|
|
44
|
+
|
|
45
|
+
def to_json(self) -> str:
|
|
46
|
+
"""Returns the JSON representation of the model using alias"""
|
|
47
|
+
# TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
|
|
48
|
+
return json.dumps(self.to_dict())
|
|
49
|
+
|
|
50
|
+
@classmethod
|
|
51
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
52
|
+
"""Create an instance of Article from a JSON string"""
|
|
53
|
+
return cls.from_dict(json.loads(json_str))
|
|
54
|
+
|
|
55
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
56
|
+
"""Return the dictionary representation of the model using alias.
|
|
57
|
+
|
|
58
|
+
This has the following differences from calling pydantic's
|
|
59
|
+
`self.model_dump(by_alias=True)`:
|
|
60
|
+
|
|
61
|
+
* `None` is only added to the output dict for nullable fields that
|
|
62
|
+
were set at model initialization. Other fields with value `None`
|
|
63
|
+
are ignored.
|
|
64
|
+
"""
|
|
65
|
+
excluded_fields: Set[str] = set([
|
|
66
|
+
])
|
|
67
|
+
|
|
68
|
+
_dict = self.model_dump(
|
|
69
|
+
by_alias=True,
|
|
70
|
+
exclude=excluded_fields,
|
|
71
|
+
exclude_none=True,
|
|
72
|
+
)
|
|
73
|
+
# override the default output from pydantic by calling `to_dict()` of article_results
|
|
74
|
+
if self.article_results:
|
|
75
|
+
_dict['article_results'] = self.article_results.to_dict()
|
|
76
|
+
return _dict
|
|
77
|
+
|
|
78
|
+
@classmethod
|
|
79
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
80
|
+
"""Create an instance of Article from a dict"""
|
|
81
|
+
if obj is None:
|
|
82
|
+
return None
|
|
83
|
+
|
|
84
|
+
if not isinstance(obj, dict):
|
|
85
|
+
return cls.model_validate(obj)
|
|
86
|
+
|
|
87
|
+
_obj = cls.model_validate({
|
|
88
|
+
"article_results": ArticleResults.from_dict(obj["article_results"]) if obj.get("article_results") is not None else None
|
|
89
|
+
})
|
|
90
|
+
return _obj
|
|
91
|
+
|
|
92
|
+
|
|
@@ -0,0 +1,106 @@
|
|
|
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, field_validator
|
|
22
|
+
from typing import Any, ClassVar, Dict, List
|
|
23
|
+
from typing_extensions import Annotated
|
|
24
|
+
from twitter_openapi_python_generated.models.article_cover_media_info import ArticleCoverMediaInfo
|
|
25
|
+
from typing import Optional, Set
|
|
26
|
+
from typing_extensions import Self
|
|
27
|
+
|
|
28
|
+
class ArticleCoverMedia(BaseModel):
|
|
29
|
+
"""
|
|
30
|
+
ArticleCoverMedia
|
|
31
|
+
""" # noqa: E501
|
|
32
|
+
id: StrictStr
|
|
33
|
+
media_id: Annotated[str, Field(strict=True)]
|
|
34
|
+
media_info: ArticleCoverMediaInfo
|
|
35
|
+
media_key: StrictStr
|
|
36
|
+
__properties: ClassVar[List[str]] = ["id", "media_id", "media_info", "media_key"]
|
|
37
|
+
|
|
38
|
+
@field_validator('media_id')
|
|
39
|
+
def media_id_validate_regular_expression(cls, value):
|
|
40
|
+
"""Validates the regular expression"""
|
|
41
|
+
if not re.match(r"^[0-9]+$", value):
|
|
42
|
+
raise ValueError(r"must validate the regular expression /^[0-9]+$/")
|
|
43
|
+
return value
|
|
44
|
+
|
|
45
|
+
model_config = ConfigDict(
|
|
46
|
+
populate_by_name=True,
|
|
47
|
+
validate_assignment=True,
|
|
48
|
+
protected_namespaces=(),
|
|
49
|
+
)
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
def to_str(self) -> str:
|
|
53
|
+
"""Returns the string representation of the model using alias"""
|
|
54
|
+
return pprint.pformat(self.model_dump(by_alias=True))
|
|
55
|
+
|
|
56
|
+
def to_json(self) -> str:
|
|
57
|
+
"""Returns the JSON representation of the model using alias"""
|
|
58
|
+
# TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
|
|
59
|
+
return json.dumps(self.to_dict())
|
|
60
|
+
|
|
61
|
+
@classmethod
|
|
62
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
63
|
+
"""Create an instance of ArticleCoverMedia from a JSON string"""
|
|
64
|
+
return cls.from_dict(json.loads(json_str))
|
|
65
|
+
|
|
66
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
67
|
+
"""Return the dictionary representation of the model using alias.
|
|
68
|
+
|
|
69
|
+
This has the following differences from calling pydantic's
|
|
70
|
+
`self.model_dump(by_alias=True)`:
|
|
71
|
+
|
|
72
|
+
* `None` is only added to the output dict for nullable fields that
|
|
73
|
+
were set at model initialization. Other fields with value `None`
|
|
74
|
+
are ignored.
|
|
75
|
+
"""
|
|
76
|
+
excluded_fields: Set[str] = set([
|
|
77
|
+
])
|
|
78
|
+
|
|
79
|
+
_dict = self.model_dump(
|
|
80
|
+
by_alias=True,
|
|
81
|
+
exclude=excluded_fields,
|
|
82
|
+
exclude_none=True,
|
|
83
|
+
)
|
|
84
|
+
# override the default output from pydantic by calling `to_dict()` of media_info
|
|
85
|
+
if self.media_info:
|
|
86
|
+
_dict['media_info'] = self.media_info.to_dict()
|
|
87
|
+
return _dict
|
|
88
|
+
|
|
89
|
+
@classmethod
|
|
90
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
91
|
+
"""Create an instance of ArticleCoverMedia from a dict"""
|
|
92
|
+
if obj is None:
|
|
93
|
+
return None
|
|
94
|
+
|
|
95
|
+
if not isinstance(obj, dict):
|
|
96
|
+
return cls.model_validate(obj)
|
|
97
|
+
|
|
98
|
+
_obj = cls.model_validate({
|
|
99
|
+
"id": obj.get("id"),
|
|
100
|
+
"media_id": obj.get("media_id"),
|
|
101
|
+
"media_info": ArticleCoverMediaInfo.from_dict(obj["media_info"]) if obj.get("media_info") is not None else None,
|
|
102
|
+
"media_key": obj.get("media_key")
|
|
103
|
+
})
|
|
104
|
+
return _obj
|
|
105
|
+
|
|
106
|
+
|