mirror of
https://github.com/pi-hole/pi-hole
synced 2025-07-03 05:42:33 +00:00
Allow simple pihole api
output, containing only the JSON payload (#6096)
This commit is contained in:
commit
a04ed13d0a
@ -302,14 +302,23 @@ secretRead() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
apiFunc() {
|
apiFunc() {
|
||||||
local data response status status_col
|
local data response status status_col verbosity
|
||||||
|
|
||||||
|
# Define if the output will be silent (default) or verbose
|
||||||
|
verbosity="silent"
|
||||||
|
if [ "$1" = "verbose" ]; then
|
||||||
|
verbosity="verbose"
|
||||||
|
shift
|
||||||
|
fi
|
||||||
|
|
||||||
# Authenticate with the API
|
# Authenticate with the API
|
||||||
LoginAPI verbose
|
LoginAPI "${verbosity}"
|
||||||
echo ""
|
|
||||||
|
|
||||||
|
if [ "${verbosity}" = "verbose" ]; then
|
||||||
|
echo ""
|
||||||
echo "Requesting: ${COL_PURPLE}GET ${COL_CYAN}${API_URL}${COL_YELLOW}$1${COL_NC}"
|
echo "Requesting: ${COL_PURPLE}GET ${COL_CYAN}${API_URL}${COL_YELLOW}$1${COL_NC}"
|
||||||
echo ""
|
echo ""
|
||||||
|
fi
|
||||||
|
|
||||||
# Get the data from the API
|
# Get the data from the API
|
||||||
response=$(GetFTLData "$1" raw)
|
response=$(GetFTLData "$1" raw)
|
||||||
@ -326,11 +335,18 @@ apiFunc() {
|
|||||||
else
|
else
|
||||||
status_col="${COL_RED}"
|
status_col="${COL_RED}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# Only print the status in verbose mode or if the status is not 200
|
||||||
|
if [ "${verbosity}" = "verbose" ] || [ "${status}" != 200 ]; then
|
||||||
echo "Status: ${status_col}${status}${COL_NC}"
|
echo "Status: ${status_col}${status}${COL_NC}"
|
||||||
|
fi
|
||||||
|
|
||||||
# Output the data. Format it with jq if available and data is actually JSON.
|
# Output the data. Format it with jq if available and data is actually JSON.
|
||||||
# Otherwise just print it
|
# Otherwise just print it
|
||||||
|
if [ "${verbosity}" = "verbose" ]; then
|
||||||
echo "Data:"
|
echo "Data:"
|
||||||
|
fi
|
||||||
|
|
||||||
if command -v jq >/dev/null && echo "${data}" | jq . >/dev/null 2>&1; then
|
if command -v jq >/dev/null && echo "${data}" | jq . >/dev/null 2>&1; then
|
||||||
echo "${data}" | jq .
|
echo "${data}" | jq .
|
||||||
else
|
else
|
||||||
@ -338,5 +354,5 @@ apiFunc() {
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
# Delete the session
|
# Delete the session
|
||||||
LogoutAPI verbose
|
LogoutAPI "${verbosity}"
|
||||||
}
|
}
|
||||||
|
@ -23,7 +23,7 @@ pihole -r
|
|||||||
.br
|
.br
|
||||||
\fBpihole -g\fR
|
\fBpihole -g\fR
|
||||||
.br
|
.br
|
||||||
\fBpihole\fR -\fBq\fR [options]
|
\fBpihole\fR \fB-q\fR [options]
|
||||||
.br
|
.br
|
||||||
\fBpihole\fR \fB-l\fR (\fBon|off|off noflush\fR)
|
\fBpihole\fR \fB-l\fR (\fBon|off|off noflush\fR)
|
||||||
.br
|
.br
|
||||||
@ -43,7 +43,7 @@ pihole -r
|
|||||||
.br
|
.br
|
||||||
\fBpihole\fR \fBcheckout\fR repo [branch]
|
\fBpihole\fR \fBcheckout\fR repo [branch]
|
||||||
.br
|
.br
|
||||||
\fBpihole\fR \api\fR endpoint
|
\fBpihole\fR \fBapi\fR [verbose] endpoint
|
||||||
.br
|
.br
|
||||||
\fBpihole\fR \fBhelp\fR
|
\fBpihole\fR \fBhelp\fR
|
||||||
.br
|
.br
|
||||||
@ -234,10 +234,14 @@ Available commands and options:
|
|||||||
branchname Update subsystems to the specified branchname
|
branchname Update subsystems to the specified branchname
|
||||||
.br
|
.br
|
||||||
|
|
||||||
\fBapi\fR endpoint
|
\fBapi\fR [verbose] endpoint
|
||||||
.br
|
.br
|
||||||
Query the Pi-hole API at <endpoint>
|
Query the Pi-hole API at <endpoint>
|
||||||
.br
|
.br
|
||||||
|
|
||||||
|
verbose Show authentication and status messages
|
||||||
|
.br
|
||||||
|
|
||||||
.SH "EXAMPLE"
|
.SH "EXAMPLE"
|
||||||
|
|
||||||
Some usage examples
|
Some usage examples
|
||||||
@ -323,6 +327,11 @@ Switching Pi-hole subsystem branches
|
|||||||
Queries FTL for the stats/summary endpoint
|
Queries FTL for the stats/summary endpoint
|
||||||
.br
|
.br
|
||||||
|
|
||||||
|
\fBpihole api verbose stats/summary\fR
|
||||||
|
.br
|
||||||
|
Same as above, but shows authentication and status messages
|
||||||
|
.br
|
||||||
|
|
||||||
.SH "COLOPHON"
|
.SH "COLOPHON"
|
||||||
|
|
||||||
Get sucked into the latest news and community activity by entering Pi-hole's orbit. Information about Pi-hole, and the latest version of the software can be found at https://pi-hole.net.
|
Get sucked into the latest news and community activity by entering Pi-hole's orbit. Information about Pi-hole, and the latest version of the software can be found at https://pi-hole.net.
|
||||||
|
3
pihole
3
pihole
@ -493,6 +493,7 @@ Debugging Options:
|
|||||||
Add an optional argument to filter the log
|
Add an optional argument to filter the log
|
||||||
(regular expressions are supported)
|
(regular expressions are supported)
|
||||||
api <endpoint> Query the Pi-hole API at <endpoint>
|
api <endpoint> Query the Pi-hole API at <endpoint>
|
||||||
|
Precede <endpoint> with 'verbose' option to show authentication and status messages
|
||||||
|
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
@ -601,6 +602,6 @@ case "${1}" in
|
|||||||
"updatechecker" ) shift; updateCheckFunc "$@";;
|
"updatechecker" ) shift; updateCheckFunc "$@";;
|
||||||
"arpflush" ) arpFunc "$@";;
|
"arpflush" ) arpFunc "$@";;
|
||||||
"-t" | "tail" ) tailFunc "$2";;
|
"-t" | "tail" ) tailFunc "$2";;
|
||||||
"api" ) apiFunc "$2";;
|
"api" ) shift; apiFunc "$@";;
|
||||||
* ) helpFunc;;
|
* ) helpFunc;;
|
||||||
esac
|
esac
|
||||||
|
Loading…
Reference in New Issue
Block a user