B

SocioLogic RNG — MPP Grade B

randomnesscryptographyutilitiesrngentropy
Preview responses and set spending limits for this service through use.mpp.land Free budget controls, response samples, and reliability routing.

Compliance Checks

All paid ops declare 402 response MUST 10pt
All x-payment-info valid MUST 10pt
Challenge has Cache-Control: no-store MUST 5pt
- Challenge digest on POST SHOULD 3pt
Challenge has expires SHOULD 3pt
Challenge has Problem Details SHOULD 2pt
Challenge has required params MUST 5pt
Challenge has WWW-Authenticate MUST 5pt
Challenge returns 402 MUST 10pt
Correct Content-Type MUST 5pt
Has Cache-Control on discovery SHOULD 5pt
Has input schemas SHOULD 5pt
Has llms.txt SHOULD 5pt
Has /openapi.json at root MUST 10pt
Has required top-level fields MUST 10pt
Served over HTTPS MUST 10pt
Uses standard categories SHOULD 2pt
1 issue
  • 402 response missing Cache-Control: no-store

Paid Operations (7)

GET /random dynamic
Random float between 0 and 1

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
Non-standard x-payment-info fields: 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

NameInTypeRequiredDescription
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
Random integer in range

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
Non-standard x-payment-info fields: 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

NameInTypeRequiredDescription
min query integer No Minimum value (inclusive)
max query integer No Maximum value (inclusive)

Response Schema (200)

FieldTypeDescription
entropy object -
range array[integer] -
type string -
value integer Random integer in [min, max]
GET /uuid dynamic
Generate UUID v4

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
Non-standard x-payment-info fields: 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

NameInTypeRequiredDescription
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

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
Non-standard x-payment-info fields: 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

NameInTypeRequiredDescription
sides query integer No Number of sides

Response Schema (200)

FieldTypeDescription
entropy object -
roll integer Result (1 to sides)
sides integer -
GET /coin dynamic
Flip a coin

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
Non-standard x-payment-info fields: 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

NameInTypeRequiredDescription
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

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
Non-standard x-payment-info fields: 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)

FieldTypeDescription
count integer -
entropy object -
shuffled array -
POST /weighted dynamic
Weighted random selection

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
Non-standard x-payment-info fields: 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

FieldTypeRequiredDescription
items array Yes Items to choose from
weights array Yes Corresponding weights (positive)

Response Schema (200)

FieldTypeDescription
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)

Grade: F (20%) → B (76%)
Grade: B (76%) → F (20%)
  • 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