Bunny.net DNSZones API

The DNSZones API from Bunny.net — 6 operation(s) for dnszones.

OpenAPI Specification

bunny-net-dnszones-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Bunny.net Core Platform APIKeys DNSZones API
  description: 'Best-effort OpenAPI 3.1 description of the Bunny.net Core Platform REST API for managing

    Pull Zones, Storage Zones, DNS Zones, Stream video libraries, statistics, billing,

    purge, API keys, and reference data.


    Authentication uses the `AccessKey` header containing your account API key issued from

    the Bunny.net dashboard.

    '
  version: '1.0'
  contact:
    name: Bunny.net
    url: https://docs.bunny.net/reference/bunnynet-api-overview
servers:
- url: https://api.bunny.net
  description: Bunny.net Core Platform API
security:
- accessKeyAuth: []
tags:
- name: DNSZones
paths:
  /dnszone:
    get:
      tags:
      - DNSZones
      summary: List DNS zones
      operationId: listDnsZones
      responses:
        '200':
          description: DNS zones
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/DnsZone'
    post:
      tags:
      - DNSZones
      summary: Add DNS zone
      operationId: addDnsZone
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - Domain
              properties:
                Domain:
                  type: string
      responses:
        '201':
          description: DNS zone
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DnsZone'
  /dnszone/{id}:
    parameters:
    - $ref: '#/components/parameters/IdPath'
    get:
      tags:
      - DNSZones
      summary: Get DNS zone
      operationId: getDnsZone
      responses:
        '200':
          description: DNS zone
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DnsZone'
    post:
      tags:
      - DNSZones
      summary: Update DNS zone
      operationId: updateDnsZone
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        '204':
          description: Updated
    delete:
      tags:
      - DNSZones
      summary: Delete DNS zone
      operationId: deleteDnsZone
      responses:
        '204':
          description: Deleted
  /dnszone/{id}/records:
    parameters:
    - $ref: '#/components/parameters/IdPath'
    post:
      tags:
      - DNSZones
      summary: Add DNS record
      operationId: addDnsRecord
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DnsRecord'
      responses:
        '201':
          description: DNS record
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DnsRecord'
  /dnszone/{id}/records/{recordId}:
    parameters:
    - $ref: '#/components/parameters/IdPath'
    - name: recordId
      in: path
      required: true
      schema:
        type: integer
    post:
      tags:
      - DNSZones
      summary: Update DNS record
      operationId: updateDnsRecord
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DnsRecord'
      responses:
        '204':
          description: Updated
    delete:
      tags:
      - DNSZones
      summary: Delete DNS record
      operationId: deleteDnsRecord
      responses:
        '204':
          description: Deleted
  /dnszone/{id}/enableDNSSEC:
    parameters:
    - $ref: '#/components/parameters/IdPath'
    post:
      tags:
      - DNSZones
      summary: Enable DNSSEC
      operationId: enableDnssec
      responses:
        '204':
          description: Enabled
  /dnszone/{id}/disableDNSSEC:
    parameters:
    - $ref: '#/components/parameters/IdPath'
    post:
      tags:
      - DNSZones
      summary: Disable DNSSEC
      operationId: disableDnssec
      responses:
        '204':
          description: Disabled
components:
  parameters:
    IdPath:
      name: id
      in: path
      required: true
      schema:
        type: integer
  schemas:
    DnsZone:
      type: object
      properties:
        Id:
          type: integer
        Domain:
          type: string
        Records:
          type: array
          items:
            $ref: '#/components/schemas/DnsRecord'
        DateModified:
          type: string
          format: date-time
        DateCreated:
          type: string
          format: date-time
        NameserversDetected:
          type: boolean
        CustomNameserversEnabled:
          type: boolean
        Nameserver1:
          type: string
        Nameserver2:
          type: string
    DnsRecord:
      type: object
      properties:
        Id:
          type: integer
        Type:
          type: integer
          description: 0=A, 1=AAAA, 2=CNAME, 3=TXT, 4=MX, 5=Redirect, 6=Flatten, 7=PullZone, 8=SRV, 9=CAA, 10=PTR, 11=Script, 12=NS
        Ttl:
          type: integer
        Value:
          type: string
        Name:
          type: string
        Weight:
          type: integer
        Priority:
          type: integer
        Port:
          type: integer
        Flags:
          type: integer
        Tag:
          type: string
        Accelerated:
          type: boolean
        AcceleratedPullZoneId:
          type: integer
        Disabled:
          type: boolean
  securitySchemes:
    accessKeyAuth:
      type: apiKey
      in: header
      name: AccessKey
      description: API key issued from the Bunny.net dashboard.