DNS Provider API

This section provides the details of the application programming interface (API) for the DNS Provider included with the Microsoft® Provisioning System (MPS) in the . This document describes the procedures of the DNS Provider along with their input parameters and return values. In addition, example Extensible Markup Language (XML) requests are provided in addition to a typical XML response that the provisioning system returns after the request is submitted to MPS and tasks are completed.

Developers should use this API document as a reference when creating XML requests that initiate provisioning tasks to manipulate Domain Name System (DNS) functionality.


The DNS Provider allows for the configuration of DNS servers using methods that.


The DNS Provider uses the new Microsoft Provisioning Framework (MPF) .NET Provider Base Class under Microsoft Visual Studio® 2003. The DNS Provider is written in C# and runs using the System.Management namespace of the .NET 1.1 Framework to communicate with the Microsoft Windows Management Instrumentation (WMI) DNS Provider on the Microsoft Windows ServerT 2003 operating system.

The Remoting Server object is implemented as a server-activated, by-reference, single-call object. Also, the DNS Provider assembly has an associated configuration file that the service provider can edit to set the port, activation type, and protocol. The configuration defaults to port 80, activation type binary, and protocol HTTP

Public Method Description
DNS Provider::CreateDNSZone Allows you to create a requested zone on a specified server. This method does not update any secondary servers.
DNS Provider::ModifyDNSZone Allows you to modify a requested zone on a specified server.
DNS Provider::DeleteDNSZone Allows you to delete a requested zone on a specified server.
DNS Provider::GetDNSZone Allows you to return all data from a requested zone as a tree of properties, including operational status, Start of Authority (SOA) record information, and all resource record data.
DNS Provider::PauseDNSZone Allows you to temporarily remove a requested zone on a specified server from service.
DNS Provider::ResumeDNSZone Allows you to restore a requested zone to service on a specified server, if it was paused. If it was not paused, the operation succeeds anyway.
DNS Provider::ReloadDNSZone Allows you to reload a requested zone on a specified server from the zone files on the primary server.
DNS Provider::RefreshDNSZone Allows you to push out the requested zone to all defined secondary zones, if the specified server is authoritative for the zone.
DNS Provider::CreateResourceRecord Allows you to create an resource record on a specified server regardless of whether it is primary for the zone.
DNS Provider::ModifyResourceRecord Allows you to modify the specified resource record according to the properties present in the property tree.
DNS Provider::DeleteResourceRecord Allows you to remove a specified and existing resource record from a zone.
DNS Provider::GetResourceRecord Allows you to return all data from a requested resource record as a tree of properties.
 Applies To