This topic describes how to work with RESTful operations for catalog item assets in the Episerver Service API.
In this topic
- Example models
- Get all entry assets
- Get entry asset
- Post entry asset
- Put entry asset
- Delete entry asset
- Get all node assets
- Get node asset
- Post node asset
- Put node asset
- Delete node asset
Example models
[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; }
}
Get All Entry Assets
/episerverapi/commerce/entries/{entry code}/assets
Client Code Media Type JSON
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
Response JSON
[
{
"CatalogNodeCode" : null,
"CatalogEntryCode" : "Jackets-Blazers-Wrap",
"AssetKey" : "fd761c1d-5692-48b6-b90a-1ddf4c7c5eb9",
"AssetType" : "episerver.core.icontentimage",
"GroupName" : "large",
"SortOrder" : 45
}
]
Client Code Media Type XML
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 Entry Asset
/episerverapi/commerce/entries/{entry code}/assets/{assetKey}/{assetType}
Client Code Media Type JSON
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
Response JSON
{
"CatalogNodeCode" : null,
"CatalogEntryCode" : "Jackets-Blazers-Wrap",
"AssetKey" : "fd761c1d-5692-48b6-b90a-1ddf4c7c5eb9",
"AssetType" : "episerver.core.icontentimage",
"GroupName" : "large",
"SortOrder" : 45
}
Client Code Media Type XML
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>
Post Entry Asset
/episerverapi/commerce/entries/{entry code}/assets
Client Code Media Type JSON
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
Response JSON
{
"CatalogNodeCode" : null,
"CatalogEntryCode" : "Jackets-Blazers-Wrap",
"AssetKey" : "fd761c1d-5692-48b6-b90a-1ddf4c7c5eb9",
"AssetType" : "episerver.core.icontentimage",
"GroupName" : "large",
"SortOrder" : 45
}
Client Code Media Type XML
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>
Put Entry Asset
/episerverapi/commerce/entries/{entry code}/assets/{assetKey}/{assetType}
Client Code Media Type JSON
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
Response JSON
204 No Content
Client Code Media Type XML
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
/episerverapi/commerce/entries/{entry code}/assets/{assetKey}/{assetType}
Client Code Media Type JSON
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
Response JSON
{
"CatalogNodeCode" : null,
"CatalogEntryCode" : "Jackets-Blazers-Wrap",
"AssetKey" : "fd761c1d-5692-48b6-b90a-1ddf4c7c5eb9",
"AssetType" : "episerver.core.icontentimage",
"GroupName" : "large",
"SortOrder" : 45
}
Client Code Media Type XML
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>
Get All Node Assets
/episerverapi/commerce/nodes/{node code}/assets
Client Code Media Type JSON
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
Response JSON
[
{
"CatalogNodeCode" : "Fashion",
"CatalogEntryCode" : null,
"AssetKey" : "ed6fc3d7-091f-4e84-b1f6-49b56e7b5146",
"AssetType" : "episerver.core.icontentimage",
"GroupName" : "large",
"SortOrder" : 45
},
{
"CatalogNodeCode" : "Fashion",
"CatalogEntryCode" : null,
"AssetKey" : "fe642158-e9cf-43c9-a70d-42cd75903dc6",
"AssetType" : "episerver.core.icontentimage",
"GroupName" : "small",
"SortOrder" : 0
}
]
Client Code Media Type XML
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 Node Asset
/episerverapi/commerce/nodes/{node code}/assets/{assetKey}/{assetType}
Client Code Media Type JSON
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
Response JSON
{
"CatalogNodeCode" : "Fashion",
"CatalogEntryCode" : null,
"AssetKey" : "ed6fc3d7-091f-4e84-b1f6-49b56e7b5146",
"AssetType" : "episerver.core.icontentimage",
"GroupName" : "large",
"SortOrder" : 45
}
Client Code Media Type XML
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>
Post Node Asset
/episerverapi/commerce/nodes/{node code}/assets
Client Code Media Type JSON
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
Response JSON
{
"CatalogNodeCode" : "Fashion",
"CatalogEntryCode" : null,
"AssetKey" : "ed6fc3d7-091f-4e84-b1f6-49b56e7b5146",
"AssetType" : "episerver.core.icontentimage",
"GroupName" : "large",
"SortOrder" : 45
}
Client Code Media Type XML
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>
Put Node Asset
/episerverapi/commerce/nodes/{node code}/assets/{assetKey}/{assetType}
Client Code Media Type JSON
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
Response JSON
200 No Content
Client Code Media Type XML
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
/episerverapi/commerce/nodes/{node code}/assets/{assetKey}/{assetType}
Client Code Media Type JSON
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
Response JSON
{
"CatalogNodeCode" : "Fashion",
"CatalogEntryCode" : null,
"AssetKey" : "ed6fc3d7-091f-4e84-b1f6-49b56e7b5146",
"AssetType" : "episerver.core.icontentimage",
"GroupName" : "large",
"SortOrder" : 45
}
Client Code Media Type XML
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/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>
Related topics
Last updated: Oct 20, 2016