Enumeration

The Discovery operation navigates hierarchical namespaces, while Enumeration enables you to list all entities of certain kind, in a flat view. Enumeration is performed against the special reserved resource collection ($Resources) that resides at the root of the service namespace. For features, enumeration occurs with respect to the collection address; for example, “/subscriptions” or “/rules” for subscriptions and rules on a topic.

Request

You can construct the Enumeration request as follows.

Method Request URI HTTP Version
GET https://{serviceNamespace}.servicebus.Windows.net[:{port}]/$Resources/{resourceCollection}

or

https://{serviceNamespace}.servicebus.Windows.net[:{port}]/{path}/Subscriptions

or

https://{serviceNamespace}.servicebus.Windows.net[:{port}]/{path}/Subscriptions/{subscription-name}/rules
HTTP/1.1

Request Headers

The following table describes required and optional request headers.

Request Header Description
Authorization Specifies a WRAPv0.9.7.2 token containing a SimpleWebToken acquired from ACS. Set to WRAP access_token=”{swt}”.

Request Body

None.

Response

The response includes an HTTP status code and a set of response headers.

Response Codes

Code Description
200 OK.
401 Unauthorized. The request is not authorized.
Note

An empty feed is returned if no entities exist.

For information about status codes, see Status and Error Codes.

Response Headers

The response for this operation includes the following headers. The response may also include additional standard HTTP headers. All standard headers conform to the HTTP/1.1 protocol specification.

Response Header Description
Content-type Content-Type: application/atom+xml; type=entry

Response Body

Upon success, an Atom feed containing multiple Atom entries listing all available resource of given type in the given namespace is returned. For example:

<?xml version="1.0" encoding="utf-8" ?>  
<feed xmlns='http://www.w3.org/2005/Atom'>  
  <entry>  
    <id>https://{serviceNamespace}.Windows.net/{path}</id>  
    <published>{createdTime}</published>  
    <updated>{lastUpdatedTime}</updated>  
    <link rel='self'>https://{serviceNamespace}.servicebus.Windows.net/{path}</link>  
    <content type='application/xml'>  
      ...  
    </content>  
  </entry>  
</feed>