Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The content must be POSTed as a JSON object in the following format (see also the "get" API call.

Code Block
langjavascript
        {
            "_id": string, // Optional - auto-generated if not specified. If the "_id" is specified then updates the module as described below.
       
    "url": string, // Will normally either be a public URL or the location of a shared object in Infinit.e.

           "title": string, // The widget title displayed in the widget browser and on the widget window title bar
            "description": string, // A description of the widget, displayed in the widget browser
   
        "version": string, // An arbitrary string used for external versioning
            "imageurl": string, // The URL of an image used to represent the widget in the GUI framework (again normally either a public URL or share)
            "searchterms": [ 
  
             string // A list of strings that are used in the "modules/search" API call
 
          ]

       }

There are 2 ways a module can be updated rather than uploaded:

...

Code Block
langjavascript
{
      //...
      "url": "$infinite/share/get/4d88d0f1f9a624a4b0c8bd71"
    //...
}

Note finally that the following fields are added to the uploaded/updated JSON object (and are retrieved via the "module/get" API call):

Code Block
langjavascript
{
    //...
    "_id": string, // If not specified
    "created": string, // First time inserted, the Unix time in ms
    "modified": string, // Each time created or modified, the Unix time in ms
    "author": string, // The (unique) email address of the uploader
    "approved": boolean, // Currently hardwired to true
    //...
}
Example
Code Block
langbash
#bash> curl -XPOST 'http://infinite.ikanow.com/knowledge/uisetup/modules/install' -d '{
    "url": "$infinite/share/get/4d88d0f1f9a624a4b0c8bd71",
    "title": "Test widget",
    "description: "A widget designed to test some new visualization",
    "version": "0.9",
    "imageurl": "$infinite/share/get/4d88d0f1f9a624a4b0c8bd72",
    "searchterms": [ "test", "visualization" ]
}'

...