TreeQL is an improved REST protocol. You could also say that it is a pragmatic GraphQL. It allows to request related entities, limit results to specific records and columns and has built-in documentation. With these it has the same benefits over REST that GraphQL has. Some of the benefits TreeQL has over GraphQL are:

  • It uses database reflection, so you do not need to define a schema.
  • It uses REST with HTTP verbs and is compatible with HTTP caches.
  • It is documented in the OpenAPI 3 specification (formerly Swagger).
  • It has handlers that allow you to easily implement a security model.

Another benefit of TreeQL is that it will feel familiar for most people. TreeQL is basically a standardized REST API with some features added to it.