AdGuardHome/openapi
Eugene Burkov f603c21b55 Pull request: 2826 auth block
Merge in DNS/adguard-home from 2826-auth-block to master

Updates #2826.

Squashed commit of the following:

commit ae87360379270012869ad2bc4e528e07eb9af91e
Author: Eugene Burkov <e.burkov@adguard.com>
Date:   Tue Apr 27 15:35:49 2021 +0300

    home: fix mistake

commit dfa2ab05e9a8e70ac1bec36c4eb8ef3b02283b92
Author: Eugene Burkov <e.burkov@adguard.com>
Date:   Tue Apr 27 15:31:53 2021 +0300

    home: imp code

commit ff4220d3c3d92ae604e92a0c5c274d9527350d99
Author: Eugene Burkov <e.burkov@adguard.com>
Date:   Tue Apr 27 15:14:20 2021 +0300

    home: imp authratelimiter

commit c73a407d8652d64957e35046dbae7168aa45202f
Author: Eugene Burkov <e.burkov@adguard.com>
Date:   Tue Apr 27 14:20:17 2021 +0300

    home: fix authratelimiter

commit 724db4380928b055f9995006cf421cbe9c5363e7
Author: Eugene Burkov <e.burkov@adguard.com>
Date:   Fri Apr 23 12:15:48 2021 +0300

    home: introduce auth blocker
2021-04-27 18:56:32 +03:00
..
.gitignore Added swagger UI scripts 2018-12-28 18:26:14 +03:00
CHANGELOG.md Pull request: 2826 auth block 2021-04-27 18:56:32 +03:00
index.html *(documentation): removed unnecessary dependencies 2020-05-21 00:04:41 +03:00
openapi.yaml Pull request: 2826 auth block 2021-04-27 18:56:32 +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.