Extensis Logo SUPPORT | FORUMS | KNOWLEDGE BASE

What is and what can I do with the Portfolio API?


#1

With Portfolio 10.2, Extensis introduced the Portfolio API. The purpose of the API is to provide an interface for people to create their own tools to interact with the Portfolio Catalogs. The API provides a number of advantages over SQL Connect.

So, what was SQL Connect? Way back in time with the advent of Portfolio Five, Extensis first offered SQL Connect to replace the built in FDB database format of the Portfolio catalog with a SQL database back end. The SQL integration guide for SQL Connect introduced a map of the SQL schema used in the database, and following this guide, you could create custom interfaces with Portfolio. Yet, there were a couple of disadvantages. For one thing, you were limited to only interacting with SQL databases, and the more common FDB based catalogs were still only accessible by the Portfolio client. Another potential problem was that this gave access to the complicated inner workings of the catalog, and if you were not careful, you could completely, irretrievably, screw up your Portfolio database.

So, the answer for creating custom Portfolio connections is to utilize the Portfolio API. The benefits of doing so are:
[ol]
[li]The API is SQL independent. It allows access to the FDB catalogs as well as the SQL databases. [/li]
[li]You are no longer messing with the inner workings of the database. The odds of adding data incorrectly, or disrupting the SQL schema with the API are also greatly reduced.[/li]
[li]The API provides a layer of separation between the tools that you create, and the inner workings of the Portfolio Database. This allows Extensis to make changes to the underlying structure of the SQL database without breaking the tools that you have created. We at Extensis can improve the Portfolio database in future releases, even making drastic changes, and your tools will not break. They will just get better.[/li][/ol]

You can build a wide variety of tools with Portfolio API. For example, you could create:
[ul]
[li]An XML exporter.[/li]
[li]A Wordpress plugin.[/li]
[li]A web-based file upload tool.[/li]
[li]An interactive web site.[/li]
[li]An application to review and approve images.[/li]
[li]A tool to synchronize data between Portfolio and your CMS/CMIS.[/li]
[li]Basically anything that your team could need.[/li][/ul]

If you are interested in the Portfolio API, you can take a look at the documentation. It is available on the Extensis website or you can go straight to the code reference.