... | ... | @@ -2,7 +2,7 @@ All tables in the PostgreSQL database that serve as a basis for generating most |
|
|
|
|
|
The REST API is generated automatically using the powerful [[http://postgrest.org][PostgREST]] API server. This tools exposes all database tables and views in a flat set of /API endpoints/ – all routes are just one-level deep.
|
|
|
|
|
|
The root endpoint of CZ.NIC statistics is https://stats.adam.nic.cz.
|
|
|
The root endpoint of CZ.NIC statistics is https://stats.nic.cz.
|
|
|
|
|
|
Some endpoints are protected and require authenticated access. See [[API-Tokens]] for details.
|
|
|
|
... | ... | @@ -19,7 +19,7 @@ The REST API endpoints can be queried using standard HTTP methods, primarily ~GE |
|
|
When using the [[https://curl.se/][curl]] tool, this translates to the following command:
|
|
|
|
|
|
#+begin_src sh :results output :export both
|
|
|
curl -X GET "https://stats.adam.nic.cz:443/fred_domains"
|
|
|
curl -X GET "https://stats.nic.cz:443/fred_domains"
|
|
|
#+end_src
|
|
|
|
|
|
Queries can be modified via query string parameters. A selection of important parameters is given below.
|
... | ... | @@ -72,8 +72,8 @@ It is also possible to select returned record members that correspond to columns |
|
|
|
|
|
* OpenAPI/Swagger
|
|
|
|
|
|
PostgREST also generates a description of the REST API using the [[https://swagger.io/specification][OpenAPI]] language. It is served from the [[https://stats.adam.nic.cz][root endpoint]].
|
|
|
PostgREST also generates a description of the REST API using the [[https://swagger.io/specification][OpenAPI]] language. It is served from the [[https://stats.nic.cz][root endpoint]].
|
|
|
|
|
|
A more attractive representation of the OpenAPI specification is the so-called Swagger UI, available from https://stats.adam.nic.cz/swagger. This web interface lists all available endpoints and corresponding query parameters.
|
|
|
A more attractive representation of the OpenAPI specification is the so-called Swagger UI, available from https://stats.nic.cz/swagger. This web interface lists all available endpoints and corresponding query parameters.
|
|
|
|
|
|
REST API queries can also be executed directly from the Swagger UI. To do so, click on an endpoint and then on the *Try it out*. After specifying parameters in the web form, the query can be run using the *Execute* bar. To avoid excessively long responses, it is recommended to set at least the ~limit~ parameter to a reasonable number. |