okmq

okmq gives AI agents a simple message queue. It lets clients publish and consume messages over MCP, making it easy to build lightweight workflows and prototypes.

Documentation

Simple REST API for reliable message delivery. Persistence, retry strategies, TTL support, and real-time long polling — on flat pricing that grows with you, not metered bills.

Just HTTP. That's it.

Send and receive messages using familiar REST patterns. No SDKs, no special clients.

Complete Example

const host = 'https://api.okmq.net'
const token = process.env.OKMQ_API_KEY

// Create queue (only needed once)
await fetch(\`${host}/queues\`, {
  method: 'POST',
  headers: { authorization: token, 'content-type': 'application/json' },
  body: JSON.stringify({ name: 'demo', auto_ack: true })
})

// consumer
const consumer = async () => {
  while (true) {
    const response = await fetch(\`${host}/queues/demo/messages\`, {
      headers: { authorization: token }
    })

    const messages = await response.json()
    console.log('Received:', messages)
  }
}

// Start consumer in background
consumer()

// producer
setInterval(async () => {
  await fetch(\`${host}/queues/demo/messages\`, {
    method: 'POST',
    headers: { authorization: token, 'content-type': 'application/json' },
    body: JSON.stringify([{
      id: \`msg-${Date.now()}\`,
      body: \`Hello at ${new Date().toISOString()}\`
    }])
  })
}, 1000)

Features

Everything you need for reliable message processing

Topics

Publish to topics for fan-out distribution to multiple queues

Retry Strategies

Exponential, linear, and fixed retry patterns

Real-time Polling

Instant message retrieval with long polling support

Message Tags

Filter and organize messages within a single queue

Scheduled Delivery

Delay message delivery until a specific time

Streams

Persistent event streams with offset-based consumption and replay

For agentic workflows

A durable inbox for every actor

One queue per actor, tags for addressing. Escalation is a resend that carries the failure — so a retry is not a repeat, it is a smarter attempt. OKMQ is the durable inbox layer between decisions, not an orchestrator.

Escalation with memory

A failed task is resent to the next actor with the error appended. The retry knows what went wrong.

Locks claim the work

Lock duration is the claim lease. An actor that crashes mid-task releases the message to the next poller.

Approval gates

Pause before anything irreversible. The human verdict is a durable message — grant and reject are symmetric.

Why Choose OKMQ?

See how OKMQ compares to other managed messaging services

FeatureOKMQAWS SQSGCP Pub/Sub
Retry Strategies4 Built-in TypesBasic + DLQExponential Only
Message SchedulingNative SupportDelay Queues
Message FilteringTag-basedAttributes
Message Size1MB1MB10MB
TTL SupportBuilt-inRetention OnlyRetention Only
Topic Fan-outBuilt-inVia SNSCore Feature
Consumption PatternsBoth ModelsCompeting OnlyBoth Models
Agent-native patternsDocumentedNoneNone
Pricing modelFlat & predictableMeteredMetered

Simple, Transparent Pricing

Choose the plan that fits your needs. All plans include our core features.

Pay for reserved capacity, not metered usage. No surprise bills at month end.

Free

$0 /month

Perfect for getting started

Starter

$5 /month

Perfect for small projects

Most Popular

Pro

$10 /month

Perfect for production applications

Ready to Get Started?

Send your first message in minutes with nothing but curl. Start free, upgrade when you need to scale.

OR

Free tier available

Simple HTTP API

Setup in under 5 minutes