badguardhome/openapi
Ainar Garipov 460aa1a5ba Pull request: home: imp client http api, docs
Updates #3075.

Squashed commit of the following:

commit c88fd2e24a19474bce736e5b6af7e094b43be390
Author: Ainar Garipov <A.Garipov@AdGuard.COM>
Date:   Thu May 6 16:09:49 2021 +0300

    home: imp code, docs

commit 8ae7d9001927d56394d2177c22fe114d98f01732
Author: Ainar Garipov <A.Garipov@AdGuard.COM>
Date:   Thu May 6 15:35:49 2021 +0300

    home: imp client http api, docs
2021-05-06 16:41:33 +03:00
..
.gitignore Added swagger UI scripts 2018-12-28 18:26:14 +03:00
CHANGELOG.md Pull request: home: imp client http api, docs 2021-05-06 16:41:33 +03:00
index.html *(documentation): removed unnecessary dependencies 2020-05-21 00:04:41 +03:00
openapi.yaml Pull request: home: imp client http api, docs 2021-05-06 16:41:33 +03:00
package.json *(documentation): removed unnecessary dependencies 2020-05-21 00:04:41 +03:00
README.md Pull request: * home, openapi: improve docs and responses 2020-11-05 13:59:57 +03:00
yarn.lock *(documentation): removed unnecessary dependencies 2020-05-21 00:04:41 +03:00

AdGuard Home OpenAPI

We are using OpenAPI specification to generate AdGuard Home API specification.

How To Edit The API Spec

The easiest way would be to use Swagger Editor and just copy/paste the YAML file there.

How To Read The API Doc

  1. yarn install
  2. yarn start
  3. Open http://localhost:4000/

Changelog

Here we keep track of all non-compatible changes that are being made.

Authentication

If AdGuard Home's web user is password-protected, a web client must use authentication mechanism when sending requests to server. Basic access authentication is the most simple method - a client must pass Authorization HTTP header along with all requests:

Authorization: Basic BASE64_DATA

Where BASE64_DATA is base64-encoded data for username:password string.