OpenAPI Specification
openapi: 3.1.0
info:
title: PHP-FPM and Endpoints Ping Status API
description: 'PHP-FPM (FastCGI Process Manager) does not expose a public HTTP API for
runtime configuration, but it does expose two operational HTTP endpoints
via the web server that proxies FastCGI requests to PHP-FPM. The status
endpoint is enabled by setting `pm.status_path` and reports pool
metrics in plain text, full text, HTML, JSON, XML, or OpenMetrics
format depending on a query-string flag. The ping endpoint is enabled
by setting `ping.path` and returns a configurable static response
(default `pong`) suitable for upstream health checks.
The actual paths are administrator-defined; the most common
conventions (`/fpm-status` and `/fpm-ping`) are modeled here. Authentication
and access control are handled by the fronting web server, not by
PHP-FPM itself.
'
version: 1.0.0
contact:
name: PHP-FPM documentation
url: https://www.php.net/manual/en/install.fpm.php
license:
name: PHP License
url: https://www.php.net/license/
servers:
- url: http://{host}
description: Web server fronting PHP-FPM.
variables:
host:
default: localhost
description: Hostname of the web server proxying FastCGI requests.
tags:
- name: Status
description: PHP-FPM pool status.
paths:
/fpm-status:
get:
tags:
- Status
summary: Get PHP-FPM pool status
description: 'Returns PHP-FPM pool metrics. The output format is selected via a
query-string flag and may include per-process detail when `full`
is set. The default response is plain text.
'
operationId: getStatus
parameters:
- in: query
name: full
schema:
type: string
allowEmptyValue: true
description: When present, includes per-process detail.
- in: query
name: json
schema:
type: string
allowEmptyValue: true
description: Return JSON output.
- in: query
name: xml
schema:
type: string
allowEmptyValue: true
description: Return XML output.
- in: query
name: html
schema:
type: string
allowEmptyValue: true
description: Return HTML output.
- in: query
name: openmetrics
schema:
type: string
allowEmptyValue: true
description: Return OpenMetrics output.
responses:
'200':
description: PHP-FPM status.
content:
text/plain:
schema:
type: string
application/json:
schema:
$ref: '#/components/schemas/PoolStatus'
application/xml:
schema:
type: string
text/html:
schema:
type: string
application/openmetrics-text:
schema:
type: string
components:
schemas:
PoolStatus:
type: object
properties:
pool:
type: string
process manager:
type: string
enum:
- static
- dynamic
- ondemand
start time:
type: integer
start since:
type: integer
accepted conn:
type: integer
listen queue:
type: integer
max listen queue:
type: integer
listen queue len:
type: integer
idle processes:
type: integer
active processes:
type: integer
total processes:
type: integer
max active processes:
type: integer
max children reached:
type: integer
slow requests:
type: integer
externalDocs:
description: PHP-FPM status page documentation
url: https://www.php.net/manual/en/fpm.status.php