0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Confluence 6.15.7:REST APIにおける body representation の種類と取得結果まとめ

0
Last updated at Posted at 2026-01-12

環境

  • Confluence Server 6.15.7

背景

content-getContentById APIでページの中身を取得したいです。
取得できるページの中身の表現方法(representation)はいくつかあります。
それぞれどんなrepresentationなのかが、ドキュメントを見ただけでは分からなかったので、実際に動かして確認しました。

指定可能なrepresentation

クエリパラメータにexpand=bodyを指定して、指定可能なrepresentationを確認しました。

content-getContentByIdのレスポンス.json
{
  //
  "body": {
    "_expandable": {
      "editor": "",
      "view": "",
      "export_view": "",
      "styled_view": "",
      "storage": "",
      "anonymous_export_view": ""
    }
  },
  // ...
}

以下のrepresentationを指定できることが分かりました。

  • editor
  • view
  • export_view
  • styled_view
  • storage
  • anonymous_export_view

各representationの説明は https://docs.atlassian.com/ConfluenceServer/rest/6.15.7/#api には記載されていませんでした。
ChatGPTに質問したところ、ContentRepresentationクラスのJavaDocに各representationの説明が記載されていました。

使っているConfluenceは6.15.7ですが、JavaDocは8.4.0を参照しています。6.15.7のJavaDocは存在していなかったためです。また6.x.xのJavaDocはすべてのrepresentationが説明されていなかったため、最新バージョンのJavaDocを参照することにしました。
たとえば6.4.0のJavaDocにはVIEWの説明がありませんでした。

各representationの結果

クエリパラメターexpandbody.storageのようにrepresentationを指定して、実際にどのような結果を返すかを確認しました。
なお、見やすくするために適切にフォーマットしています。

storage

Raw database format, for content that stores data in our XML storage format

storageフォーマットの詳細は https://ja.confluence.atlassian.com/doc/confluence-storage-format-790796544.html に記載されています。

<div>
  <h1>テスト</h1>
  <p>サンプル画像</p>
  <p>
    <ac:image ac:thumbnail="true" ac:width="32">
      <ri:attachment ri:filename="A.png"></ri:attachment>
    </ac:image>
  </p>
  <p>
    <ac:link>
      <ri:user ri:userkey="2c91809a61f26f7e0161f4112f700000"></ri:user>
    </ac:link>
  </p>
</div>

view

HTML representation for viewing in a web page 1

<div>
  <h1 id="id-テスト-テスト">テスト</h1>
  <p>サンプル画像</p>
  <p>
    <span class="confluence-embedded-file-wrapper confluence-embedded-manual-size">
      <img class="confluence-embedded-image confluence-thumbnail" width="32" src="/confluence/download/thumbnails/713424927/A.png?version=1&amp;modificationDate=1768131620000&amp;api=v2" data-image-src="/confluence/download/attachments/713424927/A.png?version=1&amp;modificationDate=1768131620000&amp;api=v2" data-unresolved-comment-count="0" data-linked-resource-id="1735327999" data-linked-resource-version="1" data-linked-resource-type="attachment" data-linked-resource-default-alias="A.png" data-base-url="https://kurusugawa.jp/confluence" data-linked-resource-content-type="image/png" data-linked-resource-container-id="713424927" data-linked-resource-container-version="41">
    </span>
  </p>
  <p>
    <a class="confluence-userlink user-mention current-user-mention" data-username="jane_doe" href="/confluence/display/~jane_doe" data-linked-resource-id="690028605" data-linked-resource-version="4" data-linked-resource-type="userinfo" data-base-url="https://kurusugawa.jp/confluence">Jane Doe</a>
  </p>
</div>

export_view

HTML representation for viewing, but with absolute urls, instead of relative urls in the markup. Useful for exporting. 2

<div>
  <h1 id="id-テスト-テスト">テスト</h1>
  <p>サンプル画像</p>
  <p>
    <span class="confluence-embedded-file-wrapper confluence-embedded-manual-size">
      <img class="confluence-embedded-image confluence-thumbnail" width="32" src="https://kurusugawa.jp/confluence/download/attachments/embedded-page/~jane_doe/%E3%83%86%E3%82%B9%E3%83%88/A.png?api=v2">
    </span>
  </p>
  <p>
    <a class="confluence-userlink user-mention current-user-mention" data-username="jane_doe" href="https://kurusugawa.jp/confluence/display/~jane_doe" data-linked-resource-id="690028605" data-linked-resource-version="4" data-linked-resource-type="userinfo" data-base-url="https://kurusugawa.jp/confluence">Jane Doe</a>
  </p>
</div>

anonymous_export_view

HTML representation for viewing, but with absolute urls, instead of relative urls in the markup, and macros are rendered as though it is viewed by an anonymous user. Useful for exporting in situations where you might not want to reveal sensitive data , or you do not want to pay the cost of a permission check for the export. The output of this can be cached as long as the underlying content has not changed. 3

<div>
  <h1 id="id-テスト-テスト">テスト</h1>
  <p>サンプル画像</p>
  <p>
    <span class="confluence-embedded-file-wrapper confluence-embedded-manual-size">
      <img class="confluence-embedded-image confluence-thumbnail" width="32" src="https://kurusugawa.jp/confluence/download/attachments/embedded-page/~jane_doe/%E3%83%86%E3%82%B9%E3%83%88/A.png?api=v2">
    </span>
  </p>
  <p>
    <a class="confluence-userlink user-mention" data-username="jane_doe" href="https://kurusugawa.jp/confluence/display/~jane_doe" data-linked-resource-id="690028605" data-linked-resource-version="4" data-linked-resource-type="userinfo" data-base-url="https://kurusugawa.jp/confluence">Jane Doe</a>
  </p>
</div>

editor

Representation suitable for use in the rich text editor 4

<div>
  <h1>テスト</h1>
  <p>サンプル画像</p>
  <p>
    <img class="confluence-embedded-image confluence-thumbnail" width="32" src="/confluence/download/thumbnails/713424927/A.png?version=1&amp;modificationDate=1768131620000&amp;api=v2" data-image-src="/confluence/download/attachments/713424927/A.png?version=1&amp;modificationDate=1768131620000&amp;api=v2" data-unresolved-comment-count="0" data-linked-resource-id="1735327999" data-linked-resource-version="1" data-linked-resource-type="attachment" data-linked-resource-default-alias="A.png" data-base-url="https://kurusugawa.jp/confluence" data-linked-resource-content-type="image/png" data-linked-resource-container-id="713424927" data-linked-resource-container-version="41" title="Jane Doe &gt; テスト &gt; A.png" data-location="Jane Doe &gt; テスト &gt; A.png" data-image-height="18" data-image-width="17">
  </p>
  <p>
    <a class="confluence-link confluence-userlink user-mention current-user-mention" data-username="jane_doe" href="/confluence/display/~jane_doe" data-linked-resource-id="690028605" data-linked-resource-version="4" data-linked-resource-type="userinfo" userkey="2c91809a61f26f7e0161f4112f700000" data-linked-resource-default-alias="Jane Doe" data-base-url="https://kurusugawa.jp/confluence">Jane Doe</a>
  </p>
</div>

styled_view

A rendered view that includes inline styles in a <style> element, wrapped in an entire <html> structure. 5

<html>
  <head>
    <title>テスト</title>
    <style default-inline-css>
    ...
    </style>
    <base href="https://kurusugawa.jp/confluence">
  </head>
  <body>
    <div id="Content" style="padding: 5px;">
      <h1 id="id-テスト-テスト">テスト</h1>
      <p>サンプル画像</p>
      <p>
        <span class="confluence-embedded-file-wrapper confluence-embedded-manual-size">
          <img class="confluence-embedded-image confluence-thumbnail" width="32" src="/confluence/download/thumbnails/713424927/A.png?version=1&amp;modificationDate=1768131620000&amp;api=v2" data-image-src="/confluence/download/attachments/713424927/A.png?version=1&amp;modificationDate=1768131620000&amp;api=v2" data-unresolved-comment-count="0" data-linked-resource-id="1735327999" data-linked-resource-version="1" data-linked-resource-type="attachment" data-linked-resource-default-alias="A.png" data-base-url="https://kurusugawa.jp/confluence" data-linked-resource-content-type="image/png" data-linked-resource-container-id="713424927" data-linked-resource-container-version="41">
        </span>
      </p>
      <p>
        <a class="confluence-userlink user-mention current-user-mention" data-username="jane_doe" href="/confluence/display/~jane_doe" data-linked-resource-id="690028605" data-linked-resource-version="4" data-linked-resource-type="userinfo" data-base-url="https://kurusugawa.jp/confluence">Jane Doe</a>
      </p>
    </div>
  </body>
</html>
  1. https://docs.atlassian.com/atlassian-confluence/8.4.0/com/atlassian/confluence/api/model/content/ContentRepresentation.html#VIEW

  2. https://docs.atlassian.com/atlassian-confluence/8.4.0/com/atlassian/confluence/api/model/content/ContentRepresentation.html#EXPORT_VIEW

  3. https://docs.atlassian.com/atlassian-confluence/8.4.0/com/atlassian/confluence/api/model/content/ContentRepresentation.html#ANONYMOUS_EXPORT_VIEW

  4. https://docs.atlassian.com/atlassian-confluence/8.4.0/com/atlassian/confluence/api/model/content/ContentRepresentation.html#EDITOR

  5. https://docs.atlassian.com/ConfluenceServer/javadoc/8.4.0/com/atlassian/confluence/api/model/content/ContentRepresentation.html?#STYLED_VIEW

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?