diff --git a/schemas/services.ts b/schemas/services.ts index e7f5cb78..58c906c9 100644 --- a/schemas/services.ts +++ b/schemas/services.ts @@ -4687,6 +4687,56 @@ export const services: ServiceDef[] = [ }, ], }, + + // ── Loyal Spark ───────────────────────────────────────────────────────── + { + id: "loyal-spark", + name: "Loyal Spark", + url: "https://loyalspark.online", + serviceUrl: "https://bzxmejzssxjazswgwqqs.supabase.co/functions/v1/mpp-gateway", + description: "Onchain loyalty protocol for AI agents — create ERC-20 programs, mint tokens, manage rewards, trade on P2P marketplace, and get autonomous MPC wallets. All on Base L2.", + categories: ["blockchain"] as Category[], + integration: "first-party" as Integration, + tags: [ + "loyalty", + "rewards", + "erc20", + "base", + "defi", + "marketplace", + "mcp", + "ai-agents", + "mpc-wallet", + ], + docs: { + homepage: "https://loyalspark.online/api-docs", + llmsTxt: "https://loyalspark.online/llms.txt", + }, + provider: { name: "Loyal Spark", url: "https://loyalspark.online" }, + realm: "bzxmejzssxjazswgwqqs.supabase.co", + intent: "charge" as Intent, + payment: TEMPO_PAYMENT, + endpoints: [ + { route: "GET /me", desc: "Get agent profile, permissions, plan, and wallet info" }, + { route: "GET /programs", desc: "List all active loyalty programs", amount: "1000" }, + { route: "GET /rewards", desc: "List rewards for a loyalty program", amount: "1000" }, + { route: "GET /balance", desc: "Check token balance and tier info", amount: "1000" }, + { route: "GET /customers", desc: "List customers with token balances", amount: "2000" }, + { route: "GET /vouchers", desc: "List vouchers with filters", amount: "1000" }, + { route: "GET /analytics", desc: "Get program analytics and metrics", amount: "5000" }, + { route: "GET /offers", desc: "List active P2P marketplace offers", amount: "1000" }, + { route: "POST /programs", desc: "Deploy new ERC-20 loyalty token via factory", amount: "50000" }, + { route: "POST /register-program", desc: "Register deployed token as loyalty program", amount: "10000" }, + { route: "POST /activate-program", desc: "Get activation calldata (unpause + enableMinting)", amount: "10000" }, + { route: "POST /program-status", desc: "Update program status after on-chain action", amount: "5000" }, + { route: "POST /rewards", desc: "Create a new reward for a program", amount: "10000" }, + { route: "POST /mint", desc: "Mint loyalty tokens to a wallet address", amount: "10000" }, + { route: "POST /transfer", desc: "Transfer loyalty tokens between wallets", amount: "5000" }, + { route: "POST /offers", desc: "Create P2P escrow offer for token trading", amount: "10000" }, + { route: "POST /accept-offer", desc: "Accept a P2P offer (atomic escrow swap)", amount: "10000" }, + { route: "POST /cancel-offer", desc: "Cancel your own P2P offer", amount: "5000" }, + ], + }, // ── Mapbox ─────────────────────────────────────────────────────────── {