<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <title>CIMI Cloud Entry Point</title>
    <!-- Le HTML5 shim, for IE6-8 support of HTML elements -->
    <!--[if lt IE 9]>
    <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
    <![endif]-->

    <!-- Le JavaScript -->
    <script src="/assets/js/jquery-1.7.1.min.js" type="text/javascript"></script>
    <script src="/assets/js/bootstrap-dropdown.js" type="text/javascript"></script>
    <script src="/assets/js/jquery.tweet.js" type="text/javascript"></script>
    <script src="/assets/js/application.js" type="text/javascript"></script>
    <script src="/assets/js/bootstrap-transition.js"></script>
    <script src="/assets/js/bootstrap-alert.js"></script>
    <script src="/assets/js/bootstrap-modal.js"></script>
    <script src="/assets/js/bootstrap-scrollspy.js"></script>
    <script src="/assets/js/bootstrap-tab.js"></script>
    <script src="/assets/js/bootstrap-tooltip.js"></script>
    <script src="/assets/js/bootstrap-popover.js"></script>
    <script src="/assets/js/bootstrap-button.js"></script>
    <script src="/assets/js/bootstrap-collapse.js"></script>
    <script src="/assets/js/bootstrap-carousel.js"></script>
    <script src="/assets/js/bootstrap-typeahead.js"></script>

    <!-- Le styles -->
    <link href="/assets/css/bootstrap.css" rel="stylesheet">
    <link href="/assets/css/application.css" rel="stylesheet">
    <link rel="shortcut icon" href="/assets/img/favicon.ico">
  </head>

  <body><div style="background: red"><h1>2015/07/20 - Apache Deltacloud has been retired. </h1><h2>For more information, please explore the <a href="http://attic.apache.org/">Attic</a>. </h2></div>

    <div class="navbar navbar-fixed-top">
      <div class="navbar-inner">
        <div class="container">
          <a class="brand" href="/"><img src="/assets/img/logo.png" width="152"
            alt="Deltacloud API"/></a>
          <ul class="nav top-nav">
  <li><a href="/">Home</a></li>
  <li class="dropdown">
    <a href="#" class="dropdown-toggle" data-toggle="dropdown">About<b class="caret"></b></a>
    <ul class="dropdown-menu">
      <li><a href="/about.html">What is Deltacloud?</a></li>
      <li><a href="/drivers.html#drivers">Supported Providers</a></li>
    </ul>
  </li>
  <li><a href="/download.html">Download</a></li>
  <li class="dropdown">
    <a href="#" class="dropdown-toggle" data-toggle="dropdown">Installation<b class="caret"></b></a>
    <ul class="dropdown-menu">
      <li><a href="/install-deltacloud.html">Install Deltacloud</a></li>
      <li><a href="/run-deltacloud-server.html">Run the Deltacloud Server</a></li>
    </ul>
  </li>
  <li class="dropdown">
    <a href="/usage.html" class="dropdown-toggle" data-toggle="dropdown">Usage<b class="caret"></b></a>
    <ul class="dropdown-menu">
      <li><a href="/usage.html#usingapi">Using API</a></li>
      <li><a href="/usage.html#clients">Client Libraries</a></li>
      <li><a href="/command-tools.html">Command Line Tools</a></li>
    </ul>
  </li>
  <li class="dropdown">
    <a href="#" class="dropdown-toggle" data-toggle="dropdown">Contribute<b class="caret"></b></a>
    <ul class="dropdown-menu">
      <li><a href="/getting-sources.html">Getting Sources</a></li>
      <li><a href="/how-to-contribute.html">How Can I Contribute?</a></li>
    </ul>
  </li>
  <li class="dropdown">
    <a href="#" class="dropdown-toggle" data-toggle="dropdown">API<b class="caret"></b></a>
    <ul class="dropdown-menu">
      <li><a href="/rest-api.html">Deltacloud REST API</a></li>
      <li><a href="/curl-examples.html">Deltacloud API cURL examples</a></li>
      <li><a href="/drivers.html">Drivers API</a></li>
    </ul>
  </li>
  <li class="dropdown">
    <a href="#" class="dropdown-toggle" data-toggle="dropdown">CIMI<b class="caret"></b></a>
    <ul class="dropdown-menu">
      <li><a href="/cimi-rest.html">CIMI REST API</a></li>
      <li><a href="/cimi-curl.html">CIMI cURL Examples</a></li>
    </ul>
  </li>
  <li><a href="/contact.html">Contact</a></li>
</ul>

        </div>
      </div>

    </div>

    <div class="container content">

      <p><br></p>

<div class="row">
  <div class="span9">

<h3 id="cimi-entry-point">The CIMI Cloud Entry Point</h3>

<p>
<strong><em>The Cloud Entry Point represents the entry point into the cloud defined by the CIMI Model. The Cloud
Entry Point implements a catalog of resources, such as Systems, System Templates, Machines, Machine
Templates, etc., that can be queried and browsed by the Consumer.</em></strong>
</p>
<p>
A deltacloud server exposes the CIMI Cloud Entry Point at /cimi/cloudEntryPoint. When dereferencing this URI, the resources listed in the response include only those that are supported by the current deltacloud driver - whether the 'default' driver the server was started with, or that specified with the <a href="../drivers.html">X-Deltacloud-Driver</a> header.
</p>

 </div>

  <div class="span3">

<ul class="nav nav-list well">
  <li class="nav-header">
    CIMI REST API
  </li>
  <li><a href="../cimi-rest.html">Introduction</a></li>
  <li class="active"><a href="cimi-rest-entry-point.html">Cloud Entry Point</a></li>
  <li class="dropdown">
    <a href="#" class="dropdown-toggle" data-toggle="dropdown">
      CIMI Resources
      <b class="caret"></b>
    </a>
    <ul class="dropdown-menu">
      <li><a href="cimi-rest-resource-metadata.html">ResourceMetadata</a></li>
      <li><a href="cimi-rest-collections.html">Machine</a></li>
      <li><a href="cimi-rest-volumes.html">Volume</a></li>
    </ul>
  </li>

</ul>

  </div>

</div>

<p>
Example request:
</p>
<pre>
 GET /cimi/cloudEntryPoint HTTP/1.1
 Authorization: Basic bW9ja3VzZXI6bW9ja3Bhc3N3b3Jk
 User-Agent: curl/7.24.0 (i686-redhat-linux-gnu)
 Host: localhost:3001
 Accept: application/xml
</pre>

<p>
Example response:
</p>

<pre>
HTTP/1.1 200 OK
Content-Type: application/xml
CIMI-Specification-Version: 1.0.1
Content-Length: 1754
ETag: 503bc06f24d1a51eddc62b33b870c70f
Cache-Control: max-age=0, private, must-revalidate
Date: Thu, 27 Dec 2012 15:23:23 GMT
Connection: keep-alive
Server: thin 1.5.0 codename Knife

&lt;CloudEntryPoint xmlns="http://schemas.dmtf.org/cimi/1" resourceURI="http://schemas.dmtf.org/cimi/1/CloudEntryPoint"&gt;
  &lt;id&gt;http://localhost:3001/cimi/cloudEntryPoint&lt;/id&gt;
  &lt;name&gt;mock&lt;/name&gt;
  &lt;description&gt;Cloud Entry Point for the Deltacloud mock driver&lt;/description&gt;
  &lt;created&gt;2012-12-27T17:23:23+02:00&lt;/created&gt;
  &lt;baseURI&gt;http://localhost:3001/cimi/&lt;/baseURI&gt;
  &lt;resourceMetadata href="http://localhost:3001/cimi/resource_metadata" /&gt;
  &lt;machines href="http://localhost:3001/cimi/machines" /&gt;
  &lt;machineTemplates href="http://localhost:3001/cimi/machine_templates" /&gt;
  &lt;machineImages href="http://localhost:3001/cimi/machine_images" /&gt;
  &lt;credentials href="http://localhost:3001/cimi/credentials" /&gt;
  &lt;volumes href="http://localhost:3001/cimi/volumes" /&gt;
  &lt;volumeImages href="http://localhost:3001/cimi/volume_images" /&gt;
  &lt;networks href="http://localhost:3001/cimi/networks" /&gt;
  &lt;networkTemplates href="http://localhost:3001/cimi/network_templates" /&gt;
  &lt;networkPorts href="http://localhost:3001/cimi/network_ports" /&gt;
  &lt;networkPortTemplates href="http://localhost:3001/cimi/network_port_templates" /&gt;
  &lt;addresses href="http://localhost:3001/cimi/addresses" /&gt;
  &lt;addressTemplates href="http://localhost:3001/cimi/address_templates" /&gt;
  &lt;forwardingGroups href="http://localhost:3001/cimi/forwarding_groups" /&gt;
  &lt;forwardingGroupTemplates href="http://localhost:3001/cimi/forwarding_group_templates" /&gt;
  &lt;volumeConfigs href="http://localhost:3001/cimi/volume_configurations" /&gt;
  &lt;machineConfigs href="http://localhost:3001/cimi/machine_configurations" /&gt;
  &lt;networkConfigs href="http://localhost:3001/cimi/network_configurations" /&gt;
  &lt;networkPortConfigs href="http://localhost:3001/cimi/network_port_configurations" /&gt;
&lt;/CloudEntryPoint&gt;
</pre>


      <footer class="footer">
        <p class="pull-right"><span class='icon-circle-arrow-up'>&nbsp;</span><a href="#">Back to top</a></p>
        <div class='row'>
          <div class='span3'>
            <img src="/assets/img/asf.png" alt="Apache Software Foundation"/>
          </div>
          <div class='span9'>
            <strong>Apache Deltacloud</strong> is a top-level project at the <a
              href="http://www.apache.org">Apache Software Foundation</a>,
            having graduated from the ASF Incubator in October
            2011. Through a collaborative and meritocratic development process, Apache
            projects deliver enterprise-grade, freely available software products that
            attract large communities of users. 
          </div>
        </div>
      </footer>

    </div> <!-- /container -->

<!-- Piwik -->
<script type="text/javascript">
var pkBaseURL = (("https:" == document.location.protocol) ? "https://stats.salasaga.org/aeolus/piwik/" : "http://stats.salasaga.org/aeolus/piwik/");
document.write(unescape("%3Cscript src='" + pkBaseURL + "piwik.js' type='text/javascript'%3E%3C/script%3E"));
</script><script type="text/javascript">
try {
var piwikTracker = Piwik.getTracker(pkBaseURL + "piwik.php", 2);
piwikTracker.trackPageView();
piwikTracker.enableLinkTracking();
} catch( err ) {}
</script><noscript><p><img src="http://stats.salasaga.org/aeolus/piwik/piwik.php?idsite=2" style="border:0" alt="" /></p></noscript>
<!-- End Piwik Tracking Code -->

  </body>
</html>
