Command-line interface and Python wrapper for the Appknox API
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
appknox
docs
scripts
sphinx-docs
.editorconfig
.gitignore
.travis.yml
LICENSE
MANIFEST.in
README.md
extra-requirements.txt
requirements.txt
setup.cfg
setup.py

README.md

PyPI version Build Status Join the chat at https://gitter.im/appknox/appknox-python

appknox-python

Command-line interface & Python wrapper for the Appknox API.

Python API documentation is available here.

Installation

appknox-python is officially supported on python 3.5 & 3.6. pip is the recommended way to install appknox-python.

pip install appknox

Usage

$ appknox
Usage: appknox [OPTIONS] COMMAND [ARGS]...

  Command line wrapper for the Appknox API

Options:
  -v, --verbose  Specify log verbosity.
  --help         Show this message and exit.

Commands:
  analyses       List analyses for file
  files          List files for project
  login          Log in and save session credentials
  logout         Delete session credentials
  organizations  List organizations
  projects       List projects
  report         Download report for file
  upload         Upload and scan package
  switch_organization  Switch organization in CLI instance
  vulnerability  Get vulnerability
  whoami         Show session info

Authentication

Log in to appknox CLI using your secure.appknox.com credentials.

$ appknox login
Username: viren
Password:
Logged in to https://api.appknox.com

Using Environment Variables

Instead of login we can use environment variables for authentication. This will be useful for scenarios such as CI/CD setup.

$ export APPKNOX_ACCESS_TOKEN=aaaabbbbbcccddeeeffgghhh
$ export APPKNOX_ORGANIZATION_ID=2

Supported variables are:

Environment variable Value
APPKNOX_ACCESS_TOKEN Access token can be generated from Appknox dashboard (Settings → Developer Settings → Generate token).
APPKNOX_HOST Defaults to https://api.appknox.com
APPKNOX_ORGANIZATION_ID Your Appknox organization id

Data fetch & actions

Available commands Use
organizations List organizations of user
projects List projects user has access to
files <project_id> List files for a project
analyses <file_id> List analyses for a file
vulnerability <vulnerability_id> Get vulnerability detail
owasp <owasp_id> Get OWASP detail
upload <path_to_app_package> Upload app file from given path
rescan <file_id> Rescan a file (this will create a new file under the same project.)

Example:

$ appknox organizations
  id  name
----  -------
   2  MyOrganization

$ appknox projects
  id  created_on             file_count  package_name                     platform  updated_on
----  -------------------  ------------  -----------------------------  ----------  -------------------
   3  2017-06-23 07:19:26             3  org.owasp.goatdroid.fourgoats           0  2017-06-23 07:26:55
   4  2017-06-27 08:27:54             2  com.appknox.mfva                        0  2017-06-27 08:30:04

$ appknox files 4
  id  name      version    version_code
----  ------  ---------  --------------
   6  MFVA            1               6
   7  MFVA            1               6

Development

Update docs

Install sphinx-autobuild:

pip install sphinx-autobuild

Build docs:

sphinx-autobuild -p 9009 -b html sphinx-docs docs

License: MIT