Queue
queue provides durable work queues: send messages, long-poll receive, ack/delete, visibility timeout, and dead-letter redrive.
Status: Preview — SQS JSON surface on the queue service. Hostname: queue.eu-central-1.cloud.skippr.io. Do not treat Streams as the SQS API.
Concepts
| Term | Meaning |
|---|---|
| Queue | Named work queue in your account |
| Visibility timeout | Period after receive during which the message is hidden |
| Ack / delete | Remove a message after successful processing (DeleteMessage) |
| Redrive / DLQ | After maxReceiveCount receives, message moves to a dead-letter queue |
| Retention | Platform max age is 7 days; shorter values allowed on create/set |
FIFO queues are not in v1.
Access
| Hostname | queue.eu-central-1.cloud.skippr.io (or api.cloud.skippr.io with SigV4 sqs) |
| Protocol | SQS JSON (X-Amz-Target: AmazonSQS.*) |
| Auth | JWT required; SigV4 service sqs, region eu-central-1 |
| Tenant | From JWT claims only |
Quickstart
Create a queue, send a message, receive and delete (against the published queue hostname once live):
bash
export AWS_ACCESS_KEY_ID="<your-cloud-access-key>"
export AWS_SECRET_ACCESS_KEY="<your-cloud-secret-key>"
export AWS_DEFAULT_REGION=eu-central-1
aws sqs create-queue \
--queue-name my-jobs \
--endpoint-url https://queue.eu-central-1.cloud.skippr.io \
--region eu-central-1
aws sqs send-message \
--queue-url "https://queue.eu-central-1.cloud.skippr.io/<tenant>/my-jobs" \
--message-body '{"job":"sync"}' \
--endpoint-url https://queue.eu-central-1.cloud.skippr.io
aws sqs receive-message \
--queue-url "https://queue.eu-central-1.cloud.skippr.io/<tenant>/my-jobs" \
--wait-time-seconds 10 \
--visibility-timeout 30 \
--endpoint-url https://queue.eu-central-1.cloud.skippr.io
aws sqs list-queues \
--queue-name-prefix my- \
--endpoint-url https://queue.eu-central-1.cloud.skippr.io
aws sqs purge-queue \
--queue-url "https://queue.eu-central-1.cloud.skippr.io/<tenant>/my-jobs" \
--endpoint-url https://queue.eu-central-1.cloud.skippr.io
aws sqs delete-message \
--queue-url "https://queue.eu-central-1.cloud.skippr.io/<tenant>/my-jobs" \
--receipt-handle "<ReceiptHandle>" \
--endpoint-url https://queue.eu-central-1.cloud.skippr.ioReplace <tenant> with your account tenant id. SigV4 service must be sqs.
Operations (Preview)
| Operation | Notes |
|---|---|
CreateQueue / DeleteQueue | Queue lifecycle; retention capped at 7 days |
GetQueueUrl | Resolve queue URL by name |
SendMessage / SendMessageBatch | Publish work items |
ReceiveMessage | Long poll (WaitTimeSeconds up to 20s) |
DeleteMessage | Ack after successful processing |
ChangeMessageVisibility | Extend hide period while working |
GetQueueAttributes | Approximate depth, not visible, oldest age |
SetQueueAttributes | Retention, visibility default, RedrivePolicy |
ListQueues | Tenant-scoped; optional QueueNamePrefix |
PurgeQueue | Delete all messages; queue remains |
Ignored create/set attributes (e.g. DelaySeconds) are reported via the x-cloud-ignored response header.
