No description, website, or topics provided.
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
bin Init Jul 28, 2015
src/Janrain/CLI Added client:list command. Jul 28, 2015
.gitignore Init Jul 28, 2015
LICENSE Added LICENSE mentioning XWP copyright. Jul 28, 2015 README formatting changes Aug 26, 2015
box.json Fix box.json for cert file. Jul 28, 2015
composer.json Init Jul 28, 2015


CLI ools for interacting with Janrain.

Install From Source

git clone jcli
cd jcli
composer install

You can run via ./bin/jcli from current directory.

If you want to build the phar file:

box build

and you can move the file to your OS PATH:

mv jcli.phar /usr/local/bin/jcli

Now you can run jcli from anywhere.


The first time you need to do is configure your jcli. By default client_id, client_secret, and base_url are empty:

jcli config -l

These are required config keys that need to be set. Set it with:

jcli config client_id YOUR_CLIENT_ID
jcli config client_secret YOUR_CLIENT_SECRET
jcli config base_url YOUR_BASE_URL

Additionally you can set default_type to set default entity type. Now, every time you run command you can ignore -t option.

jcli config default_type user


$ ./bin/jcli
jcli version @package_version@

  command [options] [arguments]

  -h, --help            Display this help message
  -q, --quiet           Do not output any message
  -V, --version         Display this application version
      --ansi            Force ANSI output
      --no-ansi         Disable ANSI output
  -n, --no-interaction  Do not ask any interactive question
  -v|vv|vvv, --verbose  Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug

Available commands:
  config                 Janrain config
  help                   Displays help for a command
  list                   Lists commands
  entity:count           Retrieve number of records of entity type
  entity:fill-unsub-key  Fill empty unsubscribe key on records
  entity:find            Find entity
  entity:update          Update an entity
  entity:view            Retrieve a single entity
  type:list              Retrieve all entity types

Find Records

jcli entity:find "gender != 'male'"

Limit the output to 10 records:

jcli entity:find "gender != 'male'" -m 10

Specifying offset (start from 5th record):

jcli entity:find "gender != 'male'" -m 10 -f 5

Count Records

jcli entity:count "gender != 'male' AND birthday is not null"

View a Single Record

jcli entity:view id=999
jcli entity:view uuid=c0613105-f632-41ce-80eb-56668df7fc83

Update a Record

jcli entity:update id=999 givenName=Akeda displayName="Akeda Bagus"

Update All Empty ETUID Attributes

jcli entity:fill-unsub-key

You may get API rate limit from Janrain. If so, the jcli will output the message. When that happens, you can re-run jcli entity:fill-unsub-key again for the remaining records.