本文へ移動
Bounty Developer

POST/api/passes/{eventId}

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

要約

本人のパス下書きと描画確認を保存(印刷・NFC・入場なし)

呼び方と印

ログイン

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

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

  • eventIdpath必須string(uuid)

送るもの(本文)application/json

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

  • templateRevision必須integer
    0–2147483646
  • content必須object
  • name必須string
    長さ ≤160
  • title必須string
    長さ ≤160
  • affiliation必須string
    長さ ≤160
  • logos任意array<object>
    件数 ≤4
  • kind必須"company" | "guild" | "venture"
  • orgId必須string(uuid)
  • imageId必須string(uuid)
  • assetHash必須string
    /^[0-9a-f]{64}$/
  • x任意number
    0–1
  • y任意number
    0–1
  • widthPx任意integer
    24–300
  • layers任意object
  • name任意object
  • fontPx任意integer
    22–256
  • x任意number
    0–1
  • y任意number
    0–1
  • title任意object
  • fontPx任意integer
    22–256
  • x任意number
    0–1
  • y任意number
    0–1
  • affiliation任意object
  • fontPx任意integer
    22–256
  • x任意number
    0–1
  • y任意number
    0–1
  • qr任意object
  • x任意number
    0–1
  • y任意number
    0–1
  • fontScale必須"small" | "normal" | "large"
  • lineMode必須"auto" | "manual"
  • expectedRevision必須integer
    0–2147483646
  • requestKey必須string
    /^[A-Za-z0-9_-]{16,100}$/
  • action必須"save" | "confirm"
  • previewHash任意string
    /^[0-9a-f]{64}$/

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

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

  • eventobject
    • idstring(uuid)
    • titlestring長さ ≤300
    • slugstring長さ ≤200
  • templateRevisioninteger0–2147483646
  • templateobject
    • namestring長さ 1–40
    • layers任意object
      • name任意object
        • fontPx任意integer22–256
        • x任意number0–1
        • y任意number0–1
      • title任意object
        • fontPx任意integer22–256
        • x任意number0–1
        • y任意number0–1
      • affiliation任意object
        • fontPx任意integer22–256
        • x任意number0–1
        • y任意number0–1
      • qr任意object
        • x任意number0–1
        • y任意number0–1
    • backing任意object
      • format"card-standard" | "a6" | "b6-jis" | "b6-iso"
      • centerXnumber0–1
      • topnumber0–1
      • bleedMminteger0–5
    • media"CONTINUOUS_62" | "CONTINUOUS_50" | "CONTINUOUS_38" | "CONTINUOUS_29"
    • lengthMminteger30–62
    • layout"side" | "stack"
    • design任意"spikes_tokyo"
    • textSizing任意"fit" | "fixed"
    • nameFontPxinteger30–96
    • detailFontPxinteger22–40
    • maxLinesobject
      • name1 | 2
      • title1 | 2
      • affiliation1 | 2
    • titleSource"title" | "university_or_title"
    • material"paper" | "nfc"
    • printer任意object
      • model"QL-800" | "QL-820NWB"
      • connection"usb" | "wifi" | "bluetooth"
      • stockenum(5)"DK-2205" "DK-2210" "DK-4205" "DK-22223" "DK-2225"
  • defaultsobject
    • namestring長さ ≤160
    • titlestring長さ ≤160
    • affiliationstring長さ ≤160
    • logos任意array<object>件数 ≤4
      • kind"company" | "guild" | "venture"
      • orgIdstring(uuid)
      • imageIdstring(uuid)
      • assetHashstring/^[0-9a-f]{64}$/
      • x任意number0–1
      • y任意number0–1
      • widthPx任意integer24–300
    • layers任意object
      • name任意object
        • fontPx任意integer22–256
        • x任意number0–1
        • y任意number0–1
      • title任意object
        • fontPx任意integer22–256
        • x任意number0–1
        • y任意number0–1
      • affiliation任意object
        • fontPx任意integer22–256
        • x任意number0–1
        • y任意number0–1
      • qr任意object
        • x任意number0–1
        • y任意number0–1
    • fontScale"small" | "normal" | "large"
    • lineMode"auto" | "manual"
  • draftobject | null
    • revisioninteger0–2147483646
    • templateRevisioninteger0–2147483646
    • contentobject
      • namestring長さ ≤160
      • titlestring長さ ≤160
      • affiliationstring長さ ≤160
      • logos任意array<object>件数 ≤4
        • kind"company" | "guild" | "venture"
        • orgIdstring(uuid)
        • imageIdstring(uuid)
        • assetHashstring/^[0-9a-f]{64}$/
        • x任意number0–1
        • y任意number0–1
        • widthPx任意integer24–300
      • layers任意object
        • name任意object
          • fontPx任意integer22–256
          • x任意number0–1
          • y任意number0–1
        • title任意object
          • fontPx任意integer22–256
          • x任意number0–1
          • y任意number0–1
        • affiliation任意object
          • fontPx任意integer22–256
          • x任意number0–1
          • y任意number0–1
        • qr任意object
          • x任意number0–1
          • y任意number0–1
      • fontScale"small" | "normal" | "large"
      • lineMode"auto" | "manual"
    • confirmedAtstring(date-time) | null
    • confirmedBy"self" | "staff" | null
    • currentConfirmationboolean
  • checkedInboolean
  • oneQrAvailableboolean
  • renderobject | null
    • imagestring長さ ≤1500000 · /^data:image\/png;base64,/
    • hashstring/^[0-9a-f]{64}$/
    • layers任意array<object>件数 ≤8
      • idenum(8)"name" "title" "affiliation" "qr" "logo:0" "logo:1" "logo:2" "logo:3"
      • imagestring長さ ≤1500000 · /^data:image\/png;base64,/
      • xinteger≥0
      • yinteger≥0
      • widthinteger
      • heightinteger
      • fontPx任意integer22–256
    • widthPxinteger
    • heightPxinteger
    • widthMmnumber≤62
    • lengthMmnumber≤62
    • linesobject
      • namearray<string>件数 ≤2
      • titlearray<string>件数 ≤2
      • affiliationarray<string>件数 ≤2
  • previewErrorstring | null

失敗したとき(エラー)

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

  • 400入力の誤り(error = invalid_input など)
  • 401未ログイン(unauthorized)/ Bearer が無効(invalid_token。WWW-Authenticate 付き)
  • 403権限が無い
  • 404HTTP 404(x-bounty-error-codes を参照)
  • 409HTTP 409(x-bounty-error-codes を参照)
  • 422HTTP 422(x-bounty-error-codes を参照)
  • 428HTTP 428(x-bounty-error-codes を参照)
  • pass_ticket_required
  • pass_revision_conflict
  • consent_required
  • pass_human_action_required

呼び出しの見本

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

curl -X POST "https://bounty.spikes.4s.link/api/passes/{eventId}" \
  -H "Authorization: Bearer $BEARER_AUTH" \
  -H "Content-Type: application/json" \
  -d '{
    "templateRevision": 0,
    "content": {
      "name": "string",
      "title": "string",
      "affiliation": "string",
      "fontScale": "small",
      "lineMode": "auto"
    },
    "expectedRevision": 0,
    "requestKey": "string",
    "action": "save"
  }'
POST /api/passes/{eventId} | Bounty Developer