The process of triggering a new version for a Workflow Product involves the following general steps:


  1. Upload all required files in the designated drop-zone blob container
  2. Once all required files have successfully uploaded, upload one additional file named "manifest.json" to the designated drop-zone blob container


The "manifest.json" file contains the following properties:


project

Unique identifier for the project

product

The identifier for the Workflow Product

files

A JSON array of strings, where each string contains a path relative the drop-zone blob container for a file that should be attached to the new version

properties

A JSON object containing a dictionary of properties that will be associated with the new version. Values must be strings.


Example of a "manifest.json" file:


{

    "project" : "D1847E42C5964B2DAED3B8DBE1C8B6CF",

    "product" : "COM_SURF",

    "files" : ["EOM_220130.zip"],

    "properties": {

        "custom_0" : "value 1",

        "custom_1" : "value 2"

    }

}


This example creates a new version in the COM_SURF product for the specified project. The version will be produced using the "EOM_220130.zip" which must have been previously uploaded to the same blob container as the "manifest.json" file. The example adds two custom properties to the version: "custom_0" and "custom_1".


This is the JSON schema for the "manifest.json" file:


{

  "$schema": "http://json-schema.org/draft-04/schema#",

  "type": "object",

  "properties": {

    "project": {

      "type": "string"

    },

    "product": {

      "type": "string"

    },

    "files": {

      "type": "array",

      "items": [

        {

          "type": "string"

        }

      ]

    },

    "properties": {

      "type": "object"

    }

  },

  "required": [

    "project",

    "product",

    "files"

  ]

}