本文へ移動
Bounty Developer

GET/api/messages/{id}

「メッセージ」の分類の、情報を読み出す API。ログインした本人として呼ぶ。

要約

会話(メンバーと既読の位置・入力中・メッセージ)。?after=<ISO> はそれより後に作られた・更新されたメッセージだけ(ポーリング。前回の now を渡す)、?before=<page.before>&limit= は古いページ。ETag / 304

呼び方と印

ログイン・ポーリング

画面が一定の間隔で呼び直す前提の API(ポーリング)。

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

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

  • idpath必須string(uuid)
  • afterquery任意string(date-time)
  • beforequery任意string
    長さ 20–80
  • limitquery任意integer
    1–200

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

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

  • revinteger
  • mestring
  • nowstring
  • conversationobject
    • eventOrigins任意array<object>
      • eventIdstring
      • slugstring
      • titlestring
      • kindenum(7)"qr" "match" "trio" "boshu" "wall" "content" "group"
      • recordedAtstring
    • idstring
    • kind"dm" | "group"
    • groupKindenum(7) | null"adhoc" "referral" "staff" "trio" "content" "boshu" "event"
    • titlestring
    • namestring | null
    • joinTokenstring | null
    • createdBystring | null
    • expiresAtstring
    • myRole"owner" | "member"
    • mutedUntilstring | null
    • mutedboolean
    • origin任意"match" | "trio" | null
    • keep任意object | null
      • phase"before" | "open" | "closed" | "kept"
      • opensAtstring
      • closesAtstring
      • keptAtstring | null
      • keptBystring | null
    • trio任意object | null
      • idstring
      • reasonstring
      • activatedboolean
    • eventsarray<object>
      • idstring
      • slugstring
      • titlestring
    • canPostboolean
  • membersarray<object>
    • idstring
    • displayNamestring
    • avatarUrlstring | null
    • titlestring | null
    • orgNamestring | null
    • activeboolean
    • statusenum(5)"active" "invited" "left" "declined" "removed"
    • role"owner" | "member"
    • joinedAtstring
    • lastReadAtstring | null
  • messagesarray<object>
    • idstring
    • kindenum(6)"text" "stamp" "system" "image" "unsent" "location"
    • bodystring
    • userIdstring | null
    • createdAtstring
    • updatedAt任意string
    • replyTo任意object | null
      • idstring
      • userIdstring | null
      • senderNamestring | null
      • kindenum(6)"text" "stamp" "system" "image" "unsent" "location"
      • snippetstring
    • reactions任意array<object>
      • emojistring
      • countinteger
      • mineboolean
    • attachment任意object | null
      • idstring
      • urlstring
      • mimestring
      • bytesinteger
      • widthinteger
      • heightinteger
    • location任意object | null
      • mapIdstring
      • xnumber
      • ynumber
      • labelstring
    • hasLinks任意boolean
    • mentions任意array<string>
    • systemKey任意string | null
    • systemParams任意record<string> | null
    • hidden任意boolean
    • unsendableUntil任意string | null
  • typingarray<string>
  • blockedUserIdsarray<string>
  • pageobject | null
    • hasMoreboolean
    • beforestring | null

失敗したとき(エラー)

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

  • 400入力の誤り(error = invalid_input など)
  • 401未ログイン(unauthorized)/ Bearer が無効(invalid_token。WWW-Authenticate 付き)
  • 403権限が無い
  • conversation_not_found
  • conversation_expired
  • not_member
  • invitation_pending
  • invalid_cursor

呼び出しの見本

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

curl "https://bounty.spikes.4s.link/api/messages/{id}" \
  -H "Authorization: Bearer $BEARER_AUTH"
GET /api/messages/{id} | Bounty Developer