twitter-status-bot/.gems/doc/twitter-5.11.0/rdoc/Twitter/REST/OAuth.html

553 lines
24 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type" />
<title>Module: Twitter::REST::OAuth</title>
<link rel="stylesheet" href="../../rdoc.css" type="text/css" media="screen" />
<script src="../../js/jquery.js" type="text/javascript" charset="utf-8"></script>
<script src="../../js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
<script src="../../js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
<script src="../../js/darkfish.js" type="text/javascript" charset="utf-8"></script>
</head>
<body id="top" class="module">
<div id="metadata">
<div id="home-metadata">
<div id="home-section" class="section">
<h3 class="section-header">
<a href="../../index.html">Home</a>
<a href="../../index.html#classes">Classes</a>
<a href="../../index.html#methods">Methods</a>
</h3>
</div>
</div>
<div id="file-metadata">
<div id="file-list-section" class="section">
<h3 class="section-header">In Files</h3>
<div class="section-body">
<ul>
<li><a href="../../lib/twitter/rest/oauth_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
class="thickbox" title="lib/twitter/rest/oauth.rb">lib/twitter/rest/oauth.rb</a></li>
</ul>
</div>
</div>
</div>
<div id="class-metadata">
<!-- Method Quickref -->
<div id="method-list-section" class="section">
<h3 class="section-header">Methods</h3>
<ul class="link-list">
<li><a href="#method-i-bearer_token">#bearer_token</a></li>
<li><a href="#method-i-invalidate_token">#invalidate_token</a></li>
<li><a href="#method-i-reverse_token">#reverse_token</a></li>
<li><a href="#method-i-token">#token</a></li>
</ul>
</div>
<!-- Included Modules -->
<div id="includes-section" class="section">
<h3 class="section-header">Included Modules</h3>
<ul class="link-list">
<li><a class="include" href="Utils.html">Twitter::REST::Utils</a></li>
</ul>
</div>
</div>
<div id="project-metadata">
<div id="classindex-section" class="section project-section">
<h3 class="section-header">Class/Module Index
<span class="search-toggle"><img src="../../images/find.png"
height="16" width="16" alt="[+]"
title="show/hide quicksearch" /></span></h3>
<form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
<fieldset>
<legend>Quicksearch</legend>
<input type="text" name="quicksearch" value=""
class="quicksearch-field" />
</fieldset>
</form>
<ul class="link-list">
<li><a href="../../Twitter.html">Twitter</a></li>
<li><a href="../../Twitter/Arguments.html">Twitter::Arguments</a></li>
<li><a href="../../Twitter/Base.html">Twitter::Base</a></li>
<li><a href="../../Twitter/BasicUser.html">Twitter::BasicUser</a></li>
<li><a href="../../Twitter/Client.html">Twitter::Client</a></li>
<li><a href="../../Twitter/Configuration.html">Twitter::Configuration</a></li>
<li><a href="../../Twitter/Creatable.html">Twitter::Creatable</a></li>
<li><a href="../../Twitter/Cursor.html">Twitter::Cursor</a></li>
<li><a href="../../Twitter/DirectMessage.html">Twitter::DirectMessage</a></li>
<li><a href="../../Twitter/Entities.html">Twitter::Entities</a></li>
<li><a href="../../Twitter/Entity.html">Twitter::Entity</a></li>
<li><a href="../../Twitter/Entity/Hashtag.html">Twitter::Entity::Hashtag</a></li>
<li><a href="../../Twitter/Entity/Symbol.html">Twitter::Entity::Symbol</a></li>
<li><a href="../../Twitter/Entity/URI.html">Twitter::Entity::URI</a></li>
<li><a href="../../Twitter/Entity/URI.html">Twitter::Entity::URL</a></li>
<li><a href="../../Twitter/Entity/UserMention.html">Twitter::Entity::UserMention</a></li>
<li><a href="../../Twitter/Enumerable.html">Twitter::Enumerable</a></li>
<li><a href="../../Twitter/Error.html">Twitter::Error</a></li>
<li><a href="../../Twitter/Error/AlreadyFavorited.html">Twitter::Error::AlreadyFavorited</a></li>
<li><a href="../../Twitter/Error/AlreadyRetweeted.html">Twitter::Error::AlreadyRetweeted</a></li>
<li><a href="../../Twitter/Error/BadGateway.html">Twitter::Error::BadGateway</a></li>
<li><a href="../../Twitter/Error/BadRequest.html">Twitter::Error::BadRequest</a></li>
<li><a href="../../Twitter/Error/ClientError.html">Twitter::Error::ClientError</a></li>
<li><a href="../../Twitter/Error/Code.html">Twitter::Error::Code</a></li>
<li><a href="../../Twitter/Error/ConfigurationError.html">Twitter::Error::ConfigurationError</a></li>
<li><a href="../../Twitter/Error/DuplicateStatus.html">Twitter::Error::DuplicateStatus</a></li>
<li><a href="../../Twitter/Error/Forbidden.html">Twitter::Error::Forbidden</a></li>
<li><a href="../../Twitter/Error/GatewayTimeout.html">Twitter::Error::GatewayTimeout</a></li>
<li><a href="../../Twitter/Error/InternalServerError.html">Twitter::Error::InternalServerError</a></li>
<li><a href="../../Twitter/Error/NotAcceptable.html">Twitter::Error::NotAcceptable</a></li>
<li><a href="../../Twitter/Error/NotFound.html">Twitter::Error::NotFound</a></li>
<li><a href="../../Twitter/Error/RequestTimeout.html">Twitter::Error::RequestTimeout</a></li>
<li><a href="../../Twitter/Error/ServerError.html">Twitter::Error::ServerError</a></li>
<li><a href="../../Twitter/Error/ServiceUnavailable.html">Twitter::Error::ServiceUnavailable</a></li>
<li><a href="../../Twitter/Error/TooManyRequests.html">Twitter::Error::TooManyRequests</a></li>
<li><a href="../../Twitter/Error/UnacceptableIO.html">Twitter::Error::UnacceptableIO</a></li>
<li><a href="../../Twitter/Error/Unauthorized.html">Twitter::Error::Unauthorized</a></li>
<li><a href="../../Twitter/Error/UnprocessableEntity.html">Twitter::Error::UnprocessableEntity</a></li>
<li><a href="../../Twitter/Factory.html">Twitter::Factory</a></li>
<li><a href="../../Twitter/Geo.html">Twitter::Geo</a></li>
<li><a href="../../Twitter/Geo/Point.html">Twitter::Geo::Point</a></li>
<li><a href="../../Twitter/Geo/Polygon.html">Twitter::Geo::Polygon</a></li>
<li><a href="../../Twitter/GeoFactory.html">Twitter::GeoFactory</a></li>
<li><a href="../../Twitter/GeoResults.html">Twitter::GeoResults</a></li>
<li><a href="../../Twitter/Identity.html">Twitter::Identity</a></li>
<li><a href="../../Twitter/Language.html">Twitter::Language</a></li>
<li><a href="../../Twitter/List.html">Twitter::List</a></li>
<li><a href="../../Twitter/Media.html">Twitter::Media</a></li>
<li><a href="../../Twitter/Media/Photo.html">Twitter::Media::Photo</a></li>
<li><a href="../../Twitter/MediaFactory.html">Twitter::MediaFactory</a></li>
<li><a href="../../Twitter/Metadata.html">Twitter::Metadata</a></li>
<li><a href="../../Twitter/OEmbed.html">Twitter::OEmbed</a></li>
<li><a href="../../Twitter/Place.html">Twitter::Place</a></li>
<li><a href="../../Twitter/Profile.html">Twitter::Profile</a></li>
<li><a href="../../Twitter/ProfileBanner.html">Twitter::ProfileBanner</a></li>
<li><a href="../../Twitter/REST.html">Twitter::REST</a></li>
<li><a href="../../Twitter/REST/API.html">Twitter::REST::API</a></li>
<li><a href="../../Twitter/REST/Client.html">Twitter::REST::Client</a></li>
<li><a href="../../Twitter/REST/DirectMessages.html">Twitter::REST::DirectMessages</a></li>
<li><a href="../../Twitter/REST/Favorites.html">Twitter::REST::Favorites</a></li>
<li><a href="../../Twitter/REST/FriendsAndFollowers.html">Twitter::REST::FriendsAndFollowers</a></li>
<li><a href="../../Twitter/REST/Help.html">Twitter::REST::Help</a></li>
<li><a href="../../Twitter/REST/Lists.html">Twitter::REST::Lists</a></li>
<li><a href="../../Twitter/REST/Media.html">Twitter::REST::Media</a></li>
<li><a href="../../Twitter/REST/OAuth.html">Twitter::REST::OAuth</a></li>
<li><a href="../../Twitter/REST/PlacesAndGeo.html">Twitter::REST::PlacesAndGeo</a></li>
<li><a href="../../Twitter/REST/Request.html">Twitter::REST::Request</a></li>
<li><a href="../../Twitter/REST/Request/MultipartWithFile.html">Twitter::REST::Request::MultipartWithFile</a></li>
<li><a href="../../Twitter/REST/Response.html">Twitter::REST::Response</a></li>
<li><a href="../../Twitter/REST/Response/ParseErrorJson.html">Twitter::REST::Response::ParseErrorJson</a></li>
<li><a href="../../Twitter/REST/Response/ParseJson.html">Twitter::REST::Response::ParseJson</a></li>
<li><a href="../../Twitter/REST/Response/RaiseError.html">Twitter::REST::Response::RaiseError</a></li>
<li><a href="../../Twitter/REST/SavedSearches.html">Twitter::REST::SavedSearches</a></li>
<li><a href="../../Twitter/REST/Search.html">Twitter::REST::Search</a></li>
<li><a href="../../Twitter/REST/SpamReporting.html">Twitter::REST::SpamReporting</a></li>
<li><a href="../../Twitter/REST/SuggestedUsers.html">Twitter::REST::SuggestedUsers</a></li>
<li><a href="../../Twitter/REST/Timelines.html">Twitter::REST::Timelines</a></li>
<li><a href="../../Twitter/REST/Trends.html">Twitter::REST::Trends</a></li>
<li><a href="../../Twitter/REST/Tweets.html">Twitter::REST::Tweets</a></li>
<li><a href="../../Twitter/REST/Undocumented.html">Twitter::REST::Undocumented</a></li>
<li><a href="../../Twitter/REST/Users.html">Twitter::REST::Users</a></li>
<li><a href="../../Twitter/REST/Utils.html">Twitter::REST::Utils</a></li>
<li><a href="../../Twitter/RateLimit.html">Twitter::RateLimit</a></li>
<li><a href="../../Twitter/Relationship.html">Twitter::Relationship</a></li>
<li><a href="../../Twitter/Request.html">Twitter::Request</a></li>
<li><a href="../../Twitter/SavedSearch.html">Twitter::SavedSearch</a></li>
<li><a href="../../Twitter/SearchResults.html">Twitter::SearchResults</a></li>
<li><a href="../../Twitter/Settings.html">Twitter::Settings</a></li>
<li><a href="../../Twitter/Size.html">Twitter::Size</a></li>
<li><a href="../../Twitter/SourceUser.html">Twitter::SourceUser</a></li>
<li><a href="../../Twitter/Streaming.html">Twitter::Streaming</a></li>
<li><a href="../../Twitter/Streaming/Client.html">Twitter::Streaming::Client</a></li>
<li><a href="../../Twitter/Streaming/Connection.html">Twitter::Streaming::Connection</a></li>
<li><a href="../../Twitter/Streaming/DeletedTweet.html">Twitter::Streaming::DeletedTweet</a></li>
<li><a href="../../Twitter/Streaming/Event.html">Twitter::Streaming::Event</a></li>
<li><a href="../../Twitter/Streaming/FriendList.html">Twitter::Streaming::FriendList</a></li>
<li><a href="../../Twitter/Streaming/MessageParser.html">Twitter::Streaming::MessageParser</a></li>
<li><a href="../../Twitter/Streaming/Response.html">Twitter::Streaming::Response</a></li>
<li><a href="../../Twitter/Streaming/StallWarning.html">Twitter::Streaming::StallWarning</a></li>
<li><a href="../../Twitter/Suggestion.html">Twitter::Suggestion</a></li>
<li><a href="../../Twitter/TargetUser.html">Twitter::TargetUser</a></li>
<li><a href="../../Twitter/Token.html">Twitter::Token</a></li>
<li><a href="../../Twitter/Trend.html">Twitter::Trend</a></li>
<li><a href="../../Twitter/TrendResults.html">Twitter::TrendResults</a></li>
<li><a href="../../Twitter/Tweet.html">Twitter::Tweet</a></li>
<li><a href="../../Twitter/User.html">Twitter::User</a></li>
<li><a href="../../Twitter/Utils.html">Twitter::Utils</a></li>
<li><a href="../../Twitter/Utils/ClassMethods.html">Twitter::Utils::ClassMethods</a></li>
<li><a href="../../Twitter/Version.html">Twitter::Version</a></li>
</ul>
<div id="no-class-search-results" style="display: none;">No matching classes.</div>
</div>
</div>
</div>
<div id="documentation">
<h1 class="module">Twitter::REST::OAuth</h1>
<div id="description" class="description">
</div><!-- description -->
<div id="5Buntitled-5D" class="documentation-section">
<!-- Methods -->
<div id="public-instance-method-details" class="method-section section">
<h3 class="section-header">Public Instance Methods</h3>
<div id="bearer_token-method" class="method-detail method-alias">
<a name="method-i-bearer_token"></a>
<div class="method-heading">
<span class="method-name">bearer_token</span><span
class="method-args">(options = {})</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
</div>
<div class="aliases">
Alias for: <a href="OAuth.html#method-i-token">token</a>
</div>
</div><!-- bearer_token-method -->
<div id="invalidate_token-method" class="method-detail ">
<a name="method-i-invalidate_token"></a>
<div class="method-heading">
<span class="method-name">invalidate_token</span><span
class="method-args">(access_token, options = {})</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<p>Allows a registered application to revoke an issued <a
href="OAuth.html">OAuth</a> 2 Bearer <a href="../Token.html">Token</a> by
presenting its client credentials.</p>
<p>@see <a
href="https://dev.twitter.com/docs/api/1.1/post/oauth2/invalidate_token">dev.twitter.com/docs/api/1.1/post/oauth2/invalidate_token</a>
@rate_limited No @authentication Required @raise
[Twitter::Error::Unauthorized] <a href="../Error.html">Error</a> raised
when supplied user credentials are not valid. @param access_token [String,
Twitter::Token] The bearer token to revoke. @param options [Hash] A
customizable set of options. @return [Twitter::Token] The invalidated
token. token_type should be nil.</p>
<div class="method-source-code" id="invalidate_token-source">
<pre>
<span class="ruby-comment"># File lib/twitter/rest/oauth.rb, line 42</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">invalidate_token</span>(<span class="ruby-identifier">access_token</span>, <span class="ruby-identifier">options</span> = {})
<span class="ruby-identifier">access_token</span> = <span class="ruby-identifier">access_token</span>.<span class="ruby-identifier">access_token</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">access_token</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Twitter</span><span class="ruby-operator">::</span><span class="ruby-constant">Token</span>)
<span class="ruby-identifier">options</span>[<span class="ruby-value">:access_token</span>] = <span class="ruby-identifier">access_token</span>
<span class="ruby-identifier">perform_with_object</span>(<span class="ruby-value">:post</span>, <span class="ruby-string">'/oauth2/invalidate_token'</span>, <span class="ruby-identifier">options</span>, <span class="ruby-constant">Twitter</span><span class="ruby-operator">::</span><span class="ruby-constant">Token</span>)
<span class="ruby-keyword">end</span></pre>
</div><!-- invalidate_token-source -->
</div>
</div><!-- invalidate_token-method -->
<div id="reverse_token-method" class="method-detail ">
<a name="method-i-reverse_token"></a>
<div class="method-heading">
<span class="method-name">reverse_token</span><span
class="method-args">()</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<p>Allows a registered application to revoke an issued <a
href="OAuth.html">OAuth</a> 2 Bearer <a href="../Token.html">Token</a> by
presenting its client credentials.</p>
<p>@see <a
href="https://dev.twitter.com/docs/api/1.1/post/oauth2/invalidate_token">dev.twitter.com/docs/api/1.1/post/oauth2/invalidate_token</a>
@rate_limited No @authentication Required @raise
[Twitter::Error::Unauthorized] <a href="../Error.html">Error</a> raised
when supplied user credentials are not valid. @return [String] The token
string.</p>
<div class="method-source-code" id="reverse_token-source">
<pre>
<span class="ruby-comment"># File lib/twitter/rest/oauth.rb, line 55</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">reverse_token</span>
<span class="ruby-identifier">conn</span> = <span class="ruby-identifier">connection</span>.<span class="ruby-identifier">dup</span>
<span class="ruby-identifier">conn</span>.<span class="ruby-identifier">builder</span>.<span class="ruby-identifier">swap</span>(<span class="ruby-value">4</span>, <span class="ruby-constant">Twitter</span><span class="ruby-operator">::</span><span class="ruby-constant">REST</span><span class="ruby-operator">::</span><span class="ruby-constant">Response</span><span class="ruby-operator">::</span><span class="ruby-constant">ParseErrorJson</span>)
<span class="ruby-identifier">response</span> = <span class="ruby-identifier">conn</span>.<span class="ruby-identifier">post</span>(<span class="ruby-string">'/oauth/request_token?x_auth_mode=reverse_auth'</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">request</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">request</span>.<span class="ruby-identifier">headers</span>[<span class="ruby-value">:authorization</span>] = <span class="ruby-identifier">oauth_auth_header</span>(<span class="ruby-value">:post</span>, <span class="ruby-string">'https://api.twitter.com/oauth/request_token'</span>, <span class="ruby-value">:x_auth_mode</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">'reverse_auth'</span>).<span class="ruby-identifier">to_s</span>
<span class="ruby-keyword">end</span>
<span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>
<span class="ruby-keyword">end</span></pre>
</div><!-- reverse_token-source -->
</div>
</div><!-- reverse_token-method -->
<div id="token-method" class="method-detail ">
<a name="method-i-token"></a>
<div class="method-heading">
<span class="method-name">token</span><span
class="method-args">(options = {})</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<p>Allows a registered application to obtain an <a href="OAuth.html">OAuth</a>
2 Bearer <a href="../Token.html">Token</a>, which can be used to make <a
href="API.html">API</a> requests on an applications own behalf, without a
user context.</p>
<p>Only one bearer token may exist outstanding for an application, and
repeated requests to this method will yield the same already-existent token
until it has been invalidated.</p>
<p>@see <a
href="https://dev.twitter.com/docs/api/1.1/post/oauth2/token">dev.twitter.com/docs/api/1.1/post/oauth2/token</a>
@rate_limited No @authentication Required @raise
[Twitter::Error::Unauthorized] <a href="../Error.html">Error</a> raised
when supplied user credentials are not valid. @return [Twitter::Token] The
Bearer <a href="../Token.html">Token</a>. token_type should be bearer.
@param options [Hash] A customizable set of options. @example Generate a
Bearer <a href="../Token.html">Token</a></p>
<pre>client = Twitter::REST::Client.new(:consumer_key =&gt; &quot;abc&quot;, :consumer_secret =&gt; 'def')
bearer_token = client.token</pre>
<div class="method-source-code" id="token-source">
<pre>
<span class="ruby-comment"># File lib/twitter/rest/oauth.rb, line 26</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">token</span>(<span class="ruby-identifier">options</span> = {})
<span class="ruby-identifier">options</span>[<span class="ruby-value">:bearer_token_request</span>] = <span class="ruby-keyword">true</span>
<span class="ruby-identifier">options</span>[<span class="ruby-value">:grant_type</span>] <span class="ruby-operator">||=</span> <span class="ruby-string">'client_credentials'</span>
<span class="ruby-identifier">perform_with_object</span>(<span class="ruby-value">:post</span>, <span class="ruby-string">'/oauth2/token'</span>, <span class="ruby-identifier">options</span>, <span class="ruby-constant">Twitter</span><span class="ruby-operator">::</span><span class="ruby-constant">Token</span>)
<span class="ruby-keyword">end</span></pre>
</div><!-- token-source -->
</div>
<div class="aliases">
Also aliased as: <a href="OAuth.html#method-i-bearer_token">bearer_token</a>
</div>
</div><!-- token-method -->
</div><!-- public-instance-method-details -->
</div><!-- 5Buntitled-5D -->
</div><!-- documentation -->
<div id="validator-badges">
<p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
<p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
Rdoc Generator</a> 2</small>.</p>
</div>
</body>
</html>