Skip to main content


Kinetic Community

Kinetic Request Command Line Import-Export Tool


The Kinetic Request Command Line Import-Export Tool is a ruby application to help facilitate migrating from one Kinetic Request Core Edition to another. After providing some initial setup information (username names, password, etc) you can export Kinetic Request CE Spaces, Bridges, Kapps, Forms and/or Users into JSON files that can then be used to import into a Kinetic Request core edition space/kapp.


  • jruby 1.7.X with the rest-client and json gems

  • Kinetic Request CE


The import and export functions are an executable ruby files that retrieves and builds Kinetic Request service items to be saved into JSON files which can be imported to Kinetic Request Core Edition.  

To run on Windows, install jruby on your machine (can be found if it is not already installed. It is recommended that you stick with the 1.7.X jruby. Then you will need to open up a command line prompt and 

jruby -S gem install rest-client json

Download the executables from here and place them in a folder somewhere it will be convenient to run them.

A JSON configuration file defines the connection to the CE Server that the Kinetic Request instance is installed on along with the Kinetic Core admin and space information (URL, username, password.) This file, config.json, is in the download and should be configured manually.


To configure the imports/exports you must create a JSON configuration file (with a .json extension) that defines a connection to the Kinetic Core instance being either exported from or imported to.  For simplicity, the JSON file is generally located in the same directory as the executables.  The contents of the JSON file should be in the format shown here:

  "server" : "",
  "admin_user" : "admin",
  "admin_password" : "admin",
  "space_user" : "spaceUser",
  "space_password" : "spaceUserPassword!",
  "debug" : true

Ruby Commands & Usage 

The executables are run using commands as shown below.

juby (command).rb config.json export_directory [additional variables]

Any command run without any arguments will bring up "Usage" help that will provide the specific usage for that command.

The import functions, except import-users-csv.rb, expect the same format/file structure that is created by the export functions. 

The export functions create a folder for the space (named for the space slug) under the provided folder. Within that (for full information, ie a space export) is the space.json, a folder for the bridges, and a folder for each kapp (named with each kapp slug).

Note that imports offer three options: create, replace or update. Create will import new and not overwrite or update if the same object already exists. Replace will delete the object if it already exists and import fresh. Update will update any existing objects and import new any non-existing items.


export-bridge.rb   - exports bridge

jruby export-bridge.rb config.json export_directory space-slug "Bridge Name"

export-bridgemodel.rb  - exports bridge model and mappings for that model

jruby export-bridgemodel.rb config.json export_directory space-slug "Model Name"

export-form.rb  - exports just the specific form for the provided form slug.

jruby export-form.rb config.json export_directory space-slug kapp-slug form-slug

export-kapp.rb - exports the kapp provided and all it's forms, attributes, etc.

jruby export-kapp.rb config.json export_directory space-slug kapp-slug

export-space.rb  - export the space provided, all it's kapps, forms, attributes, etc.

jruby export-space.rb config.json export_directory space-slug

export-users.rb - export the users for the space provided

jruby export-users.rb config.json export_directory space-slug

import-bridge.rb  - import specified bridge

jruby import-bridge.rb config.json export_directory create|replace|update space-slug "Bridge Name"

import-bridgemodel.rb - import the specified bridge model and it's mappings

jruby import-bridgemodel.rb config.json export_directory create|replace|update space-slug "Model Name"

import-form.rb - import the specified form

jruby import-form.rb config.json export_directory create|replace|update space-slug kapp-slug form-slug

import-kapp.rb - import the specified kapp

jruby import-kapp.rb config.json export_directory create|replace|update space-slug kapp-slug

import-space.rb - import the specified space

jruby import-space.rb config.json export_directory create|replace|update space-slug

import-users.rb - import the exported users

jruby import-users.rb config.json export_directory create|replace|update space-slug


jruby import-users.rb config.json new-users.csv space-slug

Note: this last command doesn't take from the same exports/directory structures as the other commands. It expects a comma delimited file as input. This is a sample of the expected input.