VMware Cloud Director API - Service (extension/v1.5)

VMware Cloud Director API - Service (extension/v1.5)

AdminServiceType

Element:
Service (extension/v1.5)
Type:
AdminServiceType
Namespace:
http://www.vmware.com/vcloud/extension/v1.5
Description:
Represents an extension service.
Since:
5.1
Schema:
services.xsd
Media type(s):
application/vnd.vmware.admin.service+xml
application/vnd.vmware.admin.service+json
Extends:
EntityType
XML Representation:
<Service xmlns="http://www.vmware.com/vcloud/extension/v1.5" xmlns:vcloud_v1.5="http://www.vmware.com/vcloud/v1.5" href="xs:anyURI" type="xs:string" id="xs:string" operationKey="xs:string"
        name="xs:string">
    <vcloud_v1.5:Link href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"
            rel="xs:string" model="xs:string"/>
    <Description> xs:string </Description>
    <vcloud_v1.5:Tasks>
        <vcloud_v1.5:Task href="xs:anyURI" type="xs:string" id="xs:string" operationKey="xs:string"
                name="xs:string" status="xs:string" operation="xs:string" operationName="xs:string"
                serviceNamespace="xs:string" startTime="xs:dateTime" endTime="xs:dateTime" expiryTime="xs:dateTime"
                cancelRequested="xs:boolean">
            <vcloud_v1.5:Link href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"
                    rel="xs:string" model="xs:string"/>
            <Description> xs:string </Description>
            <vcloud_v1.5:Tasks> vcloud_v1.5:TasksInProgressType </vcloud_v1.5:Tasks>
            <vcloud_v1.5:Owner href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"/>
            <vcloud_v1.5:Error stackTrace="xs:string" message="xs:string" majorErrorCode="xs:int" minorErrorCode="xs:string"
                    vendorSpecificErrorCode="xs:string">
                <vcloud_v1.5:TenantError message="xs:string" majorErrorCode="xs:int" minorErrorCode="xs:string" vendorSpecificErrorCode="xs:string"/>
            </vcloud_v1.5:Error>
            <vcloud_v1.5:User href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"/>
            <vcloud_v1.5:Organization href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"/>
            <Progress> xs:int </Progress>
            <Params> ... </Params>
            <Details> xs:string </Details>
            <vcloud_v1.5:VcTaskList>
                <vcloud_v1.5:VcTask name="xs:string" moref="xs:string" status="xs:string" description="xs:string"
                        errorMessage="xs:string" objectName="xs:string" objectType="xs:string" objectMoref="xs:string"
                        virtualCenterID="xs:string" startTime="xs:dateTime" endTime="xs:dateTime"/>
            </vcloud_v1.5:VcTaskList>
            <vcloud_v1.5:Result>
                <ResultContent> ... </ResultContent>
                <vcloud_v1.5:ResultReference href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"/>
            </vcloud_v1.5:Result>
        </vcloud_v1.5:Task>
    </vcloud_v1.5:Tasks>
    <Namespace> xs:string </Namespace>
    <Enabled> xs:boolean </Enabled>
    <AuthorizationEnabled> xs:boolean </AuthorizationEnabled>
    <RoutingKey> xs:string </RoutingKey>
    <Priority> xs:int </Priority>
    <Exchange> xs:string </Exchange>
    <Vendor> xs:string </Vendor>
    <ApiFilters>
        <ApiFilter href="xs:anyURI" type="xs:string" id="xs:string" operationKey="xs:string">
            <vcloud_v1.5:Link href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"
                    rel="xs:string" model="xs:string"/>
            <UrlPattern> xs:string </UrlPattern>
            <ResponseContentType> xs:string </ResponseContentType>
        </ApiFilter>
    </ApiFilters>
    <ServiceLinks>
        <ServiceLink href="xs:anyURI" type="xs:string" id="xs:string" operationKey="xs:string">
            <vcloud_v1.5:Link href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"
                    rel="xs:string" model="xs:string"/>
            <LinkHref> xs:string </LinkHref>
            <MimeType> xs:string </MimeType>
            <Rel> xs:string </Rel>
            <ResourceType> xs:string </ResourceType>
            <ResourceId> xs:string </ResourceId>
            <ExternalResourceId> xs:string </ExternalResourceId>
        </ServiceLink>
    </ServiceLinks>
    <ApiDefinitions>
        <ApiDefinition href="xs:anyURI" type="xs:string" id="xs:string" operationKey="xs:string"
                name="xs:string">
            <vcloud_v1.5:Link href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"
                    rel="xs:string" model="xs:string"/>
            <Description> xs:string </Description>
            <vcloud_v1.5:Tasks>
                <vcloud_v1.5:Task href="xs:anyURI" type="xs:string" id="xs:string" operationKey="xs:string"
                        name="xs:string" status="xs:string" operation="xs:string" operationName="xs:string"
                        serviceNamespace="xs:string" startTime="xs:dateTime" endTime="xs:dateTime" expiryTime="xs:dateTime"
                        cancelRequested="xs:boolean">
                    <vcloud_v1.5:Link href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"
                            rel="xs:string" model="xs:string"/>
                    <Description> xs:string </Description>
                    <vcloud_v1.5:Tasks> vcloud_v1.5:TasksInProgressType </vcloud_v1.5:Tasks>
                    <vcloud_v1.5:Owner href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"/>
                    <vcloud_v1.5:Error stackTrace="xs:string" message="xs:string" majorErrorCode="xs:int" minorErrorCode="xs:string"
                            vendorSpecificErrorCode="xs:string">
                        <vcloud_v1.5:TenantError message="xs:string" majorErrorCode="xs:int" minorErrorCode="xs:string" vendorSpecificErrorCode="xs:string"/>
                    </vcloud_v1.5:Error>
                    <vcloud_v1.5:User href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"/>
                    <vcloud_v1.5:Organization href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"/>
                    <Progress> xs:int </Progress>
                    <Params> ... </Params>
                    <Details> xs:string </Details>
                    <vcloud_v1.5:VcTaskList>
                        <vcloud_v1.5:VcTask name="xs:string" moref="xs:string" status="xs:string" description="xs:string"
                                errorMessage="xs:string" objectName="xs:string" objectType="xs:string" objectMoref="xs:string"
                                virtualCenterID="xs:string" startTime="xs:dateTime" endTime="xs:dateTime"/>
                    </vcloud_v1.5:VcTaskList>
                    <vcloud_v1.5:Result>
                        <ResultContent> ... </ResultContent>
                        <vcloud_v1.5:ResultReference href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"/>
                    </vcloud_v1.5:Result>
                </vcloud_v1.5:Task>
            </vcloud_v1.5:Tasks>
            <EntryPoint> xs:string </EntryPoint>
            <Namespace> xs:string </Namespace>
            <ApiVendor> xs:string </ApiVendor>
            <SupportedApiVersions>
                <Version> xs:string </Version>
            </SupportedApiVersions>
            <Files>
                <FileDescriptor href="xs:anyURI" type="xs:string" id="xs:string" operationKey="xs:string">
                    <vcloud_v1.5:Link href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"
                            rel="xs:string" model="xs:string"/>
                    <Description> xs:string </Description>
                    <vcloud_v1.5:File href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"/>
                </FileDescriptor>
            </Files>
        </ApiDefinition>
    </ApiDefinitions>
    <ResourceClasses>
        <ResourceClass href="xs:anyURI" type="xs:string" id="xs:string" operationKey="xs:string"
                name="xs:string">
            <vcloud_v1.5:Link href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"
                    rel="xs:string" model="xs:string"/>
            <Description> xs:string </Description>
            <vcloud_v1.5:Tasks>
                <vcloud_v1.5:Task href="xs:anyURI" type="xs:string" id="xs:string" operationKey="xs:string"
                        name="xs:string" status="xs:string" operation="xs:string" operationName="xs:string"
                        serviceNamespace="xs:string" startTime="xs:dateTime" endTime="xs:dateTime" expiryTime="xs:dateTime"
                        cancelRequested="xs:boolean">
                    <vcloud_v1.5:Link href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"
                            rel="xs:string" model="xs:string"/>
                    <Description> xs:string </Description>
                    <vcloud_v1.5:Tasks> vcloud_v1.5:TasksInProgressType </vcloud_v1.5:Tasks>
                    <vcloud_v1.5:Owner href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"/>
                    <vcloud_v1.5:Error stackTrace="xs:string" message="xs:string" majorErrorCode="xs:int" minorErrorCode="xs:string"
                            vendorSpecificErrorCode="xs:string">
                        <vcloud_v1.5:TenantError message="xs:string" majorErrorCode="xs:int" minorErrorCode="xs:string" vendorSpecificErrorCode="xs:string"/>
                    </vcloud_v1.5:Error>
                    <vcloud_v1.5:User href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"/>
                    <vcloud_v1.5:Organization href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"/>
                    <Progress> xs:int </Progress>
                    <Params> ... </Params>
                    <Details> xs:string </Details>
                    <vcloud_v1.5:VcTaskList>
                        <vcloud_v1.5:VcTask name="xs:string" moref="xs:string" status="xs:string" description="xs:string"
                                errorMessage="xs:string" objectName="xs:string" objectType="xs:string" objectMoref="xs:string"
                                virtualCenterID="xs:string" startTime="xs:dateTime" endTime="xs:dateTime"/>
                    </vcloud_v1.5:VcTaskList>
                    <vcloud_v1.5:Result>
                        <ResultContent> ... </ResultContent>
                        <vcloud_v1.5:ResultReference href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"/>
                    </vcloud_v1.5:Result>
                </vcloud_v1.5:Task>
            </vcloud_v1.5:Tasks>
            <MimeType> xs:string </MimeType>
            <UrlTemplate> xs:string </UrlTemplate>
            <Nid> xs:string </Nid>
            <UrnPattern> xs:string </UrnPattern>
            <ServiceResources>
                <ServiceResource href="xs:anyURI" type="xs:string" id="xs:string" operationKey="xs:string"
                        name="xs:string">
                    <vcloud_v1.5:Link href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"
                            rel="xs:string" model="xs:string"/>
                    <Description> xs:string </Description>
                    <vcloud_v1.5:Tasks>
                        <vcloud_v1.5:Task href="xs:anyURI" type="xs:string" id="xs:string" operationKey="xs:string"
                                name="xs:string" status="xs:string" operation="xs:string" operationName="xs:string"
                                serviceNamespace="xs:string" startTime="xs:dateTime" endTime="xs:dateTime" expiryTime="xs:dateTime"
                                cancelRequested="xs:boolean">
                            <vcloud_v1.5:Link href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"
                                    rel="xs:string" model="xs:string"/>
                            <Description> xs:string </Description>
                            <vcloud_v1.5:Tasks> vcloud_v1.5:TasksInProgressType </vcloud_v1.5:Tasks>
                            <vcloud_v1.5:Owner href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"/>
                            <vcloud_v1.5:Error stackTrace="xs:string" message="xs:string" majorErrorCode="xs:int" minorErrorCode="xs:string"
                                    vendorSpecificErrorCode="xs:string">
                                <vcloud_v1.5:TenantError message="xs:string" majorErrorCode="xs:int" minorErrorCode="xs:string" vendorSpecificErrorCode="xs:string"/>
                            </vcloud_v1.5:Error>
                            <vcloud_v1.5:User href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"/>
                            <vcloud_v1.5:Organization href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"/>
                            <Progress> xs:int </Progress>
                            <Params> ... </Params>
                            <Details> xs:string </Details>
                            <vcloud_v1.5:VcTaskList>
                                <vcloud_v1.5:VcTask name="xs:string" moref="xs:string" status="xs:string" description="xs:string"
                                        errorMessage="xs:string" objectName="xs:string" objectType="xs:string" objectMoref="xs:string"
                                        virtualCenterID="xs:string" startTime="xs:dateTime" endTime="xs:dateTime"/>
                            </vcloud_v1.5:VcTaskList>
                            <vcloud_v1.5:Result>
                                <ResultContent> ... </ResultContent>
                                <vcloud_v1.5:ResultReference href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"/>
                            </vcloud_v1.5:Result>
                        </vcloud_v1.5:Task>
                    </vcloud_v1.5:Tasks>
                    <vcloud_v1.5:Org href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"/>
                    <ExternalObjectId> xs:string </ExternalObjectId>
                </ServiceResource>
            </ServiceResources>
            <ResourceClassActions>
                <ResourceClassAction href="xs:anyURI" type="xs:string" id="xs:string" operationKey="xs:string"
                        name="xs:string">
                    <vcloud_v1.5:Link href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"
                            rel="xs:string" model="xs:string"/>
                    <Description> xs:string </Description>
                    <vcloud_v1.5:Tasks>
                        <vcloud_v1.5:Task href="xs:anyURI" type="xs:string" id="xs:string" operationKey="xs:string"
                                name="xs:string" status="xs:string" operation="xs:string" operationName="xs:string"
                                serviceNamespace="xs:string" startTime="xs:dateTime" endTime="xs:dateTime" expiryTime="xs:dateTime"
                                cancelRequested="xs:boolean">
                            <vcloud_v1.5:Link href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"
                                    rel="xs:string" model="xs:string"/>
                            <Description> xs:string </Description>
                            <vcloud_v1.5:Tasks> vcloud_v1.5:TasksInProgressType </vcloud_v1.5:Tasks>
                            <vcloud_v1.5:Owner href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"/>
                            <vcloud_v1.5:Error stackTrace="xs:string" message="xs:string" majorErrorCode="xs:int" minorErrorCode="xs:string"
                                    vendorSpecificErrorCode="xs:string">
                                <vcloud_v1.5:TenantError message="xs:string" majorErrorCode="xs:int" minorErrorCode="xs:string" vendorSpecificErrorCode="xs:string"/>
                            </vcloud_v1.5:Error>
                            <vcloud_v1.5:User href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"/>
                            <vcloud_v1.5:Organization href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"/>
                            <Progress> xs:int </Progress>
                            <Params> ... </Params>
                            <Details> xs:string </Details>
                            <vcloud_v1.5:VcTaskList>
                                <vcloud_v1.5:VcTask name="xs:string" moref="xs:string" status="xs:string" description="xs:string"
                                        errorMessage="xs:string" objectName="xs:string" objectType="xs:string" objectMoref="xs:string"
                                        virtualCenterID="xs:string" startTime="xs:dateTime" endTime="xs:dateTime"/>
                            </vcloud_v1.5:VcTaskList>
                            <vcloud_v1.5:Result>
                                <ResultContent> ... </ResultContent>
                                <vcloud_v1.5:ResultReference href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"/>
                            </vcloud_v1.5:Result>
                        </vcloud_v1.5:Task>
                    </vcloud_v1.5:Tasks>
                    <HttpMethod> xs:string </HttpMethod>
                    <UrlPattern> xs:string </UrlPattern>
                    <AclRules>
                        <AclRule href="xs:anyURI" type="xs:string" id="xs:string" operationKey="xs:string"
                                name="xs:string">
                            <vcloud_v1.5:Link href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"
                                    rel="xs:string" model="xs:string"/>
                            <Description> xs:string </Description>
                            <vcloud_v1.5:Tasks>
                                <vcloud_v1.5:Task href="xs:anyURI" type="xs:string" id="xs:string" operationKey="xs:string"
                                        name="xs:string" status="xs:string" operation="xs:string" operationName="xs:string"
                                        serviceNamespace="xs:string" startTime="xs:dateTime" endTime="xs:dateTime" expiryTime="xs:dateTime"
                                        cancelRequested="xs:boolean">
                                    <vcloud_v1.5:Link href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"
                                            rel="xs:string" model="xs:string"/>
                                    <Description> xs:string </Description>
                                    <vcloud_v1.5:Tasks> vcloud_v1.5:TasksInProgressType </vcloud_v1.5:Tasks>
                                    <vcloud_v1.5:Owner href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"/>
                                    <vcloud_v1.5:Error stackTrace="xs:string" message="xs:string" majorErrorCode="xs:int" minorErrorCode="xs:string"
                                            vendorSpecificErrorCode="xs:string">
                                        <vcloud_v1.5:TenantError message="xs:string" majorErrorCode="xs:int" minorErrorCode="xs:string" vendorSpecificErrorCode="xs:string"/>
                                    </vcloud_v1.5:Error>
                                    <vcloud_v1.5:User href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"/>
                                    <vcloud_v1.5:Organization href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"/>
                                    <Progress> xs:int </Progress>
                                    <Params> ... </Params>
                                    <Details> xs:string </Details>
                                    <vcloud_v1.5:VcTaskList>
                                        <vcloud_v1.5:VcTask name="xs:string" moref="xs:string" status="xs:string" description="xs:string"
                                                errorMessage="xs:string" objectName="xs:string" objectType="xs:string" objectMoref="xs:string"
                                                virtualCenterID="xs:string" startTime="xs:dateTime" endTime="xs:dateTime"/>
                                    </vcloud_v1.5:VcTaskList>
                                    <vcloud_v1.5:Result>
                                        <ResultContent> ... </ResultContent>
                                        <vcloud_v1.5:ResultReference href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"/>
                                    </vcloud_v1.5:Result>
                                </vcloud_v1.5:Task>
                            </vcloud_v1.5:Tasks>
                            <ServiceResourceAccess>
                                <Access> xs:string </Access>
                                <vcloud_v1.5:Entity href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"/>
                            </ServiceResourceAccess>
                            <OrganizationAccess>
                                <Access> xs:string </Access>
                                <vcloud_v1.5:Entity href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"/>
                            </OrganizationAccess>
                            <PrincipalAccess>
                                <Access> xs:string </Access>
                                <vcloud_v1.5:Entity href="xs:anyURI" id="xs:string" type="xs:string" name="xs:string"/>
                            </PrincipalAccess>
                        </AclRule>
                    </AclRules>
                </ResourceClassAction>
            </ResourceClassActions>
        </ResourceClass>
    </ResourceClasses>
</Service>

Attributes

Attribute Type Required Modifiable Since Deprecated Description
href anyURI No always 5.1 The URI of the entity.
type string No always 5.1 The MIME type of the entity.
id string No none 5.1 The entity identifier, expressed in URN format. The value of this attribute uniquely identifies the entity, persists for the life of the entity, and is never reused.
operationKey string No create 5.1 Optional unique identifier to support idempotent semantics for create and delete operations.
name string Yes always 5.1 The name of the entity.

Elements

Element Type Required Modifiable Since Deprecated Description
ApiDefinitions AdminApiDefinitionsType No always 5.1 Container for values used to specify an API defined by an extension service.
ApiFilters ApiFiltersType No always 5.1 Container for API filters defined by an extension service.
AuthorizationEnabled boolean No always 5.1 True if this service participates in the vCloud API REST authorization framework for extension services.
Description string No always 5.1 Optional description.
Enabled boolean No always 5.1 True if this extension service is enabled.
Exchange string Yes always 5.1 AMQP exchange that messages for this extension service are published to.
Link LinkType No none 5.1 A reference to an entity or operation associated with this object.
Namespace string Yes create 5.1 Extension service namespace. Must be unique among all registered services.
Priority int No always 5.1 Extension service priority. An integer between 0-100. A value of 50 denotes a neutral priority.
ResourceClasses ResourceClassesType No always 5.1 Container for values that define extension service resource classes.
RoutingKey string Yes always 5.1 AMQP routing key for this extension service.
ServiceLinks AdminServiceLinksType No always 5.1 Container for values used to create links defined by an extension service.
Tasks TasksInProgressType No none 5.1 A list of queued, running, or recently completed tasks associated with this entity.
VCloudExtension VCloudExtensionType No always 5.1 An optional extension element that can contain an arbitrary number of elements and attributes. Not related to extension services.
Vendor string No always 5.1 Extension service vendor name.

Operations

CRUD Operation Description Since Deprecated
create POST /admin/extension/service Creates service. 5.1
read GET /admin/extension/service/{id} Gives information about a concrete extension service. 5.1
update PUT /admin/extension/service/{id} Updates already registered service. 5.1
delete DELETE /admin/extension/service/{id} Deletes registered service. 5.1
action POST /admin/extension/service/{id}/authorizationcheck Checks user authorization for service, URL and request verb. 5.1