Abiquo Documentation Cookies Policy

Our Documentation website uses cookies to improve your experience. Please visit our Cookie Policy page for more information about cookies and how we use them.


Abiquo 4.4

Skip to end of metadata
Go to start of metadata

 

This document describes the resources available in the Abiquo API. We use the standard Service document that Atom Publishing Protocol provides to represent these resources.

Get the root exposed resources.

The first call you could perform in the API would be one that retrieves all the root exposed resources to start auto-discovering the api.

Retrieve the root resources

REQUEST
Synopsis: GET http://example.com/api/
Roles needed: ROLE_AUTHENTICATED (AUTHENTICATED means the user is logged in. See other Role definitions Manage Roles#Privileges table)
Request Headers: Accept("application/atomsvc+xml")
Request Parameters: N/A.
Request Message Body: N/A.
Request Example:

Get the list of root resources
$ curl --verbose -X GET http://example.com/api -H 'Accept:application/atomsvc+xml' | xmlindent -nbe -f > atom.xml

> GET /api HTTP/1.1
> User-Agent: curl/7.22.0 (x86_64-pc-linux-gnu) libcurl/7.22.0 OpenSSL/1.0.1 zlib/1.2.3.4 libidn/1.23 librtmp/2.3
> Host: example.com
> Accept:application/atomsvc+xml
> 
< HTTP/1.1 200 OK
< Date: Thu, 26 Jun 2014 11:00:52 GMT
< Set-Cookie: auth=YWRtaW46MTQwMzc4MjI1MzExMjpmNWIzOGUwZDYyZTJkZTAzZDY1NGFmNTJiZTQxNTQxNTpBQklRVU8; Expires=Thu, 26-Jun-2014 11:30:53 GMT; Path=/; HttpOnly
< Set-Cookie: ABQSESSIONID=4201434150908303361; Expires=Thu, 26-Jun-2014 11:30:53 GMT; Path=/; HttpOnly
< Content-Type: application/atomsvc+xml
< Content-Length: 8106
< Connection: close
< 


<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns2:service xmlns="http://www.w3.org/2005/Atom" xmlns:ns2="http://www.w3.org/2007/app" xmlns:ns3="http://a9.com/-/spec/opensearch/1.1/" xmlns:ns4="http://www.w3.org/1999/xhtml">
    <ns2:workspace>
        <title>Abiquo administration workspace</title>
        <ns2:collection href="http://example.com:80/api/admin/rules">
            <title>AllocationRules</title>
            <ns2:accept>application/vnd.abiquo.rules+xml;version=3.0</ns2:accept>
            <ns2:accept>application/vnd.abiquo.rules+json;version=3.0</ns2:accept>
        </ns2:collection>
        <ns2:collection href="http://example.com:80/api/admin/datacenters">
            <title>Datacenters</title>
            <ns2:accept>application/vnd.abiquo.datacenter+json;version=3.0</ns2:accept>
            <ns2:accept>application/vnd.abiquo.datacenter+xml;version=3.0</ns2:accept>
        </ns2:collection>
        <ns2:collection href="http://example.com:80/api/admin/enterprises">
            <title>Enterprises</title>
            <ns2:accept>application/vnd.abiquo.enterprisetheme+json;version=3.0</ns2:accept>
            <ns2:accept>application/vnd.abiquo.enterprisetheme+xml;version=3.0</ns2:accept>
            <ns2:accept>application/vnd.abiquo.enterprise+xml;version=2.3</ns2:accept>
            <ns2:accept>application/vnd.abiquo.enterprise+xml;version=2.2</ns2:accept>
            <ns2:accept>application/vnd.abiquo.enterprise+xml;version=2.6</ns2:accept>
            <ns2:accept>application/vnd.abiquo.enterprise+xml;version=2.7</ns2:accept>
            <ns2:accept>application/vnd.abiquo.enterprise+json;version=3.0</ns2:accept>
            <ns2:accept>application/vnd.abiquo.enterprise+xml;version=2.8</ns2:accept>
            <ns2:accept>application/vnd.abiquo.enterprise+xml;version=2.9</ns2:accept>
            <ns2:accept>application/vnd.abiquo.enterprise+xml;version=3.0</ns2:accept>
            <ns2:accept>application/vnd.abiquo.enterprise+xml;version=2.4</ns2:accept>
            <ns2:accept>application/vnd.abiquo.enterprise+json;version=2.6</ns2:accept>
            <ns2:accept>application/vnd.abiquo.enterprise+json;version=2.7</ns2:accept>
            <ns2:accept>application/vnd.abiquo.enterprise+json;version=2.8</ns2:accept>
            <ns2:accept>application/vnd.abiquo.enterprise+json;version=2.9</ns2:accept>
        </ns2:collection>
        <ns2:collection href="http://example.com:80/api/events">
            <title>Events</title>
            <ns2:accept/>
        </ns2:collection>
        <ns2:collection href="http://example.com:80/api/admin/publiccloudregions">
            <title>PublicCloudRegions</title>
            <ns2:accept>application/vnd.abiquo.publiccloudregion+json;version=3.0</ns2:accept>
            <ns2:accept>application/vnd.abiquo.publiccloudregion+xml;version=3.0</ns2:accept>
        </ns2:collection>
        <ns2:collection href="http://example.com:80/api/admin/roles">
            <title>Roles</title>
            <ns2:accept>application/vnd.abiquo.role+xml;version=3.0</ns2:accept>
            <ns2:accept>application/vnd.abiquo.role+json;version=3.0</ns2:accept>
            <ns2:accept>application/vnd.abiquo.rolewithldap+json;version=3.0</ns2:accept>
            <ns2:accept>application/vnd.abiquo.rolewithldap+xml;version=3.0</ns2:accept>
        </ns2:collection>
        <ns2:collection href="http://example.com:80/api/admin/rolesldap">
            <title>Roles Ldap</title>
            <ns2:accept>application/vnd.abiquo.roleldap+xml;version=3.0</ns2:accept>
            <ns2:accept>application/vnd.abiquo.roleldap+json;version=3.0</ns2:accept>
        </ns2:collection>
        <ns2:collection href="http://example.com:80/api/admin/scopes">
            <title>Scopes</title>
            <ns2:accept>application/vnd.abiquo.scope+json;version=3.0</ns2:accept>
            <ns2:accept>application/vnd.abiquo.scope+xml;version=3.0</ns2:accept>
        </ns2:collection>
        <ns2:collection href="http://example.com:80/api/admin/statistics">
            <title>Statistics</title>
            <ns2:accept/>
        </ns2:collection>
    </ns2:workspace>
    <ns2:workspace>
        <title>Abiquo cloud workspace</title>
        <ns2:collection href="http://example.com:80/api/cloud/locations">
            <title>AllowedLocations</title>
            <ns2:accept/>
        </ns2:collection>
        <ns2:collection href="http://example.com:80/api/cloud/virtualdatacenters">
            <title>VirtualDatacenters</title>
            <ns2:accept>application/vnd.abiquo.virtualdatacenter+xml;version=2.2</ns2:accept>
            <ns2:accept>application/vnd.abiquo.virtualdatacenter+xml;version=2.3</ns2:accept>
            <ns2:accept>application/vnd.abiquo.virtualdatacenter+xml;version=2.8</ns2:accept>
            <ns2:accept>application/vnd.abiquo.virtualdatacenter+xml;version=2.7</ns2:accept>
            <ns2:accept>application/vnd.abiquo.virtualdatacenter+xml;version=2.9</ns2:accept>
            <ns2:accept>application/vnd.abiquo.virtualdatacenter+json;version=3.0</ns2:accept>
            <ns2:accept>application/vnd.abiquo.virtualdatacenter+xml;version=2.6</ns2:accept>
            <ns2:accept>application/vnd.abiquo.virtualdatacenter+xml;version=2.4</ns2:accept>
            <ns2:accept>application/vnd.abiquo.virtualdatacenter+json;version=2.9</ns2:accept>
            <ns2:accept>application/vnd.abiquo.virtualdatacenter+json;version=2.8</ns2:accept>
            <ns2:accept>application/vnd.abiquo.virtualdatacenter+json;version=2.7</ns2:accept>
            <ns2:accept>application/vnd.abiquo.virtualdatacenter+xml;version=3.0</ns2:accept>
            <ns2:accept>application/vnd.abiquo.virtualdatacenter+json;version=2.6</ns2:accept>
        </ns2:collection>
        <ns2:collection href="http://example.com:80/api/cloud/virtualmachines">
            <title>VirtualMachines</title>
            <ns2:accept/>
        </ns2:collection>
    </ns2:workspace>
    <ns2:workspace>
        <title>Abiquo configuration workspace</title>
        <ns2:collection href="http://example.com:80/api/config/action/remoteservicecheck">
            <title>Actions</title>
            <ns2:accept>application/vnd.abiquo.remoteservice+json;version=3.0</ns2:accept>
            <ns2:accept>application/vnd.abiquo.remoteservice+xml;version=3.0</ns2:accept>
        </ns2:collection>
        <ns2:collection href="http://example.com:80/api/config/backups">
            <title>Backups</title>
            <ns2:accept/>
        </ns2:collection>
        <ns2:collection href="http://example.com:80/api/config/categories">
            <title>Categories</title>
            <ns2:accept>application/vnd.abiquo.category+json;version=3.0</ns2:accept>
            <ns2:accept>application/vnd.abiquo.category+xml;version=3.0</ns2:accept>
        </ns2:collection>
        <ns2:collection href="http://example.com:80/api/config/costcodes">
            <title>CostCodes</title>
            <ns2:accept>application/vnd.abiquo.costcode+xml;version=3.0</ns2:accept>
            <ns2:accept>application/vnd.abiquo.costcode+json;version=3.0</ns2:accept>
        </ns2:collection>
        <ns2:collection href="http://example.com:80/api/config/currencies">
            <title>Currencies</title>
            <ns2:accept>application/vnd.abiquo.currency+json;version=3.0</ns2:accept>
            <ns2:accept>application/vnd.abiquo.currency+xml;version=3.0</ns2:accept>
        </ns2:collection>
        <ns2:collection href="http://example.com:80/api/config/diskformattypes">
            <title>DiskFormatTypes</title>
            <ns2:accept/>
        </ns2:collection>
        <ns2:collection href="http://example.com:80/api/config/hypervisortypes">
            <title>HypervisorTypes</title>
            <ns2:accept/>
        </ns2:collection>
        <ns2:collection href="http://example.com:80/api/config/licenses">
            <title>Licenses</title>
            <ns2:accept>application/vnd.abiquo.license+json;version=3.0</ns2:accept>
            <ns2:accept>application/vnd.abiquo.license+xml;version=3.0</ns2:accept>
        </ns2:collection>
        <ns2:collection href="http://example.com:80/api/config/pricingtemplates">
            <title>PricingTemplates</title>
            <ns2:accept>application/vnd.abiquo.pricingtemplate+json;version=3.0</ns2:accept>
            <ns2:accept>application/vnd.abiquo.pricingtemplate+xml;version=3.0</ns2:accept>
        </ns2:collection>
        <ns2:collection href="http://example.com:80/api/config/privileges">
            <title>Privileges</title>
            <ns2:accept/>
        </ns2:collection>
        <ns2:collection href="http://example.com:80/api/config/properties">
            <title>Properties</title>
            <ns2:accept>application/vnd.abiquo.systemproperty+json;version=3.0</ns2:accept>
            <ns2:accept>application/vnd.abiquo.systemproperty+xml;version=3.0</ns2:accept>
        </ns2:collection>
    </ns2:workspace>
    <ns2:workspace>
        <title>Abiquo login workspace</title>
        <ns2:collection href="http://example.com:80/api/login">
            <title>Login</title>
            <ns2:accept/>
        </ns2:collection>
    </ns2:workspace>
    <ns2:workspace>
        <title>Abiquo logout workspace</title>
        <ns2:collection href="http://example.com:80/api/logout">
            <title>Logout</title>
            <ns2:accept/>
        </ns2:collection>
    </ns2:workspace>
    <ns2:workspace>
        <title>Abiquo workspace</title>
        <ns2:collection href="http://example.com:80/api/version">
            <title>ApiVersion</title>
            <ns2:accept/>
        </ns2:collection>
        <ns2:collection href="http://example.com:80/api/admin/statistics">
            <title>Statistics</title>
            <ns2:accept/>
        </ns2:collection>
        <ns2:collection href="http://example.com:80/api/statistics">
            <title>Statistics</title>
            <ns2:accept/>
        </ns2:collection>
    </ns2:workspace>
</ns2:service>