{
  "aiendpoint": "1.0",
  "service": {
    "name": "LN Church",
    "description": "Public-safe evidence and payment-aware observability layer for HTTP 402-compatible agentic commerce.",
    "category": [
      "developer",
      "finance",
      "data"
    ],
    "language": [
      "en",
      "ja"
    ]
  },
  "capabilities": [
    {
      "id": "surface_preflight",
      "description": "Read public-safe observed memory for a known surface before live interaction.",
      "endpoint": "/api/agent/external/surface-preflight",
      "method": "GET",
      "params": {
        "target_url": "string, optional -- concrete surface URL",
        "surface_key": "string, optional -- canonical surface key"
      },
      "returns": "surface_preflight_read_model {known, evidence_grade, guardrails}"
    },
    {
      "id": "paid_domain_observation_slot",
      "description": "Pay LN Church to enqueue a public domain for OpenClaw public-safe observation. This is a paid request to LN Church, not a payment to the target domain. It is not a security scan, recommendation, certification, or domain-owner verification in MVP v0.",
      "endpoint": "/api/bazaar/domain-observation-slots",
      "method": "POST",
      "params": {
        "domain": "string, required -- public domain to observe",
        "agentId": "string, optional -- requester agent identity"
      },
      "returns": "domain_observation_request {request_id, status_url, public_read_model_url}"
    },
    {
      "id": "domain_observation_status",
      "description": "Read status for a previously registered domain observation request.",
      "endpoint": "/api/agent/external/observatory/domain-observation-requests/{request_id}",
      "method": "GET",
      "params": {
        "request_id": "string, required -- observation request ID"
      },
      "returns": "domain_observation_request_status {status, domain, expires_at}"
    },
    {
      "id": "domain_observation_read_model",
      "description": "Read public-safe observation memory for a domain.",
      "endpoint": "/api/agent/external/observatory/domains/{domain}",
      "method": "GET",
      "params": {
        "domain": "string, required -- public domain"
      },
      "returns": "domain_observation_read_model {domain, latest_observations}"
    },
    {
      "id": "goal_attempt_summary",
      "description": "Read lightweight aggregate memory for observed goal attempts.",
      "endpoint": "/api/agent/monzen/goal-attempts/summary",
      "method": "GET",
      "params": {
        "goal_type": "string, optional -- goal type filter",
        "domain_hint": "string, optional -- domain hint"
      },
      "returns": "goal_attempt_summary {counts, modes, unassessed_ratio}"
    },
    {
      "id": "goal_surface_candidates",
      "description": "Paid compact read model of historically observed candidate surfaces for a goal.",
      "endpoint": "/api/agent/monzen/goal-attempts/candidates",
      "method": "GET",
      "params": {
        "goal_type": "string, optional -- goal type filter",
        "prefer_free_first": "boolean, optional -- prioritize free historical steps"
      },
      "returns": "candidate_surfaces[]; observed memory, not recommendation"
    },
    {
      "id": "bazaar_omikuji",
      "description": "x402 exact paid oracle action for Coinbase CDP / Agentic.Market agents.",
      "endpoint": "/api/bazaar/omikuji",
      "method": "POST",
      "returns": "paid oracle result and receipt metadata"
    },
    {
      "id": "sandbox_l402_basic",
      "description": "Deterministic L402 interoperability sandbox.",
      "endpoint": "/api/agent/sandbox/l402/basic",
      "method": "GET",
      "returns": "sandbox diagnostic response"
    },
    {
      "id": "sandbox_mpp_charge_basic",
      "description": "Deterministic MPP charge interoperability sandbox.",
      "endpoint": "/api/agent/sandbox/mpp/charge/basic",
      "method": "GET",
      "returns": "sandbox diagnostic response"
    },
    {
      "id": "sandbox_x402_evm_exact_basic",
      "description": "x402 EVM exact diagnostic sandbox for challenge-shape validation.",
      "endpoint": "/api/agent/sandbox/x402/evm/exact/basic",
      "method": "GET",
      "returns": "x402 exact diagnostic challenge or validation response"
    }
  ],
  "token_hints": {
    "compact_mode": false,
    "field_filtering": false,
    "delta_support": false
  },
  "rate_limits": {
    "requests_per_minute": 60,
    "agent_tier_available": false
  },
  "meta": {
    "last_updated": "2026-06-26",
    "changelog": "/for-agents.md",
    "status": "/",
    "document_status": "ietf_aiendpoint_draft_candidate",
    "not_a_recommendation": true,
    "not_a_verdict": true,
    "not_a_certification": true,
    "not_a_security_scan": true,
    "canonical_docs": [
      "/llms.txt",
      "/llms-full.txt",
      "/for-agents.md",
      "/SKILL.md",
      "/openapi.yaml",
      "/agent-api.json",
      "/.well-known/ai-catalog.json"
    ]
  }
}