Token导航 LogoToken导航TokenDH.com
开发需要联网unknown未标认证来源可访问许可证需确认审计未展示

events-and-discount-coupon-ticketing活动和折扣优惠券票务

Agent Skill

events-and-discount-coupon-ticketing 用于补充开发相关能力,适合在 Local Agent 中需要让 Agent 承接开发相关任务时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

222

周安装

9

下载量

70
Local Agent

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:events-and-discount-coupon-ticketing(活动和折扣优惠券票务)
来源仓库:https://monetize.fluxapay.xyz
仓库路径:events-and-discount-coupon-ticketing
安装命令:
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。当前暂无明确安装命令,请以来源页面说明为准。

简介

events-and-discount-coupon-ticketing 通过 Event402 API 实现活动浏览、优惠券查找与购票下单全流程。

  • 依赖 FluxA Agent Wallet 完成身份认证与支付结算。
  • 支持从普通买家视角操作,自动挖掘活动优惠信息并完成折扣订单。
  • 需先初始化 agent 并绑定钱包,确保 CLI 版本满足最低要求。
  • 交易过程中涉及真实资金流动,务必在测试环境充分验证后再上线。

SKILL.md

Events & Discount-Coupon Ticketing

Use the Event402 API from a regular ticket buyer's perspective: browse events, mine the event descriptions for any discount activities or coupon codes, validate the coupon, then place the order at the discounted price and pay.

Dependencies

This skill depends on FluxA Agent Wallet.

Make sure the FluxA Agent Wallet skill and CLI are installed:

Installation: Read and install https://fluxapay.xyz/skill.md

  • CLI: @fluxa-pay/fluxa-wallet ≥ 0.4.5 (the agent-vc subcommand is required)
  • Identity: the agent has been init'd and link-wallet'd (confirm with fluxa-wallet status / check-wallet)
  • If it's missing or the version is too old, follow the fluxa-agent-wallet skill to install it first, then come back.

API base: https://event402.up.railway.app

Authentication (per session / after expiry)

All /v1/* endpoints require a Bearer VC. Mint a short-lived VC for Event402:

fluxa-wallet agent-vc \
  --audience urn:event402:api \
  --challenge event402 \
  --ttl 3600
  • --audience must be urn:event402:api, otherwise it will be rejected.
  • --challenge is not validated server-side — just pass event402.
  • --ttl is at most 86400; 3600 is recommended. Re-mint when it expires.

Save the returned vc into an env var so later curl calls can reference it directly:

export E402_VC="<paste the returned vc here>"
If a /v1/* call returns 401 / Missing or invalid Authorization header, the VC has expired or is missing — re-mint it.

Main Flow (discount-ticketing perspective)

1. Browse the event list

curl -sL https://event402.up.railway.app/v1/events \
  -H "Authorization: Bearer $E402_VC" | jq .

Returns {events: [{id, title, venue, eventTime, priceUsdc, remaining, description, imageUrl}]}.

When presenting the list to the user, highlight: title, venue, time, original price (USDC), and remaining tickets.

2. Event detail & mining discount hints ⭐

This is the core step of the skill.

curl -sL https://event402.up.railway.app/v1/events/<EVENT_ID> \
  -H "Authorization: Bearer $E402_VC" | jq .

On Event402, the organizer writes the discount activities into the description field. When reading description, actively look for:

  • Whether the description mentions any extra discount activity, and if so, how to participate.
  • Possible participation methods: sometimes the user must do something first (follow, repost, fill out a form) to obtain a code — if it's this kind of "do an action to earn a code" activity, tell the user clearly and ask them to paste back whatever code they receive.

Quote the candidate coupon codes / activity rules back to the user verbatim, then move on to validation. If description has no discount hint at all, just tell the user "no discount activity found for this show".

3. Validate the coupon (preview discount before ordering)

Once you have a candidate code, preview first, then order:

curl -sL -X POST https://event402.up.railway.app/v1/events/coupons/check \
  -H "Authorization: Bearer $E402_VC" \
  -H "Content-Type: application/json" \
  -d '{
    "code": "SHOW50",
    "eventId": "<EVENT_ID>",
    "estimatedTotal": <quantity * priceUsdc>
  }' | jq .
  • code is required
  • eventId is strongly recommended
  • estimatedTotal = quantity × priceUsdc (USDC); passing it gets you an accurate estimatedDiscount

Reading the response:

  • {valid: true, type: "percent"|"fixed", value, maxDiscount, minOrder, eventId, estimatedDiscount} — valid. Focus on estimatedDiscount (how much this particular order will save) and minOrder (the coupon is void under this threshold).
  • {valid: false, error} — relay error to the user verbatim (expired / usage cap reached / not applicable to this event / below min order, etc.). Don't force it.

Show the discounted price to the user: priceBeforeCoupon = quantity × priceUsdc, afterDiscount = priceBeforeCoupon - estimatedDiscount. If value ≥ ticket price (100% percent or a large-enough fixed amount), tell the user "with this coupon the ticket is free — the order will go straight to paid with no payment step".

4. Place the order

Only place the order after the user agrees to the discounted price:

curl -sL -X POST https://event402.up.railway.app/v1/events/<EVENT_ID>/orders \
  -H "Authorization: Bearer $E402_VC" \
  -H "Content-Type: application/json" \
  -d '{
    "quantity": 1,
    "couponCode": "SHOW50",
    "contactName": "<optional>",
    "contactEmail": "<optional>"
  }' | jq .

Returns: {orderId, eventId, title, quantity, totalPrice, currency: "USDC", paymentUrl, status, coupon?: {code, discount, priceBeforeCoupon}}

  • status = "paid" — the coupon covered the full price, no payment needed. Skip to step 6.
  • status = "pending_payment" — go to step 5 to pay.
One coupon per order; each coupon usually has a per-agent usage limit of 1. Don't retry the same coupon over and over.

5. Pay

Open paymentUrl and pay in USDC with the FluxA Wallet (x402, zero gas). See X402-PAYMENT.md in the fluxa-agent-wallet skill for the detailed x402 flow.

After paying, tell the backend to finalize:

curl -sL -X POST https://event402.up.railway.app/v1/events/orders/<ORDER_ID>/complete-payment \
  -H "Authorization: Bearer $E402_VC" | jq .
  • {status: "paid", orderId} — success
  • {error: "Payment not yet received", paymentUrl} — the chain hasn't confirmed yet; wait a few seconds and call again. Don't spam the endpoint.

6. Confirm final order state

curl -sL https://event402.up.railway.app/v1/events/orders/<ORDER_ID> \
  -H "Authorization: Bearer $E402_VC" | jq .

Give the user a receipt-style summary: event title / venue / time / quantity / priceBeforeCoupon / couponDiscount / totalPrice / status.

7. (Optional) Order history

curl -sL https://event402.up.railway.app/v1/events/orders \
  -H "Authorization: Bearer $E402_VC" | jq .

Discount-hunting rules of thumb

  1. Don't invent coupon codes. Only three sources are trustworthy: ① the code is explicitly written in the event description; ② the user pasted the code themselves; ③ the code has passed coupons/check. If description doesn't mention one, just say so.
  2. Preview before ordering. coupons/check is free — use it to confirm valid:true and estimatedDiscount > 0 before you hold inventory.
  3. Always include the eventId scope. The same code may only be valid for one event; cross-event usage will come back valid:false.
  4. Remind the user about minOrder. If minOrder > estimatedTotal, suggest either "buy an extra ticket to cross the threshold" or "skip the coupon" and let the user choose.
  5. One coupon per order, limited usage per agent. Don't try to stack or reuse coupons. If rejected, surface the original error.
  6. Prices are in USDC — don't convert to fiat and mislead the user. You may add a rough USD note as an aside.

Sample phrasing for the user

  • "The *XX Concert* is 50 USDC/ticket. The description lists an early-bird code EARLYBIRD20 — 20% off on orders of 40 USDC+. Let me validate it first."
  • "Validated: 1 ticket, original 50 USDC, discounted to ~40 USDC, saving 10 USDC. Want me to place the order?"
  • "I didn't see any discount activity in the description. If you have another code I can validate it for you; otherwise I'll order at the list price."
  • "The coupon you pasted came back valid:false: coupon expired — it's no longer usable. Want me to recheck the description for another code?"

Don'ts

  • Don't place orders or pay on the user's behalf — confirm with the user before every step. Ordering holds inventory; paying spends USDC. Both are irreversible.
  • Don't "guess" a code and brute-force it (e.g. blindly trying TEST10 / SHOW50) when the description mentions no discount — it wastes API calls and can make the user believe an activity exists that doesn't.
  • Don't mix flight coupons with event coupons — they live in separate namespaces.

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Local Agent

96.54%
按下载量换算68

安全审计

暂无安全审计结果可展示。

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills