Move queue request operation
Use the Move queue request operation to programmatically move messages from one Atom queue to another using the CREATE operation.
You must have the Runtime Management privilege to use the Move queue request operation. To move messages between Atom queues, they must reside on the same Atom and be of the same type (for example, Point-to-Point or Publish/Subscribe).
Structure
<MoveQueueRequest xmlns="http://api.platform.boomi.com/" AtomId="">
<SourceQueue QueueName="" SubscriberName="" DLQ=""/>
<DestinationQueue QueueName="" SubscriberName="" DLQ=""/>
</MoveQueueRequest>
| Field | Type | Description |
|---|---|---|
| Filter | Filter | Filter |
| AtomId | string | (Required) The Runtime ID that the queue or topic exists under and where you can find it in Runtime Management. You can find the Runtime ID for Runtimes, Runtime clusters, and Runtime clouds in the user interface by navigating to Manage > Runtime Management and viewing the Atom Information panel for a selected container. |
| SourceQueue | string | (Required) An instance of a generalized queue object indicating the queue from which to obtain the messages. Contains information describing the desired queue. |
| QueueName | stringstring | (Required) The name of the queue or topic. You can find this in the List Queues action or in Queue Management. |
| SubscriberName | string | (Optional. Use only for topic subscribers.) The name of the subscriber as it exists on the Runtime. You can find this by using the List Queues action or by looking up the Component ID of the process associated with the subscriber. Note: This field is not only the subscriber name shown on the Queue Management screen of the user interface. |
| DLQ | boolean | (Required) true, or false. Allows the user to choose the regular or dead letter queue for deleting messages. The default is false, which deletes messages from the regular queue. |
| DestinationQueue | string | (Required) An instance of a generalized queue object indicating the queue from which to send the messages. Contains information describing the desired queue. |
| GET | QUERY | CREATE | UPDATE | EXECUTE | DELETE |
|---|---|---|---|---|---|
| Not Supported | Not Supported | Supported | Not Supported | Not Supported | Not Supported |
Using the CREATE operation
-
You must have the Runtime Management privilege to use the Move queue request operation.
-
You can only move messages between queues of the same type. For example, moving queue messages from a point-to-point queue to a Publish/Subscribe queue results in an error.
-
Any Atom queues that you specify in the request must currently exist on the Runtime. For clarification, you cannot create a new endpoint using the CREATE operation.
-
You must supply the AtomID, SourceQueue, QueueName, DLQ, and DestinationQueue fields in the request.
-
If the operation returns an error, it logs a message in the runtime, Runtime cluster, or Runtime cloud, but is not sent to the platform.
-
You cannot track move updates directly through this operation. Instead, to see if the action is in progress or complete, use the Queue Management API or the ListQueues API to observe the number of messages in the queue.
SOAP implementation
-
CREATE operation
POST
https://api.boomi.com/api/soap/v1/<accountId>where accountId is the ID of the authenticating account for the request.
Request:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:par="http://api.platform.boomi.com/" xmlns:api="http://api.platform.boomi.com/">
<soapenv:Header>
<wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<wsse:UsernameToken wsu:Id="UsernameToken" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
<wsse:Username>user@boomi.com</wsse:Username>
<wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">Password123</wsse:Password>
</wsse:UsernameToken>
</wsse:Security>
</soapenv:Header>
<soapenv:Body>
<create xmlns="http://api.platform.boomi.com/">
<object AtomId="5b591f1a-217e-4d7f-bc8f-cf65f531dc88" xsi:type="ns1:MoveQueueRequest" xmlns="" xmlns:ns1="http://api.platform.boomi.com/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<ns1:SourceQueue DLQ=false QueueName="PointToPoint_Source" />
<ns1:DestinationQueue DLQ=true QueueName="PointToPoint_Destination" />
</object>
</create>
</soapenv:Body>
</soapenv:Envelope>Response:
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<bns:createResponse xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bns="http://api.platform.boomi.com/">
<result xsi:type="bns:QueueMessageResponse" message="Request submitted to atom id: 6a37fc43-d869-4097-9630-d874411b6b61 to move queue messages from PointToPoint_Source to PointToPoint_Destination"/>
</bns:createResponse>
</S:Body>
</S:Envelope>