Distributed locks, semaphores, shared rate-limit buckets and monotonic counters for multi-
Distributed locks, semaphores, shared rate-limit buckets and monotonic counters for multi- agent fleets. Use it when nine agents share one upstream API quota, or ten workers must not process the same job twice. Buy an operation budget once, then every call runs at ordinary HTTP latency instead of waiting on settlement. Tiers: 100 ops $0.05, 1000 $0.25, 5000 $1.00. Renew and release are always free. Every acquire returns a fencing token: a TTL lock alone is not mutual exclusion.
250000 (raw units)
price
4
calls / 30d
2
unique payers
2026-09-07
updated
Provider
soren.com · discovered, not yet claimed by its owner
Payment (x402 accepts[])
[
{
"scheme": "exact",
"network": "eip155:8453",
"payTo": "0xaDc3A47EFbD82Ed724a0E9A3D08D5A1A8e6586fd",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"amount": "250000",
"maxTimeoutSeconds": 120
},
{
"scheme": "exact",
"network": "base",
"payTo": "0xaDc3A47EFbD82Ed724a0E9A3D08D5A1A8e6586fd",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"amount": "250000",
"maxTimeoutSeconds": 120
}
]Output schema
{
"bazaar": {
"info": {
"input": {
"method": "POST",
"queryParams": {
"ops": "1000"
},
"type": "http"
},
"output": {
"example": {
"expires_at": "<ISO-8601 UTC>",
"ops_remaining": 1000,
"ops_total": 1000,
"scope": "<your wallet>",
"session_token": "<64 hex>",
"tier": "standard"
},
"type": "json"
}
},
"routeTemplate": "/v1/coord/session",
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"input": {
"additionalProperties": false,
"properties": {
"method": {
"enum": [
"POST"
],
"type": "string"
},
"queryParams": {
"properties": {
"ops": {
"description": "Tier to buy: 100, 1000 or 5000 operations. Default 1000.",
"examples": [
"1000"
],
"type": "string"
}
},
"required": [],
"type": "object"
},
"type": {
"const": "http",
"type": "string"
}
},
"required": [
"type",
"method"
],
"type": "object"
}
}
}
}
}Use it
curl
curl "https://soren.com/v1/coord/session" # -> 402 Payment Required, accepts[] lists how to pay # retry with a PAYMENT-SIGNATURE (or PAYMENT header) once paid
JavaScript
const res = await fetch("https://soren.com/v1/coord/session");
if (res.status === 402) {
const { accepts } = await res.json();
// pay one of accepts[] via an x402 client, then retry with the payment header
}Python
import httpx
res = httpx.get("https://soren.com/v1/coord/session")
if res.status_code == 402:
accepts = res.json()["accepts"]
# pay one of accepts[] via an x402 client, then retry with the payment headerMachine-readable
Everything on this page is also available as clean JSON at /resources/9065.json, and this resource appears in /discovery/resources and /discovery/search.