1. Clients

Media client

A media item is an uploaded asset, plus the description and metadata associated with it.

The following methods are available for the media client.

MethodDescription
GET /api/content/v1/mediaRetrieves media items.
POST /api/content/v1/mediaCreates a media item.
GET /api/content/v1/media/<MEDIA_ITEM_ID>Retrieves a specific media item.
PUT /api/content/v1/media/<MEDIA_ID>Updates a specific media item.
DELETE /api/content/v1/media/<MEDIA_ITEM_ID>Deletes a specific media item.
POST /api/content/v1/media/<MEDIA_ITEM_ID>/publishPublishes a specific media item to the Experience Edge tenant.
DELETE /api/content/v1/media/<MEDIA_ITEM_ID>/publishDeletes a specific media item from the Experience Edge tenant.

The following example illustrates these methods:

public interface IMediaClient
{
  // POST /api/content/v1/media
  Task<MediaItem?> CreateAsync(
    MediaItem mediaItem,
    IUploadSource uploadSource,
    CancellationToken cancellationToken = default);

  // PUT /api/content/v1/media/<MEDIA_ITEM_ID>
  Task<MediaItem?> UpdateAsync(
    MediaItem mediaItem,
    IUploadSource? uploadSource = null,
    CancellationToken cancellationToken = default);

  // DELETE /api/content/v1/media/<MEDIA_ITEM_ID>
  Task DeleteAsync(
    string mediaItemId,
    CancellationToken cancellationToken = default);

  // GET /api/content/v1/media
  Task<PagedResponse<MediaItem>>  GetAsync(
    MediaSearchRequest? searchRequest = null,
    CancellationToken cancellationToken = default);

  // Same as GetAsync, but processing the results as an enumerator.
  IAsyncEnumerable<MediaItem> EnumerateAsync(
    MediaSearchRequest? searchRequest = null,
    CancellationToken cancellationToken = default);

  // GET /api/content/v1/media/<MEDIA_ITEM_ID>
  Task<MediaItem?> SingleAsync(
    string mediaItemId,
    CancellationToken cancellationToken = default);

  // POST /api/content/v1/media/<MEDIA_ITEM_ID>/publish
  Task PublishAsync(
    string mediaId,
    CancellationToken cancellationToken = default);

  // DELETE /api/content/v1/media/<MEDIA_ITEM_ID>/publish
  Task UnpublishAsync(
    string mediaId,
    CancellationToken cancellationToken = default);
}
If you have suggestions for improving this article, let us know!