MIR Sandbox

Experience cross-system participation history. Sign in, get a sandbox API key, submit events, resolve identities -- see what happens when multiple participants share the same history layer.

—
Participants
—
Events Recorded
—
Unique Identities
—
Last 24h

1 Try It Now

No account needed. Use the public sandbox key below to submit events and evaluate policies right now.

Set this in your terminal once:

export YOUR_SANDBOX_KEY="mir_sandbox_public_2026"

This is a shared public key. Events are isolated to the sandbox and don't affect production data.

Want your own key?

Sign in for a dedicated sandbox key with your own event history.

2 Submit an Event

Record a participation event. Pick a user and event type, then hit Submit. The event is recorded instantly.

curl equivalent
curl -s -X POST https://mir.events/v1/events \
  -H "Content-Type: application/json" \
  -H "x-api-key: $YOUR_SANDBOX_KEY" \
  -d '{
    "userExternalId": "user_alice",
    "eventType": "transaction.completed",
    "occurredAt": "'$(date -u +%Y-%m-%dT%H:%M:%S.000Z)'"
  }' | jq

3 Evaluate a Policy Decision

Ask MIR whether an actor should be allowed to perform an action. The response is based on their actual participation history.

All four recommendations are reachable. agent_alpha + general.search returns ALLOW; agent_alpha + data.bulk_download returns LIMIT, because it is one tier short on a bounded read and so proceeds with a row cap instead of asking for approval; user_charlie + iam.grant_admin returns STEP_UP; and user_alice + data.export_pii returns DENY, because she has active claims against a long history. MIR records those claims and surfaces them; what they mean is the consuming system's call.

This sandbox is shared and writable by anyone -- the forms above submit real events and claims against these same actors -- so their standing drifts and the examples here will shift over time. That drift is the product working, not a fault: standing is a function of what an entity has actually done.

curl equivalent
curl -s -X POST https://mir.events/v1/policy/evaluate?debug=true \
  -H "Content-Type: application/json" \
  -H "x-api-key: $YOUR_SANDBOX_KEY" \
  -d '{
    "actor": {
      "id": "user_alice",
      "type": "human"
    },
    "action": "iam.grant_admin"
  }' | jq

4 Submit a Claim

Claims are attributed assertions about negative behaviors (chargebacks, suspensions, policy violations). They are recorded and surfaced but do not affect tier calculations. Consuming partners decide what claims mean for their context.

curl equivalent
curl -s -X POST https://mir.events/v1/claims \
  -H "Content-Type: application/json" \
  -H "x-api-key: $YOUR_SANDBOX_KEY" \
  -d '{
    "userExternalId": "user_alice",
    "claimType": "claim.chargeback"
  }' | jq

After submitting a claim, run a policy evaluation on the same user. You'll see the claimStatus field change from clean to flagged or elevated, and high-risk actions may be denied.

Live Feed

Recent sandbox activity across all participants.

No sandbox events yet. Be the first.