microCMS

API経由でコンテンツの作成者を変更できるようになりました

ひまらつ

こんにちは!更新情報のお知らせです。

API経由でコンテンツの作成者を変更できるようになりました。
microCMSにはコンテンツを扱う「コンテンツAPI」と管理画面内の操作を扱う「マネジメントAPI」の2種類のAPIがありますが、今回の変更はマネジメントAPIでご利用いただけます。

この記事では基本的な使い方についてご紹介します。
APIの詳細については、ドキュメントの「PATCH /api/v1/contents/{endpoint}/{content_id}/createdBy」をご覧ください。

コンテンツ作成者変更APIについて

新しく追加されたリクエストは PATCH /api/v1/contents/{endpoint}/{content_id}/createdBy です。

endpoint には対象のAPIのIDを、content_id にはコンテンツIDを指定します。
リクエストボディで createdBy にメンバーIDを指定することで、コンテンツの作成者を任意のユーザーに変更できます。

利用方法

APIキーに権限を付与する

コンテンツ作成者変更をAPIから利用するためには、APIキーに新たに権限を付与する必要があります。
管理画面のAPIキー設定より、「コンテンツの作成者を変更」の権限を追加します。


API経由でコンテンツの作成者を変更する

curlコマンドを利用する場合、以下のようなリクエストを送ってください。
(API_KEY、SERVICE_ID、ENDPOINT、CONTENT_ID、MEMBER_IDはご自身のものに差し替えてください)

curl -X PATCH -H 'X-MICROCMS-API-KEY: <API_KEY>' -H 'Content-Type: application/json' https://<SERVICE_ID>.microcms-management.io/api/v1/contents/<ENDPOINT>/<CONTENT_ID>/createdBy -d '{"createdBy": "<MEMBER_ID>"}'


作成者の変更に成功するとステータスコード200が返却されます。

リクエストボディのcreatedByで指定しているのが作成者として指定したいメンバーのIDです。
次のセクションでメンバーIDの確認方法を紹介します。

メンバーIDの確認方法

メンバーIDの確認方法は次の2通りです。

1. 管理画面のメンバー詳細画面から確認する

管理画面でメンバーの詳細画面を開きます。


メンバー名の下に表示されているIDが「メンバーID」です。この値を使ってどのメンバーを対象とするかを指定できます。

2. マネジメントAPIから確認する

コンテンツのメタ情報取得APIにリクエストすると、そのコンテンツの作成者のメンバーIDが取得できます。


レスポンスの createdBy に作成者のメンバーIDが、updatedBy に最終更新者のメンバーIDが入っています。
名前やメールアドレスなどのアカウント情報は含まれていませんので、該当するメンバーIDがどのメンバーのものかは、管理画面と照らしあわせるなどしてご確認してください。

ユースケース

コンテンツ作成者変更APIは以下のようなシーンで便利にお使いいただけます。

異動や退職などにより、コンテンツの担当者が変わるとき

microCMSには権限管理の仕組みがあり、コンテンツ作成者のロールを使うことでより詳細な制御ができます。
例えば「渋谷店」というロールがあったとして、このロールが付与されているメンバー同士でのみお互いのコンテンツを管理画面上で閲覧できる、などのワークフローを構築できます。

このような運用をしているとき、特定のメンバーが他店舗に異動する場合に、コンテンツの作成者を一括で変更する必要が発生します。
APIで一括で変更できるようになったため、運用がより楽になります(管理画面上ではこれまでも可能)。


APIで担当者を変更する具体例

メンバーAが異動になり、メンバーAが作成したすべてのコンテンツの作成者をメンバーBに変更するステップを考えます。
まず、コンテンツのメタ情報一覧取得API を利用してコンテンツを全件取得し、そこからメンバーAが作成者になっているコンテンツIDのリストを抽出します。
コンテンツIDのリストをループ文で回し、メンバーBのメンバーIDを指定してコンテンツ作成者変更APIをリクエストします。
このようなスクリプトを用意することで、作成者の変更を一括で実行できます。

APIから一括でコンテンツを入稿したあと、コンテンツの作成者を変更したいとき

大量のコンテンツを一括で入稿する場合、管理画面でひとつひとつ入稿するのは大変です。
その場合に便利なのがAPI経由でのコンテンツ入稿です。APIを使えば、例えば他のシステムからのコンテンツの引っ越しなども簡単に実装できます。

APIからコンテンツを入稿した場合、コンテンツの作成者は「API」として登録されます。
前述のロールを用いた権限管理を実現するために、この作成者を適宜該当メンバーに変更していく必要があります。
API経由で作成者変更できることで、「APIで入稿→作成者変更」の流れを柔軟に組むことができるようになりました。

おわりに

今回はコンテンツ作成者の変更がAPI経由でできるようになったアップデートでした。
より使いやすいサービスを目指してAPI、管理画面ともに改善してまいります。ご要望などございましたら管理画面右下のチャットボタンよりご意見いただけますと幸いです。

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

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

microCMSを無料で始める

microCMSについてお問い合わせ

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

お問い合わせ

microCMS公式アカウント

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

  • X
  • Discord
  • github

ABOUT ME

ひまらつ
SwiftやPythonやスプラトゥーンを楽しんでます