DELETE
Use the HTTP DELETE method with the queue resource to
delete a specified queue on a specified queue manager.
- This resource URL is available only in version 1 of the REST API. To delete queues using version 3 of the REST API, use the /admin/action/qmgr/{qmgrName}/mqsc resource.
- You cannot use this resource with the stand-alone IBM® MQ Web Server. For more information about the installation options for the IBM MQ component that runs the administrative REST API, see The IBM MQ Console and REST API.
This REST API command is similar to the MQCMD_DELETE_Q (Delete Queue) PCF command, and the DELETE queues MQSC commands.
Resource URL
https://host:port/ibmmq/rest/v1/admin/qmgr/{qmgrName}/queue/{queueName}
- qmgrName
- Specifies the name of the queue manager on which the queue to delete exists.
- queueName
- Specifies the name of the queue to delete.
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
- keepAuthorityRecords
![[MQ Appliance]](ngappliance.gif)
This parameter is only available on the IBM MQ Appliance, AIX®, Linux®, and Windows.- commandScope=scope
This parameter is only available on z/OS®.- purge
- Specifies that all messages are purged from the queue.
- queueSharingGroupDisposition=disposition
This parameter is only available on z/OS.
Request headers
- ibm-mq-rest-csrf-token
- This header must be set, but the value can be anything, including being blank.
- 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.
- For the queue that is specified by the {queueName} portion of the resource URL, authority to issue the MQCMD_DELETE_Q PCF command must be granted.
On AIX, 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
- 204
- Queue deleted successfully.
- 400
- Invalid data provided.
- 401
- Not authenticated.
- 403
- Access prohibited for one of the following reasons:
- Not authorized. The caller is authenticated to the mqweb server and is associated with a valid principal. However, the principal does not have access to the required IBM MQ resources. For more information about the access that is required, see Security requirements.
- Access prohibited in the current server environment. You cannot use the administrative REST API with the stand-alone IBM MQ Web Server.
- 404
- Queue does not exist.
- 500
- Server issue or error code from IBM MQ.
- 503
- Queue manager not running.
Response headers
ibm-mq-qmgrs- On z/OS, if the optional query parameter
commandScope=* is used, this header is returned with a comma-separated list of the queue managers
that generated a response. For example, the header might look like the following header:
ibm-mq-qmgrs: MQ21, MQ22 - 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 body is empty if the queue is deleted successfully. If an error occurs, the response body contains an error message. For more information, see REST API error handling.
Examples
The following example deletes the queue Q1 from the queue manager
QM1, and purges all messages from the queue when used with the HTTP DELETE method:
https://localhost:9443/ibmmq/rest/v1/admin/qmgr/QM1/queue/Q1?purge