SocioLogic RNG — MPP Grade B
Compliance Checks
1 issue
- 402 response missing Cache-Control: no-store
Paid Operations (7)
GET /random dynamic
Generate cryptographically secure random float(s) in [0, 1) using rejection sampling. Use count for multiple values - price scales linearly ($0.01 per value).
- Amount
- map[currency:USD max:1.000000 min:0.010000 mode:dynamic]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
offers: [map[amount:<nil> currency:usd description:$0.01 per value, scales with count intent:charge method:tempo]] price: map[currency:USD max:1.000000 min:0.010000 mode:dynamic] protocols: [map[x402:map[]] map[mpp:map[currency:0x20C000000000000000000000b9537d11c60E8b50 intent:charge method:tempo]]]
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| count | query | integer | No | Number of values (default 1, max 100). Price: $0.01 per value. |
Response Schema (200)
{
"oneOf": [
{
"description": "Single value (count=1)",
"properties": {
"entropy": {
"properties": {
"hex": {
"type": "string"
},
"raw": {
"type": "integer"
}
},
"type": "object"
},
"range": {
"items": {
"type": "number"
},
"type": "array"
},
"type": {
"enum": [
"float"
],
"type": "string"
},
"value": {
"description": "Random float in [0, 1)",
"type": "number"
}
},
"type": "object"
},
{
"description": "Multiple values (count\u003e1)",
"properties": {
"count": {
"type": "integer"
},
"entropy": {
"properties": {
"hex": {
"items": {
"type": "string"
},
"type": "array"
},
"raw": {
"items": {
"type": "integer"
},
"type": "array"
}
},
"type": "object"
},
"range": {
"items": {
"type": "number"
},
"type": "array"
},
"type": {
"enum": [
"float"
],
"type": "string"
},
"values": {
"description": "Random floats in [0, 1)",
"items": {
"type": "number"
},
"type": "array"
}
},
"type": "object"
}
]
}
GET /random/int dynamic
Generate a cryptographically secure random integer between min and max (inclusive) using rejection sampling to eliminate modulo bias.
- Amount
- map[amount:0.010000 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
offers: [map[amount:10000 currency:usd description:Random integer in range intent:charge method:tempo]] price: map[amount:0.010000 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20C000000000000000000000b9537d11c60E8b50 intent:charge method:tempo]]]
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| min | query | integer | No | Minimum value (inclusive) |
| max | query | integer | No | Maximum value (inclusive) |
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| entropy | object | - |
| range | array[integer] | - |
| type | string | - |
| value | integer | Random integer in [min, max] |
GET /uuid dynamic
Generate cryptographically secure UUID v4(s) with raw entropy bytes. Use count for multiple UUIDs - price scales linearly ($0.01 per UUID).
- Amount
- map[currency:USD max:1.000000 min:0.010000 mode:dynamic]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
offers: [map[amount:<nil> currency:usd description:$0.01 per value, scales with count intent:charge method:tempo]] price: map[currency:USD max:1.000000 min:0.010000 mode:dynamic] protocols: [map[x402:map[]] map[mpp:map[currency:0x20C000000000000000000000b9537d11c60E8b50 intent:charge method:tempo]]]
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| count | query | integer | No | Number of UUIDs (default 1, max 100). Price: $0.01 per UUID. |
Response Schema (200)
{
"oneOf": [
{
"description": "Single UUID (count=1)",
"properties": {
"entropy": {
"properties": {
"hex": {
"items": {
"type": "string"
},
"type": "array"
},
"raw": {
"items": {
"type": "integer"
},
"type": "array"
}
},
"type": "object"
},
"type": {
"enum": [
"uuid"
],
"type": "string"
},
"value": {
"format": "uuid",
"type": "string"
},
"version": {
"enum": [
4
],
"type": "integer"
}
},
"type": "object"
},
{
"description": "Multiple UUIDs (count\u003e1)",
"properties": {
"count": {
"type": "integer"
},
"entropy": {
"properties": {
"hex": {
"items": {
"items": {
"type": "string"
},
"type": "array"
},
"type": "array"
},
"raw": {
"items": {
"items": {
"type": "integer"
},
"type": "array"
},
"type": "array"
}
},
"type": "object"
},
"type": {
"enum": [
"uuid"
],
"type": "string"
},
"values": {
"items": {
"format": "uuid",
"type": "string"
},
"type": "array"
},
"version": {
"enum": [
4
],
"type": "integer"
}
},
"type": "object"
}
]
}
GET /dice dynamic
Roll a die with configurable sides (2-1000). Uses rejection sampling for unbiased results.
- Amount
- map[amount:0.020000 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
offers: [map[amount:20000 currency:usd description:$0.02 per call intent:charge method:tempo]] price: map[amount:0.020000 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20C000000000000000000000b9537d11c60E8b50 intent:charge method:tempo]]]
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| sides | query | integer | No | Number of sides |
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| entropy | object | - |
| roll | integer | Result (1 to sides) |
| sides | integer | - |
GET /coin dynamic
Cryptographically fair coin flip returning heads or tails. Use count for multiple flips in one call - price scales linearly ($0.02 per flip).
- Amount
- map[currency:USD max:2.000000 min:0.020000 mode:dynamic]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
offers: [map[amount:<nil> currency:usd description:$0.02 per flip, scales with count intent:charge method:tempo]] price: map[currency:USD max:2.000000 min:0.020000 mode:dynamic] protocols: [map[x402:map[]] map[mpp:map[currency:0x20C000000000000000000000b9537d11c60E8b50 intent:charge method:tempo]]]
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| count | query | integer | No | Number of flips (default 1, max 100). Price: $0.02 per flip. |
Response Schema (200)
{
"oneOf": [
{
"description": "Single flip (count=1)",
"properties": {
"entropy": {
"properties": {
"hex": {
"type": "string"
},
"raw": {
"type": "integer"
}
},
"type": "object"
},
"flip": {
"enum": [
"heads",
"tails"
],
"type": "string"
}
},
"type": "object"
},
{
"description": "Multiple flips (count\u003e1)",
"properties": {
"count": {
"type": "integer"
},
"entropy": {
"properties": {
"hex": {
"items": {
"type": "string"
},
"type": "array"
},
"raw": {
"items": {
"type": "integer"
},
"type": "array"
}
},
"type": "object"
},
"flips": {
"items": {
"enum": [
"heads",
"tails"
],
"type": "string"
},
"type": "array"
}
},
"type": "object"
}
]
}
POST /shuffle dynamic
Shuffle an array using the Fisher-Yates algorithm with cryptographic randomness. Max 1000 items, 100KB payload.
- Amount
- map[amount:0.020000 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
offers: [map[amount:20000 currency:usd description:$0.02 per call intent:charge method:tempo]] price: map[amount:0.020000 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20C000000000000000000000b9537d11c60E8b50 intent:charge method:tempo]]]
Input Schema
{
"description": "Array of items to shuffle",
"items": {},
"maxItems": 1000,
"type": "array"
}
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| count | integer | - |
| entropy | object | - |
| shuffled | array | - |
POST /weighted dynamic
Select a random item from weighted options. Weights can be any positive numbers. Max 1000 items.
- Amount
- map[amount:0.020000 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
offers: [map[amount:20000 currency:usd description:$0.02 per call intent:charge method:tempo]] price: map[amount:0.020000 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20C000000000000000000000b9537d11c60E8b50 intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| items | array | Yes | Items to choose from |
| weights | array | Yes | Corresponding weights (positive) |
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| entropy | object | - |
| probability | number | - |
| selected | The selected item | |
| selectedIndex | integer | - |
Payment Methods
- Methods
- tempo (from challenge)
- Intents
- charge (from challenge)
- Currencies (discovery)
- -
- Currency (challenge)
- USDC.e on Tempo Mainnet Presto (Tempo Mainnet Presto)
- Multiple Challenges
- No
Recipients
- 0x0b6E3594Df4Faa6D66196D5a3271796AD8Bb505d
Per-endpoint breakdown
- GET /coin
- 0x0b6E3594Df4Faa6D66196D5a3271796AD8Bb505d
- GET /dice
- 0x0b6E3594Df4Faa6D66196D5a3271796AD8Bb505d
- GET /random
- 0x0b6E3594Df4Faa6D66196D5a3271796AD8Bb505d
- GET /random/int
- 0x0b6E3594Df4Faa6D66196D5a3271796AD8Bb505d
- GET /uuid
- 0x0b6E3594Df4Faa6D66196D5a3271796AD8Bb505d
- POST /shuffle
- 0x0b6E3594Df4Faa6D66196D5a3271796AD8Bb505d
Security
- TLS Version
- TLSv1.3
- Challenge ID Unique
- Yes
- Challenge ID Length
- 43
- Digest Binding
- -
Uptime
- Discovery
- Reachable (74ms)
- Challenge
- Reachable (423ms)
- Last Checked
Schema Completeness
- Paid Operations
- 7
- With Input Schema
- 2
- With Description
- 7
5 missing schema
- GET /random
- GET /random/int
- GET /uuid
- GET /dice
- GET /coin
Documentation
- Homepage
- https://www.sociologic.ai
- API Reference
- https://rng.sociologic.ai/openapi.json
- llms.txt
- https://rng.sociologic.ai/llms.txt reachable
Discovery
- OpenAPI URL
- https://rng.sociologic.ai/openapi.json
- OpenAPI Version
- 3.1.0
- Service Version
- 1.0.0
- Document Size
- 10936 bytes
- Document Hash
- 005a87fcd58bd1ed58e652b91daa04508365ea46a35b03d16a08dad5f40c9cd3
Version History (30 snapshots)
- document hash changed (no semantic differences detected)
Scan snapshots
| Date | Grade | Score | Response | Status |
|---|---|---|---|---|
| 2026-05-03 | B | 76% | 183ms | Up |
| 2026-05-04 | B | 76% | 54ms | Up |
| 2026-05-05 | B | 76% | 57ms | Up |
| 2026-05-06 | B | 76% | 54ms | Up |
| 2026-05-07 | B | 76% | 50ms | Up |
| 2026-05-08 | B | 76% | 78ms | Up |
| 2026-05-09 | B | 76% | 56ms | Up |
| 2026-05-10 | B | 76% | 441ms | Up |
| 2026-05-11 | B | 76% | 309ms | Up |
| 2026-05-12 | B | 76% | 211ms | Up |
| 2026-05-13 | B | 76% | 51ms | Up |
| 2026-05-14 | B | 76% | 68ms | Up |
| 2026-05-15 | B | 76% | 54ms | Up |
| 2026-05-16 | B | 76% | 63ms | Up |
| 2026-05-17 | B | 76% | 51ms | Up |
| 2026-05-18 | B | 76% | 155ms | Up |
| 2026-05-19 | B | 76% | 184ms | Up |
| 2026-05-20 | B | 76% | 74ms | Up |
| 2026-05-21 | B | 76% | 64ms | Up |
| 2026-05-22 | B | 76% | 68ms | Up |
| 2026-05-23 | B | 76% | 61ms | Up |
| 2026-05-24 | F | 20% | 56ms | Up |
| 2026-05-25 | B | 76% | 61ms | Up |
| 2026-05-26 | B | 76% | 49ms | Up |
| 2026-05-27 | B | 76% | 159ms | Up |
| 2026-05-28 | B | 76% | 147ms | Up |
| 2026-05-29 | B | 76% | 58ms | Up |
| 2026-05-30 | B | 76% | 106ms | Up |
| 2026-05-31 | B | 76% | 153ms | Up |
| 2026-06-01 | B | 76% | 197ms | Up |