extwitter v0.6.1 ExTwitter

Provides access interfaces for the Twitter API.

Summary

Functions

POST oauth/access_token

GET oauth/authenticate Returns the URL you should redirect the user to for twitter sign-in

GET oauth/authenticate Returns the URL you should redirect the user to for twitter sign-in

GET oauth/authorize

GET oauth/authorize Returns the URL you should redirect the user to for 3-legged authorization

Returns current OAuth configuration settings for accessing twitter server

Provides OAuth configuration settings for accessing twitter server

Provides OAuth configuration settings for accessing twitter server

POST direct_messages/destroy/:id

POST direct_messages/destroy/:id

POST statuses/destroy/:id

POST statuses/destroy/:id

GET direct_messages/show/:id

GET direct_messages

GET direct_messages

GET favorites/list

GET favorites/list

POST friendships/create

POST friendships/create

GET followers/ids

GET followers/ids

GET followers/list

GET followers/list

GET friends/ids

GET friends/ids

GET friends/list

GET friends/list

GET geo/search

GET statuses/home_timeline

GET statuses/home_timeline

GET lists/members

GET lists/members

GET lists/memberships

GET lists/memberships

GET lists/subscribers

GET lists/subscribers

GET lists/statuses

GET lists/statuses

GET lists/list

GET statuses/lookup

GET statuses/lookup

GET statuses/mentions_timeline

GET statuses/mentions_timeline

GET application/rate_limit_status

GET application/rate_limit_status

Provides general twitter API access interface

Provides general twitter API access interface

POST oauth/request_token

POST oauth/request_token

POST statuses/retweet/:id

POST statuses/retweet/:id

GET statuses/retweeters/ids

GET statuses/retweeters/ids

GET statuses/retweets/:id

GET statuses/retweets/:id

GET statuses/retweets_of_me

GET statuses/retweets_of_me

GET geo/reverse_geocode

GET geo/reverse_geocode

GET search/tweets

GET search/tweets

GET direct_messages/sent

GET direct_messages/sent

GET statuses/show/:id

GET statuses/show/:id

An interface to control the stream

An interface to control the stream

POST statuses/filter

POST statuses/filter

GET statuses/sample

GET statuses/sample

GET trends/place

GET trends/place

POST friendships/destroy

POST statuses/update

POST statuses/update

POST media/upload POST statuses/update

POST media/upload POST statuses/update

GET users/show

GET users/lookup

GET users/search

GET users/search

GET statuses/user_timeline

GET statuses/user_timeline

GET account/verify_credentials

Types

Functions

access_token(verifier, request_token)

Specs

access_token(String.t, String.t) ::
  {:ok, String.t} |
  {:error, String.t}

POST oauth/access_token

Examples

ExTwitter.access_token("OAUTH_VERIFIER", "ACCESS_TOKEN", "ACCESS_TOKEN_SECRET")

Reference

https://dev.twitter.com/oauth/reference/post/oauth/access_token https://dev.twitter.com/web/sign-in/implementing

authenticate_url(oauth_token)

Specs

authenticate_url(String.t) ::
  {:ok, String.t} |
  {:error, String.t}
authenticate_url(String.t(<a href="http://elixir-lang.org/docs/stable/elixir/Map.html#t:t/0">Map.t</a>)) ::
  {:ok, String.t} |
  {:error, String.t}

GET oauth/authenticate Returns the URL you should redirect the user to for twitter sign-in

Examples

token = ExTwitter.request_token
ExTwitter.authenticate_url(token.oauth_token)

Reference

https://dev.twitter.com/oauth/reference/get/oauth/authenticate https://dev.twitter.com/web/sign-in/implementing

authenticate_url(oauth_token, options)

GET oauth/authenticate Returns the URL you should redirect the user to for twitter sign-in

Examples

token = ExTwitter.request_token
ExTwitter.authenticate_url(token.oauth_token, %{force_login: true})

Reference

https://dev.twitter.com/oauth/reference/get/oauth/authenticate https://dev.twitter.com/web/sign-in/implementing

authorize_url(oauth_token)

Specs

authorize_url(String.t) ::
  {:ok, String.t} |
  {:error, String.t}

GET oauth/authorize

Examples

token = ExTwitter.request_token
ExTwitter.authorize_url(token.oauth_token)

Returns the URL you should redirect the user to for 3-legged authorization

authorize_url(oauth_token, options)

Specs

authorize_url(String.t, Map.t) ::
  {:ok, String.t} |
  {:error, String.t}

GET oauth/authorize Returns the URL you should redirect the user to for 3-legged authorization

Examples

token = ExTwitter.request_token
ExTwitter.authorize_url(token.oauth_token, %{force_login: true})

Reference

https://dev.twitter.com/oauth/reference/get/oauth/authorize https://dev.twitter.com/oauth/3-legged https://dev.twitter.com/web/sign-in/implementing

configure()

Specs

configure :: Keyword.t | nil

Returns current OAuth configuration settings for accessing twitter server.

configure(oauth)

Specs

configure(Keyword.t) :: :ok

Provides OAuth configuration settings for accessing twitter server.

The specified configuration applies globally. Use ExTwitter.configure/2 for setting different configurations on each processes.

Examples

ExTwitter.configure(
  consumer_key: System.get_env("TWITTER_CONSUMER_KEY"),
  consumer_secret: System.get_env("TWITTER_CONSUMER_SECRET"),
  access_token: System.get_env("TWITTER_ACCESS_TOKEN"),
  access_token_secret: System.get_env("TWITTER_ACCESS_SECRET")
)
configure(scope, oauth)

Specs

configure(:global | :process, Keyword.t) :: :ok

Provides OAuth configuration settings for accessing twitter server.

Options

The scope can have one of the following values.

  • :global - configuration is shared for all processes.

  • :process - configuration is isolated for each process.

Examples

ExTwitter.configure(
  :process,
  consumer_key: System.get_env("TWITTER_CONSUMER_KEY"),
  consumer_secret: System.get_env("TWITTER_CONSUMER_SECRET"),
  access_token: System.get_env("TWITTER_ACCESS_TOKEN"),
  access_token_secret: System.get_env("TWITTER_ACCESS_SECRET")
)
destroy_direct_message(id)

Specs

destroy_direct_message(Integer) :: ExTwitter.Model.DirectMessage.t

POST direct_messages/destroy/:id

Examples

ExTwitter.destroy_direct_message(12345)

Reference

https://dev.twitter.com/rest/reference/post/direct_messages/destroy

destroy_direct_message(id, options)

Specs

destroy_direct_message(Integer, Keyword.t) :: ExTwitter.Model.DirectMessage.t

POST direct_messages/destroy/:id

Examples

ExTwitter.destroy_direct_message(12345, include_entities: false)

Reference

https://dev.twitter.com/rest/reference/post/direct_messages/destroy

destroy_status(id)

Specs

destroy_status(Integer) :: ExTwitter.Model.Tweet.t

POST statuses/destroy/:id

Examples

ExTwitter.destroy_status(446328507694845952)

Reference

https://dev.twitter.com/docs/api/1.1/post/statuses/destroy/%3Aid

destroy_status(id, options)

Specs

destroy_status(Integer, Keyword.t) :: ExTwitter.Model.Tweet.t

POST statuses/destroy/:id

Examples

ExTwitter.destroy_status(446328507694845952, trim_user: true)

Reference

https://dev.twitter.com/docs/api/1.1/post/statuses/destroy/%3Aid

direct_message(id)

Specs

direct_message(Integer | String.t) :: ExTwitter.Model.DirectMessage.t

GET direct_messages/show/:id

Examples

ExTwitter.direct_message(446328507694845952)

Reference

https://dev.twitter.com/rest/reference/get/direct_messages/show

direct_messages()

Specs

direct_messages :: [ExTwitter.Model.DirectMessage.t]

GET direct_messages

Examples

ExTwitter.direct_messages

Reference

https://dev.twitter.com/rest/reference/get/direct_messages

direct_messages(options)

Specs

GET direct_messages

Examples

ExTwitter.direct_messages(count: 1)

Reference

https://dev.twitter.com/rest/reference/get/direct_messages

favorites()

Specs

favorites :: [ExTwitter.Model.Tweet.t]

GET favorites/list

Reference

https://dev.twitter.com/docs/api/1.1/get/favorites/list

favorites(options)

Specs

GET favorites/list

Examples

ExTwitter.favorites(screen_name: "twitter", count: 1)

Reference

https://dev.twitter.com/docs/api/1.1/get/favorites/list

follow(id)

Specs

follow(String.t | Integer) :: ExTwitter.Model.User.t

POST friendships/create

Examples

ExTwitter.follow("twitter")
ExTwitter.follow(783214)

Reference

https://dev.twitter.com/docs/api/1.1/post/friendships/create

follow(id, options)

Specs

follow(String.t | Integer, Keyword.t) :: ExTwitter.Model.User.t

POST friendships/create

Examples

ExTwitter.follow("twitter", follow: true)
ExTwitter.follow(783214, follow: true)

Reference

https://dev.twitter.com/docs/api/1.1/post/friendships/create

follower_ids(id_or_options)

Specs

follower_ids(String.t | Integer | Keyword.t) :: ExTwitter.Model.Cursor.t

GET followers/ids

Specify one of the screen_name, user_id or options in the argument.

Examples

ExTwitter.follower_ids("twitter")
ExTwitter.follower_ids(783214)
ExTwitter.follower_ids(count: 1)

Reference

https://dev.twitter.com/docs/api/1.1/get/followers/ids

follower_ids(id, options)

Specs

follower_ids(String.t | Integer, Keyword.t) :: ExTwitter.Model.Cursor.t

GET followers/ids

Examples

ExTwitter.follower_ids("twitter", count: 1)
ExTwitter.follower_ids(783214, count: 1)

Reference

https://dev.twitter.com/docs/api/1.1/get/followers/ids

followers(id_or_options)

Specs

followers(String.t | Integer | Keyword.t) :: ExTwitter.Model.Cursor.t

GET followers/list

Specify one of the screen_name, user_id or options in the argument.

Examples

ExTwitter.followers("twitter")
ExTwitter.followers(783214)
ExTwitter.followers(count: 1)

Reference

https://dev.twitter.com/docs/api/1.1/get/followers/list

followers(id, options)

Specs

followers(String.t | Integer, Keyword.t) :: ExTwitter.Model.Cursor.t

GET followers/list

Examples

ExTwitter.followers("twitter", count: 1)
ExTwitter.followers(783214, count: 1)

Reference

https://dev.twitter.com/docs/api/1.1/get/followers/list

friend_ids(id_or_options)

Specs

friend_ids(String.t | Integer | Keyword.t) :: ExTwitter.Model.Cursor.t

GET friends/ids

Specify one of the screen_name, user_id or options in the argument.

Examples

ExTwitter.friend_ids("twitter")
ExTwitter.friend_ids(783214)
ExTwitter.friend_ids(count: 1)

Reference

https://dev.twitter.com/docs/api/1.1/get/friends/ids

friend_ids(id, options)

Specs

friend_ids(String.t | Integer, Keyword.t) :: ExTwitter.Model.Cursor.t

GET friends/ids

Examples

ExTwitter.friend_ids("twitter", count: 1)
ExTwitter.friend_ids(783214, count: 1)

Reference

https://dev.twitter.com/docs/api/1.1/get/friends/ids

friends(id_or_options)

Specs

friends(String.t | Integer | Keyword.t) :: ExTwitter.Model.Cursor.t

GET friends/list

Specify one of the screen_name, user_id or options in the argument.

Examples

ExTwitter.friends("twitter")
ExTwitter.friends(783214)
ExTwitter.friends(count: 1)

Reference

https://dev.twitter.com/docs/api/1.1/get/friends/list

friends(id, options)

Specs

GET friends/list

Examples

ExTwitter.friends("twitter", count: 1)
ExTwitter.friends(783214, count: 1)

Reference

https://dev.twitter.com/docs/api/1.1/get/friends/list

geo_search(query)

Specs

GET geo/search

Examples

ExTwitter.geo_search("new york")

Reference

https://dev.twitter.com/docs/api/1.1/get/geo/search

geo_search(query, options)

Specs

GET geo/search

Examples

ExTwitter.geo_search("new york", max_results: 1)

Reference

https://dev.twitter.com/docs/api/1.1/get/geo/search

home_timeline()

Specs

home_timeline :: [ExTwitter.Model.Tweet.t]

GET statuses/home_timeline

Reference

https://dev.twitter.com/docs/api/1.1/get/statuses/home_timeline

home_timeline(options)

Specs

home_timeline(Keyword.t) :: [ExTwitter.Model.Tweet.t]

GET statuses/home_timeline

Examples

ExTwitter.home_timeline(count: 1)

Reference

https://dev.twitter.com/docs/api/1.1/get/statuses/home_timeline

list_members(options)

Specs

list_members(Keyword.t) :: [ExTwitter.Model.User.t]

GET lists/members

Examples

ExTwitter.list_members(slug: "twitter-engineering", owner_screen_name: "twitter")

Reference

https://dev.twitter.com/docs/api/1.1/get/lists/members

list_members(list, owner)

Specs

GET lists/members

Examples

ExTwitter.list_members("twitter-engineering", "twitter")

Reference

https://dev.twitter.com/docs/api/1.1/get/lists/members

list_members(list, owner, options)

Specs

GET lists/members

Examples

ExTwitter.list_members("twitter-engineering", "twitter", count: 1)

Reference

https://dev.twitter.com/docs/api/1.1/get/lists/members

list_memberships()

Specs

list_memberships :: [ExTwitter.Model.List.t]

GET lists/memberships

Reference

https://dev.twitter.com/docs/api/1.1/get/lists/memberships

list_memberships(options)

Specs

list_memberships(Keyword.t) :: [ExTwitter.Model.List.t]

GET lists/memberships

Examples

ExTwitter.list_memberships(screen_name: "twitter", count: 2)

Reference

https://dev.twitter.com/docs/api/1.1/get/lists/memberships

list_subscribers(options)

Specs

list_subscribers(Keyword.t) :: [ExTwitter.Model.User.t]

GET lists/subscribers

Examples

ExTwitter.list_subscribers(slug: "twitter-engineering", owner_screen_name: "twitter")

Reference

https://dev.twitter.com/docs/api/1.1/get/lists/subscribers

list_subscribers(list, owner)

Specs

list_subscribers(String.t, String.t) :: [ExTwitter.Model.User.t]

GET lists/subscribers

Examples

ExTwitter.list_subscribers("twitter-engineering", "twitter")

Reference

https://dev.twitter.com/docs/api/1.1/get/lists/subscribers

list_subscribers(list, owner, options)

Specs

GET lists/subscribers

Examples

ExTwitter.list_subscribers("twitter-engineering", "twitter", count: 1)

Reference

https://dev.twitter.com/docs/api/1.1/get/lists/subscribers

list_timeline(options)

Specs

list_timeline(Keyword.t) :: [ExTwitter.Model.Tweet.t]

GET lists/statuses

Examples

ExTwitter.list_timeline(slug: "twitter-engineering", owner_screen_name: "twitter")

Reference

https://dev.twitter.com/docs/api/1.1/get/lists/statuses

list_timeline(list, owner)

Specs

GET lists/statuses

Examples

ExTwitter.list_timeline("twitter-engineering", "twitter")

Reference

https://dev.twitter.com/docs/api/1.1/get/lists/statuses

list_timeline(list, owner, options)

Specs

GET lists/statuses

Examples

ExTwitter.list_timeline("twitter-engineering", "twitter", count: 1)

Reference

https://dev.twitter.com/docs/api/1.1/get/lists/statuses

lists(id_or_screen_name)

Specs

lists(String.t | Integer) :: [ExTwitter.Model.List.t]

GET lists/list

Examples

ExTwitter.lists("twitter")
ExTwitter.lists(783214)

Reference

https://dev.twitter.com/docs/api/1.1/get/lists/list

lists(id_or_screen_name, options)

Specs

lists(String.t | Integer, Keyword.t) :: [ExTwitter.Model.List.t]

GET lists/list

Examples

ExTwitter.lists("twitter", count: 1)
ExTwitter.lists(783214, count: 1)

Reference

https://dev.twitter.com/docs/api/1.1/get/lists/list

lookup_status(id)

Specs

lookup_status(String.t) :: [ExTwitter.Model.Tweet.t]

GET statuses/lookup

Examples

ExTwitter.lookup_status("504692034473435136,502883389347622912")

Reference

https://dev.twitter.com/docs/api/1.1/get/statuses/lookup

lookup_status(id, options)

Specs

GET statuses/lookup

Examples

ExTwitter.lookup_status("504692034473435136,502883389347622912", trim_user: true)

Reference

https://dev.twitter.com/docs/api/1.1/get/statuses/lookup

mentions_timeline()

Specs

mentions_timeline :: [ExTwitter.Model.Tweet.t]

GET statuses/mentions_timeline

Reference

https://dev.twitter.com/docs/api/1.1/get/statuses/mentions_timeline

mentions_timeline(options)

Specs

mentions_timeline(Keyword.t) :: [ExTwitter.Model.Tweet.t]

GET statuses/mentions_timeline

Examples

ExTwitter.mentions_timeline(count: 1)

Reference

https://dev.twitter.com/docs/api/1.1/get/statuses/mentions_timeline

new_direct_message(id_or_screen_name, text)

Specs

new_direct_message(String.t | Integer, String.t) :: ExTwitter.Model.DirectMessage.t

POST direct_messages/new

Specify one of the screen name, or user id in first argument.

Examples

ExTwitter.new_direct_message("twitter", "Message text")

Reference

https://dev.twitter.com/rest/reference/post/direct_messages/new

rate_limit_status()

Specs

rate_limit_status :: Map

GET application/rate_limit_status

Examples

status = ExTwitter.rate_limit_status
limit = status["resources"]["statuses"]["/statuses/home_timeline"]["remaining"]

Reference

https://dev.twitter.com/docs/api/1.1/get/application/rate_limit_status

rate_limit_status(options)

Specs

rate_limit_status(Keyword.t) :: Map

GET application/rate_limit_status

Examples

ExTwitter.rate_limit_status(resources: "statuses")

Reference

https://dev.twitter.com/docs/api/1.1/get/application/rate_limit_status

request(method, path)

Specs

request(:get | :post, String.t) :: Map

Provides general twitter API access interface.

This method simply returns parsed json in Map structure.

Examples

ExTwitter.request(:get, "1.1/statuses/home_timeline.json")
request(method, path, params)

Specs

request(:get | :post, String.t, Keyword.t) :: Map

Provides general twitter API access interface.

This method simply returns parsed json in Map structure.

Examples

ExTwitter.request(:get, "1.1/search/tweets.json", [q: "elixir", count: 1])
request_token()

Specs

request_token :: [ExTwitter.Model.RequestToken.t]

POST oauth/request_token

Examples

ExTwitter.request_token

Reference

https://dev.twitter.com/oauth/reference/post/oauth/request_token https://dev.twitter.com/web/sign-in/implementing

request_token(redirect_url)

Specs

POST oauth/request_token

Examples

ExTwitter.request_token("http://myapp.com/twitter-callback")

Reference

https://dev.twitter.com/oauth/reference/post/oauth/request_token https://dev.twitter.com/web/sign-in/implementing

retweet(id)

Specs

retweet(Integer) :: ExTwitter.Model.Tweet.t

POST statuses/retweet/:id

Examples

ExTwitter.retweet(589095997340405760)

Reference

https://dev.twitter.com/docs/api/1.1/post/statuses/retweet/%3Aid

retweet(id, options)

Specs

retweet(Integer, Keyword.t) :: ExTwitter.Model.Tweet.t

POST statuses/retweet/:id

Examples

ExTwitter.retweet(589095997340405760, trim_user: true)

Reference

https://dev.twitter.com/docs/api/1.1/post/statuses/retweet/%3Aid

retweeter_ids(id)

Specs

retweeter_ids(Integer | String.t) :: [Integer | String.t]

GET statuses/retweeters/ids

Examples

ExTwitter.retweeter_ids(444144169058308096)

Reference

https://dev.twitter.com/docs/api/1.1/get/statuses/retweeters/ids

retweeter_ids(id, options)

Specs

retweeter_ids(Integer | String.t, Keyword.t) :: [Integer | String.t]

GET statuses/retweeters/ids

Examples

ExTwitter.retweeter_ids(444144169058308096, stringify_ids: true)

Reference

https://dev.twitter.com/docs/api/1.1/get/statuses/retweeters/ids

retweets(id)

Specs

retweets(Integer | String.t) :: [ExTwitter.Model.Tweet.t]

GET statuses/retweets/:id

Examples

ExTwitter.retweets(444144169058308096)

Reference

https://dev.twitter.com/docs/api/1.1/get/statuses/retweets/%3Aid

retweets(id, options)

Specs

retweets(Integer | String.t, Keyword.t) :: [ExTwitter.Model.Tweet.t]

GET statuses/retweets/:id

Examples

ExTwitter.retweets(444144169058308096, count: 1)

Reference

https://dev.twitter.com/docs/api/1.1/get/statuses/retweets/%3Aid

retweets_of_me()

Specs

retweets_of_me :: [ExTwitter.Model.Tweet.t]

GET statuses/retweets_of_me

Reference

https://dev.twitter.com/docs/api/1.1/get/statuses/retweets_of_me

retweets_of_me(options)

Specs

retweets_of_me(Keyword.t) :: [ExTwitter.Model.Tweet.t]

GET statuses/retweets_of_me

Examples

ExTwitter.retweets_of_me(count: 1)

Reference

https://dev.twitter.com/docs/api/1.1/get/statuses/retweets_of_me

reverse_geocode(lat, long)

Specs

reverse_geocode(float, float) :: [ExTwitter.Model.Place.t]

GET geo/reverse_geocode

Examples

ExTwitter.reverse_geocode(37.7821120598956, -122.400612831116)

Reference

https://dev.twitter.com/docs/api/1.1/get/geo/reverse_geocode

reverse_geocode(lat, long, options)

Specs

reverse_geocode(float, float, Keyword.t) :: [ExTwitter.Model.Place.t]

GET geo/reverse_geocode

Examples

ExTwitter.reverse_geocode(37.7821120598956, -122.400612831116, max_results: 1)

Reference

https://dev.twitter.com/docs/api/1.1/get/geo/reverse_geocode

search(query)

Specs

GET search/tweets

Examples

ExTwitter.search("test")

Reference

https://dev.twitter.com/docs/api/1.1/get/search/tweets

search(query, options)

GET search/tweets

Examples

ExTwitter.search("test", count: 1)

Reference

https://dev.twitter.com/docs/api/1.1/get/search/tweets

sent_direct_messages()

Specs

sent_direct_messages :: [ExTwitter.Model.DirectMessage.t]

GET direct_messages/sent

Examples

ExTwitter.sent_direct_messages

Reference

https://dev.twitter.com/rest/reference/get/direct_messages/sent

sent_direct_messages(options)

Specs

sent_direct_messages(Keyword.t) :: [ExTwitter.Model.DirectMessage.t]

GET direct_messages/sent

Examples

ExTwitter.sent_direct_messages(count: 1)

Reference

https://dev.twitter.com/rest/reference/get/direct_messages/sent

show(id)

Specs

show(Integer | String.t) :: ExTwitter.Model.Tweet.t

GET statuses/show/:id

Examples

ExTwitter.show(446328507694845952)

Reference

https://dev.twitter.com/docs/api/1.1/get/statuses/show/%3Aid

show(id, options)

Specs

GET statuses/show/:id

Examples

ExTwitter.show(446328507694845952, trim_user: true)

Reference

https://dev.twitter.com/docs/api/1.1/get/statuses/show/%3Aid

stream_control(pid, stream_control_type)

Specs

stream_control(pid, stream_control_type) :: :ok

An interface to control the stream.

This method is for controlling stream, and it doesn’t make twitter API call.

Options

The pid is the process id where stream is being processed.

Examples

ExTwitter.stream_control(pid, :stop)
stream_control(pid, stream_control_type, options)

Specs

stream_control(pid, stream_control_type, [{:timeout, Integer}]) :: :ok

An interface to control the stream.

This method is for handling elixir’s stream which can keep running infinitely. It doesn’t make twitter API call.

Options

The options can have following values, in addition to the twitter API’s parameter.

  • :receive_messages - true/false flag whether to receive control messages in addition to normal tweets. default is false.

The pid is the process id where stream is processed.

The timeout is the maximum wait time (in milliseconds) to complete the message handling.

Examples

ExTwitter.stream_control(pid, :stop, timeout: 50)
stream_filter(options)

Specs

stream_filter(Keyword.t) :: Enumerable.t

POST statuses/filter

Returns public statuses that match one or more filter predicates. This method returns the Stream that holds the list of tweets. Specify at least one of the [follow, track, locations] options.

Options

The options can have following values, in addition to the twitter API’s parameter.

  • :receive_messages - true/false flag whether to receive control messages in addition to normal tweets. default is false.

Examples

ExTwitter.stream_filter(track: "apple")

Reference

https://dev.twitter.com/docs/api/1.1/post/statuses/filter

stream_filter(options, timeout)

Specs

stream_filter(Keyword.t, [{:timeout, Integer}]) :: Enumerable.t

POST statuses/filter

Returns public statuses that match one or more filter predicates. This method returns the Stream that holds the list of tweets. Specify at least one of the [follow, track, locations] options.

Options

The options can have following values, in addition to the twitter API’s parameter.

  • :receive_messages - true/false flag whether to receive control messages in addition to normal tweets. default is false.

The timeout is the maximum milliseconds to wait until receiving next tweet. Specifying :infinity makes it wait infinitely.

Examples

ExTwitter.stream_filter(track: "apple", timeout: 60000)

Reference

https://dev.twitter.com/docs/api/1.1/post/statuses/filter

stream_sample()

Specs

stream_sample :: Enumerable.t

GET statuses/sample

Returns a small random sample of all public statuses. This method returns the Stream that holds the list of tweets.

Reference

https://dev.twitter.com/docs/api/1.1/get/statuses/sample

stream_sample(options)

Specs

stream_sample(Keyword.t) :: Enumerable.t

GET statuses/sample

Returns a small random sample of all public statuses. This method returns the Stream that holds the list of tweets.

Options

The options can have following values, in addition to the twitter API’s parameter.

  • :receive_messages - true/false flag whether to receive control messages in addition to normal tweets. default is false.

Reference

https://dev.twitter.com/docs/api/1.1/get/statuses/sample

trends(id)

Specs

trends(Integer | String.t) :: [ExTwitter.Model.Trend.t]

GET trends/place

Examples

ExTwitter.trends(1)

Reference

https://dev.twitter.com/rest/reference/get/trends/place

trends(id, options)

Specs

trends(Integer | String.t, Keyword.t) :: [ExTwitter.Model.Trend.t]

GET trends/place

Examples

ExTwitter.trends(1, exclude: true)

Reference

https://dev.twitter.com/rest/reference/get/trends/place

unfollow(id)

Specs

unfollow(String.t | Integer) :: ExTwitter.Model.User.t

POST friendships/destroy

Examples

ExTwitter.unfollow("twitter")
ExTwitter.unfollow(783214)

Reference

https://dev.twitter.com/docs/api/1.1/post/friendships/destroy

update(status)

POST statuses/update

Examples

ExTwitter.update("update sample")

Reference

https://dev.twitter.com/docs/api/1.1/post/statuses/update

update(status, options)

POST statuses/update

Examples

ExTwitter.update("update sample", trim_user: true)

Reference

https://dev.twitter.com/docs/api/1.1/post/statuses/update

update_with_media(status, media_content)

Specs

update_with_media(String.t, Keyword.t) :: ExTwitter.Model.Tweet.t

POST media/upload POST statuses/update

Examples

image = File.read!("fixture/images/sample.png")
ExTwitter.update_with_media("tweet with media", image)

Reference

https://dev.twitter.com/rest/reference/post/media/upload https://dev.twitter.com/rest/public/uploading-media

Note

This API works only for images at the moment. (Video files which requires chunked upload is not supported yet).

update_with_media(status, media_content, options)

Specs

POST media/upload POST statuses/update

Examples

image = File.read!("fixture/images/sample.png")
ExTwitter.update_with_media("tweet with media", image, trim_user: true)

Reference

https://dev.twitter.com/rest/reference/post/media/upload https://dev.twitter.com/rest/public/uploading-media

Note

This API works only for images at the moment. (Video files which requires chunked upload is not supported yet).

user(id_or_screen_name)

Specs

user(String.t | Integer) :: ExTwitter.Model.User.t

GET users/show

Examples

ExTwitter.user("elixirlang")
ExTwitter.user(507309896)

Reference

https://dev.twitter.com/docs/api/1.1/get/users/show

user(id_or_screen_name, options)

Specs

GET users/show

Examples

ExTwitter.user("elixirlang", include_entities: false)
ExTwitter.user(507309896, include_entities: false)

Reference

https://dev.twitter.com/docs/api/1.1/get/users/show

user(user_id, screen_name, options)

See ExTwitter.API.Users.user/3.

user_lookup(id_or_options)

Specs

user_lookup(String.t | Integer | Keyword.t) :: [ExTwitter.Model.User.t]

GET users/lookup

Examples

ExTwitter.user_lookup("twitter")
ExTwitter.user_lookup(783214)
ExTwitter.user_lookup(screen_name: "twitter")

Reference

https://dev.twitter.com/docs/api/1.1/get/users/lookup

user_lookup(screen_name, options)

Specs

user_lookup(String.t | Integer, Keyword.t) :: [ExTwitter.Model.User.t]

GET users/lookup

Examples

ExTwitter.user_lookup("twitter", include_entities: false)
ExTwitter.user_lookup(783214, include_entities: false)

Reference

https://dev.twitter.com/docs/api/1.1/get/users/lookup

user_search(query)

Specs

user_search(String.t) :: [ExTwitter.Model.User.t]

GET users/search

Examples

ExTwitter.user_search("elixirlang")

Reference

https://dev.twitter.com/docs/api/1.1/get/users/search

user_search(query, options)

Specs

GET users/search

Examples

ExTwitter.user_search("elixirlang", count: 1)

Reference

https://dev.twitter.com/docs/api/1.1/get/users/search

user_timeline()

Specs

user_timeline :: [ExTwitter.Model.Tweet.t]

GET statuses/user_timeline

Reference

https://dev.twitter.com/docs/api/1.1/get/statuses/user_timeline

user_timeline(options)

Specs

user_timeline(Keyword.t) :: [ExTwitter.Model.Tweet.t]

GET statuses/user_timeline

Examples

ExTwitter.user_timeline(count: 1)

Reference

https://dev.twitter.com/docs/api/1.1/get/statuses/user_timeline

verify_credentials()

Specs

verify_credentials :: ExTwitter.Model.User.t

GET account/verify_credentials

Examples

ExTwitter.verify_credentials
ExTwitter.verify_credentials(include_email: true)

Reference

https://dev.twitter.com/docs/api/1.1/get/account/verify_credentials