Digital asset management (DAM) helps groups of people manage and find all of their digital media in one location, and APIs promise the same benefits -- but to other computer systems. Is an API integration necessary to improve your workflow?
An application programming interface (API) allows computer programs to access a DAM, as opposed to a user interface that allows people to access DAM. Developers can use a DAM’s API to create custom integrations with business applications to leverage the graphic, video and document assets and media processing tools within their DAM with other IT systems.
An API provides a toolkit so developers don’t need to reinvent the wheel in their code -- they can say “give me a list of all galleries in this gallery,” or “convert all of these PDFs to JPEGs” within a custom program.
Other examples of what a program could do with an API include:
- Ingesting assets
- Retrieving thumbnails, previews and asset metadata from the DAM
- Searching for assets based on asset metadata
- Creating, converting and retrieving derivatives of images and movies
- Manipulating subfolders of watched folders
- Adding, updating, removing galleries
An API will typically provide programs with access to both the assets (files plus their metadata) as well as commands available in the user interface (keyword search, create gallery, convert, etc). Providing programs with API access to assets allows sending and receiving of files and metadata to and from other systems, further enhancing workflow efficiency.
For example, images and metadata managed within the DAM become easily accessible from within a content management system like WordPress, or are automatically synchronized with a museum’s collection management system. Many businesses systems lack DAM capabilities, such as still or video preview generation and file format conversion, and APIs allow developers to implement these capabilities in other systems without writing digital asset management functions from scratch.
An API takes all the complexity out of things like working with metadata and displaying previews -- with a DAM handling all the hard work behind the scenes.
Is an API Really Necessary?
The promised benefit of DAM APIs is greater workflow efficiency by streamlining and integrating DAM with other business processes and IT systems. Many DAM vendors offer APIs, but are they really necessary? The answer, of course, depends. You might need an API to integrate DAM with other systems like e-Commerce systems, content management systems, websites and intranet sites. On the other hand, you might only require an “out of the box” digital asset management system. Read on for additional questions that can help you decide if and how to integrate your DAM using an API.
Who Will Do the Work?
API integration requires experience with a programming language because it’s a developer-oriented feature of digital asset management systems. This means you’ll need an in-house developer, an external consultant or the DAM vendor to integrate your systems if you don’t have the expertise (or time).
How Committed is Your DAM Vendor?
Is the developer of the API committed to supporting your code now and in future releases? If you write code today, will the vendor provide support for what you write in future versions? If you get stuck, is there someone to call for help? (Hopefully the DAM vendor or at least someone who is familiar with the API and report bugs to the developers.) Does the developer eat their own dog food, meaning do they write the official DAM user interface using their own API?
Custom API implementations can be a major investment in time and money, and could end up locking you into your DAM. A DAM vendor using their own API not only shows that the vendor is committed to their API but that the interface has already been rigorously tested in real world situations. To avoid being the guinea pig in a new experiment, make sure the API has been used by someone else in a production environment.
What Resources are Available?
What kind of documentation does the vendor provide for the API, if any? Without good documentation, your developers could be flying blind. You don’t want time wasted on black box testing just to figure out what the API can do and how to use it. Do the commands and terminology in the API make sense and match what’s in the UI?
Consistent terminology makes development less confusing when the terms used in the API match the terms business users use to describe their for workflow. For example, the command name “uploadFile” is clear and descriptive about a method used for uploading files to the DAM, while “populateAssetTable” is not. Does the vendor provide code samples to get started? If so, what languages are supported (Java, C#, PHP, etc)? Code samples make it easy for developers to get up and running quickly and perform common tasks by learning from examples of using the API in actual code.
What’s the developer community like? Is there a place outside of the documentation, like a forum or mailing list, where developers can ask questions and share ideas with each other?
An API represents an opportunity to leverage DAM in other business systems to provide a customized solution that does everything you’d ever want it to -- the sky’s the limit. However, you must decide if API integration is worth the time and effort. Anything is possible with enough time and resources, but for practical purposes try to address what’s really necessary and important. For some people, that might be a basic out-of-the-box DAM and for others a deeply integrated solution.
Editor's Note: To read more of Edward Smith's articles on Digital Asset Management:
- Digital Asset Management: How Liquid are Your Digital Assets?
- Does Digital Asset Management Belong on Your Server or in the Cloud?
- Digital Asset Management: Bridging the Marketing and B2B Sales Groups