Controller API Reference

All user APIs available in Pinot

The full up-to-date list of APIs can be viewed on Swagger.

Cluster

GET /cluster/configs

List all the cluster configs. These are fetched from Zookeeper from the CONFIGS/CLUSTER/<clusterName> znode.

Request

curl -X GET "http://localhost:9000/cluster/configs" -H "accept: application/json"

Response

{
  "allowParticipantAutoJoin": "true",
  "enable.case.insensitive": "false",
  "pinot.broker.enable.query.limit.override": "false",
  "default.hyperloglog.log2m": "8"
}

POST /cluster/configs

Post new configs to cluster. These will get stored in the same znode as above i.e. CONFIGS/CLUSTER/<clusterName>. These properties are appended to the existing properties if keys are new, else they will be updated if key already exists.

Request

Response

DELETE /cluster/configs

Delete a cluster config.

Request

Response

GET /cluster/info

Gets cluster related info, such as cluster name

Request

Response

Health

GET /health

Check controller health. Status are OK or WebApplicationException with ServiceUnavailable and message

Request

Response

Leader

GET /leader/tables

Gets the leader resource map, which shows the tables that are mapped to each leader.

Request

Response

GET /leader/tables/<tableName>

Gets the leaders for the specific table

Request

Response

Table

GET /debug/tables/<tableName>

Debug information for the table, which includes metadata and error status about segments, ingestion, servers and brokers of the table

Request

Response

Was this helpful?