€cdocutils.nodes
document
q)q}q(U	nametypesq}q(X   revoke token (destroy session)qNX   setupqNX    useful object properties/methodsqNX   tokensq	NX   introq
NX   create token (authenticate)qNuUsubstitution_defsq}qUparse_messagesq]qUcurrent_sourceqNU
decorationqNUautofootnote_startqKUnameidsq}q(hUrevoke-token-destroy-sessionqhUsetupqhU useful-object-properties-methodsqh	Utokensqh
UintroqhUcreate-token-authenticatequUchildrenq]qcdocutils.nodes
section
q)q}q(U	rawsourceq U Uparentq!hUsourceq"XK   /Users/jamie/projects/php/php-opencloud/doc/services/identity/Tokens.md.rstq#Utagnameq$Usectionq%U
attributesq&}q'(Udupnamesq(]Uclassesq)]Ubackrefsq*]Uidsq+]q,haUnamesq-]q.h	auUlineq/KUdocumentq0hh]q1(cdocutils.nodes
title
q2)q3}q4(h X   Tokensq5h!hh"h#h$Utitleq6h&}q7(h(]h)]h*]h+]h-]uh/Kh0hh]q8cdocutils.nodes
Text
q9X   Tokensq:…q;}q<(h h5h!h3ubaubh)q=}q>(h U h!hh"h#h$h%h&}q?(h(]h)]h*]h+]q@hah-]qAh
auh/Kh0hh]qB(h2)qC}qD(h X   IntroqEh!h=h"h#h$h6h&}qF(h(]h)]h*]h+]h-]uh/Kh0hh]qGh9X   IntroqH…qI}qJ(h hEh!hCubaubcdocutils.nodes
paragraph
qK)qL}qM(h Xž   A token is an opaque string that represents an authorization to access
cloud resources. Tokens may be revoked at any time and are valid for a
finite duration.qNh!h=h"h#h$U	paragraphqOh&}qP(h(]h)]h*]h+]h-]uh/Kh0hh]qQh9Xž   A token is an opaque string that represents an authorization to access
cloud resources. Tokens may be revoked at any time and are valid for a
finite duration.qR…qS}qT(h hNh!hLubaubeubh)qU}qV(h U h!hh"h#h$h%h&}qW(h(]h)]h*]h+]qXhah-]qYhauh/Kh0hh]qZ(h2)q[}q\(h X   Setupq]h!hUh"h#h$h6h&}q^(h(]h)]h*]h+]h-]uh/Kh0hh]q_h9X   Setupq`…qa}qb(h h]h!h[ubaubhK)qc}qd(h Xr   Token objects are instantiated from the Identity service. For more
details, see the `Service <Service.md>`__ docs.h!hUh"h#h$hOh&}qe(h(]h)]h*]h+]h-]uh/Kh0hh]qf(h9XT   Token objects are instantiated from the Identity service. For more
details, see the qg…qh}qi(h XT   Token objects are instantiated from the Identity service. For more
details, see the h!hcubcdocutils.nodes
reference
qj)qk}ql(h X   `Service <Service.md>`__h&}qm(UnameX   ServiceUrefuriqnX
   Service.mdh+]h*]h(]h)]h-]uh!hch]qoh9X   Serviceqp…qq}qr(h U h!hkubah$U	referenceqsubh9X    docs.qt…qu}qv(h X    docs.h!hcubeubeubh)qw}qx(h U h!hh"h#h$h%h&}qy(h(]h)]h*]h+]qzhah-]q{hauh/Kh0hh]q|(h2)q}}q~(h X    Useful object properties/methodsqh!hwh"h#h$h6h&}q€(h(]h)]h*]h+]h-]uh/Kh0hh]qh9X    Useful object properties/methodsq‚…qƒ}q„(h hh!h}ubaubcdocutils.nodes
table
q…)q†}q‡(h U h!hwh"h#h$Utableqˆh&}q‰(h(]h)]h*]h+]h-]uh/Nh0hh]qŠcdocutils.nodes
tgroup
q‹)qŒ}q(h U h&}qŽ(h+]h*]h(]h)]h-]UcolsKuh!h†h]q(cdocutils.nodes
colspec
q)q‘}q’(h U h&}q“(h+]h*]h(]h)]h-]UcolwidthKuh!hŒh]h$Ucolspecq”ubh)q•}q–(h U h&}q—(h+]h*]h(]h)]h-]UcolwidthK+uh!hŒh]h$h”ubh)q˜}q™(h U h&}qš(h+]h*]h(]h)]h-]UcolwidthK(uh!hŒh]h$h”ubh)q›}qœ(h U h&}q(h+]h*]h(]h)]h-]UcolwidthKuh!hŒh]h$h”ubcdocutils.nodes
thead
qž)qŸ}q (h U h&}q¡(h(]h)]h*]h+]h-]uh!hŒh]q¢cdocutils.nodes
row
q£)q¤}q¥(h U h&}q¦(h(]h)]h*]h+]h-]uh!hŸh]q§(cdocutils.nodes
entry
q¨)q©}qª(h U h&}q«(h(]h)]h*]h+]h-]uh!h¤h]q¬hK)q­}q®(h X   Propertyq¯h!h©h"h#h$hOh&}q°(h(]h)]h*]h+]h-]uh/Kh]q±h9X   Propertyq²…q³}q´(h h¯h!h­ubaubah$Uentryqµubh¨)q¶}q·(h U h&}q¸(h(]h)]h*]h+]h-]uh!h¤h]q¹hK)qº}q»(h X   Descriptionq¼h!h¶h"h#h$hOh&}q½(h(]h)]h*]h+]h-]uh/Kh]q¾h9X   Descriptionq¿…qÀ}qÁ(h h¼h!hºubaubah$hµubh¨)qÂ}qÃ(h U h&}qÄ(h(]h)]h*]h+]h-]uh!h¤h]qÅhK)qÆ}qÇ(h X   GetterqÈh!hÂh"h#h$hOh&}qÉ(h(]h)]h*]h+]h-]uh/Kh]qÊh9X   GetterqË…qÌ}qÍ(h hÈh!hÆubaubah$hµubh¨)qÎ}qÏ(h U h&}qÐ(h(]h)]h*]h+]h-]uh!h¤h]qÑhK)qÒ}qÓ(h X   SetterqÔh!hÎh"h#h$hOh&}qÕ(h(]h)]h*]h+]h-]uh/Kh]qÖh9X   Setterq×…qØ}qÙ(h hÔh!hÒubaubah$hµubeh$UrowqÚubah$UtheadqÛubcdocutils.nodes
tbody
qÜ)qÝ}qÞ(h U h&}qß(h(]h)]h*]h+]h-]uh!hŒh]qà(h£)qá}qâ(h U h&}qã(h(]h)]h*]h+]h-]uh!hÝh]qä(h¨)qå}qæ(h U h&}qç(h(]h)]h*]h+]h-]uh!háh]qèhK)qé}qê(h X   idqëh!håh"h#h$hOh&}qì(h(]h)]h*]h+]h-]uh/Kh]qíh9X   idqî…qï}qð(h hëh!héubaubah$hµubh¨)qñ}qò(h U h&}qó(h(]h)]h*]h+]h-]uh!háh]qôhK)qõ}qö(h X   The unique ID of the tokenq÷h!hñh"h#h$hOh&}qø(h(]h)]h*]h+]h-]uh/Kh]qùh9X   The unique ID of the tokenqú…qû}qü(h h÷h!hõubaubah$hµubh¨)qý}qþ(h U h&}qÿ(h(]h)]h*]h+]h-]uh!háh]r   hK)r  }r  (h X   ``getId()``r  h!hýh"h#h$hOh&}r  (h(]h)]h*]h+]h-]uh/Kh]r  cdocutils.nodes
literal
r  )r  }r  (h j  h&}r	  (h(]h)]h*]h+]h-]uh!j  h]r
  h9X   getId()r  …r  }r  (h U h!j  ubah$Uliteralr  ubaubah$hµubh¨)r  }r  (h U h&}r  (h(]h)]h*]h+]h-]uh!háh]r  hK)r  }r  (h X   ``setId()``r  h!j  h"h#h$hOh&}r  (h(]h)]h*]h+]h-]uh/Kh]r  j  )r  }r  (h j  h&}r  (h(]h)]h*]h+]h-]uh!j  h]r  h9X   setId()r  …r  }r  (h U h!j  ubah$j  ubaubah$hµubeh$hÚubh£)r  }r   (h U h&}r!  (h(]h)]h*]h+]h-]uh!hÝh]r"  (h¨)r#  }r$  (h U h&}r%  (h(]h)]h*]h+]h-]uh!j  h]r&  hK)r'  }r(  (h X   expiresr)  h!j#  h"h#h$hOh&}r*  (h(]h)]h*]h+]h-]uh/Kh]r+  h9X   expiresr,  …r-  }r.  (h j)  h!j'  ubaubah$hµubh¨)r/  }r0  (h U h&}r1  (h(]h)]h*]h+]h-]uh!j  h]r2  hK)r3  }r4  (h X'   Timestamp of when the token will expirer5  h!j/  h"h#h$hOh&}r6  (h(]h)]h*]h+]h-]uh/Kh]r7  h9X'   Timestamp of when the token will expirer8  …r9  }r:  (h j5  h!j3  ubaubah$hµubh¨)r;  }r<  (h U h&}r=  (h(]h)]h*]h+]h-]uh!j  h]r>  hK)r?  }r@  (h X$   ``getExpires()`` or ``hasExpired()``h!j;  h"h#h$hOh&}rA  (h(]h)]h*]h+]h-]uh/Kh]rB  (j  )rC  }rD  (h X   ``getExpires()``h&}rE  (h(]h)]h*]h+]h-]uh!j?  h]rF  h9X   getExpires()rG  …rH  }rI  (h U h!jC  ubah$j  ubh9X    or rJ  …rK  }rL  (h X    or h!j?  ubj  )rM  }rN  (h X   ``hasExpired()``h&}rO  (h(]h)]h*]h+]h-]uh!j?  h]rP  h9X   hasExpired()rQ  …rR  }rS  (h U h!jM  ubah$j  ubeubah$hµubh¨)rT  }rU  (h U h&}rV  (h(]h)]h*]h+]h-]uh!j  h]rW  hK)rX  }rY  (h X   ``setExpires()``rZ  h!jT  h"h#h$hOh&}r[  (h(]h)]h*]h+]h-]uh/Kh]r\  j  )r]  }r^  (h jZ  h&}r_  (h(]h)]h*]h+]h-]uh!jX  h]r`  h9X   setExpires()ra  …rb  }rc  (h U h!j]  ubah$j  ubaubah$hµubeh$hÚubeh$Utbodyrd  ubeh$Utgroupre  ubaubeubh)rf  }rg  (h U h!hh"h#h$h%h&}rh  (h(]h)]h*]h+]ri  hah-]rj  hauh/Kh0hh]rk  (h2)rl  }rm  (h X   Create token (authenticate)rn  h!jf  h"h#h$h6h&}ro  (h(]h)]h*]h+]h-]uh/Kh0hh]rp  h9X   Create token (authenticate)rq  …rr  }rs  (h jn  h!jl  ubaubhK)rt  }ru  (h XÁ   In order to generate a token, you must pass in the JSON template that is
sent to the API. This is because Rackspace's operation expects a
slightly different entity body than OpenStack Keystone.rv  h!jf  h"h#h$hOh&}rw  (h(]h)]h*]h+]h-]uh/Kh0hh]rx  h9XÁ   In order to generate a token, you must pass in the JSON template that is
sent to the API. This is because Rackspace's operation expects a
slightly different entity body than OpenStack Keystone.ry  …rz  }r{  (h jv  h!jt  ubaubhK)r|  }r}  (h X6   Request body for Rackspace's generate token operation:r~  h!jf  h"h#h$hOh&}r  (h(]h)]h*]h+]h-]uh/K#h0hh]r€  h9X6   Request body for Rackspace's generate token operation:r  …r‚  }rƒ  (h j~  h!j|  ubaubcdocutils.nodes
literal_block
r„  )r…  }r†  (h X»   {
    "auth": {
        "RAX-KSKEY:apiKeyCredentials": {
            "username": "foo",
            "apiKey": "aaaaa-bbbbb-ccccc-12345678"
        },
        "tenantId": "1100111"
    }
}h!jf  h"h#h$Uliteral_blockr‡  h&}rˆ  (U	xml:spacer‰  UpreserverŠ  h+]h*]h(]h)]r‹  (UcoderŒ  X   jsonr  eh-]uh/K0h0hh]rŽ  (cdocutils.nodes
inline
r  )r  }r‘  (h X   {h&}r’  (h(]h)]r“  Upunctuationr”  ah*]h+]h-]uh!j…  h]r•  h9X   {…r–  }r—  (h U h!j  ubah$Uinliner˜  ubh9X   
    r™  …rš  }r›  (h X   
    h!j…  ubj  )rœ  }r  (h X   "auth"h&}rž  (h(]h)]rŸ  (Unamer   Utagr¡  eh*]h+]h-]uh!j…  h]r¢  h9X   "auth"r£  …r¤  }r¥  (h U h!jœ  ubah$j˜  ubj  )r¦  }r§  (h X   :h&}r¨  (h(]h)]r©  Upunctuationrª  ah*]h+]h-]uh!j…  h]r«  h9X   :…r¬  }r­  (h U h!j¦  ubah$j˜  ubh9X    …r®  }r¯  (h X    h!j…  ubj  )r°  }r±  (h X   {h&}r²  (h(]h)]r³  Upunctuationr´  ah*]h+]h-]uh!j…  h]rµ  h9X   {…r¶  }r·  (h U h!j°  ubah$j˜  ubh9X	   
        r¸  …r¹  }rº  (h X	   
        h!j…  ubj  )r»  }r¼  (h X   "RAX-KSKEY:apiKeyCredentials"h&}r½  (h(]h)]r¾  (Unamer¿  UtagrÀ  eh*]h+]h-]uh!j…  h]rÁ  h9X   "RAX-KSKEY:apiKeyCredentials"rÂ  …rÃ  }rÄ  (h U h!j»  ubah$j˜  ubj  )rÅ  }rÆ  (h X   :h&}rÇ  (h(]h)]rÈ  UpunctuationrÉ  ah*]h+]h-]uh!j…  h]rÊ  h9X   :…rË  }rÌ  (h U h!jÅ  ubah$j˜  ubh9X    …rÍ  }rÎ  (h X    h!j…  ubj  )rÏ  }rÐ  (h X   {h&}rÑ  (h(]h)]rÒ  UpunctuationrÓ  ah*]h+]h-]uh!j…  h]rÔ  h9X   {…rÕ  }rÖ  (h U h!jÏ  ubah$j˜  ubh9X   
            r×  …rØ  }rÙ  (h X   
            h!j…  ubj  )rÚ  }rÛ  (h X
   "username"h&}rÜ  (h(]h)]rÝ  (UnamerÞ  Utagrß  eh*]h+]h-]uh!j…  h]rà  h9X
   "username"rá  …râ  }rã  (h U h!jÚ  ubah$j˜  ubj  )rä  }rå  (h X   :h&}ræ  (h(]h)]rç  Upunctuationrè  ah*]h+]h-]uh!j…  h]ré  h9X   :…rê  }rë  (h U h!jä  ubah$j˜  ubh9X    …rì  }rí  (h X    h!j…  ubj  )rî  }rï  (h X   "foo"h&}rð  (h(]h)]rñ  (Uliteralrò  Ustringró  Udoublerô  eh*]h+]h-]uh!j…  h]rõ  h9X   "foo"rö  …r÷  }rø  (h U h!jî  ubah$j˜  ubj  )rù  }rú  (h X   ,h&}rû  (h(]h)]rü  Upunctuationrý  ah*]h+]h-]uh!j…  h]rþ  h9X   ,…rÿ  }r   (h U h!jù  ubah$j˜  ubh9X   
            r  …r  }r  (h X   
            h!j…  ubj  )r  }r  (h X   "apiKey"h&}r  (h(]h)]r  (Unamer  Utagr	  eh*]h+]h-]uh!j…  h]r
  h9X   "apiKey"r  …r  }r  (h U h!j  ubah$j˜  ubj  )r  }r  (h X   :h&}r  (h(]h)]r  Upunctuationr  ah*]h+]h-]uh!j…  h]r  h9X   :…r  }r  (h U h!j  ubah$j˜  ubh9X    …r  }r  (h X    h!j…  ubj  )r  }r  (h X   "aaaaa-bbbbb-ccccc-12345678"h&}r  (h(]h)]r  (Uliteralr  Ustringr  Udoubler  eh*]h+]h-]uh!j…  h]r  h9X   "aaaaa-bbbbb-ccccc-12345678"r   …r!  }r"  (h U h!j  ubah$j˜  ubh9X	   
        r#  …r$  }r%  (h X	   
        h!j…  ubj  )r&  }r'  (h X   },h&}r(  (h(]h)]r)  Upunctuationr*  ah*]h+]h-]uh!j…  h]r+  h9X   },r,  …r-  }r.  (h U h!j&  ubah$j˜  ubh9X	   
        r/  …r0  }r1  (h X	   
        h!j…  ubj  )r2  }r3  (h X
   "tenantId"h&}r4  (h(]h)]r5  (Unamer6  Utagr7  eh*]h+]h-]uh!j…  h]r8  h9X
   "tenantId"r9  …r:  }r;  (h U h!j2  ubah$j˜  ubj  )r<  }r=  (h X   :h&}r>  (h(]h)]r?  Upunctuationr@  ah*]h+]h-]uh!j…  h]rA  h9X   :…rB  }rC  (h U h!j<  ubah$j˜  ubh9X    …rD  }rE  (h X    h!j…  ubj  )rF  }rG  (h X	   "1100111"h&}rH  (h(]h)]rI  (UliteralrJ  UstringrK  UdoublerL  eh*]h+]h-]uh!j…  h]rM  h9X	   "1100111"rN  …rO  }rP  (h U h!jF  ubah$j˜  ubh9X   
    rQ  …rR  }rS  (h X   
    h!j…  ubj  )rT  }rU  (h X   }h&}rV  (h(]h)]rW  UpunctuationrX  ah*]h+]h-]uh!j…  h]rY  h9X   }…rZ  }r[  (h U h!jT  ubah$j˜  ubh9X   
…r\  }r]  (h X   
h!j…  ubj  )r^  }r_  (h X   }h&}r`  (h(]h)]ra  Upunctuationrb  ah*]h+]h-]uh!j…  h]rc  h9X   }…rd  }re  (h U h!j^  ubah$j˜  ubeubhK)rf  }rg  (h X5   Request body for Keystone's generate token operation:rh  h!jf  h"h#h$hOh&}ri  (h(]h)]h*]h+]h-]uh/K1h0hh]rj  h9X5   Request body for Keystone's generate token operation:rk  …rl  }rm  (h jh  h!jf  ubaubj„  )rn  }ro  (h X°   {
    "auth": {
        "passwordCredentials":{
            "username":"demoauthor",
            "password":"theUsersPassword"
        },
        "tenantId": "12345678"
    }
}h!jf  h"h#h$j‡  h&}rp  (j‰  jŠ  h+]h*]h(]h)]rq  (jŒ  X   jsonrr  eh-]uh/K>h0hh]rs  (j  )rt  }ru  (h X   {h&}rv  (h(]h)]rw  Upunctuationrx  ah*]h+]h-]uh!jn  h]ry  h9X   {…rz  }r{  (h U h!jt  ubah$j˜  ubh9X   
    r|  …r}  }r~  (h X   
    h!jn  ubj  )r  }r€  (h X   "auth"h&}r  (h(]h)]r‚  (Unamerƒ  Utagr„  eh*]h+]h-]uh!jn  h]r…  h9X   "auth"r†  …r‡  }rˆ  (h U h!j  ubah$j˜  ubj  )r‰  }rŠ  (h X   :h&}r‹  (h(]h)]rŒ  Upunctuationr  ah*]h+]h-]uh!jn  h]rŽ  h9X   :…r  }r  (h U h!j‰  ubah$j˜  ubh9X    …r‘  }r’  (h X    h!jn  ubj  )r“  }r”  (h X   {h&}r•  (h(]h)]r–  Upunctuationr—  ah*]h+]h-]uh!jn  h]r˜  h9X   {…r™  }rš  (h U h!j“  ubah$j˜  ubh9X	   
        r›  …rœ  }r  (h X	   
        h!jn  ubj  )rž  }rŸ  (h X   "passwordCredentials"h&}r   (h(]h)]r¡  (Unamer¢  Utagr£  eh*]h+]h-]uh!jn  h]r¤  h9X   "passwordCredentials"r¥  …r¦  }r§  (h U h!jž  ubah$j˜  ubj  )r¨  }r©  (h X   :{h&}rª  (h(]h)]r«  Upunctuationr¬  ah*]h+]h-]uh!jn  h]r­  h9X   :{r®  …r¯  }r°  (h U h!j¨  ubah$j˜  ubh9X   
            r±  …r²  }r³  (h X   
            h!jn  ubj  )r´  }rµ  (h X
   "username"h&}r¶  (h(]h)]r·  (Unamer¸  Utagr¹  eh*]h+]h-]uh!jn  h]rº  h9X
   "username"r»  …r¼  }r½  (h U h!j´  ubah$j˜  ubj  )r¾  }r¿  (h X   :h&}rÀ  (h(]h)]rÁ  UpunctuationrÂ  ah*]h+]h-]uh!jn  h]rÃ  h9X   :…rÄ  }rÅ  (h U h!j¾  ubah$j˜  ubj  )rÆ  }rÇ  (h X   "demoauthor"h&}rÈ  (h(]h)]rÉ  (UliteralrÊ  UstringrË  UdoublerÌ  eh*]h+]h-]uh!jn  h]rÍ  h9X   "demoauthor"rÎ  …rÏ  }rÐ  (h U h!jÆ  ubah$j˜  ubj  )rÑ  }rÒ  (h X   ,h&}rÓ  (h(]h)]rÔ  UpunctuationrÕ  ah*]h+]h-]uh!jn  h]rÖ  h9X   ,…r×  }rØ  (h U h!jÑ  ubah$j˜  ubh9X   
            rÙ  …rÚ  }rÛ  (h X   
            h!jn  ubj  )rÜ  }rÝ  (h X
   "password"h&}rÞ  (h(]h)]rß  (Unamerà  Utagrá  eh*]h+]h-]uh!jn  h]râ  h9X
   "password"rã  …rä  }rå  (h U h!jÜ  ubah$j˜  ubj  )ræ  }rç  (h X   :h&}rè  (h(]h)]ré  Upunctuationrê  ah*]h+]h-]uh!jn  h]rë  h9X   :…rì  }rí  (h U h!jæ  ubah$j˜  ubj  )rî  }rï  (h X   "theUsersPassword"h&}rð  (h(]h)]rñ  (Uliteralrò  Ustringró  Udoublerô  eh*]h+]h-]uh!jn  h]rõ  h9X   "theUsersPassword"rö  …r÷  }rø  (h U h!jî  ubah$j˜  ubh9X	   
        rù  …rú  }rû  (h X	   
        h!jn  ubj  )rü  }rý  (h X   },h&}rþ  (h(]h)]rÿ  Upunctuationr   ah*]h+]h-]uh!jn  h]r  h9X   },r  …r  }r  (h U h!jü  ubah$j˜  ubh9X	   
        r  …r  }r  (h X	   
        h!jn  ubj  )r  }r	  (h X
   "tenantId"h&}r
  (h(]h)]r  (Unamer  Utagr  eh*]h+]h-]uh!jn  h]r  h9X
   "tenantId"r  …r  }r  (h U h!j  ubah$j˜  ubj  )r  }r  (h X   :h&}r  (h(]h)]r  Upunctuationr  ah*]h+]h-]uh!jn  h]r  h9X   :…r  }r  (h U h!j  ubah$j˜  ubh9X    …r  }r  (h X    h!jn  ubj  )r  }r  (h X
   "12345678"h&}r  (h(]h)]r  (Uliteralr   Ustringr!  Udoubler"  eh*]h+]h-]uh!jn  h]r#  h9X
   "12345678"r$  …r%  }r&  (h U h!j  ubah$j˜  ubh9X   
    r'  …r(  }r)  (h X   
    h!jn  ubj  )r*  }r+  (h X   }h&}r,  (h(]h)]r-  Upunctuationr.  ah*]h+]h-]uh!jn  h]r/  h9X   }…r0  }r1  (h U h!j*  ubah$j˜  ubh9X   
…r2  }r3  (h X   
h!jn  ubj  )r4  }r5  (h X   }h&}r6  (h(]h)]r7  Upunctuationr8  ah*]h+]h-]uh!jn  h]r9  h9X   }…r:  }r;  (h U h!j4  ubah$j˜  ubeubhK)r<  }r=  (h X  The only real differences you'll notice is the name of the object key
(``RAX-KSKEY:apiKeyCredentials``/``passwordCredentials``) and the secret
(``apiKey``/``password``). The ``tenantId`` property in both templates
are optional. You can also add ``tenantName`` too.h!jf  h"h#h$hOh&}r>  (h(]h)]h*]h+]h-]uh/K?h0hh]r?  (h9XG   The only real differences you'll notice is the name of the object key
(r@  …rA  }rB  (h XG   The only real differences you'll notice is the name of the object key
(h!j<  ubj  )rC  }rD  (h X   ``RAX-KSKEY:apiKeyCredentials``h&}rE  (h(]h)]h*]h+]h-]uh!j<  h]rF  h9X   RAX-KSKEY:apiKeyCredentialsrG  …rH  }rI  (h U h!jC  ubah$j  ubh9X   /…rJ  }rK  (h X   /h!j<  ubj  )rL  }rM  (h X   ``passwordCredentials``h&}rN  (h(]h)]h*]h+]h-]uh!j<  h]rO  h9X   passwordCredentialsrP  …rQ  }rR  (h U h!jL  ubah$j  ubh9X   ) and the secret
(rS  …rT  }rU  (h X   ) and the secret
(h!j<  ubj  )rV  }rW  (h X
   ``apiKey``h&}rX  (h(]h)]h*]h+]h-]uh!j<  h]rY  h9X   apiKeyrZ  …r[  }r\  (h U h!jV  ubah$j  ubh9X   /…r]  }r^  (h X   /h!j<  ubj  )r_  }r`  (h X   ``password``h&}ra  (h(]h)]h*]h+]h-]uh!j<  h]rb  h9X   passwordrc  …rd  }re  (h U h!j_  ubah$j  ubh9X   ). The rf  …rg  }rh  (h X   ). The h!j<  ubj  )ri  }rj  (h X   ``tenantId``h&}rk  (h(]h)]h*]h+]h-]uh!j<  h]rl  h9X   tenantIdrm  …rn  }ro  (h U h!ji  ubah$j  ubh9X;    property in both templates
are optional. You can also add rp  …rq  }rr  (h X;    property in both templates
are optional. You can also add h!j<  ubj  )rs  }rt  (h X   ``tenantName``h&}ru  (h(]h)]h*]h+]h-]uh!j<  h]rv  h9X
   tenantNamerw  …rx  }ry  (h U h!js  ubah$j  ubh9X    too.rz  …r{  }r|  (h X    too.h!j<  ubeubj„  )r}  }r~  (h XŸ  use OpenCloud\Common\Http\Message\Formatter;

$template = sprintf(
   '{"auth": {"RAX-KSKEY:apiKeyCredentials":{"username": "%s", "apiKey": "%s"}}}',
   'my_username',
   'my_api_key'
);

$response = $service->generateToken($template);

$body = Formatter::decode($response);

// service catalog
$catalog = $body->access->serviceCatalog;

// token
$token = $body->access->token;

// user
$user = $body->access->user;h!jf  h"h#h$j‡  h&}r  (j‰  jŠ  h+]h*]h(]h)]r€  (jŒ  X   phpr  eh-]uh/KZh0hh]r‚  j  )rƒ  }r„  (h XŸ  use OpenCloud\Common\Http\Message\Formatter;

$template = sprintf(
   '{"auth": {"RAX-KSKEY:apiKeyCredentials":{"username": "%s", "apiKey": "%s"}}}',
   'my_username',
   'my_api_key'
);

$response = $service->generateToken($template);

$body = Formatter::decode($response);

// service catalog
$catalog = $body->access->serviceCatalog;

// token
$token = $body->access->token;

// user
$user = $body->access->user;h&}r…  (h(]h)]r†  Uotherr‡  ah*]h+]h-]uh!j}  h]rˆ  h9XŸ  use OpenCloud\Common\Http\Message\Formatter;

$template = sprintf(
   '{"auth": {"RAX-KSKEY:apiKeyCredentials":{"username": "%s", "apiKey": "%s"}}}',
   'my_username',
   'my_api_key'
);

$response = $service->generateToken($template);

$body = Formatter::decode($response);

// service catalog
$catalog = $body->access->serviceCatalog;

// token
$token = $body->access->token;

// user
$user = $body->access->user;r‰  …rŠ  }r‹  (h U h!jƒ  ubah$j˜  ubaubhK)rŒ  }r  (h X¿   As you will notice, these variables will be stdClass objects - for fully
fledged functionality, let the client authenticate by itself because it
ends up stocking the necessary models for you.rŽ  h!jf  h"h#h$hOh&}r  (h(]h)]h*]h+]h-]uh/K[h0hh]r  h9X¿   As you will notice, these variables will be stdClass objects - for fully
fledged functionality, let the client authenticate by itself because it
ends up stocking the necessary models for you.r‘  …r’  }r“  (h jŽ  h!jŒ  ubaubhK)r”  }r•  (h X¸   To see the response body structure, consult the `official
docs <http://docs.rackspace.com/auth/api/v2.0/auth-client-devguide/content/POST_authenticate_v2.0_tokens_Token_Calls.html>`__.h!jf  h"h#h$hOh&}r–  (h(]h)]h*]h+]h-]uh/K_h0hh]r—  (h9X0   To see the response body structure, consult the r˜  …r™  }rš  (h X0   To see the response body structure, consult the h!j”  ubhj)r›  }rœ  (h X‡   `official
docs <http://docs.rackspace.com/auth/api/v2.0/auth-client-devguide/content/POST_authenticate_v2.0_tokens_Token_Calls.html>`__h&}r  (UnameX   official docshnXs   http://docs.rackspace.com/auth/api/v2.0/auth-client-devguide/content/POST_authenticate_v2.0_tokens_Token_Calls.htmlh+]h*]h(]h)]h-]uh!j”  h]rž  h9X   official
docsrŸ  …r   }r¡  (h U h!j›  ubah$hsubh9X   .…r¢  }r£  (h X   .h!j”  ubeubeubh)r¤  }r¥  (h U h!hh"h#h$h%h&}r¦  (h(]h)]h*]h+]r§  hah-]r¨  hauh/Kch0hh]r©  (h2)rª  }r«  (h X   Revoke token (destroy session)r¬  h!j¤  h"h#h$h6h&}r­  (h(]h)]h*]h+]h-]uh/Kch0hh]r®  h9X   Revoke token (destroy session)r¯  …r°  }r±  (h j¬  h!jª  ubaubj„  )r²  }r³  (h X6   $tokenId = '1234567';
$service->revokeToken($tokenId);h!j¤  h"h#h$j‡  h&}r´  (j‰  jŠ  h+]h*]h(]h)]rµ  (jŒ  X   phpr¶  eh-]uh/Kih0hh]r·  j  )r¸  }r¹  (h X6   $tokenId = '1234567';
$service->revokeToken($tokenId);h&}rº  (h(]h)]r»  Uotherr¼  ah*]h+]h-]uh!j²  h]r½  h9X6   $tokenId = '1234567';
$service->revokeToken($tokenId);r¾  …r¿  }rÀ  (h U h!j¸  ubah$j˜  ubaubeubeubah U UtransformerrÁ  NUfootnote_refsrÂ  }rÃ  UrefnamesrÄ  }rÅ  Usymbol_footnotesrÆ  ]rÇ  Uautofootnote_refsrÈ  ]rÉ  Usymbol_footnote_refsrÊ  ]rË  U	citationsrÌ  ]rÍ  h0hUcurrent_linerÎ  NUtransform_messagesrÏ  ]rÐ  UreporterrÑ  NUid_startrÒ  KUautofootnotesrÓ  ]rÔ  Ucitation_refsrÕ  }rÖ  Uindirect_targetsr×  ]rØ  UsettingsrÙ  (cdocutils.frontend
Values
rÚ  orÛ  }rÜ  (Ufootnote_backlinksrÝ  KUrecord_dependenciesrÞ  NUrfc_base_urlrß  Uhttp://tools.ietf.org/html/rà  U	tracebackrá  ˆUpep_referencesrâ  NUstrip_commentsrã  NUtoc_backlinksrä  hµUlanguage_coderå  Uenræ  U	datestamprç  NUreport_levelrè  KU_destinationré  NU
halt_levelrê  KUstrip_classesrë  Nh6NUerror_encoding_error_handlerrì  Ubackslashreplacerí  Udebugrî  NUembed_stylesheetrï  ‰Uoutput_encoding_error_handlerrð  Ustrictrñ  Usectnum_xformrò  KUdump_transformsró  NUdocinfo_xformrô  KUwarning_streamrõ  NUpep_file_url_templaterö  Upep-%04dr÷  Uexit_status_levelrø  KUconfigrù  NUstrict_visitorrú  NUcloak_email_addressesrû  ˆUtrim_footnote_reference_spacerü  ‰Uenvrý  NUdump_pseudo_xmlrþ  NUexpose_internalsrÿ  NUsectsubtitle_xformr   ‰Usource_linkr  NUrfc_referencesr  NUoutput_encodingr  Uutf-8r  U
source_urlr  NUinput_encodingr  U	utf-8-sigr  U_disable_configr  NU	id_prefixr	  U U	tab_widthr
  KUerror_encodingr  UUTF-8r  U_sourcer  h#Ugettext_compactr  ˆU	generatorr  NUdump_internalsr  NUsmart_quotesr  ‰Upep_base_urlr  Uhttp://www.python.org/dev/peps/r  Usyntax_highlightr  Ulongr  Uinput_encoding_error_handlerr  jñ  Uauto_id_prefixr  Uidr  Udoctitle_xformr  ‰Ustrip_elements_with_classesr  NU_config_filesr  ]Ufile_insertion_enabledr  ˆUraw_enabledr  KUdump_settingsr  NubUsymbol_footnote_startr  K Uidsr   }r!  (hhUhhhh=hj¤  hjf  hhwuUsubstitution_namesr"  }r#  h$h0h&}r$  (h(]h+]h*]Usourceh#h)]h-]uU	footnotesr%  ]r&  Urefidsr'  }r(  ub.