Skip to main content

Server Settings

Server Config Lists

Following is the supported server config lists,

KeyDefault ValueAllowed ValuesDescription
protocolHTTPHTTP, HTTPSProtocol for the server
hostnullStringHost address
port47230Port Number
externalfalseboolean valuetrue, if using external server run from terminal, else, if required for framework to start the server.
appium_pathnullPath to main.js file in Appium installation directory.
node_pathnullPath to Node executable.
allow_insecureEmpty listList of StringSee below for allowed values
start_up_timeout60IntegerWait timeout for Server to start.
session_overridefalseOverride the session
cloudnullBROWSERSTACKCurrently only supports BrowserStack
user_namenullUser name on the Cloud. This field is externalized to secure sensitive information.
passwordnullnullPassword on the Cloud. This field is externalized to secure sensitive information.
logsDefault logs optionsSee logs section below
androidNANAAndroid platform specific settings. See here for complete list.
iosNANAiOS platform specific settings. See here for complete list.
environmentsEmpty MapKey, ValueThis will contain all the environment variables which will be used by Appium.
allow_corsOption to allow CORS
callback_ipnullStringCallback IP address.
callback_portnullIntegerCallback Port
node_confignullStringConfiguration JSON file path to register Appium with selenium grid.
pre_launchPre launches app before session starts
relaxed_securityDisables additional security
strict_capabilitiesFails Appium session if capabilities sent does not match with any device.

Allowed insecure options

KeyDescriptionPlatform
get_server_logsAllows retrieving of Appium server logs via the Webdriver log interfaceAll
adb_shellAllows execution of arbitrary shell commands via ADB, using the mobile: shell commandAndroid
shutdown_other_simsAllow any session to use a capability to shutdown any running simulators on the hostiOS
perf_recordAllow recording the system performance and other metrics of the simulatoriOS
record_audioAllow recording of host machine audio inputsiOS
chromedriver_autodownloadAllow to download ChromeDriver automatically if Appium does not have proper the versionAndroid
execute_driver_scriptAllows to send a request which has multiple Appium commandsAll

Logs options

KeySample ValueDefault ValueDeviceDescription
levelDEBUG, ERRORERRORAllLog level for Server. See the list below for complete list of allowed values.
timestamptrue, falsefalseAllShow timestamps in console output
local_timezonetrue, falsefalseAllUse local timezone for timestamps
no_colorstrue, falsefalseAllUse console colors, if true, else false.
debug_spacingtrue, falsefalseAllAdd extra spacing in logs for visual inspection
pathpath\to\logs.logAllAppium server logs path
async_tracetrue, falsefalseAllAdd long stack trace to logs

Supported Log Levels

  • DEBUG
  • DEBUG_DEBUG
  • DEBUG_ERROR
  • DEBUG_INFO
  • DEBUG_WARN
  • ERROR
  • ERROR_DEBUG
  • ERROR_ERROR
  • ERROR_INFO
  • ERROR_WARN
  • INFO
  • INFO_DEBUG
  • INFO_ERROR
  • INFO_INFO
  • INFO_WARN
  • WARN
  • WARN_DEBUG
  • WARN_ERROR
  • WARN_INFO
  • WARN_WARN

Android options

KeySample ValueDefault ValueDeviceDescription
bootstrap_portIntAndroidPort to use on device to talk to Appium.
chrome_driver_portIntAndroidPort upon which ChromeDriver will run.
chrome_driver_pathPath for driverAndroidChromeDriver executable full path.
suppress_adb_killtrue, falsefalseAndroidIf set, prevents Appium from killing the adb server instance.
reboottrue, falsefalseAndroidReboot emulator after each session and kill it at the end

iOS options

KeySample ValueDefault ValueDeviceDescription
backend_retriesInt3IOSHow many times to retry launching Instruments before saying it crashed or timed out.
ipa_pathPath to ipaIOSAbsolute path to compiled .ipa file.
safaritrue, falsefalseIOSUse the safari app.
wkd_proxy_portIntIOSLocal port used for communication with ios-webkit-debug-proxy.
wda_port12340IOSWebDriver Agent port number.
default_devicetrue, falsenullIOSuse the default simulator that instruments launches on its own