Skip to content

Instantly share code, notes, and snippets.

@rob-blackbourn
Created October 8, 2020 07:24
Show Gist options
  • Save rob-blackbourn/f166c4e76731ba62db0df7b2c0d113e3 to your computer and use it in GitHub Desktop.
Save rob-blackbourn/f166c4e76731ba62db0df7b2c0d113e3 to your computer and use it in GitHub Desktop.
Graphhene 3 types for twitter demo
import graphene
class UserType(graphene.ObjectType):
id = graphene.types.scalars.BigInt(required=True)
id_str = graphene.String(required=True)
name = graphene.String(required=True)
screen_name = graphene.String(required=True)
location = graphene.String(required=False)
url = graphene.String(required=False)
description = graphene.String(required=False)
protected = graphene.Boolean(required=True)
verified = graphene.Boolean(required=True)
followers_count = graphene.Int(required=True)
friends_count = graphene.Int(required=True)
listed_count = graphene.Int(required=True)
favourites_count = graphene.Int(required=True)
statuses_count = graphene.Int(required=True)
created_at = graphene.String(required=True)
profile_banner_url = graphene.String(required=False)
profile_image_url_https = graphene.String(required=False)
default_profile = graphene.Boolean(required=True)
default_profile_image = graphene.Boolean(required=True)
withheld_in_countries = graphene.List(graphene.String, required=False)
withheld_scope = graphene.String(required=False)
class TweetType(graphene.ObjectType):
created_at = graphene.String(required=True)
id = graphene.types.scalars.BigInt(required=True)
id_str = graphene.String(required=True)
text = graphene.String(required=True)
source = graphene.String(required=True)
truncated = graphene.Boolean(required=True)
in_reply_to_status_id = graphene.types.scalars.BigInt(required=False)
in_reply_to_status_id_str = graphene.String(required=False)
in_reply_to_user_id = graphene.types.scalars.BigInt(required=False)
in_reply_to_user_id_str = graphene.String(required=False)
in_reply_to_screen_name = graphene.String(required=False)
user = graphene.Field(UserType)
class SearchMetadataType(graphene.ObjectType):
completed_in = graphene.Float(required=True)
max_id = graphene.types.scalars.BigInt(required=True)
max_id_str = graphene.String(required=True)
next_results = graphene.String(required=False)
query = graphene.String(required=True)
refresh_url = graphene.String(required=False)
count = graphene.Int(required=True)
since_id = graphene.types.scalars.BigInt(required=False)
since_id_str = graphene.String(required=False)
class SearchResultType(graphene.ObjectType):
statuses = graphene.List(TweetType)
search_metadata = graphene.Field(SearchMetadataType)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment