Technical documentation - Signifikant Server Publisher REST API v5.x

To automate the import and publish process, you will need to use the Signifikant Server Publisher REST API. Here is a description of its functionality.

Version 5.0 and later

This article describes the API in version 5.0 and later.

Methods exposed by the Signifikant REST Publisher API

The publisher REST API exposes the following methods: Transform, Import and Publish. For each method, it is possible to checkout the status. The base url's for these methods are:

  • http://<servername>/AssertServer/api/v1/Publisher/Transform/<sitename>/<directoryname>/<languagecode>/{<sourcename>}

  • http://<servername>/AssertServer/api/v1/Publisher/Status/<sitename>/<directoryname>/Transform/{<sourcename>}

  • http://<servername>/AssertServer/api/v1/Publisher/Import/<sitename>/<directoryname>/<languagecode>/{<sourcename>}

  • http://<servername>/AssertServer/api/v1/Publisher/Status/<sitename>/<directoryname>/Import/{<sourcename>}

  • http://<servername>/AssertServer/api/v1/Publisher/SitePublish/<sitename>/<publicationlabel>

  • http://<servername>/AssertServer/api/v1/Publisher/Status/<sitename>/<publicationlabel>/Publish

Where:

  • v1 is version one of the api, later revision may define a v2 etc.

  • servername = host name or ip address of the server running AssertServer web application

  • directoryname = name of the directory that is placed in the Export directory that contains the xml import files

  • sitename = name of the site as it is registered within the editorial environment (Signifikant Server and/or Manager)

  • publicationlabel = label of the publication object, defined in Signifikant Manager

  • languagecode: e.g. en-US, language to use for imported translated text

  • sourcename: when several export data folders are used, the source name identifies the one we are targeting - OPTIONAL

Publication label

Publication label is set in the Manager. This way it is possible to predefine several publications that can be triggered using APIs.

Call the Signifikant Publisher REST API using a simple Web GUI

The Signifikant Web Viewer exposes a simple web GUI that can help you to call the above methods. It will also be useful to create valid url's that you then can use in your own application:

  • http://<servername>/AssertServer/PublisherView.cshtml

Retrieve information on which sites are deployed on editor and web environment

If you want to see which sites are registered within the editorial environment, you can use the following method:

  • http://<servername>/AssertServer/Service.cshtml

If you want to see which sites are registered with the web environment, you can use the following link:

  • http://<servername>/AssertWeb/en/<sitename>/WebAdmin
    User: adminserver
    Password: adminserverp
    Select "Site information"

Fully automated workflow

The way these REST API's are used is as follows in a fully automated environment:

  1. The external system creates an export file and drops it in the designated Export folder with directory name "xyz"

  2. The external system calls Signifikant Publisher REST API to transform the files in directory "xyz" and save the result in the Import folder

  3. The external system calls status method to see if transformation is finished. Waits until it is finished.

  4. The external system calls Signifikant Publisher REST API to import the files from Import folder to the designated site.

  5. The external system calls status method to see if import is finished. Waits until it is finished.

  6. The external system calls Signifikant Publisher REST API to publish the designated catalogue of the site to the web environment.

  7. The external system calls status method to see if publish is finished. Waits until it is finished.

Authentication

When enabled, api services may be protected by basic authentication; login and password are passed as api call header information.

Confer with the site administrator to get correct login information for the services accessed here. The account shall declare the WebPublisherApi role. See Technical documentation - Signifikant REST API authentication.