PUT/api/events/{slug}/tickets/answers
「参加登録」の分類の、送った内容で対象を保存する(更新する)API。ログインした本人として呼ぶ。
- 要約
1 ページぶんの回答を保存する(4S / GEEK 共通のページは 400 = 4S へだけ渡す)
- 呼び方と印
ログイン・レート制限
短い時間に呼びすぎると断られる API(レート制限)。断られたら Retry-After の秒数を待って呼び直す。
URL に付ける値(パラメータ)
経路の中の波かっこの部分と、URL の ? の後ろに付ける値。「必須」の印があるものは省けない。
slugpath必須string
送るもの(本文)application/json
送る本文の欄。「必須」の印がある欄は省けない。
questionnaireVersionId必須string(uuid)pageId必須string/^p_[a-z0-9]{4,24}$/answers必須record<string | array<string> | boolean>
返るもの(応答)200 · application/json
成功したときに返る形。入れ子の欄は、その行を押すと開く・閉じる。「任意」の印がある欄は返らないことがある。
oktrue
失敗したとき(エラー)
失敗したときの状態コードと、その意味。本文の error の値で、プログラムが失敗の種類を見分けられる。
- 400入力の誤り(error = invalid_input など)
- 401未ログイン(unauthorized)/ Bearer が無効(invalid_token。WWW-Authenticate 付き)
- 403権限が無い
- 429レート制限(Retry-After 付き)
- event_not_found
- feature_disabled
- invalid_input
- questionnaire_not_found
- page_not_found
- fours_common_not_stored
- invalid_answers
- unknown_upload
呼び出しの見本
そのまま試せる呼び出しの例。curl と fetch をタブで切り替える。ID やトークンは自分の値に置き換える。
curl -X PUT "https://bounty.spikes.4s.link/api/events/{slug}/tickets/answers" \
-H "Authorization: Bearer $BEARER_AUTH" \
-H "Content-Type: application/json" \
-d '{
"questionnaireVersionId": "00000000-0000-4000-8000-000000000000",
"pageId": "string",
"answers": {}
}'