collections_items_copy_item

Copy an item into this collection

Functions

async pydelfini.delfini_core.api.items.collections_items_copy_item.asyncio(collection_id, version_id, *, client, body)[source]

Copy an item into this collection

Copy an item from a local or remote source into this collection.

The source item must be specified as a delfini:// URL, and the user creating the copy must have read access to the source item. The new item name can be specified, along with the destination folder; all other metadata changes must be done once the item copy is complete.

All item types support being copied:

  • Copied file and dataviews will share the same delfini+datastore:// target, preventing a duplicate copy of the data from being stored in the datastore. Copies will not affect each other, though, as all writes to file items result in a new delfini+datastore:// URL.

  • Links will copy their storage target URLs, and no data will be copied.

  • Folders can be copied, however, their contents are not recursively copied. To copy an entire folder structure, clients should follow a recursive breadth-first algorithm to copy the folder, followed by its contents.

  • Dataviews can be copied, however, their data sources will not automatically map to new data sources if they are copied to a new collection. Clients should assist users to remap dataview sources if/when those sources are broken.

Parameters:
Raises:
  • errors.UnexpectedStatus – If the server returns a status code greater than or equal to 300.

  • httpx.TimeoutException – If the request takes longer than Client.timeout.

Returns:

Union[Item]

Return type:

Item

async pydelfini.delfini_core.api.items.collections_items_copy_item.asyncio_detailed(collection_id, version_id, *, client, body)[source]

Copy an item into this collection

Copy an item from a local or remote source into this collection.

The source item must be specified as a delfini:// URL, and the user creating the copy must have read access to the source item. The new item name can be specified, along with the destination folder; all other metadata changes must be done once the item copy is complete.

All item types support being copied:

  • Copied file and dataviews will share the same delfini+datastore:// target, preventing a duplicate copy of the data from being stored in the datastore. Copies will not affect each other, though, as all writes to file items result in a new delfini+datastore:// URL.

  • Links will copy their storage target URLs, and no data will be copied.

  • Folders can be copied, however, their contents are not recursively copied. To copy an entire folder structure, clients should follow a recursive breadth-first algorithm to copy the folder, followed by its contents.

  • Dataviews can be copied, however, their data sources will not automatically map to new data sources if they are copied to a new collection. Clients should assist users to remap dataview sources if/when those sources are broken.

Parameters:
Raises:
  • errors.UnexpectedStatus – If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.

  • httpx.TimeoutException – If the request takes longer than Client.timeout.

Returns:

Response[Union[Item, ServerError]]

Return type:

Response[Item | ServerError]

pydelfini.delfini_core.api.items.collections_items_copy_item.sync(collection_id, version_id, *, client, body)[source]

Copy an item into this collection

Copy an item from a local or remote source into this collection.

The source item must be specified as a delfini:// URL, and the user creating the copy must have read access to the source item. The new item name can be specified, along with the destination folder; all other metadata changes must be done once the item copy is complete.

All item types support being copied:

  • Copied file and dataviews will share the same delfini+datastore:// target, preventing a duplicate copy of the data from being stored in the datastore. Copies will not affect each other, though, as all writes to file items result in a new delfini+datastore:// URL.

  • Links will copy their storage target URLs, and no data will be copied.

  • Folders can be copied, however, their contents are not recursively copied. To copy an entire folder structure, clients should follow a recursive breadth-first algorithm to copy the folder, followed by its contents.

  • Dataviews can be copied, however, their data sources will not automatically map to new data sources if they are copied to a new collection. Clients should assist users to remap dataview sources if/when those sources are broken.

Parameters:
Raises:
  • errors.UnexpectedStatus – If the server returns a status code greater than or equal to 300.

  • httpx.TimeoutException – If the request takes longer than Client.timeout.

Returns:

Union[Item]

Return type:

Item

pydelfini.delfini_core.api.items.collections_items_copy_item.sync_detailed(collection_id, version_id, *, client, body)[source]

Copy an item into this collection

Copy an item from a local or remote source into this collection.

The source item must be specified as a delfini:// URL, and the user creating the copy must have read access to the source item. The new item name can be specified, along with the destination folder; all other metadata changes must be done once the item copy is complete.

All item types support being copied:

  • Copied file and dataviews will share the same delfini+datastore:// target, preventing a duplicate copy of the data from being stored in the datastore. Copies will not affect each other, though, as all writes to file items result in a new delfini+datastore:// URL.

  • Links will copy their storage target URLs, and no data will be copied.

  • Folders can be copied, however, their contents are not recursively copied. To copy an entire folder structure, clients should follow a recursive breadth-first algorithm to copy the folder, followed by its contents.

  • Dataviews can be copied, however, their data sources will not automatically map to new data sources if they are copied to a new collection. Clients should assist users to remap dataview sources if/when those sources are broken.

Parameters:
Raises:
  • errors.UnexpectedStatus – If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.

  • httpx.TimeoutException – If the request takes longer than Client.timeout.

Returns:

Response[Union[Item, ServerError]]

Return type:

Response[Item | ServerError]