<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body text="#000000" bgcolor="#ffffff">
    On 3/1/11 6:32 PM, Justin Santa Barbara wrote:
    <blockquote
      cite="mid:AANLkTi=3F-XKDwe_K=sCO3gUkeyfM_gR+MScgWQfK8tt@mail.gmail.com"
      type="cite">Won't putting this in the URL both:
      <div><br>
      </div>
      <div>1) Break CloudServers API compatibility (a total no-no)?</div>
      <div>and</div>
    </blockquote>
    No. The value is added to the server management url that is reported
    when you login. This is how the current Rackspace cloudservers API
    handles this. <br>
    (i.e. when you auth and get a token back, the server management url
    returned looks like:
    <a class="moz-txt-link-freetext" href="http://www.example.org/v1.0/">http://www.example.org/v1.0/</a><accountidentifier>/   the
    openstack api urls are defined as hanging off of that. ) <br>
    <br>
    <blockquote
      cite="mid:AANLkTi=3F-XKDwe_K=sCO3gUkeyfM_gR+MScgWQfK8tt@mail.gmail.com"
      type="cite">
      <div>2) Preclude us from having e.g. multi-project queries (show
        me all my servers in projects A and B)?</div>
    </blockquote>
    It doesn't really preclude multi-account queries, if they are
    needed.  You would be 'logged in' under a given account, but queries
    could potentially return info based on wider criteria, given user
    permissions. Also, since the server management url is dynamic (see
    above) it's easy to change that in the future if needed. <br>
    . <br>
    <br>
    <blockquote
      cite="mid:AANLkTi=3F-XKDwe_K=sCO3gUkeyfM_gR+MScgWQfK8tt@mail.gmail.com"
      type="cite">
      <div>
        <div>The options I see open to us are:</div>
        <div>a) A cookie / header</div>
        <div>b) A query parameter</div>
        <div>c) Something in the request body</div>
        <div><br>
        </div>
        <div>I like (c) because it's the least hacky and is not tied to
          HTTP.</div>
        <div><br>
        </div>
      </div>
    </blockquote>
    Really it's not that hacky. it's basically just nested REST
    resources. <br>
    <br>
    <blockquote
      cite="mid:AANLkTi=3F-XKDwe_K=sCO3gUkeyfM_gR+MScgWQfK8tt@mail.gmail.com"
      type="cite">
      <div>
        <div>Justin<br>
          <br>
          <br>
          <br>
          <br>
          <br>
          <div class="gmail_quote">On Tue, Mar 1, 2011 at 4:23 PM,
            Monsyne Dragon <span dir="ltr"><<a
                moz-do-not-send="true"
                href="mailto:mdragon@rackspace.com">mdragon@rackspace.com</a>></span>
            wrote:<br>
            <blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt
              0.8ex; border-left: 1px solid rgb(204, 204, 204);
              padding-left: 1ex;">
              On 3/1/11 6:11 PM, Eric Day wrote:<br>
              <br>
              [ ... trimmed ... ]
              <div class="im"><br>
                <blockquote class="gmail_quote" style="margin: 0pt 0pt
                  0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204);
                  padding-left: 1ex;">
                  For the OpenStack API, we need something a bit
                  different from what we<br>
                  have today. We currently have no way of passing in a
                  project name,<br>
                  so I propose we add an "entity" element to the path
                  name (just like<br>
                  Swift does). For example, instead of
                  "/v1.0/servers/1", it would be<br>
                  "/v1.0/entity/servers/1", where entity can represent
                  an account (like<br>
                  swift), project (like current nova), or even a user
                  entity (deployments<br>
                  where projects or accounts are not used). Our window
                  for OpenStack<br>
                  API changes is still open as it's still under heavy
                  development,<br>
                  and I think this path addition will provide more
                  functionality and<br>
                  a consistent structure across services (glance and
                  burrow will be<br>
                  using an account or "entity" in the path as well).<br>
                </blockquote>
              </div>
              FYI:  the multitenant blueprint, which I will be proposing
              for merge later today or early tomorrow, does just this to
              pass the project name in.<br>
              <br>
              -- <br>
              <br>
              --<br>
                 -Monsyne Dragon<br>
                 work:         210-312-4190<br>
                 mobile        210-441-0965<br>
                 google voice: 210-338-0336<br>
              <br>
              <br>
              <br>
              Confidentiality Notice: This e-mail message (including any
              attached or<br>
              embedded documents) is intended for the exclusive and
              confidential use of the<br>
              individual or entity to which this message is addressed,
              and unless otherwise<br>
              expressly indicated, is confidential and privileged
              information of Rackspace.<br>
              Any dissemination, distribution or copying of the enclosed
              material is prohibited.<br>
              If you receive this transmission in error, please notify
              us immediately by e-mail<br>
              at <a moz-do-not-send="true"
                href="mailto:abuse@rackspace.com" target="_blank">abuse@rackspace.com</a>,
              and delete the original message.<br>
              Your cooperation is appreciated.
              <div>
                <div class="h5"><br>
                  <br>
                  <br>
                  _______________________________________________<br>
                  Mailing list: <a moz-do-not-send="true"
                    href="https://launchpad.net/%7Eopenstack"
                    target="_blank">https://launchpad.net/~openstack</a><br>
                  Post to     : <a moz-do-not-send="true"
                    href="mailto:openstack@lists.launchpad.net"
                    target="_blank">openstack@lists.launchpad.net</a><br>
                  Unsubscribe : <a moz-do-not-send="true"
                    href="https://launchpad.net/%7Eopenstack"
                    target="_blank">https://launchpad.net/~openstack</a><br>
                  More help   : <a moz-do-not-send="true"
                    href="https://help.launchpad.net/ListHelp"
                    target="_blank">https://help.launchpad.net/ListHelp</a><br>
                </div>
              </div>
            </blockquote>
          </div>
          <br>
        </div>
      </div>
    </blockquote>
    <br>
    <br>
    <pre class="moz-signature" cols="72">-- 

--
    -Monsyne Dragon
    work:         210-312-4190
    mobile        210-441-0965
    google voice: 210-338-0336</pre>
  <PRE>
Confidentiality Notice: This e-mail message (including any attached or
embedded documents) is intended for the exclusive and confidential use of the
individual or entity to which this message is addressed, and unless otherwise
expressly indicated, is confidential and privileged information of Rackspace.
Any dissemination, distribution or copying of the enclosed material is prohibited.
If you receive this transmission in error, please notify us immediately by e-mail
at abuse@rackspace.com, and delete the original message.
Your cooperation is appreciated.
</PRE></body>
</html>