.. http:post:: /api/v1/servers/:server_id/zones
- Creates a new domain. The client body must contain a :json:schema:`Zone`.
+ Creates a new domain. The client body must contain a :json:schema:`RecursorZone`.
:query server_id: The name of the server
Returns zone information.
:query server_id: The name of the server
- :query zone_id: The id number of the :json:schema:`Zone`
+ :query zone_id: The id number of the :json:schema:`RecursorZone`
.. http:delete:: /api/v1/servers/:server_id/zones/:zone_id
Deletes this zone, all attached metadata and rrsets.
:query server_id: The name of the server
- :query zone_id: The id number of the :json:schema:`Zone`
+ :query zone_id: The id number of the :json:schema:`RecursorZone`
$id: "PDNS Recursor webserver"
definitions:
+ Record:
+ $id: RecursorRecord
+ title: Record
+ type: object
+ description: This represents a DNS Record in a zone
+ properties:
+ name:
+ type: string
+ description: "The owner name of the record"
+ type:
+ type: string
+ description: "Type of this record (e.g. “A”, “PTR”, “MX”)"
+ ttl:
+ type: integer
+ description: "DNS TTL of the record, in seconds"
+ content:
+ type: string
+ description: "The content of this record"
+
+ Zone:
+ $id: RecursorZone
+ title: Zone
+ type: object
+ properties:
+ id:
+ type: string
+ description: Opaque zone id (string), assigned by the server, should not be interpreted by the application. Guaranteed to be safe for embedding in URLs.
+ name:
+ type: string
+ description: Name of the zone (e.g. "example.com.") MUST have a trailing dot
+ type:
+ type: string
+ description: Set to "Zone"
+ url:
+ type: string
+ description: API endpoint for this zone
+ kind:
+ enum:
+ - Native
+ - Forwarded
+ description: Zone kind, one of "Native", "Forwarded".
+ records:
+ type: array
+ items:
+ $ref: "RecursorRecord"
+ description: Records in this zone
+ servers:
+ type: array
+ items:
+ type: string
+ description: For zones of type "Forwarded", addresses to send the queries to
+ recursion_desired:
+ type: bool
+ description: For zones of type "Forwarded", Whether or not the RD bit should be set in the query
+ notify_allowed:
+ type: bool
+ description: For zones of type "Forwarded", Whether or not to permit incoming NOTIFY to wipe cache for the domain
+
OpenTelemetryTraceCondition:
$id: OpenTelemetryTraceCondition
title: OpenTelemetryTraceCondition
Comments are per-RRset.
-.. json:schema:: Zone
+.. json:schema:: RecursorZone
+ :title: Zone
To properly process new zones, the following conditions must
be true:
* For configuration changes to work :ref:`setting-include-dir` and :ref:`setting-api-config-dir` should have the same value for old-style settings.
When using YAML settings :ref:`setting-yaml-recursor.include_dir` and :ref:`setting-yaml-webservice.api_dir` must have a different value.
-.. include:: ../common/api/zone.rst
+.. json:schema:: RecursorRecord
+ :title: Record
if python.found()
json_schema = custom_target(
'recursor-json-schema',
- input: product_source_dir / docs_dir / 'http-api' / 'authoritative-api-swagger.yaml',
output: 'rec-schema-generated.stamp',
command: [
python,
product_source_dir / docs_dir / 'generate-jsonschema.py',
- '@INPUT@',
+ product_source_dir / docs_dir / 'http-api' / 'authoritative-api-swagger.yaml',
product_source_dir / docs_dir / 'http-api' / 'recursor-generated-schema.yaml',
'--stampfile',
'@OUTPUT@'