Message Queues API — Agentuity Documentation

Message Queues API

Publish, consume, and manage messages with worker and pub/sub queues

Publish, consume, and manage messages with worker and pub/sub queues.

https://catalyst-usw.agentuity.cloud

Authentication

All requests require a Bearer token. Pass your SDK key in the Authorization header.

HeaderValue
AuthorizationBearer YOUR_SDK_KEY

You can find your SDK key in the Agentuity Console under your project settings.


Queue Management

Create Queue

Create a queue. If name is omitted, a name is auto-generated.

POST/queue/create
https://catalyst-usw.agentuity.cloud/queue/create

Request Body

Queue creation payload.

FieldTypeDescription
namestringOptional queue name (auto-generated if not provided). (optional)
descriptionstringOptional description of the queue's purpose. (optional)
queue_typestringType of queue to create.
settingsobjectOptional settings to customize queue behavior (server applies defaults for missing fields). (optional)
settings.default_ttl_secondsnumber | nullDefault time-to-live for messages in seconds. Null means no expiration. (optional)
settings.default_visibility_timeout_secondsnumberTime in seconds a message is invisible after being received. (optional)
settings.default_max_retriesnumberMaximum number of delivery attempts before moving to DLQ. (optional)
settings.default_retry_backoff_msnumberInitial backoff delay in milliseconds for retries. (optional)
settings.default_retry_max_backoff_msnumberMaximum backoff delay in milliseconds for retries. (optional)
settings.default_retry_multipliernumberMultiplier for exponential backoff. (optional)
settings.max_in_flight_per_clientnumberMaximum number of messages a single client can process concurrently. (optional)
settings.retention_secondsnumberRetention period for acknowledged messages in seconds. (optional)

Response

Queue object including settings, stats, and timestamps.

StatusDescription
200Queue created
401Unauthorized
402Payment required

Example

curl -X POST 'https://catalyst-usw.agentuity.cloud/queue/create' \
  -H 'Authorization: Bearer $AGENTUITY_SDK_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
  "name": "order-processing",
  "queue_type": "worker",
  "description": "Processes customer orders",
  "settings": {
    "default_max_retries": 3,
    "default_visibility_timeout_seconds": 60
  }
}'

Get Queue

Get a queue by name.

GET/queue/get/{name}
https://catalyst-usw.agentuity.cloud/queue/get/{name}

Parameters

path
NameTypeRequiredDescription
namestringYesQueue name

Response

Queue object.

StatusDescription
200Queue returned
401Unauthorized
404Queue not found

Example

curl -X GET 'https://catalyst-usw.agentuity.cloud/queue/get/order-processing' \
  -H 'Authorization: Bearer $AGENTUITY_SDK_KEY'

List Queues

List queues with filtering and pagination.

GET/queue/list
https://catalyst-usw.agentuity.cloud/queue/list

Parameters

query
NameTypeRequiredDescription
limitnumberNoMaximum queues to return
offsetnumberNoOffset for pagination
namestringNoFilter by queue name
queue_typestringNo`worker` or `pubsub`
statusstringNo`active` or `paused`
sortstringNoSort field
directionstringNo`asc` or `desc`

Response

Response with queue array and optional total count.

StatusDescription
200Queues returned
401Unauthorized

Response Fields

FieldTypeDescription
queuesobject[]Queues in the current page
queues[].idstringUnique identifier for the queue.
queues[].namestringHuman-readable queue name (used for API operations).
queues[].descriptionstring | nullOptional description of the queue's purpose. (optional)
queues[].internalbooleanWhether the queue is system-managed. (optional)
queues[].queue_typestringThe type of queue (worker or pubsub).
queues[].default_ttl_secondsnumber | nullDefault time-to-live for messages in seconds. Null means no expiration. (optional)
queues[].default_visibility_timeout_secondsnumberTime in seconds a message is invisible after being received. (optional)
queues[].default_max_retriesnumberMaximum number of delivery attempts before moving to DLQ. (optional)
queues[].default_retry_backoff_msnumberInitial backoff delay in milliseconds for retries. (optional)
queues[].default_retry_max_backoff_msnumberMaximum backoff delay in milliseconds for retries. (optional)
queues[].default_retry_multipliernumberMultiplier for exponential backoff. (optional)
queues[].max_in_flight_per_clientnumberMaximum number of messages a single client can process concurrently. (optional)
queues[].next_offsetnumberThe next offset that will be assigned to a new message. (optional)
queues[].message_countnumberTotal number of messages currently in the queue. (optional)
queues[].dlq_countnumberNumber of messages in the dead letter queue. (optional)
queues[].created_atstringISO 8601 timestamp when the queue was created.
queues[].updated_atstringISO 8601 timestamp when the queue was last updated.
queues[].paused_atstring | nullISO 8601 timestamp when the queue was paused (null if not paused). (optional)
queues[].retention_secondsnumberRetention period for acknowledged messages in seconds. (optional)
totalnumberOptional total queue count (optional)

Example

curl -X GET 'https://catalyst-usw.agentuity.cloud/queue/list?limit=10&queue_type=worker' \
  -H 'Authorization: Bearer $AGENTUITY_SDK_KEY'

Update Queue

Partially update queue description/settings.

PATCH/queue/update/{name}
https://catalyst-usw.agentuity.cloud/queue/update/{name}

Parameters

path
NameTypeRequiredDescription
namestringYesQueue name

Request Body

Partial queue update payload.

FieldTypeDescription
descriptionstringNew description for the queue. (optional)
settingsobjectSettings to update (partial update supported, only provided fields are updated). (optional)
settings.default_ttl_secondsnumber | nullDefault time-to-live for messages in seconds. Null means no expiration. (optional)
settings.default_visibility_timeout_secondsnumberTime in seconds a message is invisible after being received. (optional)
settings.default_max_retriesnumberMaximum number of delivery attempts before moving to DLQ. (optional)
settings.default_retry_backoff_msnumberInitial backoff delay in milliseconds for retries. (optional)
settings.default_retry_max_backoff_msnumberMaximum backoff delay in milliseconds for retries. (optional)
settings.default_retry_multipliernumberMultiplier for exponential backoff. (optional)
settings.max_in_flight_per_clientnumberMaximum number of messages a single client can process concurrently. (optional)
settings.retention_secondsnumberRetention period for acknowledged messages in seconds. (optional)

Response

Updated queue object.

StatusDescription
200Queue updated
401Unauthorized
404Queue not found

Example

curl -X PATCH 'https://catalyst-usw.agentuity.cloud/queue/update/order-processing' \
  -H 'Authorization: Bearer $AGENTUITY_SDK_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
  "description": "Updated",
  "settings": {
    "default_max_retries": 5
  }
}'

Delete Queue

Delete a queue and associated resources.

DELETE/queue/delete/{name}
https://catalyst-usw.agentuity.cloud/queue/delete/{name}

Parameters

path
NameTypeRequiredDescription
namestringYesQueue name

Response

Empty response on success.

StatusDescription
200Queue deleted
401Unauthorized
404Queue not found

Example

curl -X DELETE 'https://catalyst-usw.agentuity.cloud/queue/delete/order-processing' \
  -H 'Authorization: Bearer $AGENTUITY_SDK_KEY'

Pause Queue

Pause queue processing.

POST/queue/pause/{name}
https://catalyst-usw.agentuity.cloud/queue/pause/{name}

Parameters

path
NameTypeRequiredDescription
namestringYesQueue name

Request Body

Empty JSON object is required.

Response

Queue object with paused_at set.

StatusDescription
200Queue paused
401Unauthorized
404Queue not found

Example

curl -X POST 'https://catalyst-usw.agentuity.cloud/queue/pause/order-processing' \
  -H 'Authorization: Bearer $AGENTUITY_SDK_KEY' \
  -H 'Content-Type: application/json' \
  -d '{}'

Resume Queue

Resume queue processing.

POST/queue/resume/{name}
https://catalyst-usw.agentuity.cloud/queue/resume/{name}

Parameters

path
NameTypeRequiredDescription
namestringYesQueue name

Request Body

Empty JSON object is required.

Response

Queue object with paused_at cleared.

StatusDescription
200Queue resumed
401Unauthorized
404Queue not found

Example

curl -X POST 'https://catalyst-usw.agentuity.cloud/queue/resume/order-processing' \
  -H 'Authorization: Bearer $AGENTUITY_SDK_KEY' \
  -H 'Content-Type: application/json' \
  -d '{}'

Message Operations

Publish Message

Publish a single message to a queue.

POST/queue/messages/publish/{name}
https://catalyst-usw.agentuity.cloud/queue/messages/publish/{name}

Parameters

path
NameTypeRequiredDescription
namestringYesQueue name
query
NameTypeRequiredDescription
syncbooleanNoSet `true` for synchronous publish

Request Body

Message payload and optional delivery controls.

FieldTypeDescription
payloadanyThe message payload (JSON object).
metadataobjectOptional metadata to attach to the message. (optional)
idempotency_keystringOptional key for deduplication (prevents duplicate messages). (optional)
partition_keystringOptional key for message ordering within a partition. (optional)
ttl_secondsnumberOptional time-to-live in seconds. (optional)

Response

Published message object.

StatusDescription
200Message published
401Unauthorized
404Queue not found

Example

curl -X POST 'https://catalyst-usw.agentuity.cloud/queue/messages/publish/order-processing' \
  -H 'Authorization: Bearer $AGENTUITY_SDK_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
  "payload": {
    "orderId": 123,
    "action": "process"
  },
  "metadata": {
    "priority": "high"
  }
}'

Batch Publish

Publish up to 1000 messages in one request.

POST/queue/messages/batch/{name}
https://catalyst-usw.agentuity.cloud/queue/messages/batch/{name}

Parameters

path
NameTypeRequiredDescription
namestringYesQueue name

Request Body

Batch publish payload.

FieldTypeDescription
messagesobject[]Array of messages to publish (max 1000 per batch).
messages[].payloadanyThe message payload (JSON object).
messages[].metadataobjectOptional metadata to attach to the message. (optional)
messages[].idempotency_keystringOptional key for deduplication (prevents duplicate messages). (optional)
messages[].partition_keystringOptional key for message ordering within a partition. (optional)
messages[].ttl_secondsnumberOptional time-to-live in seconds. (optional)

Response

Batch publish response with created messages and optional failed indexes.

StatusDescription
200Batch publish completed
401Unauthorized
404Queue not found

Response Fields

FieldTypeDescription
messagesobject[]Published messages
messages[].idstringUnique identifier for the message (prefixed with qmsg_).
messages[].queue_idstringID of the queue this message belongs to.
messages[].offsetnumberSequential offset within the queue.
messages[].payloadanyThe message payload (JSON object).
messages[].sizenumberSize of the message payload in bytes. (optional)
messages[].metadataobject | nullOptional metadata attached to the message. (optional)
messages[].statestringCurrent state of the message. (optional)
messages[].idempotency_keystring | nullOptional key for message deduplication. (optional)
messages[].partition_keystring | nullOptional key for message ordering. (optional)
messages[].ttl_secondsnumber | nullTime-to-live in seconds (null means no expiration). (optional)
messages[].delivery_attemptsnumberNumber of times delivery has been attempted. (optional)
messages[].max_retriesnumberMaximum number of delivery attempts allowed. (optional)
messages[].published_atstringISO 8601 timestamp when the message was published. (optional)
messages[].expires_atstring | nullISO 8601 timestamp when the message will expire (if TTL set). (optional)
messages[].delivered_atstring | nullISO 8601 timestamp when the message was delivered. (optional)
messages[].acknowledged_atstring | nullISO 8601 timestamp when the message was acknowledged. (optional)
messages[].created_atstringISO 8601 timestamp when the message was created. (optional)
messages[].updated_atstringISO 8601 timestamp when the message was last updated. (optional)
messages[].source_idstring | nullID of the source that ingested this message (null if published directly). (optional)
messages[].source_namestring | nullName of the source that ingested this message. (optional)
failednumber[]Indexes that failed (optional)

Example

curl -X POST 'https://catalyst-usw.agentuity.cloud/queue/messages/batch/order-processing' \
  -H 'Authorization: Bearer $AGENTUITY_SDK_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
  "messages": [
    {
      "payload": {
        "orderId": 1
      }
    },
    {
      "payload": {
        "orderId": 2
      }
    }
  ]
}'

Get Message

Get a message by message ID (msg_...).

GET/queue/messages/get/{name}/{messageId}
https://catalyst-usw.agentuity.cloud/queue/messages/get/{name}/{messageId}

Parameters

path
NameTypeRequiredDescription
namestringYesQueue name
messageIdstringYesMessage ID (`msg_...`)

Response

Message object.

StatusDescription
200Message returned
401Unauthorized
404Message or queue not found

Example

curl -X GET 'https://catalyst-usw.agentuity.cloud/queue/messages/get/order-processing/msg_abc123' \
  -H 'Authorization: Bearer $AGENTUITY_SDK_KEY'

Get Message by Offset

Get a message by numeric offset.

GET/queue/messages/offset/{name}/{offset}
https://catalyst-usw.agentuity.cloud/queue/messages/offset/{name}/{offset}

Parameters

path
NameTypeRequiredDescription
namestringYesQueue name
offsetnumberYesMessage offset

Response

Message object.

StatusDescription
200Message returned
401Unauthorized
404Message or queue not found

Example

curl -X GET 'https://catalyst-usw.agentuity.cloud/queue/messages/offset/order-processing/42' \
  -H 'Authorization: Bearer $AGENTUITY_SDK_KEY'

List Messages

List messages with pagination and optional state filter.

GET/queue/messages/list/{name}
https://catalyst-usw.agentuity.cloud/queue/messages/list/{name}

Parameters

path
NameTypeRequiredDescription
namestringYesQueue name
query
NameTypeRequiredDescription
limitnumberNoMaximum messages to return
offsetnumberNoOffset for pagination
statestringNo`pending`, `processing`, `completed`, `failed`, or `dead`

Response

Response with message list and optional total count.

StatusDescription
200Messages returned
401Unauthorized
404Queue not found

Response Fields

FieldTypeDescription
messagesobject[]Messages in current page
messages[].idstringUnique identifier for the message (prefixed with qmsg_).
messages[].queue_idstringID of the queue this message belongs to.
messages[].offsetnumberSequential offset within the queue.
messages[].payloadanyThe message payload (JSON object).
messages[].sizenumberSize of the message payload in bytes. (optional)
messages[].metadataobject | nullOptional metadata attached to the message. (optional)
messages[].statestringCurrent state of the message. (optional)
messages[].idempotency_keystring | nullOptional key for message deduplication. (optional)
messages[].partition_keystring | nullOptional key for message ordering. (optional)
messages[].ttl_secondsnumber | nullTime-to-live in seconds (null means no expiration). (optional)
messages[].delivery_attemptsnumberNumber of times delivery has been attempted. (optional)
messages[].max_retriesnumberMaximum number of delivery attempts allowed. (optional)
messages[].published_atstringISO 8601 timestamp when the message was published. (optional)
messages[].expires_atstring | nullISO 8601 timestamp when the message will expire (if TTL set). (optional)
messages[].delivered_atstring | nullISO 8601 timestamp when the message was delivered. (optional)
messages[].acknowledged_atstring | nullISO 8601 timestamp when the message was acknowledged. (optional)
messages[].created_atstringISO 8601 timestamp when the message was created. (optional)
messages[].updated_atstringISO 8601 timestamp when the message was last updated. (optional)
messages[].source_idstring | nullID of the source that ingested this message (null if published directly). (optional)
messages[].source_namestring | nullName of the source that ingested this message. (optional)
totalnumberOptional total message count (optional)

Example

curl -X GET 'https://catalyst-usw.agentuity.cloud/queue/messages/list/order-processing?limit=20&state=pending' \
  -H 'Authorization: Bearer $AGENTUITY_SDK_KEY'

Delete Message

Delete a message by ID.

DELETE/queue/messages/delete/{name}/{messageId}
https://catalyst-usw.agentuity.cloud/queue/messages/delete/{name}/{messageId}

Parameters

path
NameTypeRequiredDescription
namestringYesQueue name
messageIdstringYesMessage ID

Response

Empty response on success.

StatusDescription
200Message deleted
401Unauthorized
404Message or queue not found

Example

curl -X DELETE 'https://catalyst-usw.agentuity.cloud/queue/messages/delete/order-processing/msg_abc123' \
  -H 'Authorization: Bearer $AGENTUITY_SDK_KEY'

Replay Message

Replay a message back into the queue flow.

POST/queue/messages/replay/{name}/{messageId}
https://catalyst-usw.agentuity.cloud/queue/messages/replay/{name}/{messageId}

Parameters

path
NameTypeRequiredDescription
namestringYesQueue name
messageIdstringYesMessage ID

Response

Replayed message object.

StatusDescription
200Message replayed
401Unauthorized
404Message or queue not found

Example

curl -X POST 'https://catalyst-usw.agentuity.cloud/queue/messages/replay/order-processing/msg_abc123' \
  -H 'Authorization: Bearer $AGENTUITY_SDK_KEY'

Consume Messages

Log-style consumption starting from offset. Does not mark messages as processing.

GET/queue/consume/{name}
https://catalyst-usw.agentuity.cloud/queue/consume/{name}

Parameters

path
NameTypeRequiredDescription
namestringYesQueue name
query
NameTypeRequiredDescription
offsetnumberYesStarting offset
limitnumberNoMaximum messages to return

Response

Response containing consumed messages.

StatusDescription
200Messages consumed
401Unauthorized
404Queue not found

Response Fields

FieldTypeDescription
messagesobject[]Consumed messages
messages[].idstringUnique identifier for the message (prefixed with qmsg_).
messages[].queue_idstringID of the queue this message belongs to.
messages[].offsetnumberSequential offset within the queue.
messages[].payloadanyThe message payload (JSON object).
messages[].sizenumberSize of the message payload in bytes. (optional)
messages[].metadataobject | nullOptional metadata attached to the message. (optional)
messages[].statestringCurrent state of the message. (optional)
messages[].idempotency_keystring | nullOptional key for message deduplication. (optional)
messages[].partition_keystring | nullOptional key for message ordering. (optional)
messages[].ttl_secondsnumber | nullTime-to-live in seconds (null means no expiration). (optional)
messages[].delivery_attemptsnumberNumber of times delivery has been attempted. (optional)
messages[].max_retriesnumberMaximum number of delivery attempts allowed. (optional)
messages[].published_atstringISO 8601 timestamp when the message was published. (optional)
messages[].expires_atstring | nullISO 8601 timestamp when the message will expire (if TTL set). (optional)
messages[].delivered_atstring | nullISO 8601 timestamp when the message was delivered. (optional)
messages[].acknowledged_atstring | nullISO 8601 timestamp when the message was acknowledged. (optional)
messages[].created_atstringISO 8601 timestamp when the message was created. (optional)
messages[].updated_atstringISO 8601 timestamp when the message was last updated. (optional)
messages[].source_idstring | nullID of the source that ingested this message (null if published directly). (optional)
messages[].source_namestring | nullName of the source that ingested this message. (optional)

Example

curl -X GET 'https://catalyst-usw.agentuity.cloud/queue/consume/order-processing?offset=0&limit=10' \
  -H 'Authorization: Bearer $AGENTUITY_SDK_KEY'

Receive Message

Atomically receive and lock the next pending message. Must ack/nack when done.

GET/queue/receive/{name}
https://catalyst-usw.agentuity.cloud/queue/receive/{name}

Parameters

path
NameTypeRequiredDescription
namestringYesQueue name
query
NameTypeRequiredDescription
timeoutnumberNoLong-poll timeout in seconds (0–30)

Response

Response containing a message or null when none available.

StatusDescription
200Receive operation completed
401Unauthorized
404Queue not found

Response Fields

FieldTypeDescription
messageobject | nullReceived message if available

Example

curl -X GET 'https://catalyst-usw.agentuity.cloud/queue/receive/order-processing?timeout=10' \
  -H 'Authorization: Bearer $AGENTUITY_SDK_KEY'

Acknowledge Message

Mark message as successfully processed (completed).

POST/queue/ack/{name}/{messageId}
https://catalyst-usw.agentuity.cloud/queue/ack/{name}/{messageId}

Parameters

path
NameTypeRequiredDescription
namestringYesQueue name
messageIdstringYesMessage ID

Response

Empty response on success.

StatusDescription
200Message acknowledged
401Unauthorized
404Message or queue not found

Example

curl -X POST 'https://catalyst-usw.agentuity.cloud/queue/ack/order-processing/msg_abc123' \
  -H 'Authorization: Bearer $AGENTUITY_SDK_KEY'

Negative Acknowledge

Return message for retry. After max retries, moves to DLQ.

POST/queue/nack/{name}/{messageId}
https://catalyst-usw.agentuity.cloud/queue/nack/{name}/{messageId}

Parameters

path
NameTypeRequiredDescription
namestringYesQueue name
messageIdstringYesMessage ID

Response

Empty response on success.

StatusDescription
200Message negatively acknowledged
401Unauthorized
404Message or queue not found

Example

curl -X POST 'https://catalyst-usw.agentuity.cloud/queue/nack/order-processing/msg_abc123' \
  -H 'Authorization: Bearer $AGENTUITY_SDK_KEY'

Get Queue Head

Get offset of the oldest message.

GET/queue/head/{name}
https://catalyst-usw.agentuity.cloud/queue/head/{name}

Parameters

path
NameTypeRequiredDescription
namestringYesQueue name

Response

JSON object containing the head offset.

StatusDescription
200Queue head returned
401Unauthorized
404Queue not found

Response Fields

FieldTypeDescription
offsetnumberOldest message offset

Example

curl -X GET 'https://catalyst-usw.agentuity.cloud/queue/head/order-processing' \
  -H 'Authorization: Bearer $AGENTUITY_SDK_KEY'

Get Queue Tail

Get offset of the newest message.

GET/queue/tail/{name}
https://catalyst-usw.agentuity.cloud/queue/tail/{name}

Parameters

path
NameTypeRequiredDescription
namestringYesQueue name

Response

JSON object containing the tail offset.

StatusDescription
200Queue tail returned
401Unauthorized
404Queue not found

Response Fields

FieldTypeDescription
offsetnumberNewest message offset

Example

curl -X GET 'https://catalyst-usw.agentuity.cloud/queue/tail/order-processing' \
  -H 'Authorization: Bearer $AGENTUITY_SDK_KEY'

Destinations

Create Destination

Create an HTTP destination for queue deliveries.

POST/queue/destinations/create/{name}
https://catalyst-usw.agentuity.cloud/queue/destinations/create/{name}

Parameters

path
NameTypeRequiredDescription
namestringYesQueue name

Request Body

Destination creation payload.

FieldTypeDescription
namestringHuman-readable name for the destination.
descriptionstringOptional description of the destination. (optional)
destination_typestringType of destination to create.
configobjectHTTP configuration for the destination.
config.urlstringThe URL to send messages to.
config.headersobjectOptional custom headers to include in requests. (optional)
config.methodstringHTTP method to use (default: POST).
config.timeout_msnumberRequest timeout in milliseconds (default: 30000).
config.retry_policyobjectOptional retry policy for failed deliveries. (optional)
config.retry_policy.max_attemptsnumberMaximum number of delivery attempts (default: 5).
config.retry_policy.initial_backoff_msnumberInitial backoff delay in milliseconds (default: 1000).
config.retry_policy.max_backoff_msnumberMaximum backoff delay in milliseconds (default: 60000).
config.retry_policy.backoff_multipliernumberBackoff multiplier for exponential backoff (default: 2.0).
config.signingobjectOptional request signing configuration. (optional)
config.signing.enabledbooleanWhether signing is enabled (default: false).
config.signing.secret_keystringSecret key for HMAC signing. (optional)
enabledbooleanWhether the destination should be enabled (default: true).

Response

Created destination object.

StatusDescription
200Destination created
401Unauthorized
404Queue not found

Example

curl -X POST 'https://catalyst-usw.agentuity.cloud/queue/destinations/create/order-processing' \
  -H 'Authorization: Bearer $AGENTUITY_SDK_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
  "name": "my-webhook",
  "destination_type": "http",
  "config": {
    "url": "https://example.com/webhook"
  },
  "enabled": true
}'

List Destinations

List queue destinations.

GET/queue/destinations/list/{name}
https://catalyst-usw.agentuity.cloud/queue/destinations/list/{name}

Parameters

path
NameTypeRequiredDescription
namestringYesQueue name

Response

Response containing destination list.

StatusDescription
200Destinations returned
401Unauthorized
404Queue not found

Response Fields

FieldTypeDescription
destinationsobject[]Configured destinations
destinations[].idstringUnique identifier for the destination (prefixed with qdest_).
destinations[].namestringHuman-readable name for the destination.
destinations[].descriptionstring | nullOptional description of the destination. (optional)
destinations[].queue_idstringID of the queue this destination is attached to.
destinations[].destination_typestringType of destination (currently only 'http').
destinations[].configobjectHTTP configuration for the destination.
destinations[].config.urlstringThe URL to send messages to.
destinations[].config.headersobjectOptional custom headers to include in requests. (optional)
destinations[].config.methodstringHTTP method to use (default: POST).
destinations[].config.timeout_msnumberRequest timeout in milliseconds (default: 30000).
destinations[].config.retry_policyobjectOptional retry policy for failed deliveries. (optional)
destinations[].config.retry_policy.max_attemptsnumberMaximum number of delivery attempts (default: 5).
destinations[].config.retry_policy.initial_backoff_msnumberInitial backoff delay in milliseconds (default: 1000).
destinations[].config.retry_policy.max_backoff_msnumberMaximum backoff delay in milliseconds (default: 60000).
destinations[].config.retry_policy.backoff_multipliernumberBackoff multiplier for exponential backoff (default: 2.0).
destinations[].config.signingobjectOptional request signing configuration. (optional)
destinations[].config.signing.enabledbooleanWhether signing is enabled (default: false).
destinations[].config.signing.secret_keystringSecret key for HMAC signing. (optional)
destinations[].enabledbooleanWhether the destination is enabled for delivery.
destinations[].statsobjectDelivery statistics for this destination. (optional)
destinations[].stats.total_deliveriesnumberTotal number of delivery attempts.
destinations[].stats.successful_deliveriesnumberNumber of successful deliveries.
destinations[].stats.failed_deliveriesnumberNumber of failed deliveries.
destinations[].stats.last_delivery_atstring | nullISO 8601 timestamp of the last delivery attempt. (optional)
destinations[].stats.last_success_atstring | nullISO 8601 timestamp of the last successful delivery. (optional)
destinations[].stats.last_failure_atstring | nullISO 8601 timestamp of the last failed delivery. (optional)
destinations[].success_countnumberTotal successful deliveries. (optional)
destinations[].failure_countnumberTotal failed deliveries. (optional)
destinations[].last_success_atstring | nullISO 8601 timestamp of last success. (optional)
destinations[].last_failure_atstring | nullISO 8601 timestamp of last failure. (optional)
destinations[].last_failure_errorstring | nullError message from last failure. (optional)
destinations[].created_atstringISO 8601 timestamp when the destination was created.
destinations[].updated_atstringISO 8601 timestamp when the destination was last updated.

Example

curl -X GET 'https://catalyst-usw.agentuity.cloud/queue/destinations/list/order-processing' \
  -H 'Authorization: Bearer $AGENTUITY_SDK_KEY'

Update Destination

Partially update destination fields.

PATCH/queue/destinations/update/{name}/{destinationId}
https://catalyst-usw.agentuity.cloud/queue/destinations/update/{name}/{destinationId}

Parameters

path
NameTypeRequiredDescription
namestringYesQueue name
destinationIdstringYesDestination ID

Request Body

Partial destination update payload.

Response

Updated destination object.

StatusDescription
200Destination updated
401Unauthorized
404Queue or destination not found

Example

curl -X PATCH 'https://catalyst-usw.agentuity.cloud/queue/destinations/update/order-processing/dst_abc123' \
  -H 'Authorization: Bearer $AGENTUITY_SDK_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
  "timeout_seconds": 20
}'

Delete Destination

Delete a queue destination.

DELETE/queue/destinations/delete/{name}/{destinationId}
https://catalyst-usw.agentuity.cloud/queue/destinations/delete/{name}/{destinationId}

Parameters

path
NameTypeRequiredDescription
namestringYesQueue name
destinationIdstringYesDestination ID

Response

Empty response on success.

StatusDescription
200Destination deleted
401Unauthorized
404Queue or destination not found

Example

curl -X DELETE 'https://catalyst-usw.agentuity.cloud/queue/destinations/delete/order-processing/dst_abc123' \
  -H 'Authorization: Bearer $AGENTUITY_SDK_KEY'

List Delivery Logs

List destination delivery logs with optional status filter.

GET/queue/destinations/deliveries/{name}/{destinationId}
https://catalyst-usw.agentuity.cloud/queue/destinations/deliveries/{name}/{destinationId}

Parameters

path
NameTypeRequiredDescription
namestringYesQueue name
destinationIdstringYesDestination ID
query
NameTypeRequiredDescription
limitnumberNoMaximum logs to return
offsetnumberNoOffset for pagination
statusstringNoDelivery status filter

Response

Response containing delivery log entries.

StatusDescription
200Delivery logs returned
401Unauthorized
404Queue or destination not found

Response Fields

FieldTypeDescription
deliveriesobject[]Delivery log entries
deliveries[].idstringUnique identifier for the delivery attempt.
deliveries[].destination_idstringID of the destination this delivery was sent to.
deliveries[].queue_idstringID of the queue.
deliveries[].message_idstringID of the message that was delivered.
deliveries[].payloadanyPayload delivered to the destination. (optional)
deliveries[].statusstringStatus of the delivery attempt.
deliveries[].http_status_codenumber | nullHTTP status code from the destination. (optional)
deliveries[].errorstring | nullError message if delivery failed. (optional)
deliveries[].duration_msnumberDuration of the delivery attempt in milliseconds. (optional)
deliveries[].attempt_numbernumberWhich attempt number this was (1-based). (optional)
deliveries[].request_headersobjectRequest headers sent to the destination. (optional)
deliveries[].response_headersobjectResponse headers from the destination. (optional)
deliveries[].delivered_atstringISO 8601 timestamp when the delivery was attempted.
deliveries[].created_atstringISO 8601 timestamp when the log entry was created.

Example

curl -X GET 'https://catalyst-usw.agentuity.cloud/queue/destinations/deliveries/order-processing/dst_abc123?limit=20' \
  -H 'Authorization: Bearer $AGENTUITY_SDK_KEY'

Dead Letter Queue

List DLQ Messages

List dead-letter queue messages.

GET/queue/dlq/list/{name}
https://catalyst-usw.agentuity.cloud/queue/dlq/list/{name}

Parameters

path
NameTypeRequiredDescription
namestringYesQueue name
query
NameTypeRequiredDescription
limitnumberNoMaximum messages to return
offsetnumberNoOffset for pagination

Response

Response containing DLQ messages and optional total.

StatusDescription
200DLQ messages returned
401Unauthorized
404Queue not found

Response Fields

FieldTypeDescription
messagesobject[]DLQ messages
messages[].idstringUnique identifier for the DLQ entry.
messages[].queue_idstringID of the queue this message belongs to.
messages[].original_message_idstringID of the original message that failed (optional until backend includes it). (optional)
messages[].offsetnumberOffset of the original message in the queue.
messages[].payloadanyThe message payload (JSON object).
messages[].metadataobject | nullOptional metadata from the original message. (optional)
messages[].failure_reasonstring | nullReason why the message was moved to DLQ. (optional)
messages[].delivery_attemptsnumberNumber of delivery attempts before failure.
messages[].moved_atstringISO 8601 timestamp when the message was moved to DLQ (optional until backend includes it). (optional)
messages[].original_published_atstringISO 8601 timestamp when the original message was published (optional, falls back to published_at). (optional)
messages[].published_atstringISO 8601 timestamp when the message was published (from base message). (optional)
messages[].created_atstringISO 8601 timestamp when the DLQ entry was created.
totalnumberOptional total DLQ message count (optional)

Example

curl -X GET 'https://catalyst-usw.agentuity.cloud/queue/dlq/list/order-processing?limit=20' \
  -H 'Authorization: Bearer $AGENTUITY_SDK_KEY'

Replay DLQ Message

Replay a DLQ message back to the queue.

POST/queue/dlq/replay/{name}/{messageId}
https://catalyst-usw.agentuity.cloud/queue/dlq/replay/{name}/{messageId}

Parameters

path
NameTypeRequiredDescription
namestringYesQueue name
messageIdstringYesDLQ message ID

Response

Replayed message object.

StatusDescription
200DLQ message replayed
401Unauthorized
404Queue or message not found

Example

curl -X POST 'https://catalyst-usw.agentuity.cloud/queue/dlq/replay/order-processing/msg_abc123' \
  -H 'Authorization: Bearer $AGENTUITY_SDK_KEY'

Purge DLQ

Delete all messages in the dead-letter queue.

DELETE/queue/dlq/purge/{name}
https://catalyst-usw.agentuity.cloud/queue/dlq/purge/{name}

Parameters

path
NameTypeRequiredDescription
namestringYesQueue name

Response

Empty response on success.

StatusDescription
200DLQ purged
401Unauthorized
404Queue not found

Example

curl -X DELETE 'https://catalyst-usw.agentuity.cloud/queue/dlq/purge/order-processing' \
  -H 'Authorization: Bearer $AGENTUITY_SDK_KEY'

Delete DLQ Message

Delete a specific message from the dead-letter queue.

DELETE/queue/dlq/delete/{name}/{messageId}
https://catalyst-usw.agentuity.cloud/queue/dlq/delete/{name}/{messageId}

Parameters

path
NameTypeRequiredDescription
namestringYesQueue name
messageIdstringYesDLQ message ID

Response

Empty response on success.

StatusDescription
200DLQ message deleted
401Unauthorized
404Queue or message not found

Example

curl -X DELETE 'https://catalyst-usw.agentuity.cloud/queue/dlq/delete/order-processing/msg_abc123' \
  -H 'Authorization: Bearer $AGENTUITY_SDK_KEY'