Api Endpoint

api.loyalspark.online

Onchain loyalty platform on Base Network. Businesses launch branded rewards in minutes, customers earn real value with every purchase, and AI agents automate the rest via REST and MCP. On the paid retry send the payment together with header x-api-key: lsk_... or Authorization: Bearer lsk_.... A payment without a live key is not charged. Read key, no browser: POST https://api.loyalspark.online/x402-gateway/register-agent. HTTP 402 is $0.01 USDC on Base. Pay it and do not send an API key. You receive lsk_ once, scope read only: list your programs, rewards, balances, and analytics. That key cannot mint, deploy a program, create rewards, or trade. A new wallet gets a 45-day Pro trial (5 agents, 10,000 calls/month), then Free (1 agent, 200 calls/month, 1,000 tokens minted/month, 1.25% mint fee) unless that wallet pays. The $0.01 is the call price, not a subscription. No free seat returns 403 before any charge. Write scopes (mint, create_program, manage_rewards, trade) use the same plan: dashboard https://loyalspark.online/merchant → AI Agents, or free SIWE — POST https://api.loyalspark.online/siwe-nonce, sign Chain ID 8453 with the exact phrase 'Register Loyal Spark merchant agent', then POST {message, signature, name, scopes} to https://api.loyalspark.online/agent-register-siwe. Look first with no key: GET https://api.loyalspark.online/x402-gateway/public-programs ($0.001, active programs, not your own list). Guide: https://loyalspark.online/.well-known/skills/00-getting-started.md The call is scoped to the wallet behind that key. 16 skill guides at loyalspark.online/.well-known/skills/index.md.

Open interactive test console

Offering

Provider
api.loyalspark.online
Method
GET
Offering type
Api Endpoint
Transport type
http
Category
Blockchain And Crypto
Delivery
Not provided
Pricing model
Not provided
x402 version
2

Endpoint context

URL
https://api.loyalspark.online/x402-gateway/vouchers
MIME type
application/json
First seen
2026-10-16T01:50:06.715Z
Last seen
Tags
None supplied

Payment pricing

x402 payment terms are the authoritative price for calling this endpoint.

Payment option 1
0.001 USDC
Atomic price: 1000 · Network: eip155:8453 · Asset: USDC · Scheme: exact
Raw x402 terms
[
  {
    "scheme": "exact",
    "network": "eip155:8453",
    "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
    "amount": "1000",
    "payTo": "0x40a8CdD6a10EC1a8cB3dFb2834675e7a2CF4ad8b"
  }
]

Observed health

Status
Healthy
Latest latency
1066 ms
Average latency
724 ms
HTTP status
402
Last checked
Reachability
100% over 14 checks

Latency is measured to the first response headers. A reachable result does not verify response accuracy or merchant identity.

Input schema

{
  "type": "object",
  "properties": {
    "type": {
      "type": "string",
      "const": "http"
    },
    "method": {
      "type": "string",
      "enum": [
        "GET",
        "HEAD",
        "DELETE"
      ]
    },
    "queryParams": {
      "type": "object",
      "additionalProperties": {
        "type": "string"
      }
    },
    "headers": {
      "type": "object",
      "additionalProperties": {
        "type": "string"
      }
    }
  },
  "required": [
    "type",
    "method"
  ],
  "additionalProperties": false
}

Output schema

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "properties": {
    "input": {
      "additionalProperties": false,
      "properties": {
        "headers": {
          "additionalProperties": {
            "type": "string"
          },
          "type": "object"
        },
        "method": {
          "enum": [
            "GET",
            "HEAD",
            "DELETE"
          ],
          "type": "string"
        },
        "queryParams": {
          "additionalProperties": {
            "type": "string"
          },
          "type": "object"
        },
        "type": {
          "const": "http",
          "type": "string"
        }
      },
      "required": [
        "type",
        "method"
      ],
      "type": "object"
    },
    "inputSchema": {
      "type": "object"
    },
    "output": {
      "properties": {
        "example": {},
        "type": {
          "type": "string"
        }
      },
      "required": [
        "type"
      ],
      "type": "object"
    }
  },
  "required": [
    "input"
  ],
  "type": "object"
}