API Reference
Complete API reference for Alien Queue bindings.
send
Sends a message to the queue.
await queue.send(queueName, { type: "process-image", imageId: "123" })
await queue.sendText(queueName, "ping")queue.send(queue_name, MessagePayload::Json(json!({
"type": "process-image", "imageId": "123"
}))).await?;
queue.send(queue_name, MessagePayload::Text("ping".into())).await?;| Parameter | Type | Required | Description |
|---|---|---|---|
queueName | string | Yes | Queue name (matches stack definition). |
payload | JSON | string | Yes | Max 64 KiB after serialization. |
receive
Receives messages. Messages become invisible for 30 seconds (lease).
const messages = await queue.receive<T>(queueName, maxMessages?)
// messages: Array<{ payload: T, receiptHandle: string }>let messages: Vec<QueueMessage> = queue.receive(queue_name, max_messages).await?;| Parameter | Type | Required | Description |
|---|---|---|---|
queueName | string | Yes | Queue name. |
maxMessages | number | No | Default and max: 10. |
ack
Acknowledges a message, permanently removing it. Idempotent.
await queue.ack(queueName, msg.receiptHandle)queue.ack(queue_name, &msg.receipt_handle).await?;process (TypeScript only)
Receives, calls handler, auto-acks on success.
await queue.process<T>(queueName, async (payload: T) => {
await handleMessage(payload)
}, { maxMessages: 5 })Types
interface ReceivedQueueMessage<T = unknown> {
payload: T
receiptHandle: string
}pub enum MessagePayload {
Json(serde_json::Value),
Text(String),
}
pub struct QueueMessage {
pub payload: MessagePayload,
pub receipt_handle: String,
}