Belong Events - Discover and Organize
v1.0.2Discover events and hubs, manage branding, CheckIn venues, bracelets, wallets, and NFT tickets on the Belong platform
Belong Events
Discover events and hubs, buy tickets, create events and communities, manage hub branding, and handle venue check-ins, bracelets, and referral flows on Belong.
How to call tools
Run {baseDir}/invoke.sh <method> '<params-json>' via system.run. The script calls the Belong skill API and returns JSON.
Example:
system.run {baseDir}/invoke.sh discover_events '{"city":"Miami","limit":5}'
All tool calls use this pattern. The invoke.sh script handles endpoint URL, authentication headers, validates method names, and streams the JSON-RPC body over stdin instead of interpolating user params into curl arguments.
Default endpoint:
https://join.belong.net/functions/v1/openclaw-skill-proxy
Network disclosure:
- All JSON-RPC calls are sent to the endpoint above (or
BELONG_EVENTS_ENDPOINTif overridden). - If
BELONG_EVENTS_API_KEYis set, it is sent to that endpoint asX-OpenClaw-Key.
Account linking (required for protected tools)
Most tools require a linked Belong account. If any tool returns "Belong account not linked" or "BELONG_LINK_REQUIRED", run the OTP flow:
- Ask the user for their email address.
- Send OTP:
system.run {baseDir}/invoke.sh belong_email_otp_send '{"email":"USER_EMAIL"}' - Ask for the 6-digit code from their email.
- Verify OTP:
system.run {baseDir}/invoke.sh belong_email_otp_verify '{"email":"USER_EMAIL","otp":"CODE"}' - The response includes
apiKey. Store it — set it asBELONG_EVENTS_API_KEYenv var or updateskills.entries.belong-events.apiKeyinopenclaw.jsonso subsequent calls are authenticated.
Never ask end users for an API key. Always use the OTP flow.
Available tools
Public (no auth needed)
Public tools are rate-limited. If you hit a 429, wait and retry.
- list_tools — List available tools (no params)
- discover_events — Search events. Params:
city,category,startDate,endDate,limit,latitude,longitude(all optional) - discover_hubs — Search public hubs. Params:
search,hubType,limit,cursor - get_event_details — Get event details. Params:
eventId(required),source,city,latitude,longitude(optional) - get_hub_details — Get hub details. Params:
hubId(required),includeEvents,includeBranding - get_hub_branding — Get hub branding. Params:
hubId(required) - buy_ticket — Get checkout/event URL. Params:
eventId(required),tierId,quantity - get_checkin_leaderboards — Load public venue and attendee leaderboards. Params:
limit,timeframe(all,today,week,month) - belong_email_otp_send — Send OTP. Params:
email(required) - belong_email_otp_verify — Verify OTP. Params:
email(required),otp(required)
Account status (auth required)
- whoami — Check link status (no params)
- get_profile — Get the linked Belong profile
- list_wallets — List linked crypto wallets
- sync_wallets — Sync wallets from the configured provider
- get_referral_code — Get or create the linked wallet referral code. Params:
chainId(required),walletAddress,createIfMissing
Attendee (auth required)
- my_tickets — List purchased tickets. Params:
status(upcoming/past/all). ReturnsticketCheckinUrlfor each ticket. - my_checkins — List the linked user’s check-in history and stats. Params:
limit,offset
Organizer (auth required)
- create_event — Create event. Params:
name(required),startDate(required),endDate(required),description,city,venue,category,hubId,coverImage - update_event — Update event. Params:
eventId(required),name,description,startDate,endDate,city,venue,category,hubId,coverImage - add_event_media — Upload event media. Params:
eventId(required),files(required base64 file array) - update_event_media — Replace/reorder event media. Params:
eventId(required),media(required) - delete_event_media — Delete event media. Params:
eventId(required),mediaId(required) - deploy_tickets — Deploy NFT tickets. Params:
eventId(required),tierName(required),price(required),maxSupply,chainId,transferable,gasless. Two-phase: first call returns tx params, second call withcollectionId+txHashcompletes deployment. - my_events — List owned events. Params:
status(upcoming/past/draft/all) - event_analytics — Event stats. Params:
eventId(required) - create_hub — Create hub/community. Params:
name(required),slug,description,location,private,hubType,startDate,endDate,coverImage,communitySkinConfig,customDomains - update_hub — Update hub/community. Params:
hubId(required),name,slug,description,location,private,hubType,startDate,endDate,coverImage,connectEventIds,categorySubEventIDs,communitySkinConfig,customDomains - my_hubs — List owned or joined hubs. Params:
search,hubType - configure_hub_branding — Save hub branding and custom domains. Params:
hubId(required),communitySkinConfig,customDomains
Venue (auth required)
- check_in — Process check-ins, quoted venue payments, or owner approvals. Params:
hubId(required),accessMode,amount/paymentAmount,paymentCurrency,paymentTxHash/paymentTransactionHash,paymentChainId,latitude,longitude,promoterCode,promoterAddress,promoterWallet,pendingCheckinId,nftTokenId,nftContractAddress,linkedEventId,customerWallet,listPending,checkinId,action,description - list_pending_checkins — List pending venue approvals. Params:
hubId(required),limit,checkinId - approve_checkin — Approve, reject, or quote. Params:
checkinId(required),action,amount,currency,description - get_venue_info — Load venue settings, stats, and on-chain venue info. Params:
hubId(required),venueAddress,chainId,includeStats.chainIdmust come from the explicit param or persisted venue settings. - configure_venue — Update venue rules and sync to MCP. Params:
hubId(required),venueWallet,ownerAddress,chainId,verificationMethod,requireVenueApproval,venueLatitude,venueLongitude,checkinRadius,primaryAccessMode,accessModeFree,accessModeVenuePayment,accessModeNftTicket,accessModeNftMembership,venuePaymentFlow,minCheckAmount,fixedPaymentAmount,acceptUSDC,acceptLONG,longSettlement,enableVisitorRewards,visitorVisitBountyUsd,visitorSpendPercentage,enablePromoterRewards,promoterVisitBountyUsd,promoterSpendPercentage,dailyCheckinLimit,requiredNftCollections,braceletEnabled,braceletDisplayCurrency,braceletAcceptedTokens,braceletMinTopup,braceletMaxTopup,braceletAllowRefunds,braceletChargeCategories,braceletPoolWallet - get_venue_checkin_history — Load owner-scoped row-level venue history. Params:
hubId(required),limit,offset - get_owner_checkin_stats — Load owner dashboard stats. Params:
days - deposit_venue_funds — Prepare a venue deposit transaction. Params:
hubId(required),amount(required),venueWallet,ownerAddress,chainId,promoterAddress - pay_to_venue — Prepare a customer venue payment transaction. Params:
hubId(required),amount(required),venueAddress,walletAddress,promoterAddress,chainId - setup_venue_rewards — Configure rewards. Params:
hubId(required),visitBounty,visitorSpendPercentage,cashbackPercent(legacy alias) - get_bracelet_balance — Load bracelet balance and recent transactions. Params:
braceletUid,eventHubId - link_bracelet — Link a bracelet to the authenticated attendee. Params:
braceletUid,eventHubId,displayName - topup_bracelet — Credit a bracelet after a verified payment. Params:
braceletUid,eventHubId,amount,currency,txHash,chainId,displayAmount,displayCurrency,conversionRate - charge_bracelet — Charge a bracelet with staff PIN authorization. Params:
braceletUid,eventHubId,amount,currency,staffPin,displayAmount,displayCurrency,conversionRate,description,chargeCategory,idempotencyKey - refund_bracelet — Refund bracelet balance. Params:
braceletUid,eventHubId,currency,amount,refundToAddress,idempotencyKey - get_bracelet_event_summary — Load organizer cashless summary. Params:
eventHubId - withdraw_earnings — Withdrawal link. Params:
hubId(required),currency(USDC/LONG)
