---
title: Catalog item assets
slug: commerce-connect-15/service-api/catalog-item-assets
docTags: 
createdAt: 2026-07-22T14:38:28.000Z
---

## Example models

```csharp
[Serializable]
public class ItemAsset
  {
    public string CatalogNodeCode { get; set; }
    public string CatalogEntryCode { get; set; }
    public string AssetKey { get; set; }
    public string AssetType { get; set; }
    public string GroupName { get; set; }
    public int SortOrder { get; set; }
  }
```

## Entry assets

### Get all entry assets

| GET | `get/episerverapi/commerce/entries/{entryCode}/assets` | Get all entry assets |
| --- | ------------------------------------------------------ | -------------------- |

### JSON response type

```csharp
var client = new HttpClient()
  {
    BaseAddress = new Uri(ConfigurationManager.AppSettings["integrationUrl"])
  };
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.AccessToken);		
var result = client.GetAsync("/episerverapi/commerce/entries/{entry code}/assets").Result.Content.ReadAsStringAsync().Result
```

### XML response type

```csharp
var client = new HttpClient()
  {
    BaseAddress = new Uri(ConfigurationManager.AppSettings["integrationUrl"])
  };
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.AccessToken);
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("text/xml"));		
var result = client.GetAsync("/episerverapi/commerce/entries/{entry code}/assets").Result.Content.ReadAsStringAsync().Result
```

Response

```xml
<ArrayOfItemAsset xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <ItemAsset>
    <CatalogEntryCode>Jackets-Blazers-Wrap</CatalogEntryCode>
    <AssetKey>fd761c1d-5692-48b6-b90a-1ddf4c7c5eb9</AssetKey>
    <AssetType>episerver.core.icontentimage</AssetType>
    <GroupName>large</GroupName>
    <SortOrder>45</SortOrder>
  </ItemAsset>
</ArrayOfItemAsset>
```

### Get a specific entry asset

| GET | `get/episerverapi/commerce/entries/{entryCode}/assets/{assetKey}/{assetType}` | Get a specific entry asset |
| --- | ----------------------------------------------------------------------------- | -------------------------- |

### JSON response type

```csharp
var client = new HttpClient()
  {
    BaseAddress = new Uri(ConfigurationManager.AppSettings["integrationUrl"])
  };
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.AccessToken);		
var result = client.GetAsync("/episerverapi/commerce/entries/{entry code}/assets/{assetKey}/{assetType}").Result.Content.ReadAsStringAsync().Result
```

### XML response type

```csharp
var client = new HttpClient()
  {
    BaseAddress = new Uri(ConfigurationManager.AppSettings["integrationUrl"])
  };
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.AccessToken);
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("text/xml"));		
var result = client.GetAsync("/episerverapi/commerce/entries/{entry code}/assets/{assetKey}/{assetType}").Result.Content.ReadAsStringAsync().Result
```

Response

```xml
<ItemAsset xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <CatalogEntryCode>Jackets-Blazers-Wrap</CatalogEntryCode>
  <AssetKey>fd761c1d-5692-48b6-b90a-1ddf4c7c5eb9</AssetKey>
  <AssetType>episerver.core.icontentimage</AssetType>
  <GroupName>large</GroupName>
  <SortOrder>45</SortOrder>
</ItemAsset>
```

### Create entry asset

| POST | `post/episerverapi/commerce/entries/{entryCode}/assets` | Create entry asset |
| ---- | ------------------------------------------------------- | ------------------ |

### JSON response type

```csharp
var model = new ItemAsset() 
  {
    CatalogEntryCode = "Jackets-Blazers-Wrap",
    AssetKey = "fd761c1d-5692-48b6-b90a-1ddf4c7c5eb9",
    AssetType = "episerver.core.icontentimage",
    SortOrder = 45,
    GroupName = "large"
  };
var json = JsonConvert.SerializeObject(model);
var client = new HttpClient()
  {
    BaseAddress = new Uri(ConfigurationManager.AppSettings["integrationUrl"])
  };
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.AccessToken);		
var result = client.PostAsync("/episerverapi/commerce/entries/{entry code}/assets",
  new StringContent(json, Encoding.UTF8, "application/json")).Result.Content.ReadAsStringAsync().Result
```

### XML response type

```csharp
var model = new ItemAsset()
  {
    CatalogEntryCode = "Jackets-Blazers-Wrap",
    AssetKey = "fd761c1d-5692-48b6-b90a-1ddf4c7c5eb9",
    AssetType = "episerver.core.icontentimage",
    SortOrder = 45,
    GroupName = "large"
  };
var client = new HttpClient()
  {
    BaseAddress = new Uri(ConfigurationManager.AppSettings["integrationUrl"])
  };
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.AccessToken);
var serializer = new XmlSerializer(typeof(ItemAsset));
var xml = String.Empty;
using (var ms = new MemoryStream())
  {
    serializer.Serialize(ms, model);
    xml = Encoding.Default.GetString(ms.ToArray());
  } 
var result = client.PostAsync("/episerverapi/commerce/entries/{entry code}/assets",
  new StringContent(xml, Encoding.UTF8, "text/xml")).Result.Content.ReadAsStringAsync().Result
```

Response

```xml
<ItemAsset xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <CatalogEntryCode>Jackets-Blazers-Wrap</CatalogEntryCode>
  <AssetKey>fd761c1d-5692-48b6-b90a-1ddf4c7c5eb9</AssetKey>
  <AssetType>episerver.core.icontentimage</AssetType>
  <GroupName>large</GroupName>
  <SortOrder>45</SortOrder>
</ItemAsset>
```

### Update entry asset

| PUT | `put/episerverapi/commerce/entries/{entryCode}/assets/{assetKey}/{assetType}` | Update entry asset |
| --- | ----------------------------------------------------------------------------- | ------------------ |

### JSON response type

```csharp
var model = new ItemAsset()
  {
    CatalogEntryCode = "Jackets-Blazers-Wrap",
    AssetKey = "fd761c1d-5692-48b6-b90a-1ddf4c7c5eb9",
    AssetType = "episerver.core.icontentimage",
    SortOrder = 45,
    GroupName = "large"
  };

var json = JsonConvert.SerializeObject(model);
var client = new HttpClient()
  {
    BaseAddress = new Uri(ConfigurationManager.AppSettings["integrationUrl"])
 };
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.AccessToken);		
var result = client.PutAsync("/episerverapi/commerce/entries/{entry code}/assets/{assetKey}/{assetType}",
  new StringContent(json, Encoding.UTF8, "application/json")).Result.Content.ReadAsStringAsync().Result
```

### XML response type

```csharp
var model = new ItemAsset()
  {
    CatalogEntryCode = "Jackets-Blazers-Wrap",
    AssetKey = "fd761c1d-5692-48b6-b90a-1ddf4c7c5eb9",
    AssetType = "episerver.core.icontentimage",
    SortOrder = 45,
    GroupName = "large"
  };
var client = new HttpClient()
  {
    BaseAddress = new Uri(ConfigurationManager.AppSettings["integrationUrl"])
  };
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.AccessToken);
var serializer = new XmlSerializer(typeof(ItemAsset));
var xml = String.Empty;
using (var ms = new MemoryStream())
  {
    serializer.Serialize(ms, model);
    xml = Encoding.Default.GetString(ms.ToArray());
  } 	
var result = client.PutAsync("/episerverapi/commerce/entries/{entry code}/assets/{assetKey}/{assetType}",
  new StringContent(xml, Encoding.UTF8, "text/xml")).Result.Content.ReadAsStringAsync().Result
```

Response

```xml
204 No Content
```

### Delete entry asset

| DELETE | `delete/episerverapi/commerce/entries/{entryCode}/assets/{assetKey}/{assetType}` | Delete entry asset |
| ------ | -------------------------------------------------------------------------------- | ------------------ |

### JSON response type

```csharp
var client = new HttpClient()
  {
    BaseAddress = new Uri(ConfigurationManager.AppSettings["integrationUrl"])
  };
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.AccessToken);		
var result = client.DeleteAsync("/episerverapi/commerce/entries/{entry code}/assets/{assetKey}/{assetType}").Result.Content.ReadAsStringAsync().Result
```

### XML response type

```csharp
var client = new HttpClient()
  {
    BaseAddress = new Uri(ConfigurationManager.AppSettings["integrationUrl"])
  };
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.AccessToken);
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("text/xml"));	
var result = client.DeleteAsync("/episerverapi/commerce/entries/{entry code}/assets/{assetKey}/{assetType}").Result.Content.ReadAsStringAsync().Result
```

Response

```xml
<ItemAsset xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <CatalogEntryCode>Jackets-Blazers-Wrap</CatalogEntryCode>
  <AssetKey>fd761c1d-5692-48b6-b90a-1ddf4c7c5eb9</AssetKey>
  <AssetType>episerver.core.icontentimage</AssetType>
  <GroupName>large</GroupName>
  <SortOrder>45</SortOrder>
</ItemAsset>
```

## Node assets

### Get all node assets

| GET | `get/episerverapi/commerce/nodes/{nodeCode}/assets` |   |
| --- | --------------------------------------------------- | - |

### JSON response type

```csharp
var client = new HttpClient()
  {
    BaseAddress = new Uri(ConfigurationManager.AppSettings["integrationUrl"])
  };
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.AccessToken);		
var result = client.GetAsync("/episerverapi/commerce/nodes/{node code}/assets").Result.Content.ReadAsStringAsync().Result
```

### XML response type

```csharp
var client = new HttpClient()
  {
    BaseAddress = new Uri(ConfigurationManager.AppSettings["integrationUrl"])
  };
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.AccessToken);
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("text/xml"));		
var result = client.GetAsync("/episerverapi/commerce/nodes/{node code}/assets").Result.Content.ReadAsStringAsync().Result
```

Response

```xml
<ArrayOfItemAsset xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <ItemAsset>
    <CatalogNodeCode>Fashion</CatalogNodeCode>
    <AssetKey>ed6fc3d7-091f-4e84-b1f6-49b56e7b5146</AssetKey>
    <AssetType>episerver.core.icontentimage</AssetType>
    <GroupName>large</GroupName>
    <SortOrder>45</SortOrder>
  </ItemAsset>
  <ItemAsset>
    <CatalogNodeCode>Fashion</CatalogNodeCode>
    <AssetKey>fe642158-e9cf-43c9-a70d-42cd75903dc6</AssetKey>
    <AssetType>episerver.core.icontentimage</AssetType>
    <GroupName>small</GroupName>
    <SortOrder>0</SortOrder>
  </ItemAsset>
</ArrayOfItemAsset>
```

### Get a specific node asset

| GET | `get/episerverapi/commerce/nodes/{nodeCode}/assets/{assetKey}/{assetType}` | Get a specific node asset |
| --- | -------------------------------------------------------------------------- | ------------------------- |

### JSON response type

```csharp
var client = new HttpClient()
  {
    BaseAddress = new Uri(ConfigurationManager.AppSettings["integrationUrl"])
  };
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.AccessToken);		
var result = client.GetAsync("/episerverapi/commerce/nodes/{node code}/assets/{assetKey}/{assetType}").Result.Content.ReadAsStringAsync().Result
```

### XML response type

```csharp
var client = new HttpClient()
  {
    BaseAddress = new Uri(ConfigurationManager.AppSettings["integrationUrl"])
  };
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.AccessToken);
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("text/xml"));		
var result = client.GetAsync("/episerverapi/commerce/nodes/{node code}/assets/{assetKey}/{assetType}").Result.Content.ReadAsStringAsync().Result
```

Response

```xml
<ItemAsset xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <CatalogNodeCode>Fashion</CatalogNodeCode>
  <AssetKey>ed6fc3d7-091f-4e84-b1f6-49b56e7b5146</AssetKey>
  <AssetType>episerver.core.icontentimage</AssetType>
  <GroupName>large</GroupName>
  <SortOrder>45</SortOrder>
</ItemAsset>
```

### Create node asset

| POST | `post/episerverapi/commerce/nodes/{nodeCode}/assets` | Create node asset |
| ---- | ---------------------------------------------------- | ----------------- |

### JSON response type

```csharp
var model = new ItemAsset()
  {
    CatalogNodeCode = "Fashion",
    AssetKey = "ed6fc3d7-091f-4e84-b1f6-49b56e7b5146",
    AssetType = "episerver.core.icontentimage",
    SortOrder = 45,
    GroupName = "large"
  };
var json = JsonConvert.SerializeObject(model);
var client = new HttpClient()
  {
    BaseAddress = new Uri(ConfigurationManager.AppSettings["integrationUrl"])
  };
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.AccessToken);		
var result = client.PostAsync("/episerverapi/commerce/nodes/{node code}/assets",
  new StringContent(json, Encoding.UTF8, "application/json")).Result.Content.ReadAsStringAsync().Result
```

### XML response type

```csharp
var model = new ItemAsset()
  {
    CatalogNodeCode = "Fashion",
    AssetKey = "ed6fc3d7-091f-4e84-b1f6-49b56e7b5146",
    AssetType = "episerver.core.icontentimage",
    SortOrder = 45,
    GroupName = "large"
  };
var client = new HttpClient()
  {
    BaseAddress = new Uri(ConfigurationManager.AppSettings["integrationUrl"])
  };
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.AccessToken);
var serializer = new XmlSerializer(typeof(ItemAsset));
var xml = String.Empty;
using (var ms = new MemoryStream())
  {
    serializer.Serialize(ms, model);
    xml = Encoding.Default.GetString(ms.ToArray());
  } 
var result = client.PostAsync("/episerverapi/commerce/nodes/{node code}/assets",
  new StringContent(xml, Encoding.UTF8, "text/xml")).Result.Content.ReadAsStringAsync().Result
```

Response

```xml
<ItemAsset xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <CatalogNodeCode>Fashion</CatalogNodeCode>
  <AssetKey>ed6fc3d7-091f-4e84-b1f6-49b56e7b5146</AssetKey>
  <AssetType>episerver.core.icontentimage</AssetType>
  <GroupName>large</GroupName>
  <SortOrder>45</SortOrder>
</ItemAsset>
```

### Update node asset

| PUT | `put/episerverapi/commerce/nodes/{nodeCode}/assets/{assetKey}/{assetType}` | Update node asset |
| --- | -------------------------------------------------------------------------- | ----------------- |

### JSON response type

```csharp
var model = new ItemAsset()
  {
    CatalogNodeCode = "Fashion",
    AssetKey = "ed6fc3d7-091f-4e84-b1f6-49b56e7b5146",
    AssetType = "episerver.core.icontentimage",
    SortOrder = 45,
    GroupName = "large"
  };
var json = JsonConvert.SerializeObject(model);
var client = new HttpClient()
  {
    BaseAddress = new Uri(ConfigurationManager.AppSettings["integrationUrl"])
  };
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.AccessToken);		
var result = client.PutAsync("/episerverapi/commerce/nodes/{node code}/assets/{assetKey}/{assetType}",
  new StringContent(json, Encoding.UTF8, "application/json")).Result.Content.ReadAsStringAsync().Result
```

### XML response type

```csharp
var model = new ItemAsset()
  {
    CatalogNodeCode = "Fashion",
    AssetKey = "ed6fc3d7-091f-4e84-b1f6-49b56e7b5146",
    AssetType = "episerver.core.icontentimage",
    SortOrder = 45,    
    GroupName = "large"
  };
var client = new HttpClient()
  {
    BaseAddress = new Uri(ConfigurationManager.AppSettings["integrationUrl"])
  };
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.AccessToken);
var serializer = new XmlSerializer(typeof(ItemAsset));
var xml = String.Empty;
using (var ms = new MemoryStream())
 {
    serializer.Serialize(ms, model);
    xml = Encoding.Default.GetString(ms.ToArray());
  } 	
var result = client.PutAsync("/episerverapi/commerce/nodes/{node code}/assets/{assetKey}/{assetType}",
  new StringContent(xml, Encoding.UTF8, "text/xml")).Result.Content.ReadAsStringAsync().Result
```

Response

```xml
200 No Content
```

### Delete node asset

| DELETE | `delete/episerverapi/commerce/nodes/{nodeCode}/assets/{assetKey}/{assetType}` | Delete node asset |
| ------ | ----------------------------------------------------------------------------- | ----------------- |

### JSON response type

```csharp
var client = new HttpClient()
  {
    BaseAddress = new Uri(ConfigurationManager.AppSettings["integrationUrl"])
  };
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.AccessToken);		
var result = client.DeleteAsync("/episerverapi/commerce/nodes/{node code}/assets/{assetKey}/{assetType}").Result.Content.ReadAsStringAsync().Result
```

### XML response type

```csharp
ar client = new HttpClient()
  {
    BaseAddress = new Uri(ConfigurationManager.AppSettings["integrationUrl"])
  };
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.AccessToken);
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("text/xml"));	
var result = client.DeleteAsync("/episerverapi/commerce/nodes/{node code}/assets/{assetKey}/{assetType}").Result.Content.ReadAsStringAsync().Result
```

Response

```xml
<ItemAsset xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <CatalogNodeCode>Fashion</CatalogNodeCode>
  <AssetKey>ed6fc3d7-091f-4e84-b1f6-49b56e7b5146</AssetKey>
  <AssetType>episerver.core.icontentimage</AssetType>
  <GroupName>large</GroupName>
  <SortOrder>45</SortOrder>
</ItemAsset>
```
