Skip to content

Latest commit

 

History

History
144 lines (115 loc) · 7.33 KB

File metadata and controls

144 lines (115 loc) · 7.33 KB

Documentation

This directory contains comprehensive documentation for the ad-blocking repository.

Quick Links

Document Description
Why Validation Matters 🔒 Start Here - Understand why security validation is essential
Getting Started Installation and first steps
Configuration Reference Complete configuration schema
Docker Guide Docker development environment
Compiler Comparison Compare TypeScript, .NET, Python, Rust compilers
Release Guide Creating releases with automatic binary builds

Security Documentation

Document Description
Why Validation Matters User-friendly explanation of validation and security (everyone should read this!)
Runtime Enforcement Technical details on runtime validation enforcement
Validation Enforcement CI/CD enforcement mechanisms
Security Policy Security vulnerability reporting

Contents

Guides

Guide Description
Getting Started Installation, prerequisites, and quick start
@jk-com/adblock-compiler Guide Core compilation package with CI/CD examples
Docker Guide Using Docker for development
Configuration Reference Full configuration schema documentation
Compiler Comparison Feature comparison of all compilers
Release Guide Creating releases with automatic binary builds
API Client Usage Guide AdGuard DNS API client usage (C# examples)
API Client Examples Code examples with helper classes
ConsoleUI Architecture Console UI design documentation

API Reference (api/)

Auto-generated API documentation for the AdGuard DNS API Client (v1.11).

API Endpoints

API Class Description
AccountApi Account limits and information
AuthenticationApi OAuth token generation
DevicesApi Device management (CRUD)
DNSServersApi DNS server profile management
DedicatedIPAddressesApi Dedicated IPv4 management
FilterListsApi Filter list retrieval
QueryLogApi Query log operations
StatisticsApi DNS query statistics
WebServicesApi Web services for blocking

Data Models

Model Description
AccessTokenResponse OAuth token response
AccessTokenErrorResponse OAuth error response
AccountLimits Account usage limits
Device Device information
DeviceCreate Device creation request
DeviceUpdate Device update request
DNSServer DNS server profile
DNSServerCreate DNS server creation request
DedicatedIPv4Address Dedicated IPv4 address
ErrorResponse API error response
FilterList Filter list information
Limit Usage limit details
QueryLogResponse Query log data
TimeQueriesStatsList Time-based statistics
WebService Web service for blocking

Project Documentation

Main README Files

Project Location
Repository Overview README.md
.NET API Client src/adguard-api-dotnet/README.md
TypeScript API Client src/adguard-api-typescript/README.md
Rust API Client src/adguard-api-rust/README.md
.NET Compiler src/rules-compiler-dotnet/README.md
Python Compiler src/rules-compiler-python/README.md
Rust Compiler src/rules-compiler-rust/README.md
Shell Scripts src/shell/README.md

Development

Document Location
Claude Code Instructions CLAUDE.md
Copilot Instructions .github/copilot-instructions.md
Security Policy SECURITY.md
Release Guide release-guide.md

API Endpoints Reference

All URIs are relative to https://api.adguard-dns.io

Class Method HTTP Request Description
AccountApi GetAccountLimits GET /oapi/v1/account/limits Gets account limits
AuthenticationApi AccessToken POST /oapi/v1/oauth_token Generates tokens
DNSServersApi CreateDNSServer POST /oapi/v1/dns_servers Creates DNS server
DNSServersApi ListDNSServers GET /oapi/v1/dns_servers Lists DNS servers
DedicatedIPAddressesApi AllocateDedicatedIPv4Address POST /oapi/v1/dedicated_addresses/ipv4 Allocates IPv4
DedicatedIPAddressesApi ListDedicatedIPv4Addresses GET /oapi/v1/dedicated_addresses/ipv4 Lists IPv4 addresses
DevicesApi CreateDevice POST /oapi/v1/devices Creates device
DevicesApi GetDevice GET /oapi/v1/devices/{device_id} Gets device
DevicesApi ListDevices GET /oapi/v1/devices Lists devices
DevicesApi RemoveDevice DELETE /oapi/v1/devices/{device_id} Removes device
DevicesApi UpdateDevice PUT /oapi/v1/devices/{device_id} Updates device
FilterListsApi ListFilterLists GET /oapi/v1/filter_lists Gets filter lists
QueryLogApi ClearQueryLog DELETE /oapi/v1/query_log Clears query log
QueryLogApi GetQueryLog GET /oapi/v1/query_log Gets query log
StatisticsApi GetTimeQueriesStats GET /oapi/v1/stats/time Gets statistics
WebServicesApi ListWebServices GET /oapi/v1/web_services Lists web services

Authentication

ApiKey

  • Type: API key
  • API key parameter name: Authorization
  • Location: HTTP header

AuthToken

  • Type: Bearer Authentication

External Resources