get_queue_details

SQSQueuesApi.get_queue_details(queue_name, role_id, _request_timeout=None, _request_auth=None, _content_type=None, _headers=None, _host_index=0)

Get SQS queue details

Returns one monitored queue: display fields plus SQS approximate counts and formatted attribute strings. Requires system-settings.view.

Parameters:
  • queue_name (str) – Exact SQS queue name from the monitored list. Unknown names fail as GE-1052 wrapping IPV-1002. (required)

  • role_id (str) – Amorphic role ID the request is authorized against. Must be a role the user belongs to. Also recorded in audit logs. (required)

  • _request_timeout (int, tuple(int, int), optional) – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

  • _request_auth (dict, optional) – set to override the auth_settings for an a single request; this effectively ignores the authentication in the spec for a single request.

  • _content_type (str, Optional) – force content-type for the request.

  • _headers (dict, optional) – set to override the headers for a single request; this effectively ignores the headers in the spec for a single request.

  • _host_index (int, optional) – set to override the host_index for a single request; this effectively ignores the host_index in the spec for a single request.

Return type:

QueueDetails

Returns:

Returns the result object.

Request and Response Examples

HTTP: GET /queues/{queue_name}

Success (HTTP 200)

Name, Type, DisplayName, Description, CanPurge, Metrics (approximate counts), and Attributes (formatted timeout, retention, max size).

Request / response example

{
  "Name": "projectshortname-dev-failed-jobs-dlq",
  "Type": "Standard",
  "DisplayName": "Failed Jobs DLQ",
  "Description": "Dead-letter queue for failed job messages",
  "CanPurge": true,
  "Metrics": {
    "ApproximateNumberOfMessages": 12,
    "ApproximateNumberOfMessagesNotVisible": 0,
    "ApproximateNumberOfMessagesDelayed": 0
  },
  "Attributes": {
    "VisibilityTimeout": "30 secs",
    "MessageRetentionPeriod": "14 days",
    "MaximumMessageSize": "256 KB"
  }
}

Errors

Documented error codes: AUTH-1001, AUTH-1003, AUTH-1030, IPV-1002, GE-1052, RTE-1001.

HTTP 400

Validation or authorization failure. Body is {“Message”: “<CODE> - <text>”}. Codes: AUTH-1001, AUTH-1003, AUTH-1030 (missing system-settings.view), IPV-1002 (role_id, or SQS QueueDoesNotExist), GE-1052 (not in the monitored list, missing path, get-url failure, and other errors). GenericFailure is HTTP 400 on this Lambda. There is no 404.

Caller lacks system-settings.view

{
  "Message": "AUTH-1030 - User is not authorized to get details of a SQS queue due to the following missing permission(s) - {'System Settings': ['view']}"
}

Name is not in the monitored list

{
  "Message": "GE-1052 - Unable to get queue details, error - IPV-1002 - Invalid queue name - unknown-queue, resource not found."
}

SQS reports the queue does not exist

{
  "Message": "IPV-1002 - Invalid queue name - unknown-queue, resource not found."
}

HTTP 500

Uncaught errors outside this GET use {“Message”: “RTE-1001 - <exception>.”}.

Uncaught handler failure

{
  "Message": "RTE-1001 - 'NoneType' object is not subscriptable."
}