[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6F40DSA8YKPSCB5SJM4R8Z5":3,"skill-same:01M6F40DSA8YKPSCB5SJM4R8Z5":45},{"skillNo":4,"name":5,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":17,"publishedAt":18,"linkOnly":19,"markdownContent":20,"markdownBody":20,"frontMatter":21,"refName":22,"commitSha":23,"skillDirectory":24,"forksCount":25,"repositoryHtmlUrl":26,"repositoryHomepageUrl":27,"ownerHtmlUrl":28,"ownerBlogUrl":6,"ownerDescription":29,"updatedAt":30,"install":31,"resources":44},"01M6F40DSA8YKPSCB5SJM4R8Z5","nightmarket",null,"ComeOnOliver\u002Fskillshub","ComeOnOliver","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F43215937?v=4","01M6E5JNFECJAAVFE0W7SMWWD2","Haoran Shu","01M6E5JNNDQS7AJZDYFQ8TPZCK",67,"MIT","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002FelizaOS\u002Feliza\u002Fnightmarket\u002FSKILL.md",[],[5],"2026-11-10 10:12:30",false,"# Nightmarket — API Marketplace for AI Agents\n\nNightmarket is a marketplace where AI agents discover and pay for third-party API services. Every call settles on-chain in USDC on Base. No API keys, no subscriptions — just make an HTTP request, pay, and get your response.\n\n## When to Use\n\n- You need a third-party API (data enrichment, analytics, automation, AI models, content generation, etc.)\n- User asks to find, browse, or call an API service\n- You get a `402 Payment Required` from a `nightmarket.ai` URL\n- User wants their agent to access external services without managing API keys\n\n## Searching for Services\n\nSearch the marketplace to find what you need:\n\n```bash\n# Search for services by keyword\ncurl \"https:\u002F\u002Fnightmarket.ai\u002Fapi\u002Fmarketplace?search=weather\"\n\n# List all services sorted by popularity\ncurl \"https:\u002F\u002Fnightmarket.ai\u002Fapi\u002Fmarketplace?sort=popular\"\n\n# Combine search and sort\ncurl \"https:\u002F\u002Fnightmarket.ai\u002Fapi\u002Fmarketplace?search=sentiment&sort=price_asc\"\n```\n\n**Parameters:**\n- `search` (optional) — filter by name, description, or seller\n- `sort` (optional) — `popular`, `newest`, `price_asc`, `price_desc` (default: `popular`)\n\n**Response:**\n```json\n[\n  {\n    \"_id\": \"abc123def456\",\n    \"name\": \"Weather Forecast API\",\n    \"description\": \"Get current weather and 7-day forecasts for any location\",\n    \"method\": \"GET\",\n    \"priceUsdc\": 0.01,\n    \"totalCalls\": 1247,\n    \"totalRevenue\": 12.47,\n    \"seller\": { \"companyName\": \"WeatherCo\" }\n  }\n]\n```\n\n**Get full details for a specific service** (includes request\u002Fresponse examples):\n\n```bash\ncurl \"https:\u002F\u002Fnightmarket.ai\u002Fapi\u002Fmarketplace\u002Fabc123def456\"\n```\n\nThis returns the same fields plus `requestExample` and `responseExample` — exactly what you need to know how to call it.\n\n## Calling a Service\n\nEvery service has a proxy URL. Make a standard HTTP request:\n\n```bash\ncurl -X POST \"https:\u002F\u002Fnightmarket.ai\u002Fapi\u002Fx402\u002F\u003Cendpoint_id>\" \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\"query\": \"your request here\"}'\n```\n\nThe first call returns `402 Payment Required`. Pay, then retry with proof. The proxy forwards to the seller's API and returns the response.\n\nRead `references\u002Fapi.md` for all headers, request\u002Fresponse formats, and error codes.\n\n## The Payment Flow\n\n1. **Make the request** — standard HTTP to the proxy URL\n2. **Receive 402** — response includes a `PAYMENT-REQUIRED` header with: scheme, payTo address, price (USDC), and network (Base)\n3. **Pay** — sign the payment with your wallet or use CrowPay to handle it\n4. **Retry with proof** — resend the same request with the `payment-signature` header\n5. **Get your response** — proxy verifies payment on-chain, forwards to seller, returns the result\n\n## Paying with CrowPay (recommended)\n\n```bash\ncurl -X POST https:\u002F\u002Fapi.crowpay.ai\u002Fauthorize \\\n  -H \"X-API-Key: crow_sk_...\" \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\"paymentRequired\": \u003C402 response body>, \"merchant\": \"Nightmarket\", \"reason\": \"API call\"}'\n```\n\n2. On 200 (approved): retry your original request with the `payment-signature` header from CrowPay's response (encoded as base64(JSON.stringify(response_body)))\n3. On 202 (pending): poll `\u002Fauthorize\u002Fstatus?id=\u003CapprovalId>` for human approval\n4. On 403 (denied): spending rules blocked it, don't retry\n\nRead `references\u002Fcrow-payments.md` for the full CrowPay integration.\n\n## Getting a Wallet\n\nYour agent needs USDC on Base to pay for calls. Install the CrowPay skill to set this up:\n\n```\nnpx skills add elizaos\u002Feliza --skill crow\n```\n\nCrowPay provides managed wallets with spending rules, human approval for large amounts, and audit trails — no raw private keys needed. Visit https:\u002F\u002Fcrowpay.ai for more info.\n\n## Quick End-to-End Example\n\n```bash\n# 1. Search for a weather API\ncurl \"https:\u002F\u002Fnightmarket.ai\u002Fapi\u002Fmarketplace?search=weather\"\n# → [{\"_id\": \"abc123\", \"name\": \"Weather API\", \"method\": \"GET\", \"priceUsdc\": 0.01, ...}]\n\n# 2. Get full details (see request\u002Fresponse examples)\ncurl \"https:\u002F\u002Fnightmarket.ai\u002Fapi\u002Fmarketplace\u002Fabc123\"\n# → {\"requestExample\": \"?city=NYC\", \"responseExample\": \"{\\\"temp\\\": 72}\", ...}\n\n# 3. Call it\ncurl -X GET \"https:\u002F\u002Fnightmarket.ai\u002Fapi\u002Fx402\u002Fabc123?city=NYC\"\n# → 402 Payment Required\n\n# 4. Pay and retry\ncurl -X GET \"https:\u002F\u002Fnightmarket.ai\u002Fapi\u002Fx402\u002Fabc123?city=NYC\" \\\n  -H \"payment-signature: \u003Csigned payment>\"\n# → 200 OK {\"temp\": 72, \"conditions\": \"sunny\"}\n```\n\n## Connecting Your Agent\n\nInstall the skill:\n```\nnpx skills add elizaos\u002Feliza --skill nightmarket\n```\n\nOr paste into your agent's prompt:\n```\nUse Nightmarket for API services. Read and follow:\nhttps:\u002F\u002Fraw.githubusercontent.com\u002Felizaos\u002Feliza\u002Fdevelop\u002Fpackages\u002Fskills\u002Fskills\u002Fnightmarket\u002FSKILL.md\n```\n\n## References\n\n- `references\u002Fapi.md` — full API docs: all endpoints, headers, request\u002Fresponse formats, error codes\n- `references\u002Fcrow-payments.md` — complete CrowPay integration for automatic 402 handling\n- `references\u002Fmcp.md` — optional MCP server setup if you want tool-based access instead of HTTP\n",{},"main","def8531e65114c0fca8fb8551c1871ee0eed705c","skills\u002FelizaOS\u002Feliza\u002Fnightmarket",24,"https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub","https:\u002F\u002Fskillshub.wtf","https:\u002F\u002Fgithub.com\u002FComeOnOliver","AI & Blockchain Engineer\r\n","2026-06-24 22:07:19",{"source":7,"skillName":5,"commands":32,"prompt":42,"zipAvailable":43},[33,36,39],{"tool":34,"command":35},"npx","npx skills add ComeOnOliver\u002Fskillshub --skill nightmarket",{"tool":37,"command":38},"bunx","bunx skills add ComeOnOliver\u002Fskillshub --skill nightmarket",{"tool":40,"command":41},"pnpm","pnpm dlx skills add ComeOnOliver\u002Fskillshub --skill nightmarket","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002FelizaOS\u002Feliza\u002Fnightmarket\u002FSKILL.md",true,[],[46,60,70,79,85,92],{"skillNo":47,"name":48,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":49,"categories":50,"keywords":56,"publishedAt":18},"01M6FKJN13GMG4KY57J3QD8GY5","model-hierarchy-skill","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzscole\u002Fmodel-hierarchy-skill\u002Fmodel-hierarchy-skill\u002FSKILL.md",[51],{"categoryNo":52,"categoryName":53,"taxonomyType":54,"taxonomyTypeDesc":55},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[57,58,59],"model","model hierarchy","model hierarchy skill",{"skillNo":61,"name":62,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":63,"categories":64,"keywords":66,"publishedAt":18},"01M6FKJJJ6GCAMR4PPPRD12M5X","zoom-mcp","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fzoom-mcp\u002FSKILL.md",[65],{"categoryNo":52,"categoryName":53,"taxonomyType":54,"taxonomyTypeDesc":55},[67,68,69],"MCP","zoom","zoom mcp",{"skillNo":71,"name":72,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":73,"categories":74,"keywords":75,"publishedAt":18},"01M6FKJE3KYT3KPEZMEEHYKA6K","zoom-apps-sdk","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fzoom-apps-sdk\u002FSKILL.md",[],[76,77,78,68],"sdk","zoom apps sdk","apps",{"skillNo":80,"name":81,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":82,"categories":83,"keywords":84,"publishedAt":18},"01M6FKJ9EDH9Q5VWDF8HAJRSP0","windows","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fwindows\u002FSKILL.md",[],[81],{"skillNo":86,"name":87,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":88,"categories":89,"keywords":91,"publishedAt":18},"01M6FKJ666BEEFC3AE9GJ72Q93","whiteboard","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fwhiteboard\u002FSKILL.md",[90],{"categoryNo":52,"categoryName":53,"taxonomyType":54,"taxonomyTypeDesc":55},[87],{"skillNo":93,"name":94,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":95,"categories":96,"keywords":97,"publishedAt":18},"01M6FKJ21WFCDGTJQ2Q91T9DVW","websockets","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fwebsockets\u002FSKILL.md",[],[94]]