I need to export the physical media files (using keepeek) stored as ecl items in Tridion for a data migration project. Any advice how to achieve this?



First you need to consider that the files are not - contrary to what you write - stored as ECL items in Tridion. ECL items reference content on external systems.

As always there are several options, and which one is easiest depends on your skillset, the ECL Provider, and the keepeek API.

The simplest approach could be:

  1. Recognize ECL stub components - they will have a title starting with ecl:, and they are based on the ECL stub schema.
  2. Parse the keepeek ID out of the ECL URL - in most cases it will be pretty obvious what it is, but it might be escaped with ! if it contains naughty characters.
  3. Call the keepeek API do read the data.

There is also an ECL API next to the Core Service. It is unfortunately a bit limited - It can't simply read the content of the external item (DAMs can be complicated and often there is not a single file behind an asset). Its primary use case is to browse external systems and add their content to Tridion - not the other way around.

But if your provider for example implement FileItemData.DirectLinkToPublished this could potentially point to the binary.

To access the ECL API:

Get the Tridion External Content Library API Reference from here.

Remember to "unblock" the file after downloading or it won't open correctly.

The relevant documentation is in the Tridion.ExternalContentLibrary.Service namespace, specifically the interface IEclService2012.

For details on how to set up the binding, see the answer to question (here it is done from code, you can of course also use configuration).

There is a precompiled client with the name Tridion.ExternalContentLibrary.Service.Client.dll already on your Tridion system, and I would recommend using it if possible.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.