更新情報をお知らせします。
この度マネジメント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になります。
2.サービスIDを確認
次に、コンテンツが存在するサービスのIDを確認します。サービスIDは、管理画面左上サイドバーのサービス名の下部、またはコンテンツのURLから確認できます。例えばURLがhttps://scheduletest.microcms.io/apis/blogs/test-contentの場合、scheduletestがサービスIDです。
3.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にて表示されます。運用に応じてタイムゾーンを指定してください。
おわりに
今回のマネジメントAPI追加により、より柔軟なコンテンツ管理を行うことができるようになりました。
APIを用いた自動化による効率化や、AIエージェント経由での操作など様々な場面でご活用いただけると幸いです。
今後もより使いやすいサービスを目指してプロダクトの改善に努めてまいります。ご要望等ございましたら管理画面右下のチャットボタンよりご意見等よろしくお願いいたします。

