コンテンツにスキップ
commentor API
Esc
↑↓移動↵開く⌘Jプレビュー

文書とコメントを読む

文書の情報と、すべてのコメント・返信・解決の履歴を返す。削除されたコメントも deletedTs 付きで入るので、画面と同じ一覧にするときは除く。 書き込みに使う commentsRevision もここで取る。

GET/api/reviews/{reviewId}
Authorization
AuthorizationBearer token · headerrequired

エージェント用トークン。文書とコメントを読み、run の中でコメントを書くのに使う。ブラウザのログインと一緒に送らない。

or
AuthorizationBearer token · headerrequired

取り込み用トークン。文書を上げる、版を追加する、文書の一覧と中身を読むのに使う。

or
AuthorizationBearer token · headerrequired

本人用の個人トークン。発行時に選んだ範囲の操作を、本人の名義で行う。読み取りと本人のトークン操作は、範囲を問わず使える。

Path parameters
reviewIdstringrequired

文書の ID。文書の URL /reviews/<reviewId> の末尾と同じ。

Query parameters
commentVersionsstring

1 を付けると、各コメントがどの版に付いたかの情報を含める。

Allowed:1
Responses
200

読めた。

reviewReview

文書とコメントの全体。ここに挙げた項目のほかにも、画面が使う項目が入る。

Show properties
reviewIdstring
titlestring
commentsRevisioninteger

コメントが書き換わるたびに 1 増える番号。書き込みで baseCommentsRevision として送る。

structureRevisioninteger
commentsComment[]
Show properties
Array of Comment
idstring
authorUser

書いた人。エージェント用トークンで書いたものは、トークンの持ち主の名義になる。

Show properties
idstring
providerstring
displayNamestring
categorystring

コメントの種類。note はメモ、revise は書き換えの提案、add は追記、delete は削除の提案、needs_review は確認、consult は相談。none は分類の無い旧いデータで、画面ではメモとして出す。

Allowed:notereviseadddeleteneeds_reviewconsultnone
statusstring

open は未解決、closed は解決済み。

Allowed:openclosed
bodystring
anchorobject

画面でコメントを表示する位置。書き込むときは anchor でなく Locator を送る。

threadThreadMessage[]
Show properties
Array of ThreadMessage
idstring
authorUser

書いた人。エージェント用トークンで書いたものは、トークンの持ち主の名義になる。

bodystring
createdTsstring<date-time>
statusEventsStatusEvent[]
Show properties
Array of StatusEvent
seqinteger
statusstring
Allowed:openclosed
byUser

書いた人。エージェント用トークンで書いたものは、トークンの持ち主の名義になる。

tsstring<date-time>
versionIdstring

コメントを付けた文書の版。

createdTsstring<date-time>
editedTsstring<date-time>
deletedTsstring<date-time>

削除されたコメントにだけ付く。画面には出ない。

aiReviewRunsRun[]
Show properties
Array of Run
idstring
kindstring
Allowed:ai_reviewvoice
statusstring
Allowed:runningcompletedfailedcancelled
titlestring
versionIdstring
commentIdsstring[]
summarystring
createdTsstring<date-time>
completedTsstring<date-time>
createdAtstring<date-time>
sourceobject

本文の出どころと版。

Show properties
versionsobject[]

版の一覧。古い順で、最後が最新の版。

Show properties
Array of object
versionIdstring
labelstring
createdAtinteger

版を作った時刻(UNIX 時間のミリ秒)。

sourceHashstring
_projectProjectLink

この文書に案件の結び付けがあるときだけ付く。

Show properties
codestringrequired
namestring | nullrequired
companystring | nullrequired
statusstringrequired
Allowed:activeinactive
inSnapshotbooleanrequired
rolestring | nullrequired

要求した本人の案件の役割。

Allowed:managereditorviewernull
401

トークンが無いか、この文書を読む権限が無い。

errorstringrequired

エラーの種類を表す短いコード。対処を分けるときはこの値を見る。

statusintegerrequired

HTTP ステータスと同じ値。

currentRevisioninteger

409 comments revision conflict のとき、文書の今の commentsRevision。

latestVersionIdstring

409 stale_target_version のとき、文書の最新版の ID。

404

文書・run・コメントのいずれかが無い。

errorstringrequired

エラーの種類を表す短いコード。対処を分けるときはこの値を見る。

statusintegerrequired

HTTP ステータスと同じ値。

currentRevisioninteger

409 comments revision conflict のとき、文書の今の commentsRevision。

latestVersionIdstring

409 stale_target_version のとき、文書の最新版の ID。

Request
curl -X GET 'https://comment-review.fsmarketing.workers.dev/api/reviews/review_example01' \
  -H 'Authorization: Bearer YOUR_TOKEN'
Response
{
  "review": {
    "reviewId": "review_example01",
    "title": "料金ページの下書き",
    "_project": {
      "code": "EX-AA",
      "name": "例の案件",
      "company": "例の会社",
      "status": "active",
      "inSnapshot": true,
      "role": "viewer"
    },
    "commentsRevision": 3,
    "comments": [
      {
        "id": "comment_example01",
        "author": {
          "id": "google:000000",
          "provider": "google",
          "displayName": "山田 花子"
        },
        "category": "note",
        "status": "open",
        "body": "税込か税抜かを書いてください。",
        "thread": [],
        "statusEvents": [],
        "versionId": "v1",
        "createdTs": "2026-10-01T09:00:00.000Z"
      }
    ]
  }
}