5.1

Table Of Contents
Attribute Names and Values
Several parameters and all filter expressions require you to specify an attribute name. Use the schema reference
to find the attribute names included in a particular result set. For most queries, the name of the element that
holds a result is derived form the name and format of the query. For example, the result of an adminGroup query
in records format is an AdminGroupRecord element. You can search for result set elements by entering the
element name in the Quick Index window. For each result set element, the reference page includes a table of
attribute names, with their types and descriptions.
Add a Metadata Filter to a Query
All packaged queries and most typed queries return object metadata if it exists for an object in the result set.
You can add metadata-specific filter criteria to a query.
To query an object's metadata, add a metadata field specifier to the query. This specifier follows the fields
parameter and consists of the string metadata: followed by the name of a metadata key.
Procedure
1 Create the filter expression.
2 Add a fields parameter that specifies metadata.
The syntax for specifying a metadata field is:
fields=metadata:
key-name
[, metadata:
key-name
] ...
3 Add a filter expression to the query.
All of the standard filter expressions are supported for metadata queries. In addition, a set of numeric
comparisons are available for values of type NUMBER or DATETIME.
Example: A Query With a Metadata Filter
Assume that the system administrator adds metadata specifying an expiry date and a priority rank to every
organization in a cloud. The key name for the expiry date is expiry, and its value expressed as a
MetadataDateTimeValue. The key name for the rank is rank, and its value is expressed as a
MetadataNumberValue. The following query includes a fields parameter specifying those metadata keys by
name.
NOTE You must use a metadata@SYSTEM parameter to specify metadata keys in the SYSTEM domain. Metadata
in the GENERAL domain does not require a qualifier. Up to eight metadata parameters can be included in a query.
Request:
GET https://vcloud.example.com/api/query?
type=organization&format=records&fields=metadata:rank,metadata@SYSTEM:expiry"
The response includes an OrgRecord for each organization in the cloud. Each OrgRecord includes a Metadata
element that contains MetadataEntry elements for each of the requested keys.
Response:
<QueryResultRecords
xmlns="http://www.vmware.com/vcloud/v1.5"
total="3"
pageSize="25"
page="1"
...
<OrgRecord
vCloud API Programming Guide
260 VMware, Inc.