aerospike-rest-gateway
aerospike-rest-gateway copied to clipboard
REST client for the Aerospike database
Aerospike REST Gateway
The Aerospike REST gateway provides a server which translates Restful API requests into messages to an Aerospike Cluster.
It can be used as a bridge between applications written in languages without an existing Aerospike Client library, or as a pluggable component in a pre-existing architecture.
API Documentation
Swagger UI API documentation for this project can be found here Aerospike REST Gateway API Documentation.
Getting Started blog posts
Prerequisites
- Java 17 or later for REST Gateway 2.0 and newer. Java 8 or later for REST Gateway 1.11 and earlier.
- Aerospike Server version 4.9+
Installation
For instructions on installing the Rest Gateway see Installation and Configuration .
Build
- Executable Jar
make build
This will place the file in the build/libs directory.
- Docker Image
docker build -t aerospike-rest-gateway .
Running
See Installation and Configuration for installation, configuration and running manual.
Authentication
Use Basic access authentication to enable multi-user
tenancy in the Aerospike REST gateway.
Please note that only Aerospike Enterprise Edition supports
the security features.
For example, having the default admin:admin credentials, send the Authorization: Basic YWRtaW46YWRtaW4= header with
the request to make an authenticated query.
Formats
The Aerospike REST gateway allows communication utilizing JSON and MessagePack formats. For more information about
how to specify the format, and recommended usages of each, see Data Formats.
Expressions
The Aerospike REST gateway 1.7.0 and newer supports filter expressions added in server 5.6. The now deprecated predicate expressions are supported in REST gateway 1.11.0 and older.
Note: The DSL used to define predicate expressions can also be used to define filter expressions.
See Expressions for more information.
Generate Servers/Clients
Swagger tools such as Swagger Codegen and Swagger Editor allow you to automatically generate a server/client that integrates with Aerospike REST Gateway in a variety of different languages.
Generate Servers/Clients using the Swagger Editor
- Go to Swagger Editor.
- Import the Aerospike REST Client openapi.json file.
- Click on Generate Server/Generate Client and choose the desired language/framework.
- A .zip file that contains all the necessary files for a server/client will be downloaded.
- Note: when generating a server the implementations/logic of the APIs are missing since the server generator only generates stub methods (to reduce boilerplate server code).
License
Licensed under the Apache 2.0 License.