RESTful API エンドポイント (update)

updateエンドポイントについて

オブジェクトを更新します。認証付きリクエストでログイン中のユーザーがそのオブジェクトに対する編集権限が必要です。

ワークフローとリビジョンについては以下を参照ください。

エンドポイント(entryモデルの例)

/api/v1/スコープID/モデル名/update/オブジェクトID
/api/v1/1/entry/update/1

メソッド

PUT または POST

リクエストボディ

{
    "title": "Welcome!",
    "text": "<h2>Our Story<\/h2>\n<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.<\/p>\n<blockquote>\n<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.<\/p>\n<\/blockquote>",
    "text_format": "richtext",
    "assets": [
        {
            "id": 26
        }
    ],
    "excerpt": "Our StoryLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.",
    "categories": [
        {
            "id": 1
        }
    ],
    "tags": [
        {
            "id": 6
        }
    ],
    "basename": "powercmsx",
    "status": 4,
    "has_deadline": 0,
    "published_on": "2021-09-01 12:47:46",
    "allow_comment": 0
}

レスポンス(成功時)

オブジェクトの idとリクエストボディの JSONで指定したキーの値を返します。

{
    "id": 54,
    "title": "Welcome!",
    "text": "<h2>Our Story<\/h2>\n<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.<\/p>\n<blockquote>\n<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.<\/p>\n<\/blockquote>",
    "text_format": "richtext",
    "assets": [
        {
            "id": 26,
            "label": "powercmsx",
            "file": {
                "Url": "https:\/\/localhost\/01\/assets\/powercmsx.png",
                "Label": null,
                "Metadata": {
                    "file_size": 76618,
                    "image_width": 600,
                    "image_height": 600,
                    "class": "image",
                    "extension": "png",
                    "mime_type": "image\/png",
                    "uploaded": "2021-09-02 15:11:58",
                    "user_id": 1
                }
            },
            "Permalink": "https:\/\/localhost\/01\/assets\/powercmsx.png",
            "Thumbnail": "https:\/\/localhost\/powercmsx\/assets_c\/thumb-asset-128xauto-square-26-file.png"
        }
    ],
    "excerpt": "Our StoryLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.",
    "categories": [
        {
            "id": 1,
            "label": "Press Release",
            "Permalink": "https:\/\/localhost\/01\/press_release\/index.html"
        }
    ],
    "tags": [
        {
            "id": 6,
            "name": "PowerCMS X"
        }
    ],
    "basename": "powercmsx_1",
    "status": 4,
    "has_deadline": 0,
    "published_on": "2021-09-01 12:47:46",
    "allow_comment": 0
}

レスポンス・エラー

共通レスポンスエラーについてはこちら を参照ください。

許可されないリクエストメソッド

{
    "status": 400,
    "message": "Method リクエストメソッド not allowed."
}

JSONのパースエラー、JSONにキー「id」指定があり、対象のオブジェクトIDと異なっている

{
    "status": 400,
    "message": "Invalid request."
}

認証付きリクエストでないか、有効なユーザーではない、権限がない、またはユーザーが指定できないステータスを指定しようとしている

{
    "status": 403,
    "message": "Permission denied."
}

JSONにキー「workspace_id」指定があって、実行中のスコープと異なる

{
    "status": 403,
    "message": "Invalid workspace_id specified."
}

バリデーション・エラー

  • Required(必須)
  • Invalid(バリデーションエラー)
  • Duplicate(ユニークカラムの重複)

各々をキーとしてカラム名とエラーメッセージの配列を errorsにセットして返します。

{
    "status": 406,
    "message": "The input data is missing or contains incorrect values.",
    "errors": {
        "Required": {
            "カラム名": "エラーメッセージ"
        },
        "Invalid": {
            "カラム名": "エラーメッセージ"
        },
        "Duplicate": {
            "カラム名": "エラーメッセージ"
        }
    }
}

プラグインなどのコールバックによって updateがキャンセルされた

{
    "status": 406,
    "message": "Update canceled by callback(エラー内容)."
}

オブジェクトの保存に失敗した

{
    "status": 500,
    "message": "An error occurred while save object."
}