microCMS

GET /api/v1/contents/{endpoint}

最終更新日:2023年11月08日

リスト形式のAPIにおいてはコンテンツのメタ情報一覧が取得でき、オブジェクト形式のAPIにおいては単一コンテンツのメタ情報が取得ができます。

オブジェクト形式のAPIの場合はGET /api/v1/contents/{endpoint}/{content_id}と同様の結果が得られます。

GET /api/v1/contents/{endpoint}/{content_id}
https://document.microcms.io/management-api/get-content

ここではリスト形式のAPIの場合におけるリクエストヘッダー、クエリパラメータについて解説します。

リクエストヘッダー

X-MICROCMS-API-KEY

マネジメントAPIのGET APIリクエストの際に必要な認証キーです。
マネジメントAPIのデフォルト権限で「コンテンツの取得 (一覧・詳細)」を有効にして、リクエストヘッダーに含めて送信してください。

informationInformation

クライアントサイドから直接APIを呼び出すことでユーザーがキーを把握できてしまう場合、エンドポイントさえ分かればAPIを呼び出せてしまうことにご注意ください。
対処法としては、サーバサイドからAPIを呼び出す、またはJamstack構成にするなどしてキーを漏洩しないことが挙げられます。

レスポンス例

こちらがマネジメントAPIで取得したコンテンツ一覧のレスポンス例です。

{
  "contents": [
    {
      "id": "string",
      "createdAt": "2019-08-24T14:15:22Z",
      "updatedAt": "2019-08-24T14:15:22Z",
      // 下書き中はnullが入る
      "publishedAt": "2019-08-24T14:15:22Z",
      // 下書き中はnullが入る
      "revisedAt": "2019-08-24T14:15:22Z",
      // 公開終了時は日時が入る(一度も公開終了していない場合はnullが入る)
      "closedAt": null,
      // DRAFT or PUBLISH or CLOSED or PUBLISH_AND_DRAFT
      "status": [
        "DRAFT"
      ],
      //カスタムステータス(未設定時はnullが入る)
      "customStatus": null,
      //コンテンツの公開時、公開終了時はnullが入る
      "draftKey": "draftKey",
      "createdBy": "string",
      "updatedBy": "string",
      // 予約が設定されていない場合nullが入る
      "reservationTime": {
        "publishTime": "2019-08-24T14:15:22Z", //公開開始予約設定がされていない場合nullが入る
        "stopTime": "2019-08-24T14:15:22Z" //公開停止予約設定がされていない場合nullが入る
      }
    }
  ],
  "totalCount": 1,
  "offset": 0,
  "limit": 10
}


クエリストリング

本APIにはクエリストリングを指定できます。

limit

取得件数を指定します。
デフォルト値は10です。上限値は100です。

informationInformation
  • レスポンスサイズ(レスポンスヘッダのcontent-lengthの値)が約5MBを超えるとエラーが発生します。
  • 全件取得など、101件以上のコンテンツを取得したい場合の方法については、下記のヘルプをご参照ください。
101件以上のコンテンツを取得するにはどうしたらよいですか?
https://help.microcms.io/ja/knowledge/fetch-big-data

offset

コンテンツを取得開始する位置を、指定した値だけ後ろにずらします。
デフォルト値は0です。

カスタムステータス

カスタムステータスが設定されたコンテンツでは以下のように customStatus がレスポンスに含まれます。

{
  "id": "string",
  "createdAt": "2019-08-24T14:15:22Z",
  "updatedAt": "2019-08-24T14:15:22Z",
  "publishedAt": "2019-08-24T14:15:22Z",
  "revisedAt": "2019-08-24T14:15:22Z",
  "status": [
    "PUBLISH"
  ],
  // このcustomStatusが新たに追加されます。
  // customStatusが未対応のプランや設定されていない場合はnullになります。
  "customStatus": [
    {
      "key": "USER_DEFINED_CUSTOM_STATUS_KEY123",
      "description": "ユーザが定義したカスタムステータスです。",
      "name": "カスタムステータスのテスト",
      "behaviour": "PUBLISH",
      "color": "#a20063",
      "createdAt": "2019-08-24T14:15:22Z",
      "updatedAt": "2019-08-24T14:15:22Z"
    }
  ],
  "draftKey": "string",
  "createdBy": "string",
  "updatedBy": "string",
  "reservationTime": {
    "publishTime": "2019-08-24T14:15:22Z",
    "stopTime": "2019-08-24T14:15:22Z"
  }
}


カスタムステータスについて詳しくは以下ドキュメントをご覧ください。

カスタムステータス
https://document.microcms.io/manual/custom-status