The commands sent by a client and responses sent back by the server must adhere to the following formatting conventions.
Client Command Format
\r\n
) is considered to be the same as a newline character (\n
) alone.=
) and enclosed in quotes. Multiple parameters should be separated by a comma (,) and space. Example command1=value1, command2=value2 ...
If a parameter supports multiple values, the values should be separated by a comma (,). Example: command1=value1,value2,...
=
) delimiter. Whitespace that occurs after the equal (=
) is considered part of the argument value.\n
) and the end of the array is indicated with a newline (\n
) by itself.<regexp>
, which indicates that the parameter may point to a non-unique value. You can use an asterisk (*
) as a wildcard in such case. For example, dev*
would match device1
and Device B
but not my device
. However, *dev*
would match all three.<value>
require a value which is already present in the database, while <new_value>
indicates a new value to be inserted into the database.YYYYMMDDhhmm
format and in the logged in user's timezone.startTime
, a blank value or zero (0
) indicates 24 hours ago and for endTime
, it indicates now.timezone_value
is specified in format listed at http://www.timezoneconverter.com/cgi-bin/zonehelp.tzc?cc=US
.userName=<value>
is available to admin users. When used, the command is executed for the matching objects as the specified user.Server Response Format
The server always responds to client initiated commands/requests with text in the format: <status code> <response code> <optional informative text>
where <status_code>
is one of the following:
OK
, which indicates the command/request was successfulERR
, which indicates failure to execute the request<response_code>
is a three digit numeric code which provides additional details about the status code.Server Response Codes |
Response Code Description |
200 |
Server ready for initial handshake |
201 |
Request accepted and processed, ready for next request |
203 |
Request accepted, multi line response follows |
298 |
Request accepted, server will halt |
299 |
Session ended, server will close socket connection |
300 - 399 |
Debugging information. These messages will be printed before a 200, 400 or 500 level message |
400 level - client side error (try again) |
|
401 |
Authentication failure |
402 |
Logged in user does not have permission to perform requested task |
410 |
Unknown command - use 'help' for list of commands |
411 |
Feature has not been implemented yet |
412 |
Not enough parameters specified - use 'help command.name' |
413 |
Invalid Parameter parameter specified - use 'help command.name' |
420 |
One or more objects already exist |
421 |
One or more of the objects requested does not exist |
500 level - server side error |
|
595 |
Communication failure with remote database, please try again later |
596 |
Maintenance in progress, please try again later |
597 |
Server too busy, please try again later |
598 |
Backend failure, server will close socket connection |
599 |
Server unavailable, server will close socket connection |