{
  "schemaVersion": "1.0",
  "item": {
    "slug": "belong-events",
    "name": "Belong Events - Discover and Organize",
    "source": "tencent",
    "type": "skill",
    "category": "通讯协作",
    "sourceUrl": "https://clawhub.ai/nomadcalendar/belong-events",
    "canonicalUrl": "https://clawhub.ai/nomadcalendar/belong-events",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/belong-events",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=belong-events",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "invoke.sh",
      "SKILL.md"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-23T16:43:11.935Z",
      "expiresAt": "2026-04-30T16:43:11.935Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=4claw-imageboard",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=4claw-imageboard",
        "contentDisposition": "attachment; filename=\"4claw-imageboard-1.0.1.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/belong-events"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/belong-events",
    "agentPageUrl": "https://openagent3.xyz/skills/belong-events/agent",
    "manifestUrl": "https://openagent3.xyz/skills/belong-events/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/belong-events/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "Belong Events",
        "body": "Discover events, buy tickets, create events, and manage venue check-ins on Belong."
      },
      {
        "title": "How to call tools",
        "body": "Run {baseDir}/invoke.sh <method> '<params-json>' via system.run. The script calls the Belong skill API and returns JSON.\n\nExample:\n\nsystem.run {baseDir}/invoke.sh discover_events '{\"city\":\"Miami\",\"limit\":5}'\n\nAll tool calls use this pattern. The invoke.sh script handles endpoint URL, authentication headers, and JSON-RPC framing automatically.\n\nDefault endpoint:\nhttps://join.belong.net/functions/v1/openclaw-skill-proxy\n\nNetwork disclosure:\n\nAll JSON-RPC calls are sent to the endpoint above (or BELONG_EVENTS_ENDPOINT if overridden).\nIf BELONG_EVENTS_API_KEY is set, it is sent to that endpoint as X-OpenClaw-Key."
      },
      {
        "title": "Account linking (required for protected tools)",
        "body": "Most tools require a linked Belong account. If any tool returns \"Belong account not linked\" or \"BELONG_LINK_REQUIRED\", run the OTP flow:\n\nAsk the user for their email address.\nSend OTP:\nsystem.run {baseDir}/invoke.sh belong_email_otp_send '{\"email\":\"USER_EMAIL\"}'\n\n\nAsk for the 6-digit code from their email.\nVerify OTP:\nsystem.run {baseDir}/invoke.sh belong_email_otp_verify '{\"email\":\"USER_EMAIL\",\"otp\":\"CODE\"}'\n\n\nThe response includes apiKey. Store it — set it as BELONG_EVENTS_API_KEY env var or update skills.entries.belong-events.apiKey in openclaw.json so subsequent calls are authenticated.\n\nNever ask end users for an API key. Always use the OTP flow."
      },
      {
        "title": "Public (no auth needed)",
        "body": "Public tools are rate-limited. If you hit a 429, wait and retry.\n\nlist_tools — List available tools (no params)\ndiscover_events — Search events. Params: city, category, startDate, endDate, limit, latitude, longitude (all optional)\nget_event_details — Get event details. Params: eventId (required), source, city, latitude, longitude (optional)\nbuy_ticket — Get checkout/event URL. Params: eventId (required), tierId, quantity\nbelong_email_otp_send — Send OTP. Params: email (required)\nbelong_email_otp_verify — Verify OTP. Params: email (required), otp (required)"
      },
      {
        "title": "Account status (auth required)",
        "body": "whoami — Check link status (no params)"
      },
      {
        "title": "Attendee (auth required)",
        "body": "my_tickets — List purchased tickets. Params: status (upcoming/past/all)"
      },
      {
        "title": "Organizer (auth required)",
        "body": "create_event — Create event. Params: name (required), startDate (required), endDate (required), description, city, venue, category\nupdate_event — Update event. Params: eventId (required), name, description, startDate, endDate\ndeploy_tickets — Deploy NFT tickets. Params: eventId (required), tierName (required), price (required), maxSupply, chainId, transferable, gasless. Two-phase: first call returns tx params, second call with collectionId+txHash completes deployment.\nmy_events — List owned events. Params: status (upcoming/past/draft/all)\nevent_analytics — Event stats. Params: eventId (required)"
      },
      {
        "title": "Venue (auth required)",
        "body": "check_in — Process check-in. Params: hubId (required), amount, latitude, longitude, customerWallet, listPending, checkinId, action\nlist_pending_checkins — List pending. Params: hubId (required), limit\napprove_checkin — Approve/reject. Params: checkinId (required), action (approve/reject)\nsetup_venue_rewards — Configure rewards. Params: hubId (required), visitBounty, cashbackPercent\nwithdraw_earnings — Withdrawal link. Params: hubId (required), currency (USDC/LONG)"
      }
    ],
    "body": "Belong Events\n\nDiscover events, buy tickets, create events, and manage venue check-ins on Belong.\n\nHow to call tools\n\nRun {baseDir}/invoke.sh <method> '<params-json>' via system.run. The script calls the Belong skill API and returns JSON.\n\nExample:\n\nsystem.run {baseDir}/invoke.sh discover_events '{\"city\":\"Miami\",\"limit\":5}'\n\n\nAll tool calls use this pattern. The invoke.sh script handles endpoint URL, authentication headers, and JSON-RPC framing automatically.\n\nDefault endpoint: https://join.belong.net/functions/v1/openclaw-skill-proxy\n\nNetwork disclosure:\n\nAll JSON-RPC calls are sent to the endpoint above (or BELONG_EVENTS_ENDPOINT if overridden).\nIf BELONG_EVENTS_API_KEY is set, it is sent to that endpoint as X-OpenClaw-Key.\nAccount linking (required for protected tools)\n\nMost tools require a linked Belong account. If any tool returns \"Belong account not linked\" or \"BELONG_LINK_REQUIRED\", run the OTP flow:\n\nAsk the user for their email address.\nSend OTP:\nsystem.run {baseDir}/invoke.sh belong_email_otp_send '{\"email\":\"USER_EMAIL\"}'\n\nAsk for the 6-digit code from their email.\nVerify OTP:\nsystem.run {baseDir}/invoke.sh belong_email_otp_verify '{\"email\":\"USER_EMAIL\",\"otp\":\"CODE\"}'\n\nThe response includes apiKey. Store it — set it as BELONG_EVENTS_API_KEY env var or update skills.entries.belong-events.apiKey in openclaw.json so subsequent calls are authenticated.\n\nNever ask end users for an API key. Always use the OTP flow.\n\nAvailable tools\nPublic (no auth needed)\n\nPublic tools are rate-limited. If you hit a 429, wait and retry.\n\nlist_tools — List available tools (no params)\ndiscover_events — Search events. Params: city, category, startDate, endDate, limit, latitude, longitude (all optional)\nget_event_details — Get event details. Params: eventId (required), source, city, latitude, longitude (optional)\nbuy_ticket — Get checkout/event URL. Params: eventId (required), tierId, quantity\nbelong_email_otp_send — Send OTP. Params: email (required)\nbelong_email_otp_verify — Verify OTP. Params: email (required), otp (required)\nAccount status (auth required)\nwhoami — Check link status (no params)\nAttendee (auth required)\nmy_tickets — List purchased tickets. Params: status (upcoming/past/all)\nOrganizer (auth required)\ncreate_event — Create event. Params: name (required), startDate (required), endDate (required), description, city, venue, category\nupdate_event — Update event. Params: eventId (required), name, description, startDate, endDate\ndeploy_tickets — Deploy NFT tickets. Params: eventId (required), tierName (required), price (required), maxSupply, chainId, transferable, gasless. Two-phase: first call returns tx params, second call with collectionId+txHash completes deployment.\nmy_events — List owned events. Params: status (upcoming/past/draft/all)\nevent_analytics — Event stats. Params: eventId (required)\nVenue (auth required)\ncheck_in — Process check-in. Params: hubId (required), amount, latitude, longitude, customerWallet, listPending, checkinId, action\nlist_pending_checkins — List pending. Params: hubId (required), limit\napprove_checkin — Approve/reject. Params: checkinId (required), action (approve/reject)\nsetup_venue_rewards — Configure rewards. Params: hubId (required), visitBounty, cashbackPercent\nwithdraw_earnings — Withdrawal link. Params: hubId (required), currency (USDC/LONG)"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/nomadcalendar/belong-events",
    "publisherUrl": "https://clawhub.ai/nomadcalendar/belong-events",
    "owner": "nomadcalendar",
    "version": "1.0.1",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/belong-events",
    "downloadUrl": "https://openagent3.xyz/downloads/belong-events",
    "agentUrl": "https://openagent3.xyz/skills/belong-events/agent",
    "manifestUrl": "https://openagent3.xyz/skills/belong-events/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/belong-events/agent.md"
  }
}