GET
Use the HTTP GET method with the qmgr
resource to request basic
information and status information about queue managers.
The information that is returned is similar to the information that is returned by the dspmq (display queue managers) control command, the DISPLAY QMSTATUS MQSC command, and the Inquire Queue Manager Status PCF command.
Resource URL
https://host:port/ibmmq/rest/v2/admin/qmgr/{qmgrName}
v1
where the URL uses v2
. For example, the first
part of the URL is as follows:
https://host:port/ibmmq/rest/v1/
- qmgrName
- Optionally specifies the name of the queue manager to query.
You can use HTTP instead of HTTPS if you enable HTTP connections. For more information about enabling HTTP, see Configuring HTTP and HTTPS ports.
Optional query parameters
- attributes={extended|*|extended.attributeName,...}
- This parameter is only available on the IBM MQ Appliance, UNIX, Linux®, and Windows.
- status={status|*|status.attributeName,...}
-
- status
- Specifies that all status attributes are returned.
- *
- Specifies all attributes. This parameter is equivalent to status.
- status.attributeName,...
- Specifies a comma-separated list of queue manager status attributes to return.
- state=state
- Specifies that only queue managers with the specified state are returned. The following values
are valid values:On all platforms:
- running
- ended
On UNIX, Linux, and Windows:- endedImmediately
- endedPreemptively
- endedUnexpectedly
- starting
- quiescing
- endingImmediately
- endingPreemptively
- beingDeleted
- stateNotAvailable
- runningAsStandby
- runningElsewhere
Request headers
- Authorization
- This header must be sent if you are using basic authentication. For more information, see Using HTTP basic authentication with the REST API.
- ibm-mq-rest-gateway-qmgr
- This header specifies the queue manager that is to be used as the gateway queue manager. The gateway queue manager is used to connect to a remote queue manager. For more information, see Remote administration using the REST API.
Request body format
None.
Security requirements
The caller must be authenticated to the mqweb server and must be a member of
one or more of the MQWebAdmin
, MQWebAdminRO
, or
MQWebUser
roles. For more information about security for the administrative REST API, see IBM MQ Console and REST API security.
If token based security is used, the LTPA token that is used to authenticate the user must be provided with the request as a cookie. For more information about token-based authentication, see Using token-based authentication with the REST API.
- On the IBM MQ Appliance, UNIX, Linux, and Windows:
- To return the
started
,channelInitatorState
,ldapConnectionState
, orconnectionCount
attributes, authority to issue the MQCMD_INQUIRE_Q_MGR_STATUS PCF command must be granted. - To return the
publishSubscribeState
attribute, authority to issue the MQCMD_INQUIRE_PUBSUB_STATUS PCF command must be granted.
- To return the
- On z/OS®:
- To return the
started
attribute, authority to issue the MQCMD_INQUIRE_LOG PCF command must be granted. - To return the
channelInitiatorState
attribute, authority to issue the MQCMD_INQUIRE_CHANNEL_INIT PCF command must be granted. - To return the
connectionCount
attribute, authority to issue the MQCMD_INQUIRE_CONNECTION PCF command must be granted. - To return the
publishSubscribeState
attribute, authority to issue the MQCMD_INQUIRE_PUBSUB_STATUS PCF command must be granted.
- To return the
On UNIX, Linux, and Windows, you can grant authority to security principals to use IBM MQ resources by using the setmqaut command. For more information, see setmqaut (grant or revoke authority).
On z/OS, see Setting up security on z/OS.
Response status codes
- 200
- Queue manager information retrieved successfully.
- 400
- Invalid data provided.
- 401
- Not authenticated.
- 404
- Queue manager does not exist.
- 500
- Server issue or error code from IBM MQ.
Response headers
- Content-Type
- This header is returned with a value of
application/json;charset=utf-8
. - ibm-mq-rest-gateway-qmgr
- This header is returned if a remote queue manager is specified in the resource URL. The value of this header is the name of the queue manager that is used as the gateway queue manager.
Response body format
The response is in JSON format in UTF-8 encoding. The response contains an outer JSON object that
contains a single JSON array called qmgr
. Each element in the array is a JSON
object that represents information about a queue manager. Each JSON object contains the following
attributes:
- name
- String.
- state
- String.
The following objects can be included in the JSON object that represents information about a queue. Which objects and attributes are returned depends on the URL that was specified for the request:
- status
- Contains attributes that are related to status information for the queue manager.
- extended
- These attributes are only available on the IBM MQ Appliance, UNIX, Linux, and Windows.
If an error occurs, the response body contains an error message. For more information, see REST API error handling.
Examples for UNIX, Linux, and Windows
The following examples use the v2 resource URL. If you
are using a version of IBM MQ earlier than IBM MQ 9.1.5 you must use the v1 resource URL instead. That is, in
the resource URL, substitute v1
where the example URL uses v2
.
- The following example gets basic information about all queue managers. The following URL is used
with the HTTP GET method:
https://localhost:9443/ibmmq/rest/v2/admin/qmgr
{ "qmgr": [{ "name": "QM_T1", "state": "endedImmediately" }, { "name": "RESTQM0", "state": "endedUnexpectedly" }] }
- The following example gets extended information about the queue manager
QM_T1
. The following URL is used with the HTTP GET method:https://localhost:9443/ibmmq/rest/v2/admin/qmgr/QM_T1?attributes=extended
{ "qmgr": [{ "extended": { "installationName": "Installation1", "isDefaultQmgr": false, "permitStandby": "notApplicable" }, "name": "QM_T1", "state": "endedImmediately" }] }
- The following example gets specific information about all queue managers. The following URL is
used with the HTTP GET method:
https://localhost:9443/ibmmq/rest/v2/admin/qmgr?attributes=extended.permitStandby
{ "qmgr": [{ "extended": { "permitStandby": "notApplicable" }, "name": "QM_T1", "state": "endedImmediately" }, { "extended": { "permitStandby": "notApplicable" }, "name": "RESTQM0", "state": "endedUnexpectedly" }] }
- The following example gets status for the queue manager
QM1
. The following URL is used with the HTTP GET method:http://localhost:9443/ibmmq/rest/v2/admin/qmgr/QM1?status=*
{ "qmgr": [{ "name": "QM1", "state": "running", "status": { "started":"2016-11-08T11:02:29.000Z", "channelInitiatorState":"running", "ldapConnectionState":"disconnected", "connectionCount":23, "publishSubscribeState":"running" } }] }
Examples for z/OS
The following examples use the v2 resource URL. If you
are using a version of IBM MQ earlier than IBM MQ 9.1.5 you must use the v1 resource URL instead. That is, in
the resource URL, substitute v1
where the example URL uses v2
.
- The following example gets basic information about all queue managers. The following URL is used
with the HTTP GET method:
https://REST.example.com:9443/ibmmq/rest/v2/admin/qmgr
{ "qmgr": [{ "name": "MQ5B", "state": "ended" }] }