カタログ品目のコピー

post

/api/20210901/catalog/{type}/{id}/actions/copy

特定のタイプとIDを持つカタログ品目のコピーを、同じフォルダまたは別のフォルダに作成します。コピーに別の名前を指定するオプションと、同じ名前の既存のアイテムを上書きするかどうかが含まれます。

リクエスト

パス・パラメータ
  • base64url形式のカタログ品目ID。
  • カタログ品目のタイプこのAPIがサポートするコンテンツ・タイプには、フォルダ、ワークブック、サブジェクト領域、分析、ダッシュボード、ダッシュボード・ページ、レポート、接続、データセット、データ・フロー、シーケンス、スクリプトおよびセマンティック・モデルが含まれます。
サポートされているメディア・タイプ
リクエスト本文 - application/json ()
ルート・スキーマ: schema
Type: object
ソースを表示
先頭に戻る

レスポンス

サポートされているメディア・タイプ

200レスポンス

成功した操作
本文()
ルート・スキーマ: CatalogItem
すべてに一致
ソースを表示
ネストされたスキーマ: Discriminator: type
Type: object
ソースを表示
ネストされたスキーマ: CatalogItemIdRef
Type: object
ソースを表示
ネストされたスキーマ: CatalogItemParentIdNameRef
Type: object
ソースを表示

400レスポンス

不正なリクエスト(無効な問合せパラメータ、不正なヘッダーなど)。
本文()
ルート・スキーマ: Error
Type: object
ソースを表示

401レスポンス

未承認(資格情報の欠落や期限切れなど)。
本文()
ルート・スキーマ: Error
Type: object
ソースを表示

403レスポンス

禁止(操作の権限がない、不明な理由によりリクエストが拒否されたなど)。
本文()
ルート・スキーマ: Error
Type: object
ソースを表示

404レスポンス

見つかりません。リクエストされたリソースが見つかりませんでした。
本文()
ルート・スキーマ: Error
Type: object
ソースを表示

500レスポンス

内部サーバー・エラー。サーバーで、リクエストの履行を妨げる予期しない状況が発生しました。
本文()
ルート・スキーマ: Error
Type: object
ソースを表示
先頭に戻る

これらの例は、指定されたtypeおよびidを使用してカタログ・オブジェクトをコピーする方法を示しています。

  • 例1 - 同じフォルダへのワークブックのコピー
  • 例2 - 別のフォルダへのワークブックのコピー
オブジェクトをコピーする場合、リクエスト本文で複数のオプション・パラメータを指定できます。
  • destId - コピーしたオブジェクトを保存する宛先パス。指定した場合、他のパラメータはいずれも使用されません。
  • destParentIdおよびnewItemName - オブジェクトを特定の宛先フォルダにコピーし、コピーしたオブジェクトに新しい名前を付けます。新しい名前は、Base64URLセーフでエンコードされていません。
  • newItemName - コピーしたオブジェクトの新しい名前。destParentIdを指定しない場合、新しい名前で同じフォルダにコピーが作成されます。

例1 - 同じフォルダへのワークブックのコピー

この例では、同じフォルダにMySalesWorkbookというワークブックのコピーを作成します。ワークブックのオブジェクトIDは/@Catalog/shared/Sales/MySalesWorkbookで、Base64URLセーフでエンコードされたid値はL0BDYXRhbG9nL3NoYXJlZC9TYWxlcy9NeVNhbGVzV29ya2Jvb2sです。

オプションnewItemNameが指定されていないため、新しいワークブックの名前はMySalesWookbookCopyです。

cURLの例:

必要なtypeおよびidを指定してcURLコマンドを実行します。

curl -i \
     --header 'Authorization: Bearer <token>' \
     --header 'Content-Length: 0' \
     --request POST 'https://<hostname>/api/20210901/catalog/workbooks/L0BDYXRhbG9nL3NoYXJlZC9TYWxlcy9NeVNhbGVzV29ya2Jvb2s/actions/copy'

リクエスト本文の例

None required for this example

レスポンス本文の例

Status 200:

例2 - 別のフォルダへのワークブックのコピー

この例では、MySalesWorkbookというワークブックを別のフォルダにコピーします。ワークブックのオブジェクトIDは/@Catalog/shared/Sales/MySalesWorkbookで、Base64URLセーフでエンコードされたid値はL0BDYXRhbG9nL3NoYXJlZC9TYWxlcy9NeVNhbGVzV29ya2Jvb2sです。

宛先フォルダのオブジェクトIDは/@Catalog/shared/NewSalesで、Base64URLセーフでエンコードされたdestParentId値はL0BDYXRhbG9nL3NoYXJlZC9OZXdTYWxlcwです。

cURLの例:

必要なidおよびdestIdを指定してcURLコマンドを実行します。

curl -i \
     --header 'Authorization: Bearer <token>' \
     --header 'Content-Type: application/json' \
     --request POST 'https://<hostname>/api/20210901/catalog/workbooks/L0BDYXRhbG9nL3NoYXJlZC9NeUZvbGRlci9NeVNhbGVzV29ya2Jvb2s/actions/copy' \
     --data '{"destId": "L0BDYXRhbG9nL3NoYXJlZC9OZXdTYWxlcw"}'

リクエスト本文の例

{"destId": "string", 
      "destParentId": "string", 
      "newItemName": "string", 
      "overwrite": true, 
      "createIntermediateFolders": true}

たとえば:

{"destParentId": "L0BDYXRhbG9nL3NoYXJlZC9OZXdTYWxlcw" }

レスポンス本文の例

Status 200:
{    "owner": "<user-name>",
    "name": "MySalesWorkbook copy",
    "description": "",
    "id": "L3NoYXJlZC9OZXdTYWxlcy9NeVNhbGVzV29ya2Jvb2sgY29weQ",
    "lastModified": "2024-02-27T17:15:46Z",
    "type": "workbooks",
    "parentId": "L3NoYXJlZC9OZXdTYWxlcw"
}
先頭に戻る