Skip to content

tagru custom-reports ​

カスタムレポートの一覧・内容・履歴・編集対象を表示し、ページや要素の非表示・文字・色を変更します。保存は画面と同じ検証を通ります。

text
tagru custom-reports [list] [--limit <n>] [--workspace <id>] [--target <prod|test|localhost>] [--json]
tagru custom-reports access [--workspace <id>] [--target <prod|test|localhost>] [--json]
tagru custom-reports get <report-id> [--data] [--workspace <id>] [--target <prod|test|localhost>] [--json]
tagru custom-reports history <report-id> [--limit <n>] [--workspace <id>] [--target <prod|test|localhost>] [--json]
tagru custom-reports elements <report-id> [--limit <n>] [--offset <n>] [--base-version <n>] [--workspace <id>] [--target <prod|test|localhost>] [--json]
tagru custom-reports update <report-id> <file.json> [--workspace <id>] [--target <prod|test|localhost>] [--json]

サブコマンド・オプション ​

指定内容
list(省略可)作成の新しい順の一覧
access新しいレポートを作れるかと選べるレイアウト
get <report-id>ページ・AIの文章・保存済み要素編集
history <report-id>新しい順の履歴と、戻すための編集内容
elements <report-id>現在の要素・所属・操作可否・文脈と位置情報
update <report-id> <file.json>UTF-8のJSONファイルから編集を保存する。baseVersion必須
--limit <n>既定20。list/elementsは1〜100、historyは1〜50
--offset <n>elementsの開始位置(0以上、既定0)。応答のnextOffsetで続きへ
--base-version <n>elementsの期待する版(1以上)。続きは最初の応答のversionを指定する
--dataget --jsonでデータのスナップショットも返す
--workspace <id>tagru useで選んだWSより優先。WS未選択は終了コード1
-t, --target <name>接続先
--json成功を標準出力、エラーを標準エラーにJSONで返す

機能がOFFでも一覧・1件・履歴は保持期限まで読めます。要素一覧と編集は機能・対象プランが有効な場合のみです。データは作成・作り直し時点のスナップショットで、取得時に外部データを同期しません。作成・作り直し・確認・PDF・共有はCLIから行えません。

編集の手順 ​

  1. getで今の版、elements --jsonで対象と既存編集を確認します。同じ文字の見出しは、文字だけでなくセクション・祖先の文脈・文書順で選びます。
  2. 要素が続くときはnextOffsetと最初のversionで次を取得します。
  3. 変更内容と読み取ったbaseVersionをJSONファイルに書き、updateへ渡します。書き込みはtagru login --writeで許可してください。
bash
tagru custom-reports elements report-example --json
tagru custom-reports elements report-example --offset 20 --base-version 2 --json
tagru custom-reports update report-example edit.json --json

edit.jsonの例です。IDは要素一覧の値へ置き換えます。

json
{
  "baseVersion": 2,
  "hiddenSections": ["detail"],
  "nodeEdits": [
    {
      "nodeId": "cover/div[1]/article[2]/h2[1]",
      "hidden": false,
      "text": "広告の成果",
      "backgroundColor": "#AABBCC",
      "textColor": "#123456"
    }
  ]
}

変更のある保存で版が1つ増え、確認は0人に戻ります。変更なしなら版は増えません。

  • 未指定/nullのトップレベル項目(hiddenSections/nodeEdits/ai/edits)は保持します。
  • hiddenSections/nodeEditsは配列全体の置換です。既存編集を残すなら一緒に送り、解除するときは空配列を送ります。
  • node editの項目はnodeId/hidden/text/backgroundColor/textColorのみです。1つのnode editもプロパティ全体を置換します。残したい文字・色は一緒に送り、null/未指定なら元へ戻します。
  • 編集は300件、変更文字は1要素2000字(全体の文字・ラベル合計50000字)まで。色は#RRGGBBのみで、保存後は小文字になります。@<sectionId>はページの外枠で色のみ変更可能です。
  • 非hideableページ、数値の変更、表・グラフ・fixed要素等の禁止操作は画面と同様400です。スキーマ不正は検証エラーになります。
  • 409 version_conflictは最新の内容・要素一覧を読み直し、利用者と変更を突き合わせます。rebuild_in_progressは作り直しの完了を待ちます。CLIは自動再試行しません。

前の版に戻す ​

history --jsonの対象版のcontentをJSONファイルへ取り出し、現在のbaseVersionと対象のrevertedFromを加えてupdateします。contentは保存用の許可項目だけに整形されています。

json
{
  "baseVersion": 3,
  "revertedFrom": 1,
  "ai": {},
  "edits": {},
  "hiddenSections": [],
  "nodeEdits": []
}

上の4つの内容項目は実際の対象版のcontentで置き換えてください。revertedFromだけでは内容を読み込みません(戻した元の版を記録する指定です)。同じ保存でさらに手直しもできます。作り直した版を示すrebuiltVersionより前へ戻すと409 version_before_rebuild、対象版が無ければ404 version_not_foundです。履歴は1回50版までなので、その範囲にない版の内容を推測して戻さないでください。

テキスト出力例 ​

以下はローカルのフェイクAPIとダミー値で確認した例です。

text
$ tagru custom-reports update report-example edit.json
ワークスペース: ws-0001
保存後: Ver.3 / 確認 0 人
変更の保存で版が1つ増え、確認は0人に戻ります(変更なしなら版は増えません)。

要素一覧は1件ごとにID・文書順・セクション・種類・現在の文字・祖先の文脈・可能操作を表示します。位置はピクセル座標ではなく文書順です。非表示の要素・ページも一覧に残ります。

JSON(--json) ​

list/historyは{target,workspaceId,items,count,hasMore}、access/get/elements/updateは{target,workspaceId,item}です。

list(items) ​

項目内容
idレポートID
layoutId/layoutNameレイアウトID・名前
periodType/startDate/endDate期間の種類と開始・終了日
version現在の版
confirmedBy現在の版を確認した人の名前
rebuilding作り直し中か
createdAt/updatedAt/expiresAtISO 8601日時(保持期限を含む)

access(item) ​

enabled/featureEnabled/layouts[{id,name}]を返します。

get / update(item) ​

listの各項目に加えて次を返します。updateはデータの中身を返しません。

項目内容
sectionsページ(id/title/hidden)
aiTextsAI文章(id/label/text/failed)
elementEdits保存済み編集(nodeId/label/hidden/text/backgroundColor/textColor)
rebuiltVersion最後にデータから作り直した版。無ければ0
dataSourcesデータのIDとcompact JSONのUTF-8バイト数(id/bytes)
dataget --dataのみ。データIDから中身への対応

history(items) ​

version/reason/revertedFrom/createdAt/createdBy/confirmedBy/changes/contentを返します。reasonはcreate/edit/revert/rebuild等、changesはkind/label/textです。contentはai/edits/hiddenSections/nodeEditsで、nodeEditsは保存用入力項目だけを含みます。

elements(item) ​

項目内容
id/versionレポートID・取得した版
sectionsid/title/hideable/hidden/order(manifest順、1始まり)
elements下記の要素配列
nodeEdits/hiddenSections保存済み編集。置換時に残すものを選ぶために使う
unmatched現在の描画に当たらない編集(nodeId/reason/label)。勝手に消さず確認する
total/hasMore/nextOffset全要素数・続きの有無・次のoffset(終端はnull)

各要素はnodeId/sectionId/sectionTitle/tag/text/label/order/sectionOrder/parentNodeId/ancestors/canHide/canText/canColor/hidden/backgroundColor/textColorです。

  • textは現在の文字。まとまり要素は空文字なのでlabelを参照します。
  • ancestorsは外側から内側の親(nodeId/tag/label/htmlId/classes)。同名要素は文脈とorder/sectionOrderで区別します。
  • order/sectionOrderは1始まりの文書全体・セクション内順序です。CSSの左右配置やページのピクセル位置ではありません。
  • hiddenは親・ページの非表示も含みます。色値はその要素へ適用された編集色で、nullは直接の色編集なしです。CSSの計算済み色ではありません。

別WSのレポートや保持期限後のIDは404です。APIのエラーコードはエラーと終了コードも参照してください。