Interface Domain.Service

All Superinterfaces:
Maskable, ResultLimitable, Service
Enclosing class:
Domain

@ApiService("SoftLayer_Dns_Domain")
public static interface Domain.Service
extends Service
SoftLayer customers have the option of hosting DNS domains on the SoftLayer name servers. Individual domains hosted on the SoftLayer name servers are handled through the SoftLayer_Dns_Domain service.

Domain changes are applied automatically by our nameservers, but changes may not be received by the other name servers on the Internet for 72 hours after your change. The SoftLayer_Dns_Domain service does not apply to customers who run their own nameservers on servers purchased from SoftLayer.

SoftLayer provides secondary DNS hosting services if you wish to maintain DNS records on your name server, but have records replicated on SoftLayer's name servers. Use the [[SoftLayer_Dns_Secondary]] service to manage secondary DNS zones and transfers.
See Also:
SoftLayer_Dns_Domain
  • Method Details

    • asAsync

      Description copied from interface: Service
      Get an async version of this service
      Specified by:
      asAsync in interface Service
    • withNewMask

      Domain.Mask withNewMask()
      Description copied from interface: Maskable
      Overwrite the existing mask on this service with a new one and return it
      Specified by:
      withNewMask in interface Maskable
    • withMask

      Domain.Mask withMask()
      Description copied from interface: Maskable
      Use the existing mask on this service or create it if not present
      Specified by:
      withMask in interface Maskable
    • setMask

      void setMask​(Domain.Mask mask)
    • createARecord

      @ApiMethod(instanceRequired=true) AType createARecord​(String host, String data, Long ttl)
      Create an A record on a SoftLayer domain. This is a shortcut method, meant to take the work out of creating a SoftLayer_Dns_Domain_ResourceRecord if you already have a domain record available. createARecord returns the newly created SoftLayer_Dns_Domain_ResourceRecord_AType.
      See Also:
      SoftLayer_Dns_Domain::createARecord
    • createAaaaRecord

      @ApiMethod(instanceRequired=true) AaaaType createAaaaRecord​(String host, String data, Long ttl)
      Create an AAAA record on a SoftLayer domain. This is a shortcut method, meant to take the work out of creating a SoftLayer_Dns_Domain_ResourceRecord if you already have a domain record available. createARecord returns the newly created SoftLayer_Dns_Domain_ResourceRecord_AaaaType.
      See Also:
      SoftLayer_Dns_Domain::createAaaaRecord
    • createCnameRecord

      @ApiMethod(instanceRequired=true) CnameType createCnameRecord​(String host, String data, Long ttl)
      Create a CNAME record on a SoftLayer domain. This is a shortcut method, meant to take the work out of creating a SoftLayer_Dns_Domain_ResourceRecord if you already have a domain record available. createCnameRecord returns the newly created SoftLayer_Dns_Domain_ResourceRecord_CnameType.
      See Also:
      SoftLayer_Dns_Domain::createCnameRecord
    • createMxRecord

      @ApiMethod(instanceRequired=true) MxType createMxRecord​(String host, String data, Long ttl, Long mxPriority)
      Create an MX record on a SoftLayer domain. This is a shortcut method, meant to take the work out of creating a SoftLayer_Dns_Domain_ResourceRecord if you already have a domain record available. MX records are created with a default priority of 10. createMxRecord returns the newly created SoftLayer_Dns_Domain_ResourceRecord_MxType.
      See Also:
      SoftLayer_Dns_Domain::createMxRecord
    • createNsRecord

      @ApiMethod(instanceRequired=true) NsType createNsRecord​(String host, String data, Long ttl)
      Create an NS record on a SoftLayer domain. This is a shortcut method, meant to take the work out of creating a SoftLayer_Dns_Domain_ResourceRecord if you already have a domain record available. createNsRecord returns the newly created SoftLayer_Dns_Domain_ResourceRecord_NsType.
      See Also:
      SoftLayer_Dns_Domain::createNsRecord
    • createObject

      @ApiMethod Domain createObject​(Domain templateObject)
      Create a new domain on the SoftLayer name servers. The SoftLayer_Dns_Domain object passed to this function must have at least one A or AAAA resource record.

      createObject creates a default SOA record with the data:
      * '''host''': "@"
      * '''data''': "ns1.softlayer.com."
      * '''responsible person''': "root.[your domain name]."
      * '''expire''': 604800 seconds
      * '''refresh''': 3600 seconds
      * '''retry''': 300 seconds
      * '''minimum''': 3600 seconds


      If your new domain uses the .de top-level domain then SOA refresh is set to 10000 seconds, retry is set to 1800 seconds, and minimum to 10000 seconds.

      If your domain doesn't contain NS resource records for ns1.softlayer.com or ns2.softlayer.com then ''createObject'' will create them for you.

      ''createObject'' returns a Boolean ''true'' on successful object creation or ''false'' if your domain was unable to be created..
      See Also:
      SoftLayer_Dns_Domain::createObject
    • createObjects

      @ApiMethod List<Domain> createObjects​(List<Domain> templateObjects)
      Create multiple domains on the SoftLayer name servers. Each domain record passed to ''createObjects'' follows the logic in the SoftLayer_Dns_Domain ''createObject'' method.
      See Also:
      SoftLayer_Dns_Domain::createObjects
    • createPtrRecord

      @ApiMethod ResourceRecord createPtrRecord​(String ipAddress, String ptrRecord, Long ttl)
      setPtrRecordForIpAddress() sets a single reverse DNS record for a single IP address and returns the newly created or edited [[SoftLayer_Dns_Domain_ResourceRecord]] record. Currently this method only supports IPv4 addresses and performs no operation when given an IPv6 address.
      See Also:
      SoftLayer_Dns_Domain::createPtrRecord
    • createSpfRecord

      @ApiMethod(instanceRequired=true) SpfType createSpfRecord​(String host, String data, Long ttl)
      Create an SPF record on a SoftLayer domain. This is a shortcut method, meant to take the work out of creating a SoftLayer_Dns_Domain_ResourceRecord if you already have a domain record available. createARecord returns the newly created SoftLayer_Dns_Domain_ResourceRecord_SpfType.
      See Also:
      SoftLayer_Dns_Domain::createSpfRecord
    • createTxtRecord

      @ApiMethod(instanceRequired=true) TxtType createTxtRecord​(String host, String data, Long ttl)
      Create a TXT record on a SoftLayer domain. This is a shortcut method, meant to take the work out of creating a SoftLayer_Dns_Domain_ResourceRecord if you already have a domain record available. createARecord returns the newly created SoftLayer_Dns_Domain_ResourceRecord_TxtType.
      See Also:
      SoftLayer_Dns_Domain::createTxtRecord
    • deleteObject

      @ApiMethod(instanceRequired=true) Boolean deleteObject()
      deleteObject permanently removes a domain and all of it's associated resource records from the softlayer name servers. '''This cannot be undone.''' Be wary of running this method. If you remove a domain in error you will need to re-create it by creating a new SoftLayer_Dns_Domain object.
      See Also:
      SoftLayer_Dns_Domain::deleteObject
    • getByDomainName

      @ApiMethod List<Domain> getByDomainName​(String name)
      Search for [[SoftLayer_Dns_Domain]] records by domain name. getByDomainName() performs an inclusive search for domain records, returning multiple records based on partial name matches. Use this method to locate domain records if you don't have access to their id numbers.
      See Also:
      SoftLayer_Dns_Domain::getByDomainName
    • getObject

      getObject retrieves the SoftLayer_Dns_Domain object whose ID number corresponds to the ID number of the init parameter passed to the SoftLayer_Dns_Domain service. You can only retrieve domains that are assigned to your SoftLayer account.
      See Also:
      SoftLayer_Dns_Domain::getObject
    • getZoneFileContents

      @ApiMethod(instanceRequired=true) String getZoneFileContents()
      Return a SoftLayer hosted domain and resource records' data formatted as zone file.
      See Also:
      SoftLayer_Dns_Domain::getZoneFileContents
    • getAccount

      @ApiMethod(instanceRequired=true) Account getAccount()
      The SoftLayer customer account that owns a domain.
      See Also:
      SoftLayer_Dns_Domain::getAccount
    • getManagedResourceFlag

      @ApiMethod(instanceRequired=true) Boolean getManagedResourceFlag()
      A flag indicating that the dns domain record is a managed resource.
      See Also:
      SoftLayer_Dns_Domain::getManagedResourceFlag
    • getResourceRecords

      @ApiMethod(instanceRequired=true) List<ResourceRecord> getResourceRecords()
      The individual records contained within a domain record. These include but are not limited to A, AAAA, MX, CTYPE, SPF and TXT records.
      See Also:
      SoftLayer_Dns_Domain::getResourceRecords
    • getSecondary

      @ApiMethod(instanceRequired=true) Secondary getSecondary()
      The secondary DNS record that defines this domain as being managed through zone transfers.
      See Also:
      SoftLayer_Dns_Domain::getSecondary
    • getSoaResourceRecord

      @ApiMethod(instanceRequired=true) SoaType getSoaResourceRecord()
      The start of authority (SOA) record contains authoritative and propagation details for a DNS zone. This property is not considered in requests to createObject and editObject.
      See Also:
      SoftLayer_Dns_Domain::getSoaResourceRecord