PATCH /api/v1/{endpoint}/{content_id}
PATCH APIを用いることで、コンテンツの編集をAPI経由で行うことができます。
- Information
- オブジェクト形式のAPIで利用する際は、URLにコンテンツIDは含めずにリクエストしてください(
/api/v1/{endpoint}
)。 - 更新対象は、公開中のデータとなります。公開中かつ下書き中のデータに対してリクエストした際は、公開中のデータのみ更新されます。
- オブジェクト形式のAPIで利用する際は、URLにコンテンツIDは含めずにリクエストしてください(
リクエストヘッダー
X-MICROCMS-API-KEY
PATCH APIリクエストの際に必要な認証キーです。
デフォルト権限もしくは個別権限で「PATCH」を有効にして、リクエストヘッダーに含めて送信してください。
- Information
クライアントサイドから直接APIを呼び出すことでユーザーがキーを把握できてしまう場合、エンドポイントさえ分かればAPIを呼び出せてしまうことにご注意ください。特に書き込み系のAPIキー(POST、PUT、PATCH、DELETE)の漏洩にご注意ください。
対処法としては、サーバサイドからAPIを呼び出す、またはJamstack構成にするなどしてキーを漏洩しないことが挙げられます。
Content-Type
送信するデータの形式を指定します。
microCMSではJSON形式のデータのみ扱っているため、application/jsonと指定してください。
リクエストボディ
APIスキーマに沿って送信したい内容のJSONを用意し、文字列として渡してください。
例:
{"title":"サンプルタイトル","category": ["サンプルカテゴリ"]}
各フィールドにおける値の指定方法は下記の通りです。
テキストフィールド
任意の文字列を指定してください。
(例:"テキスト1"
)
テキストエリア
改行コードを用いることで複数行の文字列を指定できます。
(例:"複数行のテキストを入力\n複数行のテキストを入力"
)
リッチエディタ
HTML文字列を用いることで装飾や画像を指定できます。詳しくはリッチエディタのWRITE APIをご覧ください。
(例:"<h1>見出し</h1><p>このようにHTMLで入稿できます</p>"
)
旧リッチエディタ
改行コードを用いることで複数行の文字列を指定できます。
(例:"複数行のテキストを入力\n複数行のテキストを入力"
)
HTMLタグを付与した状態での登録は非対応となります。
※HTMLを登録した場合、以下のようにエスケープされます。<p>テキスト1</p>
→ &lt;p&gt;テキスト1&lt;/p&gt;
画像
microCMSの同じサービスにアップロードされた画像のURLを指定してください。
(例:"https://images.microcms-assets.io/assets/xxxxxxxx/yyyyyyyy/sample.png"
)
指定可能な画像URLについて
メディアのカスタムドメインが設定されている場合、カスタムドメインとデフォルトのドメイン(microcms-assets.io
)の両方を受け付けられます。
また、以下のように不正なURLを指定した場合はエラーになります。
- microCMSにアップロードされたものでない画像のURL
- microCMSの別サービスにアップロードされた画像のURL(※複数環境機能で作成したサービスも別サービス扱いとなります)
複数画像
microCMSの同じサービスにアップロードされた画像のURLを配列で指定してください。
(例:["https://images.microcms-assets.io/assets/xxxxxxxx/yyyyyyyy/sample1.png", "https://images.microcms-assets.io/assets/xxxxxxxx/yyyyyyyy/sample2.png"]
)
指定可能な画像URLについては、画像フィールドと同様です。
日時
ISO 形式 (ISO 8601) の文字列で指定してください。
(例:"2020-04-23T14:32:38.163Z"
)
数字
数字を指定してください。
(例:123
)
真偽値
真偽値を指定してください。
(例:true
)
セレクトフィールド
セレクトフィールドの要素を配列で指定してください。
(例:["要素1","要素2"]
)
コンテンツ参照
参照先コンテンツのcontentIdを指定してください。
(例:"参照先id"
)
コンテンツ複数参照
参照先コンテンツのcontentIdを配列で指定してください。
(例:["参照先id1","参照先id2"]
)
カスタムフィールド
対象フィールド内容をオブジェクト形式で指定してください。
(例:{ "fieldId": "YOUR_FIELD_ID", "some_value": "" }
)
繰り返しフィールド
対象となるデータ内容をカスタムフィールドのリスト形式で指定してください。
(例:[ { "fieldId": "YOUR_FIRST_FIELD_ID", "some_text_value": "" }, { "fieldId": "YOUR_SECOND_FIELD_ID", "some_int_value": 10 } ]
)
ファイル
microCMSの同じサービスにアップロードされたメディアのURLを指定してください。
(例:"https://files.microcms-assets.io/assets/xxxxxxxx/yyyyyyyy/manual.pdf"
)
指定可能なファイルURLについて
メディアのカスタムドメインが設定されている場合、カスタムドメインとデフォルトのドメイン(microcms-assets.io
)の両方を受け付けられます。
また、以下のように不正なURLを指定した場合はエラーになります。
- microCMSにアップロードされたものでないファイルのURL
- microCMSの別サービスにアップロードされたファイルのURL(※複数環境機能で作成したサービスも別サービス扱いとなります)
拡張フィールド
対象となるデータ内容(message部分)をオブジェクト形式で指定してください。各値の詳細については、拡張フィールドをご確認ください。
(例:{ "id": "some-id", "title": "some-title", "description": "some-description", "imageUrl": "some-image-url", "updatedAt": "some-updated-at", "data": { "id": "123" } }
)
自動で付与されるフィールドの指定方法
公開日時(publishedAt)
ISO 形式 (ISO 8601) の文字列で指定してください。
(例:"2024-01-01T00:00:00Z"
)
フィールドを空値で登録する場合の指定方法
PATCH APIにおいてフィールドの値を空値で登録したい場合、フィールドの種類に応じて以下の値を指定し、リクエストしてください。
フィールドの種類 | 空値で登録する場合に指定する値 |
---|---|
テキストフィールド |
|
テキストエリア |
|
リッチエディタ |
|
旧リッチエディタ(非推奨) |
|
画像 |
|
複数画像 |
|
日時 |
|
真偽値 |
|
セレクトフィールド |
|
コンテンツ参照 |
|
複数コンテンツ参照 |
|
数字 |
|
カスタムフィールド |
|
繰り返しフィールド |
|
ファイル |
|
拡張フィールド |
|
レスポンス
正常にコンテンツを作成できた場合は200
レスポンスが返却されます。
レスポンスボディ
リクエストを正常に実行できた場合のレスポンスボディは以下のようになります。
{
"id": "someId"
}