vCloud API Programming Guide
34 VMware, Inc.
Discovering the Contents of an Organization, Catalog, or vDC
ThevCloudAPIdefinesthreeprincipalcontainers:organizations,catalogs,andvDCs.Aclientcanusean
HTTPGETrequesttodiscoverthecontentsofanyofthem.
List the Organizations in a vCloud
Theresponsetoaloginrequestincludesalistoftheorganizationstowhichtheauthenticateduserhasaccess.
Ifanauthenticatedclientneedstoretrievethislist,itcanmakeaGETrequesttotheURLshowninthehref
attributeoftheOrgListthatwasreturnedintheresponse
toitsoriginalloginrequest.ToretrievetheOrgList
returnedinExample 2‐1onpage 21,anauthenticatedclientwouldissuethefollowingrequest:
GET http://vcloud.example.com/api/v1.0/org/
Formoreinformation,see“LoggingInandGettinganOrganizationList”onpage 21.
List the Contents of an Organization
AvCloudorganizationisahigh‐levelabstractionthatprovidesaunitofadministrationforobjectsand
resources.Asviewedbyauser,anorganization(representedbyanOrgelement)cancontainCatalog,
Network,andvDCelements.Ifthereareanyqueued,running,orrecentlycompletedtasksownedbya
member
oftheorganization,italsocontainsaTasksListelement.Asviewedbyanadministrator,anorganizationalso
containsusers,groups,andotherinformation.Formoreinformation,see“Org”onpage 151and“A d m i n O r g ”
onpage 180.
AclientcanobtainalistoforganizationsinavCloudbylogginginto
theservertogetanOrgList(see
“Authentication”onpage 18).Thislistsincludesonlythoseorganizationstowhichthelogged‐inuserhas
access.TheclientcanuseaURLfromthislisttomakeanHTTPGETrequestthatreturnsanOrgdocumentin
theresponsebody.Thisdocument,a
representationoftheorganizationobject,includeslinkstoobjectsthatthe
organizationcontainsandmetadataabouttheorganizationitself.Example 3‐1showssucharequestand
response.
Example 3-1. List the Contents of an Organization
Request:
GET http://vcloud.example.com/api/v1.0/org/5
Response:
200 OK
Content-Type: application/vnd.vmware.vcloud.org+xml
...
<Org name="ExampleOrg" type="application/vnd.vmware.vcloud.org+xml"
href="http://vcloud.example.com/api/v1.0/org/5" ...>
<Link rel="down" type="application/vnd.vmware.vcloud.catalog+xml"
href="http://vcloud.example.com/api/v1.0/catalog/32" name="MainCatalog"/>
<Link rel="down" type="application/vnd.vmware.vcloud.controlAccess+xml"
href="http://vcloud.example.com/api/v1.0/catalog/32/controlAccess/"/>
<Link rel="controlAccess" type="application/vnd.vmware.vcloud.controlAccess+xml"
href="http://vcloud.example.com/api/v1.0/catalog/32/action/controlAccess/"/>
<Link rel="down" type="application/vnd.vmware.vcloud.catalog+xml"
href="http://vcloud.example.com/api/v1.0/catalog/37" name="Shared Catalog"/>
<Link rel="down" type="application/vnd.vmware.vcloud.controlAccess+xml"
href="http://vcloud.example.com/api/v1.0/catalog/37/controlAccess/"/>
<Link rel="controlAccess" type="application/vnd.vmware.vcloud.controlAccess+xml"
href="http://vcloud.example.com/api/v1.0/catalog/37/action/controlAccess/"/>
<Link rel="down" type="application/vnd.vmware.vcloud.vdc+xml"
href="http://vcloud.example.com/api/v1.0/vdc/5" name="ExampleVdc01"/>
<Link rel="down" type="application/vnd.vmware.vcloud.tasksList+xml"
href="http://vcloud.example.com/api/v1.0/tasksList/5"/>