Message and Queue Attributes

Table of Contents

Message Structure

The message structure is flexible and straight-forward. Messages can be variable in size and can contain almost any text or data format.

Message ElementType
TokenOAuth2 access token
DelayInteger (seconds)
TimeoutInteger (seconds)
ExpirationInteger (seconds)
Message bodyASCII text

Message Constraints

The basic message handling operation is put-get-delete. Messages are put on the queue by senders. The messages can have delays associated with them. If included, the message is not made available on the queue until the delay is up (default is 0 or no delay).

Receivers get one or more messages (up to 100). Once the receiver is done processing a message, it deletes it. If a message is not deleted prior to the timeout (default 60 sec), it is put back on the queue. Messages on the queue will expire after a certain amount of time (default is 7 days).

Message VarDefaultMaximumNotes
Message Sizedependent on plan64KB, 256KBIncludes the entire request (delay, timeout, expiration). Limit will vary depending on current plan. Please view plan comparision page here. If message size limits higher than 256KB are needed, please contact
Delay0sec604,800secMessage is made available on queue after the delay expires.
Timeout60sec86,400secMessage goes back on queue after timeout unless deleted.
Expiration604,800sec2,592,000secEquates to 7 days and 30 days, respectively.
Messages per Get1100One or more messages can be handled at a time.

Queue Attributes

Queues have their own set of attributes. To get the information about a queue, use the Info API call. The following is a list of all the queue attributes:

Common Attributes

nameName of the queue. (Names with spaces should URL encode/use "%20".)
idUnique queue's ID.
sizeCurrent queue size. It's usually 0 for Push Queues.
total_messagesNumber of messages which were posted to the queue.
project_idID of the project that owns the queue.
push_typePush queue type. Either multicast (default) or unicast.
retriesMaximum number of times messages will be sent to each HTTP endpoint. Messages will not be resent after a call receives an HTTP response with a status code of 200. Default is 3 seconds. Maximum is 100 seconds.
retries_delayDelay between retries in seconds. Default is 60 seconds. Minimum is 3 and maximum is 86400 seconds.
subscribersList of subscribers, format is [{url: "http://..."}, ...].
error_queue Enable error queue {"error_queue": "ERROR_QUEUE_NAME"}. </br> Empty string defaults to disabled {"error_queue": ""} </br> Defaults to disabled if not declared.</br> note: error queue will not appear in the until first error occurs.

Security Groups and IP Ranges provides an AWS security group for IronMQ, generally used in the case of push queues, in the event users want to isolate AWS EC2, RDS, or other services to these groups/ranges.

EC2 Security GroupAccount IDSecurity Group String