6
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?

Oracle Cloud InfrastructureAdvent Calendar 2024

Day 9

マーケットプレイス版Oracle WebCenter Content For OCIのREST APIを試してみた

Last updated at Posted at 2024-12-08

マーケットプレイス版Oracle WebCenter Content For OCI

Oracle WebCenter Content(WCC)は、様々な種類のコンテンツの保管・管理を目的とした統合コンテンツ管理アプリケーションです。

マーケットプレイス版のOracle WebCenter Content(WCC on MP)は、Oracle Cloud Infrastructure上のVMベースのソリューションとして提供されます。WCC on MPを使用すると、顧客は数回クリックするだけで環境をプロビジョニング/セットアップでき、クラウド上でコンテンツ・ソリューションを提供できるようになります。

詳細は製品ドキュメントおよび概要紹介資料をご確認ください

製品ドキュメント

概要紹介資料(SpeakerDeck)

この記事で紹介すること、しないこと

これまでソフトウェア・ライセンスとして提供されていたWCCは、外部システムからWCC内のコンテンツを操作するAPIとして、WebサービスAPIとRIDC(Remote IntraDoc Client)の2つをサポートしていました。
WCC on MPは、これら2つのAPIに加えて、REST API をサポートしました。この記事では、WCC on MPが提供するREST APIの基本的な操作方法を説明します。

2024年12月1日時点、REST APIはWCC on MPのみ利用可能です。ソフトウェア版(バージョン12.2.1.4.0)は利用できません。
Oracle WebCenter Content12c (12.2.1.4.0) — October 2024のアップデートより、ソフトウェア版でもREST APIが利用可能です。訂正させていただきます

なお、WCC on MPのプロビジョニング手順の紹介は割愛します。具体的なプロビジョニング手順は、上記の製品ドキュメントや以下Qiita記事を参考にしてください。

WCC on MPのREST API

WCC on MPとして新しくリリースされたREST APIを利用すると、フロントエンドがバックエンドのリポジトリやストレージから独立して動作する「ヘッドレスCMS」のように、WCC on MPを『ヘッドレス・ドキュメント管理システム』として利用できるようになります。

これにより、ドキュメントの保管・管理はWCC on MPに任せ、開発者はフロントエンドの実装に注力することができます。

製品ドキュメント

WCC on MPのREST APIに関するドキュメントは既に公開済です。最新情報はこちらをご確認ください。

リソースURI

https://{WCCHost}[:WCCPort]/documents/wcc/api/version/resourcePath

REST API実行例

https://www.example.com/documents/wcc/api/v1.1/xxx

認証
RESTコール時は、ベーシック認証(Basic Auth) を利用します。匿名コール(anonymous calls)もサポートします。

REST APIの実行

今回は、Mac環境をRESTクライアントとし、OCI上のWCC on MP環境にcurlコマンドを実行します。

1. PING Server

GET /documents/wcc/api/v1.1/system/ping

WCC on MPサーバーが実行中であることを確認します。実行中の場合、204 No Contentが帰ってきます。

curlコマンド実行

curl -k -I "https://<WCCHost>:<WCCPort>/documents/wcc/api/v1.1/system/ping" -u username:password

実行結果

HTTP/1.1 204 No Content
Date: Tue, 03 Dec 2024 07:56:48 GMT
Connection: keep-alive
Set-Cookie: X-Oracle-OCI-WCC-CS-Route=4e1753bd199c61d84ac0c8654a71e4183dcb1023; Path=/; Secure; HttpOnly
X-ORACLE-DMS-ECID: c6f9ee97-4db7-4a85-a0aa-ea99d7f4dca2-0000068e
X-ORACLE-DMS-RID: 0

2. Get File Information(ファイル情報の取得)

GET /documents/wcc/api/v1.1/files/{dDocName}

WCC on MPに登録されたドキュメントの情報を取得します。取得時のパラメータとしてdDocName(コンテンツID)を指定します。
なお、今回WCC on MPから取得するドキュメントは以下スクリーンショットの通りです。Standard Fieldsの一番上のコンテンツIDのWCC000367を指定して情報を取得します。なお、最新リビジョンは2です。

image.png

curlコマンド実行

curl -k "https://<WCCHost>:<WCCPort>/documents/wcc/api/v1.1/files/WCC000367" -u username:password

実行結果

{
	"dDocName": "WCC000367",
	"dID": 605,
	"dDocType": "DigitalMedia",
	"dDocTitle": "Collaboration",
	"dRevLabel": "2",
	"dSecurityGroup": "Public",
	"dDocAuthor": "weblogic",
	"dStatus": "RELEASED",
	"dOriginalName": "Collaboration.png",
	"dFormat": "image/png",
	"dFileSize": 3179650,
	"dDocCreatedDate": "2024-11-19 06:17:00Z",
	"dDocCreator": "weblogic",
	"dDocLastModifiedDate": "2024-11-22 02:53:00Z",
	"dDocLastModifier": "weblogic",
	"dDocOwner": "weblogic",
	"xIPMSYS_SCKEY": null,
	"xIPMSYS_BATCH_ID1": 0,
	"xIsACLReadOnlyOnUI": 0,
	"dCharacterSet": null,
	"xComments": "コメント",
	"xDocumentTags": "Boating,Recreation,Outdoor recreation,Boat,Illustration,Paddle,Person,Vehicle,Watercraft,Canoeing,Boating,Recreation,Canoeing,Watercraft,Vehicle,Person,Paddle,Illustration,Boat,Outdoor recreation",
	"dRendition1": "P",
	"dRendition2": "D",
	"xPackagedConversions": "BasicRenditions",
	"xClbraRoleList": null,
	"dDocClass": null,
	"dMessage": "!csStepSuccess",
	"dWebExtension": "jpg",
	"dCheckoutUser": null,
	"dIsPrimary": 1,
	"dExtension": "png",
	"xStorageRule": "DispByContentId",
	"dProcessingState": "Y",
	"dWorkflowState": null,
	"dIndexerState": null,
	"xProducts_category": null,
	"xIPMSYS_REDACTION": 0,
	"dReleaseDate": "2024-11-26 05:18:00Z",
	"dDocFunction": null,
	"xVideoRenditions": null,
	"dOutDate": null,
	"dRevClassID": 367,
	"dLanguage": null,
	"dIsCheckedOut": 0,
	"dIndexedID": 605,
	"xIdcProfile": null,
	"dIsWebFormat": 0,
	"xIPMSYS_BATCH_SEQ": null,
	"dPublishType": null,
	"xClbraUserList": null,
	"xIPMSYS_PARENT_ID": 0,
	"dInDate": "2024-11-22 02:52:00Z",
	"dRevRank": 0,
	"dDocID": 631,
	"xClbraAliasList": null,
	"dLocation": null,
	"xIPMSYS_APP_ID": null,
	"xIPMSYS_STATUS": null,
	"xPartitionId": null,
	"xWebFlag": null,
	"dReleaseState": "Y",
	"xTemplateType": null,
	"xAnnotationDetails": 0,
	"dFlag1": null,
	"dCreateDate": "2024-11-22 02:53:00Z",
	"xExternalDataSet": null,
	"dRevisionID": 2,
	"dDocAccount": null,
	"dPublishState": null,
	"xDamConversionType": "graphic",
	"xLibraryGUID": "F90BE509B4D43386B3A8D860E676E215"
}

ドキュメントID(dID)=605、最新リビジョン(dRevLabel)=2のドキュメントの情報が取得できました。

パラメータを追加することで、取得する情報の取捨選択ができます。例えば、古いリビジョンの情報の情報を取得するには、取得するリビジョンを version=1 のように指定します。

curlコマンド実行(version=1を指定)

curl -k "https://<WCCHost>:<WCCPort>/documents/wcc/api/v1.1/files/WCC000367?version=1" -u username:password

実行結果

{
	"dDocName": "WCC000367",
	"dID": 586,
	"dDocType": "DigitalMedia",
	"dDocTitle": "Collaboration",
	"dRevLabel": "1",
	"dSecurityGroup": "Public",
	"dDocAuthor": "weblogic",
	"dStatus": "RELEASED",
	"dOriginalName": "Collaboration.png",
	"dFormat": "image/png",
	"dFileSize": 3179650,
	"dDocCreatedDate": "2024-11-19 06:17:00Z",
	"dDocCreator": "weblogic",
	"dDocLastModifiedDate": "2024-11-22 02:53:00Z",
	"dDocLastModifier": "weblogic",
	"dDocOwner": "weblogic",
	"xIPMSYS_SCKEY": null,
	"xIPMSYS_BATCH_ID1": 0,
	"xIsACLReadOnlyOnUI": 0,
	"dCharacterSet": null,
	"xComments": null,
	"xDocumentTags": "Boating,Recreation,Canoeing,Watercraft,Vehicle,Person,Paddle,Illustration,Boat,Outdoor recreation",
	"dRendition1": "P",
	"dRendition2": "D",
	"xPackagedConversions": "BasicRenditions",
	"xClbraRoleList": null,
	"dDocClass": null,
	"dMessage": "!csStepSuccess",
	"dWebExtension": "jpg",
	"dCheckoutUser": null,
	"dIsPrimary": 1,
	"dExtension": "png",
	"xStorageRule": "DispByContentId",
	"dProcessingState": "Y",
	"dWorkflowState": null,
	"dIndexerState": null,
	"xProducts_category": null,
	"xIPMSYS_REDACTION": 0,
	"dReleaseDate": "2024-11-22 02:53:00Z",
	"dDocFunction": null,
	"xVideoRenditions": null,
	"dOutDate": null,
	"dRevClassID": 367,
	"dLanguage": null,
	"dIsCheckedOut": 0,
	"dIndexedID": 605,
	"xIdcProfile": null,
	"dIsWebFormat": 0,
	"xIPMSYS_BATCH_SEQ": null,
	"dPublishType": null,
	"xClbraUserList": null,
	"xIPMSYS_PARENT_ID": 0,
	"dInDate": "2024-11-19 06:16:00Z",
	"dRevRank": 1,
	"dDocID": 598,
	"xClbraAliasList": null,
	"dLocation": null,
	"xIPMSYS_APP_ID": null,
	"xIPMSYS_STATUS": null,
	"xPartitionId": null,
	"xWebFlag": null,
	"dReleaseState": "O",
	"xTemplateType": null,
	"xAnnotationDetails": 0,
	"dFlag1": null,
	"dCreateDate": "2024-11-19 06:17:00Z",
	"xExternalDataSet": null,
	"dRevisionID": 1,
	"dDocAccount": null,
	"dPublishState": null,
	"xDamConversionType": "graphic",
	"xLibraryGUID": "F90BE509B4D43386B3A8D860E676E215"
}

ドキュメントID(dID)=586、リビジョン(dRevLabel)=1のドキュメントの情報が取得できました。dInDate(登録日) などの日付が古くなっていることをあわせて確認します。

3. Browse a folder(フォルダのブラウズ)

GET /documents/wcc/api/v1.1/folders/browse/{fFolderGUID}

WCC on MPに作成されたフォルダの内容を取得します。取得時のパラメータとしてfFolderGUID(フォルダID) を指定します。

なお、今回取得するフォルダは以下スクリーンショットの通りです。フォルダ名は動物で、フォルダ内には動物の画像ファイルが2つ、子フォルダが1つ、それぞれ登録(作成)されています。また、動物フォルダのフォルダIDはフォルダプロパティのFolder IDの 4910098D6E34BE6E21A46C90B79928C9 を指定します。

image.png

curlコマンド実行例

curl -k "https://<WCCHost>:<WCCPort>/documents/wcc/api/v1.1/folders/browse/4910098D6E34BE6E21A46C90B79928C9" -u username:password

実行結果

{
	"numFolders": 1,
	"hasMoreChildFolders": 0,
	"numFiles": 2,
	"totalChildFoldersCount": 1,
	"totalChildFilesCount": 2,
	"hasMoreChildFiles": 0,
	"hasMoreChildItems": 0,
	"folderPath": "/Enterprise Libraries/デモライブラリ/03画像/動物",
	"folderInfo": {
		"fFolderGUID": "4910098D6E34BE6E21A46C90B79928C9",
		"fParentGUID": "00CFEFE618C4A4B4F91885945B8FB06D",
		"fFolderName": "動物",
		"fFolderType": "owner",
		"fInhibitPropagation": 0,
		"fPromptForMetadata": 0,
		"fIsContribution": 1,
		"fIsInTrash": 0,
		"fRealItemGUID": null,
		"fLibraryType": null,
		"fIsLibrary": 0,
		"fDocClasses": null,
		"fTargetGUID": null,
		"fApplication": "framework",
		"fOwner": "weblogic",
		"fCreator": "weblogic",
		"fLastModifier": "weblogic",
		"fCreateDate": "2024-09-27 04:31:30Z",
		"fLastModifiedDate": "2024-09-27 04:31:30Z",
		"fSecurityGroup": "Public",
		"fDocAccount": null,
		"fClbraUserList": null,
		"fClbraAliasList": null,
		"fClbraRoleList": null,
		"fFolderDescription": null,
		"fChildFoldersCount": 1,
		"fChildFilesCount": 2,
		"fFolderSize": 0,
		"fAllocatedFolderSize": -1,
		"fAllocatorParentFolderGUID": null,
		"fApplicationGUID": null,
		"fIsReadOnly": 0,
		"fIsACLReadOnlyOnUI": 0,
		"fDisplayName": "動物",
		"fDisplayDescription": null,
		"fIsBrokenShortcut": null,
		"isLeaf": "0",
		"itemType": "1",
		"folderPermissions": "RWD"
	},
	"childFolders": [
		{
			"fFolderGUID": "5446CB7590579800FDF4159B27E405BA",
			"fParentGUID": "4910098D6E34BE6E21A46C90B79928C9",
			"fFolderName": "子フォルダ",
			"fFolderType": "owner",
			"fInhibitPropagation": 0,
			"fPromptForMetadata": 0,
			"fIsContribution": 1,
			"fIsInTrash": 0,
			"fRealItemGUID": null,
			"fLibraryType": null,
			"fIsLibrary": 0,
			"fDocClasses": null,
			"fTargetGUID": null,
			"fApplication": "framework",
			"fOwner": "weblogic",
			"fCreator": "weblogic",
			"fLastModifier": "weblogic",
			"fCreateDate": "2024-11-21 07:48:21Z",
			"fLastModifiedDate": "2024-11-21 07:48:21Z",
			"fSecurityGroup": "Public",
			"fDocAccount": null,
			"fClbraUserList": null,
			"fClbraAliasList": null,
			"fClbraRoleList": null,
			"fFolderDescription": null,
			"fChildFoldersCount": 0,
			"fChildFilesCount": 0,
			"fFolderSize": 0,
			"fAllocatedFolderSize": -1,
			"fAllocatorParentFolderGUID": null,
			"fApplicationGUID": null,
			"fIsReadOnly": 0,
			"fIsACLReadOnlyOnUI": 0,
			"fDisplayName": "子フォルダ",
			"fDisplayDescription": null
		}
	],
	"childFiles": [
		{
			"fFileGUID": "C91F13D82D986F3523D154FF0C94D426",
			"fParentGUID": "4910098D6E34BE6E21A46C90B79928C9",
			"fTargetGUID": null,
			"fFileName": "4460_IMGP4368-2.jpg",
			"fPublishedFileName": "4460_IMGP4368-2.jpg",
			"fFileType": "owner",
			"fIsInTrash": 0,
			"fRealItemGUID": null,
			"fDocClass": "Base",
			"fInhibitPropagation": 0,
			"dDocName": "WCC000275",
			"dRevisionID": 1,
			"dPublishedRevisionID": 1,
			"fApplication": "framework",
			"fOwner": "weblogic",
			"fCreator": "weblogic",
			"fLastModifier": "weblogic",
			"fCreateDate": "2024-10-10 05:42:04Z",
			"fLastModifiedDate": "2024-10-10 05:42:04Z",
			"fSecurityGroup": "Public",
			"fDocAccount": null,
			"fClbraUserList": null,
			"fClbraAliasList": null,
			"fClbraRoleList": null,
			"fIsACLReadOnlyOnUI": "0",
			"dRevLabel": "1",
			"dDocTitle": "4460_IMGP4368-2",
			"dID": 481,
			"dDocAuthor": "weblogic",
			"dDocType": "DigitalMedia",
			"dRevClassID": 275,
			"dIsCheckedOut": 0,
			"dCheckoutUser": null,
			"dSecurityGroup": "Public",
			"dCreateDate": "2024-10-10 05:42:04Z",
			"dInDate": "2024-10-10 05:41:50Z",
			"dOutDate": null,
			"dStatus": "RELEASED",
			"dReleaseState": "Y",
			"dFlag1": null,
			"dWebExtension": "jpg",
			"dProcessingState": "Y",
			"dMessage": "!csStepSuccess",
			"dDocAccount": null,
			"dReleaseDate": "2024-11-26 05:18:15Z",
			"dRendition1": "P",
			"dRendition2": "D",
			"dIndexerState": null,
			"dPublishType": null,
			"dPublishState": null,
			"dWorkflowState": null,
			"dRevRank": 0,
			"dDocID": 387,
			"dIsPrimary": 1,
			"dIsWebFormat": 0,
			"dLocation": null,
			"dOriginalName": "4460_IMGP4368-2.jpg",
			"dFormat": "image/jpeg",
			"dExtension": "jpg",
			"dFileSize": 1519752,
			"dLanguage": null,
			"dCharacterSet": null,
			"xComments": "コメント",
			"xExternalDataSet": null,
			"xIdcProfile": null,
			"xTemplateType": null,
			"xAnnotationDetails": 0,
			"xLibraryGUID": "F90BE509B4D43386B3A8D860E676E215",
			"xPartitionId": null,
			"xWebFlag": null,
			"xStorageRule": "DispByContentId",
			"xIsACLReadOnlyOnUI": 0,
			"xIPMSYS_APP_ID": null,
			"xIPMSYS_BATCH_ID1": 0,
			"xIPMSYS_BATCH_SEQ": null,
			"xIPMSYS_PARENT_ID": 0,
			"xIPMSYS_REDACTION": 0,
			"xIPMSYS_SCKEY": null,
			"xIPMSYS_STATUS": null,
			"xDocumentTags": "Mammal,Grass,Vertebrate,Terrestrial animal,Green,Plant,Eastern Grey Kangaroo,Nature,Marsupial,Kangaroo",
			"xDamConversionType": "graphic",
			"xPackagedConversions": "BasicRenditions",
			"xVideoRenditions": null,
			"xClbraUserList": null,
			"xClbraAliasList": null,
			"xClbraRoleList": null,
			"xProducts_category": null,
			"dIndexedID": 481,
			"dDocCreatedDate": "2024-10-10 05:42:04Z",
			"dDocCreator": "weblogic",
			"dDocLastModifiedDate": "2024-10-10 05:42:00Z",
			"dDocLastModifier": "weblogic",
			"dDocOwner": "weblogic",
			"dDocFunction": null,
			"dDocClass": null,
			"fDisplayName": "4460_IMGP4368-2.jpg",
			"fIsInWorkflowQueue": "0"
		},
		{
			"fFileGUID": "4F133B4671FE8835838DE8748AFD1773",
			"fParentGUID": "4910098D6E34BE6E21A46C90B79928C9",
			"fTargetGUID": null,
			"fFileName": "Koala.jpg",
			"fPublishedFileName": "Koala.jpg",
			"fFileType": "owner",
			"fIsInTrash": 0,
			"fRealItemGUID": null,
			"fDocClass": "Base",
			"fInhibitPropagation": 0,
			"dDocName": "WCC000238",
			"dRevisionID": 1,
			"dPublishedRevisionID": 1,
			"fApplication": "framework",
			"fOwner": "weblogic",
			"fCreator": "weblogic",
			"fLastModifier": "weblogic",
			"fCreateDate": "2024-09-17 04:57:34Z",
			"fLastModifiedDate": "2024-09-27 04:31:37Z",
			"fSecurityGroup": "Public",
			"fDocAccount": null,
			"fClbraUserList": null,
			"fClbraAliasList": null,
			"fClbraRoleList": null,
			"fIsACLReadOnlyOnUI": "0",
			"dRevLabel": "1",
			"dDocTitle": "Koala.jpg",
			"dID": 440,
			"dDocAuthor": "weblogic",
			"dDocType": "DigitalMedia",
			"dRevClassID": 238,
			"dIsCheckedOut": 0,
			"dCheckoutUser": null,
			"dSecurityGroup": "Public",
			"dCreateDate": "2024-09-17 04:57:34Z",
			"dInDate": "2024-09-17 04:57:20Z",
			"dOutDate": null,
			"dStatus": "RELEASED",
			"dReleaseState": "Y",
			"dFlag1": null,
			"dWebExtension": "jpg",
			"dProcessingState": "Y",
			"dMessage": "!csStepSuccess",
			"dDocAccount": null,
			"dReleaseDate": "2024-11-26 05:18:15Z",
			"dRendition1": "P",
			"dRendition2": "D",
			"dIndexerState": null,
			"dPublishType": null,
			"dPublishState": null,
			"dWorkflowState": null,
			"dRevRank": 0,
			"dDocID": 305,
			"dIsPrimary": 1,
			"dIsWebFormat": 0,
			"dLocation": null,
			"dOriginalName": "Koala.jpg",
			"dFormat": "image/jpeg",
			"dExtension": "jpg",
			"dFileSize": 780831,
			"dLanguage": null,
			"dCharacterSet": null,
			"xComments": "コメント",
			"xExternalDataSet": null,
			"xIdcProfile": null,
			"xTemplateType": null,
			"xAnnotationDetails": 0,
			"xLibraryGUID": "F90BE509B4D43386B3A8D860E676E215",
			"xPartitionId": null,
			"xWebFlag": null,
			"xStorageRule": "DispByContentId",
			"xIsACLReadOnlyOnUI": 0,
			"xIPMSYS_APP_ID": null,
			"xIPMSYS_BATCH_ID1": 0,
			"xIPMSYS_BATCH_SEQ": null,
			"xIPMSYS_PARENT_ID": 0,
			"xIPMSYS_REDACTION": 0,
			"xIPMSYS_SCKEY": null,
			"xIPMSYS_STATUS": null,
			"xDocumentTags": "Snout,Terrestrial animal,Human nose,Koala,Mammal,Vertebrate,Human head,Marsupial,Organ (Biology),Organism",
			"xDamConversionType": "graphic",
			"xPackagedConversions": "BasicRenditions",
			"xVideoRenditions": null,
			"xClbraUserList": null,
			"xClbraAliasList": null,
			"xClbraRoleList": null,
			"xProducts_category": null,
			"dIndexedID": 440,
			"dDocCreatedDate": "2024-09-17 04:57:34Z",
			"dDocCreator": "weblogic",
			"dDocLastModifiedDate": "2024-09-17 04:57:00Z",
			"dDocLastModifier": "weblogic",
			"dDocOwner": "weblogic",
			"dDocFunction": null,
			"dDocClass": null,
			"fDisplayName": "Koala.jpg",
			"fIsInWorkflowQueue": "0"
		}
	]
}

指定したフォルダの情報folderInfo、および指定フォルダに格納される子フォルダの情報1件childFoldersと、ファイルの情報2件childFiles、をまとめて取得することができました。

4. Document Search(ドキュメントの検索)

GET /documents/wcc/api/v1.1/files/search/items

WCC on MP内のドキュメントを検索し、その結果を返します

なお、今回検索するのは以下スクリーンショットの通りです。検索条件は、タイトルdDocTitleCollaborationと一致するMatchesです。検索結果として、Collaboration.pngの画像ファイルが1つ表示されます。

image.png

なお、検索条件はq=xxxのパラメータとして指定します。今回の場合は

q=dDocTitle <matches> `Collaboration`

になりますが、curlで実行するため、実際は

q=dDocTitle%20%3Cmatches%3E%20\`Collaboration\`

と指定します。

curlコマンド実行例

curl -k "https://<WCCHost>:<WCCPort>/documents/wcc/api/v1.1/files/search/items?q=dDocTitle%20%3Cmatches%3E%20\`Collaboration\`" -u username:password

実行結果

{
	"count": 1,
	"hasMore": false,
	"totalResults": 1,
	"offset": null,
	"q": "dDocTitle <matches> `Collaboration`",
	"limit": 20,
	"orderBy": "dInDate:Desc",
	"numPages": 1,
	"pageNumber": 1,
	"totalRows": 1,
	"startRow": 1,
	"endRow": 1,
	"items": [
		{
			"dDocName": "WCC000367",
			"dID": 605,
			"dDocType": "DigitalMedia",
			"dDocTitle": "Collaboration",
			"dRevLabel": "2",
			"dSecurityGroup": "Public",
			"dDocAuthor": "weblogic",
			"dOriginalName": "Collaboration.png",
			"dFormat": "image/png",
			"dDocCreatedDate": "2024-11-19 06:17:21Z",
			"dDocCreator": "weblogic",
			"dDocLastModifiedDate": "2024-11-22 02:53:00Z",
			"dDocLastModifier": "weblogic",
			"dDocOwner": "weblogic",
			"AlternateFormat": null,
			"xIdcProfile": null,
			"SCORE": 3,
			"xIPMSYS_BATCH_ID1": 0,
			"xComments": "コメント",
			"xDocumentTags": "Boating,Recreation,Outdoor recreation,Boat,Illustration,Paddle,Person,Vehicle,Watercraft,Canoeing,Boating,Recreation,Canoeing,Watercraft,Vehicle,Person,Paddle,Illustration,Boat,Outdoor recreation",
			"dRendition1": "P",
			"xIPMSYS_BATCH_SEQ": null,
			"dPublishType": null,
			"URL": "/cs/groups/public/documents/digitalmedia/d2nj/mdaw/~edisp/wcc000367.jpg",
			"xPackagedConversions": "BasicRenditions",
			"xClbraUserList": null,
			"dRendition2": "D",
			"xClbraRoleList": null,
			"dFullTextFormat": null,
			"dDocClass": null,
			"VaultFileSize": 3179650,
			"WebFileSize": 96475,
			"dInDate": "2024-11-22 02:52:51Z",
			"dWebExtension": "jpg",
			"xClbraAliasList": null,
			"xIPMSYS_APP_ID": null,
			"otsFormat": null,
			"xPartitionId": null,
			"xWebFlag": null,
			"srfDocSnippet": null,
			"dExtension": "png",
			"xStorageRule": "DispByContentId",
			"xProducts_category": null,
			"dGif": "ucm_digital_asset.png",
			"dDocFunction": null,
			"xVideoRenditions": null,
			"dCreateDate": "2024-11-22 02:53:33Z",
			"dOutDate": null,
			"dRevClassID": 367,
			"dRevisionID": 2,
			"otsCharset": null,
			"xDamConversionType": "graphic",
			"dDocAccount": null,
			"otsLanguage": null,
			"xLibraryGUID": "F90BE509B4D43386B3A8D860E676E215"
		}
	]
} 

検索結果として、count=1で、Collaboration.pngの画像ファイルが返ってくることが確認できます。またその画像ファイルのメタデータ情報あわせて取得できました。

ちなみに、検索結果として取得するドキュメントのメタデータの情報を指定する場合は、fieldsパラメータを利用します。
例えば、コンテンツIDdDocName、タイトルdDocTitle、オリジナルのファイル名dOriginalNameの3つのメタデータ情報だけを検索結果として取得したい場合は、fields=dDocName,dDocTitle,dOriginalNameをパラメータとして追加します

curlコマンド実行例(fieldsパラメータを追加)

curl -k "https://<WCCHost>:<WCCPort>/documents/wcc/api/v1.1/files/search/items?q=dDocTitle%20%3Cmatches%3E%20\`Collaboration\`&fields=dDocName,dDocTitle,dOriginalName" -u username:password

実行結果

{
	"count": 1,
	"hasMore": false,
	"totalResults": 1,
	"offset": null,
	"q": "dDocTitle <matches> `Collaboration`",
	"limit": 20,
	"orderBy": "dInDate:Desc",
	"numPages": 1,
	"pageNumber": 1,
	"totalRows": 1,
	"startRow": 1,
	"endRow": 1,
	"items": [
		{
			"dDocName": "WCC000367",
			"dDocTitle": "Collaboration",
			"dOriginalName": "Collaboration.png"
		}
	]
}

5. Download Document(ドキュメントのダウンロード)

GET /documents/wcc/api/v1.1/files/{dDocName}/data

WCC on MPに登録されたドキュメントをダウンロードします。取得時のパラメータとしてdDocName(コンテンツID)を指定します。

なお、今回WCC on MPから取得するドキュメントは前の手順で検索を実行したCollaboration.pngで、コンテンツIDはWCC000367で、ファイルサイズは3.2MB です。

image.png

curlコマンドと実行結果

curl -k -o Collaboration.png "https://<WCCHost>:<WCCPort>/documents/wcc/api/v1.1/files/WCC000367/data" -u username:password

  % Total    % Received % Xferd  Average Speed   Time      Time     Time  Current
                                 Dload   Upload  Total     Spent    Left  Speed
100 3105k    0 3105k    0     0   148k      0 --:--:--    0:00:20 --:--:--  162k

% ls -l
-rw-r--r--  1 USER  staff  3179650 12  4 13:15 Collaboration.png

約3.2MBの画像ファイルのダウンロードができました

おわりに

マーケットプレイス版WebCenter Content For OCI(WCC on MP)が提供するREST APIの基本的な操作方法について説明しました。このREST APIは適時アップデートされていますので、What is New in Oracle WebCenter Content on Marketplaceをご確認いただけますようよろしくお願いいたします。

6
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
6
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?