本文へ移動
Bounty Developer

POST/api/events/{slug}/manage/tickets/{familyId}/copy

「イベント」の分類の、新しく作る、または操作を実行するために内容を送る API。ログインした本人として呼ぶ。

要約

系統を別のイベントへ写す(同じ形。4S の結びつき・配る人は写さない。設問は写し先に下書きで写す。写し元と写し先の両方の管理者)

呼び方と印

ログイン

URL に付ける値(パラメータ)

経路の中の波かっこの部分と、URL の ? の後ろに付ける値。「必須」の印があるものは省けない。

  • slugpath必須string
  • familyIdpath必須string(uuid)

送るもの(本文)application/json

送る本文の欄。「必須」の印がある欄は省けない。

  • targetSlug必須string
    長さ 1–120

返るもの(応答)201 · application/json

成功したときに返る形。入れ子の欄は、その行を押すと開く・閉じる。「任意」の印がある欄は返らないことがある。

  • familyobject
    • idstring(uuid)
    • eventIdstring(uuid)
    • namestring長さ 1–100
    • descriptionstring | null長さ ≤1000
    • questionnaireIdstring(uuid) | null
    • paymentType"FREE" | "ONSITE_PAYMENT" | "PREPAID_STRIPE"
    • positioninteger≥0
    • archivedboolean
    • tiersarray<object | object>
      • |1object
        • origin"created" | "adopted"
        • foursTicketIdstring | null
        • foursUniqueIdstring | null
        • syncStateenum(6)"unlinked" "pending" "synced" "uncertain" "drift" "failed"
        • observedobject | null
          • status"DRAFT" | "PUBLISHED" | "PRIVATE"
          • pricenumber
          • salesLimitnumber | null
          • namestring
          • displayOrdernumber | null
          • soldCount任意number | null
          • requiresApproval任意boolean | null
          • invitationEnabled任意boolean | null
        • observedAtstring | null
        • idstring(uuid)
        • familyIdstring(uuid)
        • namestring長さ 1–100
        • priceinteger≥0
        • quantityinteger | null≥1
        • salesStartsAtstring(date-time) | null
        • salesEndsAtstring(date-time) | null
        • statusMode"auto" | "DRAFT" | "PUBLISHED" | "PRIVATE"
        • positioninteger≥0
        • baseTierId任意string(uuid) | null
        • descriptionPrefix任意string | null長さ ≤200
        • paymentType任意"FREE" | "ONSITE_PAYMENT" | "PREPAID_STRIPE" | null
        • requiresApproval任意boolean | null
        • distributor任意object | null
          • kind"guild" | "venture" | "user"
          • idstring(uuid)
        • kind"price"
        • visibility"public" | "link"
        • labelstring | null長さ 1–24
      • |2object
        • origin"created" | "adopted"
        • foursTicketIdstring | null
        • foursUniqueIdstring | null
        • syncStateenum(6)"unlinked" "pending" "synced" "uncertain" "drift" "failed"
        • observedobject | null
          • status"DRAFT" | "PUBLISHED" | "PRIVATE"
          • pricenumber
          • salesLimitnumber | null
          • namestring
          • displayOrdernumber | null
          • soldCount任意number | null
          • requiresApproval任意boolean | null
          • invitationEnabled任意boolean | null
        • observedAtstring | null
        • idstring(uuid)
        • familyIdstring(uuid)
        • namestring長さ 1–100
        • priceinteger≥0
        • quantityinteger≥1
        • salesStartsAtstring(date-time) | null
        • salesEndsAtstring(date-time) | null
        • statusMode"auto" | "DRAFT" | "PUBLISHED" | "PRIVATE"
        • positioninteger≥0
        • baseTierId任意string(uuid) | null
        • descriptionPrefix任意string | null長さ ≤200
        • paymentType任意"FREE" | "ONSITE_PAYMENT" | "PREPAID_STRIPE" | null
        • requiresApproval任意boolean | null
        • distributor任意object | null
          • kind"guild" | "venture" | "user"
          • idstring(uuid)
        • kind"limited"
        • visibility"link"
        • labelstring長さ 1–24
  • targetSlugstring

失敗したとき(エラー)

失敗したときの状態コードと、その意味。本文の error の値で、プログラムが失敗の種類を見分けられる。

  • 400入力の誤り(error = invalid_input など)
  • 401未ログイン(unauthorized)/ Bearer が無効(invalid_token。WWW-Authenticate 付き)
  • 403権限が無い
  • event_not_found
  • feature_disabled
  • forbidden
  • manager_reverify_required
  • human_action_required
  • invalid_input
  • family_not_found

呼び出しの見本

そのまま試せる呼び出しの例。curl と fetch をタブで切り替える。ID やトークンは自分の値に置き換える。

curl -X POST "https://bounty.spikes.4s.link/api/events/{slug}/manage/tickets/{familyId}/copy" \
  -H "Authorization: Bearer $BEARER_AUTH" \
  -H "Content-Type: application/json" \
  -d '{
    "targetSlug": "string"
  }'
POST /api/events/{slug}/manage/tickets/{familyId}/copy | Bounty Developer