Skip to Main Content

Nominet

Log in to the online service
Log in to Online Services
Skip Primary Navigation
Skip All Secondary and Tertiary Navigation

Print this page  | Contact Us

The BULK operation is used to view or modify many domain names matching a given filter. It is a flexible method for maintaining large numbers of existing domain names in a single request.

Introduction

  • Send to the address auto-bulk@nic.uk.
  • Use the subject line TAG Bulk (replace TAG with your tag name in capitals)
  • Make sure the e-mail is PGP-signed with a registered PGP key.
  • Use one of the templates linked to below to construct the message body.

Operation Templates

The bulk operation is capable of a several different functions. This page gives details of common features, however details for specific types of operations are available from the following pages:

  • Bulk Select: Returns chosen fields for a list of domain names matching given filter.
  • Bulk Modify: Applies a given changeset to all domain names matching given filter.
  • Bulk Release: Releases to specified tag all domain names matching given filter.
  • Bulk Replace Nameserver: Replace all instances of one nameserver with another for all domain names matching given filter.

Bulk operations can only affect domain names on the requesting tag.

Syntax Overview

Only one bulk request per e-mail is permitted. A well-formed bulk request consists of the following lines, in any order:

Malformed requests will cause a V109 Invalid bulk operation error; where possible this will include a more detailed error message and give the line number of the error in the original request, e.g.

V109 Invalid bulk operation, error at line 3: mismatched bracket.

Dry-run

Bulk operations can also be executed as a Dry Run, which will return details of the outcome of the operation but will commit no changes to the register.

Filter Clauses

Filter clauses choose which domain names are affected by the operation, by providing criteria which domains must match. If no filter clause is given, the bulk operation will affect all domain names on the requesting tag.

  • Filter clauses have a syntax similar to WHERE-clauses in SQL. A single filter clause consists of a filter field, a comparison operator, and a single-quote-delimited 'rvalue'. For example
    filter: key = 'example.co.uk'

    will restrict the bulk operation to affect only the domain name 'example.co.uk'.

  • Permitted comparison operators are =, >, <, >=, <=, like, in. Date fields are in the format YYYYMMDD. For example
    filter: expiry > '20080101'

    will restrict the bulk operation to affect all domain names on the requesting tag with an expiry date later than 01 Jan 2008.

  • The LIKE comparison operator can be used to allow matches with the wildcard '%', which will match any number of characters or no character. For example
    filter: key like 'exam%e.co.uk'

    will restrict the bulk operation to affect all domain names on the requesting tag with names matching the search string 'exam%e.co.uk'; 'example.co.uk' will match, as will 'exame.co.uk', but 'exampl.co.uk' will not.

  • Multiple filter clauses can be combined by a logical AND or (inclusive) logical OR. For example
    filter: account-name = 'Mr Example' OR account-name = 'Mrs Example'

    will restrict the bulk operation to affect only domain names on the requesting tag with either account name 'Mr Example' or account name 'Mrs Example', whereas

    filter: account-name = 'Ms Example' AND notes = 'Example notes'

    will restrict the bulk operation to affect only domain names on the requesting tag with account name 'Ms Example' and notes field matching 'Example notes'.

  • The logical NOT can be used to negate a clause:
    filter: not key = 'example.co.uk'

    will restrict the bulk operation to affect all domain names on the requesting tag except for 'example.co.uk'.

  • Clauses can be grouped together using ( and ). For example
    filter: key like 'exam%e.co.uk' and not (account-name = 'Mr Example' OR account-name = 'Mrs Example')
  • will restrict the bulk operation to affect all domain names on the requesting tag with names matching the search string 'exam%e.co.uk' which have neither account name 'Mr Example' nor account name 'Mrs Example'.

  • Nameservers can be filtered in several ways. By specifying a list of 1-10 nameservers; matching domain names will have all of these nameservers and no others. For example
    filter: nservers = ['ns0.example.co.uk', 'ns1.example.co.uk']

    will restrict the bulk operation to affect all domain names on the requesting tag with 'ns0.example.co.uk' and 'ns1.example.co.uk' and no other nameservers.

    filter: nservers = 'NULL'

    will restrict the bulk operation to affect all domain names on the requesting tag with no nameservers.

    filter: 'ns0.example.co.uk' in nservers

    will restrict the bulk operation to affect all domain names on the requesting tag with nameserver 'ns0.example.co.uk' or any other (or no other) nameservers.

Filter fields

This is a table of the fields which can be used in filter clauses.

Filter Field Comparison operators Other notes
key =, LIKE  
created =, >, <, >=, <= 'rvalue' must be a valid YYYYMMDD date.
expiry =, >, <, >=, <= 'rvalue' must be a valid YYYYMMDD date.
account-name =, LIKE  
trad-name =, LIKE  
opt-out =  
type =, LIKE  
co-no =, LIKE  
email =, LIKE Attempts to match any e-mail address on the account.
account-id =  
notes =, LIKE  
first-bill =  
recur-bill =  
auto-bill =  
next-bill =  
nservers = Takes nameserver list as 'rvalue'; e.g. ['ns1.co.uk', 'ns2.co.uk'].
nservers in Takes nameserver as 'lvalue'; e.g. 'ns1.co.uk' in nservers.

Update Clauses

Update clauses specify the changeset to be applied to the domain names matching the filter clause. A bulk request must contain either an update or a select clause.

  • A single update clause consists of an update field = 'rvalue' statement. For example
    update: notes = 'Example notes'

    will modify all domain names matching the filter clause to have a notes field of 'Examples notes'.

  • Multiple update clauses can be combined in a comma-delimited list. For example
    update: first-bill = 'th', recur-bill = 'th'

    will modify all domain names matching the filter clause to have first-bill and next-bill fields with value 'th'.

Update fields

This is a table of the fields which can be used in update clauses.

Update Field Other Notes
account-id  
notes  
first-bill  
recur-bill  
auto-bill  
next-bill  
registrar-tag  
nservers Takes nameserver list as 'rvalue'; e.g. ['ns1.co.uk', 'ns2.co.uk'].
nserver Takes two nameservers as 'lvalue' and 'rvalue'; e.g. 'ns1.co.uk' = 'ns2.co.uk'. Must be the only update clause.

Select Clauses

Select clauses specify which fields are to be returned for the domain names matching the filter clause. A bulk request must contain either an update or a select clause.

Select fields

This is a list of the fields which can be used in select clauses.

Select Field
account-id
notes
first-bill
recur-bill
auto-bill
next-bill
registrar-tag
nservers
key
created
expiry
changed
account-name
trad-name
opt-out
type
co-no
a1-id
a1-name
a1-phone
a1-mobile
a1-email
a2-id
a2-name
a2-phone
a2-mobile
a2-email
a3-id
a3-name
a3-phone
a3-mobile
a3-email
addr
locality
city
county
postcode
country
 
 
 

© Nominet UK 1996-2010  |  Accessibility  |  Site Map  |  Feeds  |  Glossary  |  Privacy Policy  |  Terms of Use