microCMS

コンテンツの公開開始・公開終了予約を設定するマネジメントAPIが追加されました

なかあつ

更新情報をお知らせします。

この度マネジメントAPIにコンテンツのスケジュール(公開開始・公開終了予約)を設定するAPIが追加されました。
これまでは管理画面上からスケジュール設定を行えましたが、これに加えてAPI経由でもスケジュールを設定することができます。

詳細な仕様についてはヘルプドキュメントを参照いただくのが良いですが、今回は主な機能や使い方について簡単に紹介させていただきます。

主な機能

microCMSには指定した日時にコンテンツを公開または公開終了するスケジュール機能があります。今回追加されたマネジメントAPIではこのスケジュールの設定および解除を行うことができます。

リクエストボディにpublishTime(公開時刻)またはstopTime(公開終了時刻)を指定し、curl等で送信することで指定したコンテンツにスケジュールを設定できます。

// 公開時刻と終了時刻どちらも設定する場合
{ "publishTime": "2026-01-13T06:31:24.668Z", "stopTime": "2026-01-14T06:31:24.668Z" }

// 公開時刻のみを設定する場合
{ "publishTime": "2026-01-13T06:31:24.668Z" }

// 停止時刻のみを設定する場合
{ "stopTime": "2026-01-14T06:31:24.668Z" }


リクエストボディに空のJSONオブジェクト{}を指定すると設定されているスケジュール設定を解除することができます。

// 既存の公開開始・終了のスケジュール設定を解除する場合
{}


※時刻フォーマットはISO8601形式の日時文字列となっています。詳細はドキュメントをご確認ください。
※既存のスケジュール設定が存在する場合はマネジメントAPIから送信した内容で完全に上書きされます。(例. 公開開始予約が設定されている時に公開終了予約のみをマネジメントAPIから設定すると、既存の公開開始予約が解除されます)

使い方

実際にリクエストしてスケジュール設定を行うまで実施してみます。

1.コンテンツ作成、コンテンツIDを確認

コンテンツを指定してスケジュール操作を行うため、まずコンテンツを作成します。作成したコンテンツのコンテンツIDを控えておきます。今回はtest-contentがコンテンツIDになります。
microCMSのコンテンツ編集画面。コンテンツID「test-content」が表示されている

2.サービスIDを確認

次に、コンテンツが存在するサービスのIDを確認します。サービスIDは、管理画面左上サイドバーのサービス名の下部、またはコンテンツのURLから確認できます。例えばURLがhttps://scheduletest.microcms.io/apis/blogs/test-contentの場合、scheduletestがサービスIDです。

3.APIキーに権限を付与

このマネジメントAPIにリクエストするには、リクエスト時に使用するAPIキーに「コンテンツのスケジュール設定を変更」の権限が必要です。
APIキー管理画面で対象のAPIキーを選択し、「マネジメントAPI(ベータ)」の「コンテンツのスケジュール設定を変更」にチェックを入れて有効にします。
APIキー管理画面。「マネジメントAPI」タブで、「コンテンツのスケジュール設定を変更」にチェックを入れている。

4.curlでPUTリクエストを送信

これらの情報をもとにcurlコマンドでPUTリクエストを送信します。メソッドにPUT、X-MICROCMS-API-KEYヘッダーに権限を付与したAPIキーを指定し、リクエストボディにJSONを指定します。今回は下書き状態のコンテンツに公開開始予約を設定するので、publishTimeを設定します。
リクエストするURLはhttps://{サービスID}.microcms-management.io/api/v1/contents/{APIエンドポイント名}/{コンテンツID}/reservationとなるので、今までの工程で確認した値をそれぞれ設定します。

curl \
  -s \
  -X PUT \
  -H 'X-MICROCMS-API-KEY: xxxxx' \
  -H 'Content-Type: application/json' \
  -d '{
      "publishTime": "2027-06-20T00:00:00.668Z"
  }' \
  'https://scheduletest.microcms-management.io/api/v1/contents/blogs/test-content/reservation'

リクエストに成功するとHTTPステータス200でコンテンツIDがレスポンスとして返ってきます。

{"id":"test-content"}

リクエストした結果以下のようにスケジュールが設定されることを確認できました。
※今回はUTCで日時を指定しましたが管理画面上ではJSTにて表示されます。運用に応じてタイムゾーンを指定してください。
スケジュール設定後のコンテンツ編集画面。「予約中」と公開開始日時(2027年6月20日 09:00)が表示されている

おわりに

今回のマネジメントAPI追加により、より柔軟なコンテンツ管理を行うことができるようになりました。
APIを用いた自動化による効率化や、AIエージェント経由での操作など様々な場面でご活用いただけると幸いです。
今後もより使いやすいサービスを目指してプロダクトの改善に努めてまいります。ご要望等ございましたら管理画面右下のチャットボタンよりご意見等よろしくお願いいたします。

microCMS 採用情報

microCMSの採用に関する情報は、採用情報ページでご覧いただけます。

弊社メンバーが、業務内容やチームの雰囲気についてお話しているポッドキャスト「microCMS FM」もぜひチェックしてみてください。

カジュアル面談からでも大歓迎です。お気軽にご応募ください!

まずは、無料で試してみましょう。

APIベースの日本製ヘッドレスCMS「microCMS」を使えば、 ものの数分でAPIの作成ができます。

microCMSを無料で始める

microCMSについてお問い合わせ

初期費用無料・14日間の無料トライアル付き。ご不明な点はお気軽にお問い合わせください。

お問い合わせ

microCMS公式アカウント

microCMSは各公式アカウントで最新情報をお届けしています。
フォローよろしくお願いします。

  • X
  • Discord
  • github

ABOUT ME

なかあつ
Web開発・APIサーバー開発・社内システム構築などを経験し、2022年11月にmicroCMSにジョイン。React、Next.js、TypeScriptなどのフロントエンド領域が好きです。