apiaxle-api v1.15.1
ApiAxle
A free, locally hosted API management solution. A proxy for your api, statistics for your api & a powerful api of its own.
There are three components which make up the Api Axle system:
The proxy
$ npm install apiaxle-proxy
This is the aspect of the system which does the actual proxying. It sits in front of your API and does the authentication, key checking, queries per day/second checking. This is the bit you want if you want anything. More detail on the main site.
The API
$ npm install apiaxle-api
This is the (optional) API for managing users, keys and endpoints. Once installed, run it with:
$ apiaxle-api
The REPL
$ npm install apiaxle-repl
A way to administer your ApiAxle installation via a command line. Once installed, run it with:
$ apiaxle
You then get a prompt where you can type help
to find out more.
The base libs
This is a set of libraries which is required for the above components.
Installation
Check the main site for more detailed installation instructions.
Build
Docker
Docker image
This repository is auto-built and published as apiaxle/apiaxle.
NOTE: If using this via Docker Compose, use the version 2 syntax for your docker-compose.yml file.
Dockerfiles
This project uses two Dockerfile
s, one for production usage named Dockerfile
,
and a second for development of ApiAxle itself, named Dockerfile-development
.
Docker Compose is configured to build the development version for you, see
below for examples.
Environment Variables
Environment variables can be used to configure NODE_ENV
, REDIS_HOST
,
REDIS_PORT
, API_NAME_REGEX
and DEBUG_MODE
. Below are defaults for production:
NODE_ENV
=production
REDIS_HOST
=redis
REDIS_PORT
=6379
API_NAME_REGEX
=^(.+?)\\.api\\.
(extra backslash required for JSON)DEBUG_MODE
=false
Start services
docker-compose up -d redis
docker-compose up -d api
docker-compose up -d proxy
Run repl
docker-compose run repl
Run tests
docker-compose run repl test
Enter container
docker-compose run --entrypoint sh repl
Example adding an api and key:
api acme create endPoint='localhost:8000'
key 1234 create
api acme linkkey 1234
Example curl:
curl localhost:3000?api_key=1234 -H 'Host: acme.api.localhost'
8 years ago
8 years ago
8 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago