WiFi Pineapple NANO/TETRA Module API - Modules

ADVANCED

DESCRIPTION

The advanced module simplifies some more advanced processes like performing system upgrades and clearing system caches. For example, the following will clear the pineapple's caches:

{
  "module": "Advanced",
  "action": "dropCaches"
}

CLIENTS

DESCRIPTION

The Clients module allows for the monitoring and management of connected clients. For example, the following would kick the client with the MAC address aa:bb:cc:dd:ee:ff:

{
  "module": "Clients",
  "action": "kickClient",
  "mac": "aa:bb:cc:dd:ee:ff"
}

CONFIGURATION

DESCRIPTION

The configuration module allows for the modification of several pineapple configuration options such as timezone and landing page. The example below would set the landing page content to <b><i>Pineapples are yummy</i></b>:

{
  "module": "Configuration",
  "action": "saveLandingPage",
  "landingPageData": "<b><i>Pineapples are yummy</i></b>"
}

DASHBOARD

DESCRIPTION

You can use the Dashboards API to return useful values such as CPU usage, total SSIDs, SSIDs discovered this session and uptime. For example, the following will get the bulletins:

{
  "module": "Dashboard",
  "action": "getBulletins"
}

FILTERS

DESCRIPTION

The filters module has API that will allow you manage all aspects of the Filter module externally, such as getting client data or adding clients. It is used like so:

{
    "module": "Filters",
    "action": "getClientData"
}

LOGGING

DESCRIPTION

The Logging module provides easy access to the syslog, dmesg, PineAP and Reporting logs. To use these API functions, send your api request with the "module" set to "Logging":

{
    "module": "Logging",
    "action": "getSyslog",
}

MODULEMANAGER

DESCRIPTION

The Module Manager is responsible for installing, removing, and upgrading modules. It's API can be used to manage modules, as well as fetching the list of installed modules and getting available modules. To use them in your module, your request body would look like this:

{
    "module": "ModuleManager",
    "action": "removeModule",
    "moduleName": "Module"
}

NETWORKING

DESCRIPTION

The Networking module API allows you to interface with the networking side of the WiFi Pineapple without having to write your own functions to manage interfaces, the DNS, and the routing table. As described above, you can use these actions in your own module like so:

{
    "module": "Networking",
    "action": "setHostname",
    "hostname": "Pineapple"
}

PINEAP

DESCRIPTION

The PineAP module provides an easy way to interface with the PineAP suite. For example, one might use the following to add an SSID to PineAP's pool:

{
  "module": "PineAP",
  "action": "addSSID",
  "ssid": "ACME WiFi"
}

RECON

DESCRIPTION

The recon module allows for the detection of access points and clients within range of the pineapple. The following example would scan for nearby access points:

{
  "module": "Recon",
  "action": "startScan",
  "scanType": "apOnly"
}

REPORTING

DESCRIPTION

The reporting module allows you to control the automatic reporting features of the pineapple. For example, the following would return report contents:

{
  "module": "Reporting",
  "action": "getReportContents"
}

TRACKING

DESCRIPTION

Tracking allows you to create custom scripts for tracking clients. The following example would set a new tracking script:

{
  "module": "Tracking",
  "action": "saveScript",
  "trackingScript": "#!/bin/bash\n\nMAC=$1\nTYPE=$2 # 0 PROBE; 1 ASSOCIATION\nSSID=$3\n"
}

Last updated