0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

[Oracle Cloud]REST APIでOCM内のアセットを操作する

Last updated at Posted at 2023-09-19

はじめに

この記事は、以下のQiita記事の続きです。OCMのアセット・リポジトリに登録したデジタル・アセットおよびコンテンツ・アイテムを、REST APIで操作します

この記事は2023年8月時点の情報に基づき作成しました。最新の情報については、製品ドキュメントなどをご確認ください

アセットの取得

コンテンツ・アイテムの取得

アセット・リポジトリに登録されたコンテンツ・アイテムの情報を取得します。今回は以前の記事で登録済のsampleNewsTypeのコンテンツ・アイテムをslug(スラグ) を指定して取得します

利用するREST APIはこちら(↓)

Postmanを起動し、以下の通りに設定します

  • メソッド: GET
  • URI: https://<OCMインスタンスのドメイン名>/content/management/api/v1.1/items/.by.slug/{slug}

slug(スラグ)は、REST APIによるコンテンツ・アイテム作成時のレスポンスに含まれます。もしくは、WebブラウザでOCMインスタンスにアクセスし、アセット・リポジトリ内のコンテンツ・アイテムを開き、プロパティ→一般→簡易URLスラグより確認できます
image.png

Authorizationタブ

  • Type: OAuth2.0
  • Token: 取得済のOAuthトークンを指定
    image.png

Headersタブ

  • Accept: application/json
    image.png

Send をクリックします。REST APIが実行され、コンテンツ・アイテムの情報が取得できます
image.png

コンテンツ・アイテムのIDを指定しても、同じ情報を取得できます

デジタル・アセットのオリジナル・ファイルの取得

アセット・リポジトリにデジタル・アセットとして登録された オリジナルの画像ファイル をダウンロードします。今回は以前の記事で登録済のImageタイプのデジタル・アセットをslug(スラグ) を指定して取得します

利用するREST APIはこちら(↓)

Postmanを以下の通りに設定します

  • メソッド: GET
  • URI: https://<OCMインスタンスのドメイン名>/content/management/api/v1.1/assets/.by.slug/{slug}/native

slug(スラグ)は、REST APIによるデジタル・アセット登録時のレスポンスに含まれます。もしくは、WebブラウザでOCMインスタンスにアクセスし、アセット・リポジトリ内のデジタル・アセットを開き、プロパティ→一般→簡易URLスラグより確認できます
image.png

Authorizationタブ

  • Type: OAuth2.0
  • Token: 取得済のOAuthトークンを指定
    image.png

Send をクリックします。REST APIが実行され、デジタル・アセットとして登録したオリジナルの画像ファイルが取得できます
image.png

デジタル・アセットのIDを指定しても、同じ情報を取得できます

アセットのステータス変更

レビューに提出する

コンテンツ・アイテムをレビューに提出(Submit for Review) します。なお、リポジトリに登録直後のアセットのステータスは、ドラフト(Draft) に設定されます

利用するREST APIはこちら(↓)

Postmanを以下の通りに設定します

  • メソッド: POST
  • URI: https://<OCMインスタンスのドメイン名>/content/management/api/v1.1/bulkItemsOperations

Authorizationタブ

  • Type: OAuth2.0
  • Token: 取得済のOAuthトークンを指定
    image.png

Headersタブ

  • Content-Type: application/json
  • X-Requested-With: XMLHttpRequest
    image.png

Bodyタブ
以下の入力例を参考に、json形式で入力します。なお、id eq "xxxxxxx"のxxxxxxxは、ステータスを変更するコンテンツ・アイテムのidの値を入力します
image.png

レビューに提出(Submit for Review)
{
  "q": "id eq \"COREAF4EC834C43F4593A9404B0BD06B7623\"",
  "operations": {
    "submitForApproval": {
      "value": "true"
    }
  }
}

Send をクリックします。REST APIが実行され、コンテンツ・アイテムのステータスが更新されます
image.png

WebブラウザでOCMインスタンスにアクセスし、コンテンツ・アイテムのステータスが レビュー中 であることを確認します
image.png

承認する

レビュー中のステータスのコンテンツ・アイテムを 承認(Approve) します。

利用するREST APIはレビューに提出すると同じです

Postmanを以下の通りに設定します

  • メソッド: POST
  • URI: https://<OCMインスタンスのドメイン名>/content/management/api/v1.1/bulkItemsOperations

Authorizationタブ (※前の手順と同じ)

  • Type: OAuth2.0
  • Token: 取得済のOAuthトークンを指定

Headersタブ (※前の手順と同じ)

  • Content-Type: application/json
  • X-Requested-With: XMLHttpRequest

Bodyタブ
以下の入力例を参考に、json形式で入力します。なお、id eq "xxxxxxx"のxxxxxxxにはすでに登録済のコンテンツ・アイテムのidの値を入力します
image.png

承認(Approve)
{
  "q": "id eq \"COREAF4EC834C43F4593A9404B0BD06B7623\"",
  "operations": {
    "approve": {
      "value": "true"
    }
  }
}

Send をクリックします。REST APIが実行され、コンテンツ・アイテムのステータスが承認済 に変更されます
image.png

WebブラウザでOCMインスタンスにアクセスし、コンテンツ・アイテムが 承認済 であることを確認します
image.png

アセットを 却下(Reject) する場合は、valuefalseを設定し、同じREST APIを実行します
image.png

アセットの公開

コンテンツ・アイテムを公開します。今回は 今すぐ公開(Publish Now) を実行します。利用するREST APIはレビューに提出する承認すると同じです

Postmanを以下の通りに設定します

  • メソッド: POST
  • URI: https://<OCMインスタンスのドメイン名>/content/management/api/v1.1/bulkItemsOperations

Authorizationタブ (※前の手順と同じ)

  • Type: OAuth2.0
  • Token: 取得済のOAuthトークンを指定

Headersタブ

  • Content-Type: application/json
  • X-Requested-With: XMLHttpRequest
  • Prefer: respond-async
    image.png

Bodyタブ
以下の入力例を参考に、json形式で入力します。なお、id eq "xxxxxxx"のxxxxxxxにはすでに登録済のコンテンツ・アイテムのidの値を入力します。また、operations > publish > channels > idには、アセット公開先の公開チャネルのチャネルIDを設定します
image.png

今すぐ公開(Publish Now)
{
  "q": "id eq \"COREAF4EC834C43F4593A9404B0BD06B7623\"",
  "operations": {
    "publish"{
        "channels": [
            {
                "id": "RCHANNEL8ACFC2F627524E178BB64FA6C578243E"
            }
        ]
    }
  }
}

公開チャネルのチャネルIDは以下の手順で確認できます

  • リポジトリ管理者ロール(CECRepositoryAdministrator)を付与されたユーザーでOCMにサイン・インする
  • ADMINISTRATION:コンテンツ→チャネルのパブリッシュから該当する公開チャネルを開きます
  • 右サイド・パネルを開き、プロパティ→APIタブより確認できます
    image.png

Send をクリックします。REST APIが実行され、コンテンツ・アイテムの公開ジョブが実行されます(202 Accepted)。公開ジョブのステータスは、レスポンスのヘッダー(Headers)に含まれる Location のURLより確認できます
image.png

しばらくしてから、LocationのURLをRESTクライアントから実行します。progress:succeeded(成功)であることを確認します
image.png

WebブラウザでOCMインスタンスにアクセスし、コンテンツ・アイテムが 公開済 であることを確認します。また、コンテンツ・アイテムに関連づけられた画像アセットも併せて公開されます
image.png

公開の取消(Unpublish)を実行する場合は、operationsunpublishを指定し、公開の取消を実行するアセットIDと公開チャネルのチャネルIDを指定します
image.png

まとめ

この記事では、OCMのREST API for Content Managementを利用し、REST API経由でアセットを操作する方法を紹介しました。

(参考)OCMの製品ドキュメント

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?