カスタムステータス
microCMSでは『公開中』『下書き中』『公開終了』の3つのステータスを用意しています。カスタムステータスでは、それらに加え新たに独自のステータスを作成し、コンテンツに割り当てることができます。
- Information
カスタムステータスはBusinessプラン、Advancedプラン、Enterpriseプランでご利用いただける機能です。
プランごとに利用できる機能については、料金プランページをご覧ください。
作成方法
カスタムステータスはAPIごとに作成が可能です。
カスタムステータスを作成したいAPIの画面右上にある「API設定」→「カスタムステータス」と進むと設定画面に遷移します。
ここではキャンペーン終了ステータスを作成する例をご紹介します。
追加ボタンを押してステータスを作成するための情報を入力します。
それぞれの項目は以下のような情報を入力してください。
- APIステータス名:APIに反映されるステータス名です。デフォルトのコンテンツステータス「PUBLISH」「DRAFT」「CLOSED」以外の名前を設定してください。
- 表示ステータス名:管理画面で表示されるステータス名です。一目でどんなステータスなのかがわかる名前を設定します。
- ステータスの説明:ステータスの説明があれば設定します。空欄可。
- ステータスの状態:ステータスの状態を「公開」「下書き」「公開終了」から選択します。
- ステータスカラー:管理画面で表示されるステータスの色をカラーパレットから設定します。
「APIステータス名」と「表示ステータス名」は既存のステータスと重複しない値を入力してください。
カスタムステータスが作成されると一覧に表示されます。
利用方法
カスタムステータスを作成するとコンテンツ詳細画面のステータス表示がプルダウンに変更されるので、ここでステータスを切り替えることができます。
- Information
- ステータスの状態やステータスカラーが異なっていても、APIステータス名と表示ステータス名は重複して作成することはできません。
- ステータスの状態が異なるカスタムステータスに変更することはできません。その場合は、「公開終了にする」「下書きに戻す」などの操作を行い、ステータスの状態を変更後、任意のカスタムステータスを設定してください。
API経由でカスタムステータスを取得する方法
カスタムステータスはコンテンツAPIのレスポンスには含まれません。
API経由でカスタムステータスを取得する場合にはマネジメントAPI(ベータ)を使用します。
カスタムステータスが含まれたコンテンツに対して、マネジメントAPI(対象エンドポイントは後述します)を用いてリクエストすると、以下のようにレスポンスに customStatus
が配列で含まれます。
管理画面の内容がレスポンスに反映されます。
- APIステータス名:
key
- 表示ステータス名:
name
- ステータスの説明:
description
- ステータスの状態:
behavior
- ステータスカラー:
color
{
"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"
}
}
現時点では以下のエンドポイントに対応しています。マネジメントAPIの詳細は下記のドキュメントをご覧ください。
- GET /api/v1/contents/{endpoint}
- https://document.microcms.io/management-api/get-list-contents-management
- GET /api/v1/contents/{endpoint}/{content_id}
- https://document.microcms.io/management-api/get-content