badguardhome/openapi
Ainar Garipov 046ec13fdc Pull request: all: reformat yaml, add yaml formatting standard
Merge in DNS/adguard-home from 2297-yaml to master

Closes #2297.

Squashed commit of the following:

commit 85df3a38a14adb1965944ddf14b197c12a213057
Author: Ainar Garipov <A.Garipov@AdGuard.COM>
Date:   Fri Nov 20 17:52:22 2020 +0300

    all: improve HACKING.md

commit 079acdfe41cc12ab6aa13d7c28dcbf7b7b3c8380
Merge: 202ea078e 3045da174
Author: Ainar Garipov <A.Garipov@AdGuard.COM>
Date:   Fri Nov 20 17:50:34 2020 +0300

    Merge branch 'master' into 2297-yaml

commit 202ea078e29d88871a32ac6e668dfae6db802bab
Author: Ainar Garipov <A.Garipov@AdGuard.COM>
Date:   Thu Nov 12 20:25:42 2020 +0300

    all: reformat yaml, add yaml formatting standard
2020-11-20 18:06:07 +03:00
..
.gitignore Added swagger UI scripts 2018-12-28 18:26:14 +03:00
CHANGELOG.md * openapi: update changelog 2020-07-23 19:25:42 +03:00
index.html *(documentation): removed unnecessary dependencies 2020-05-21 00:04:41 +03:00
openapi.yaml Pull request: all: reformat yaml, add yaml formatting standard 2020-11-20 18:06:07 +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.