Skip to content

marxlnfcs/nest-powerdns

Repository files navigation

NestJS PowerDNS Client

This packages implements the @marxlnfcs/powerdns package as NestJS module.

npm NPM Snyk Vulnerabilities for npm package Website

Documentation

@marxlnfcs/powerdns

Installation

npm i @marxlnfcs/nest-powerdns @marxlnfcs/powerdns

Usage

AppModule

@Module({
    imports: [
        PowerDNSModule.forRoot({
            name: 'string', // default: "default"
            baseUrl: 'http://localhost:8081',
            apiKey: 'apikey',
        }),
        PowerDNSModule.forRootAsync({
            name: 'string', // default: "default"
            useFactory: (configService: ConfigService) => ({
                baseUrl: configService.baseUrl,
                apiKey: configService.apiKey
            }),
            inject: [ConfigService]
        })
    ]
})
export class AppModule {}

AppService

@Injectable()
export class AppService {

    constructor(
    
        // for connections with name default name "default" only
        private pdnsService: PowerDNSService,
        private pdnsAdvancedService: PowerDNSAdvancedService,
        
        // for all connections
        @InjectPDNS('default') // name is optional. Default: "default"
        private pdnsService: PowerDNSService,
        
        @InjectPDNSAdvanced('default') // name is optional. Default: "default"
        private pdnsAdvancedService: PowerDNSAdvancedService,
        
    ){}
   
    getServers(){
        return this.pdnsAdvancedService.getServers();
    }
   
    getDomains(){
        return this.pdnsService.getDomains();
    }
   
}

Options

PowerDNS Options

Option Description Example Default
baseUrl * URL to PowerDNS-API http://localhost:8081/api/v1 None
apiKey * Apikey for the PowerDNS-API apikey None
timeout HTTP-Timeout 5000 5000
proxy Proxy settings for the HTTP-Client. See "Proxy settings"
rejectUnauthorized Defines if the HTTP-Client should allow selfsigned SSL certificates false false

Proxy options

If your application needs a proxy to communicate with the PowerDNS-API, you can define it with the proxy settings. You can either set the url or host, port and protocol.

Option Description Example Default
url Full URL of the proxy server. http://localhost:8080/ None
host Hostname of the proxy server. localhost None
port Port of the proxy server. 8080 None
protocol HTTP-Protocol of the proxy server. https http
auth.username Username to authenticate with. None
auth.password Password to authenticate with. None

About

NestJS-Module for the @marxlnfcs/powerdns package

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published