Tags

From TLDinfo
Jump to: navigation, search

Contents

Introduction

Tags can be created any way you like an be assigned to Domains and TLD Zones. Our system offers two different types of Tags:

  • TLD Zone Tags: Automatically apply to all domains of a certain TLD Zone.
  • Domain Tags: Must be assigned explicitly to domains.

Tags also show up in your domainlist.csv file, available in your new RRPproxy web interface at "Downloads" -> "My Downloads" Download, or in your old RRPproxy web interface at "Account" -> "FTP".

Internally we're handling Tags with a unique ID, and not with a unique name to allow name changes at a later time. However, the name must be unique for each type.

If an object (e.g. a Domain) is deleted, the Tags are saved so they can be retrieved upon a restore. However, this only applies if respective Tags have not been deleted in the meantime.

Multiple Tags can be stated in query commands and work as logical conjunction. The response lists the intersection, i.e. all objects assigned to all Tags stated in the query command.

Important: All objects you would like to tag, like Domains, need to be in your account, i.e. you cannot assign Tags to objects not managed inside your account.

As a logical consequence, Tags will be removed from objects when they leave your account, for example when a Domain is transferred out of your account. Directly affected commands are TransferDomain and PushObject. When executed successfully, the Domain looses all Tag assignments.

How it works

Tags can currently be created for and assigned to Domains and TLD Zones. The simple approach is:

  1. Create a Tag
  2. Assign a Tag to an object
  3. Use the Tags!

Tags can be used for many purposes and they have been integrated in several commands.

Domain Tags

Domain Tags can be assigned directly to Domains using AddTag an will show up in responses of various commands. Also, Domain Tags will show up in the domainlist.csv file in your FTP area. Domain Tags can also be assigned using AddDomain and ModifyDomain, even if the respective Tags don't exist yet. If a Tag doesn't exist, it will be created. In case a Tag can not be created (e.g. because of invalid or too many characters), this Tag will be ignored and the command response will show an error: property[error][X]

In case a Tag not assigned to a certain Domain shall be removed from this Domain, it will be simply ignored without throwing an error.

TLD Zone Tags

Of course you can create new Tags for TLD Zones and thus you can set up a single Tag for a whole bunch of TLDs, making the management a bit easier. And these Tags for TLD Zones - both default Tags and individually created - automatically apply to all Domains of the respective TLD Zones, i.e. these do not need to be added to single Domains explicitly.

Our system offers default Tags for TLD Zones which automatically apply to all Domains of the respective TLD Zones. Those Tags can be recognised easily as they all start with DEFAULT_ and cannot be deleted or modified.

For example using

Command=QueryDomainlist
ZoneTag0=DEFAULT_GENERIC

lists all Domains of generic TLDs.

TLD Zone Tags can be applied for inactive TLD Zones as well. Default Tags can exist for inactive zones as well.

Important: Only valid Zones will work, i.e. only those that exist in the Metaregistry.

Default Tags

Default Tags can be used for Domains and TLD Zones, as well as template using the parameter COPY when using AddTag.

Important: Tag names starting with DEFAULT_ are reserved for Default Tags.

Default Tag List
DEFAULT_ADULT
DEFAULT_BRAND
DEFAULT_CENTRALNIC
DEFAULT_COMMERCE
DEFAULT_COMPANY
DEFAULT_COMPUTER
DEFAULT_CULTURE
DEFAULT_EDUCATION
DEFAULT_ENVIRONMENT
DEFAULT_FAMILY
DEFAULT_FASHION
DEFAULT_FINANCIAL
DEFAULT_FOOD
DEFAULT_GENERIC
DEFAULT_GEOGRAPHIC
DEFAULT_GEOGRAPHIC/AFRICA
DEFAULT_GEOGRAPHIC/AMERICA
DEFAULT_GEOGRAPHIC/ASIA
DEFAULT_GEOGRAPHIC/AUSTRALIA
DEFAULT_GEOGRAPHIC/EUROPE
DEFAULT_GEOGRAPHIC/MIDDLEEAST
DEFAULT_GEOGRAPHIC/OCEANIA
DEFAULT_GEOGRAPHIC/SOUTHAMERICA
DEFAULT_HEALTH
DEFAULT_IDN/
DEFAULT_IDN/ARABIC
DEFAULT_IDN/CHINESE
DEFAULT_IDN/CYRILLIC
DEFAULT_IDN/DEVANAGARI
DEFAULT_IDN/HEBREW
DEFAULT_IDN/JAPANESE
DEFAULT_IDN/THAI
DEFAULT_INTEREST
DEFAULT_LIFESTYLE
DEFAULT_MEDIA
DEFAULT_OTHER
DEFAULT_POLITICS
DEFAULT_PUBLICITY
DEFAULT_REGIONAL
DEFAULT_RELIGION
DEFAULT_SPORT
DEFAULT_TECHNOLOGY
DEFAULT_THIRDLEVEL
DEFAULT_VEHICLE

Technical Specification for Tags

  • maximum length 64 characters
  • Zone Tags cannot start with "DEFAULT_"
  • Tags cannot have the name "0" (number zero)
  • 100 Tags maximum per Domain
  • no limitation for Tag Zones per TLD/zone Tag since default groups can be large
  • all special and unicode characters can be used for Tags.
  • The ACL group for Tag commands is TOOLS. So if you want to grant access to Tag commands to users of your RRPproxy account, the group TOOLS must be activated for them.

Additional Parameters and Responses for Commands

Important: Tags can not be assigned using TransferDomain, since transfers are often not in real-time.

Parameters for Query Commands

Example parameters:

...
ZoneTag0=
...
ZoneTag4095=
...
DomainTag0=
...
DomainTag4095=
...

Responses for StatusDomain, StatusDomain and GetZoneInfo

The following API commands now additionally respond with property[domaintag][0-X]=

GetZoneInfo now additionally responds with property[tag][0-X]=

AddDomain

AddDomain now supports DOMAINTAG[0-4095]= for the direct assignment of Tags during the registration request.

Example parameters:

[[AddDomain|AddDomain]]
DomainTag0=
DomainTagN=
- or -
AddDomainTag0=
AddDomainTagN=

ModifyDomain

ModifyDomain now supports DOMAINTAG[0-4095]= for direct assignment of Tags during the registration request along with ADDDOMAINTAG[0-4095]= and DELDOMAINTAG[0-4095]=.

Example parameters:

[[ModifyDomain|ModifyDomain]]
DomainTag0=
DomainTagN=
- or -
AddDomainTag0=
AddDomainTagN=
DelDomainTag0=
DelDomainTagN=

CheckDomains with TLD Zone Tags

The command CheckDomains now also works with TLD Zone Tags and checks for a given search string. The search string can be stated without any TLD.
The response automatically displays results for TLDs that belong to a certain TLD Zone Tag. Of course default and individual TLD Zone Tags can be combined.

Example:

Command=CheckDomains
Domain0=cooldomainname
ZONETAG=DEFAULT_GENERIC
[RESPONSE]
code = 200
description = Command completed successfully
queuetime = 0
runtime = 10.36
property[column][0] = domain
property[column][1] = domaincheck
property[column][2] = domainchecktime
property[count][0] = 15
property[domain][0] = cooldomainname.biz
property[domaincheck][0] = 210 Domain name available
property[domainchecktime][0] = 0.001
property[domain][1] = cooldomainname.com
property[domaincheck][1] = 210 Domain name available
property[domainchecktime][1] = 0.001
property[domain][2] = cooldomainname.info
property[domaincheck][2] = 210 Domain name available
property[domainchecktime][2] = 0.001
...
property[first][0] = 0
property[last][0] = 14
property[limit][0] = 32
property[total][0] = 16
EOF

Using Query Commands with Tags

We integrated Tag support for Several Query Commands:

QueryDomainList
QueryAccountingList
QueryDomainExpireList
QueryDomainHistoryList
QueryDomainListByContact
QueryDomainRenewList
QueryRegisteredPremiumDomainList
QueryTrusteeDomainList
QueryUpcomingAccountingList

Using QueryDomainList and Tags to narrow down the list of Domains

To narrow down a query using tags the parameters DomainTag[x] and ZoneTag[x] can be used. You can query for up to 4096 Tags (from 0 to 4095) of each type and work as logical conjunction. The response lists the intersection, i.e. all objects assigned to all Tags stated in the query command.

For example:

[COMMAND]
command=QueryDomainlist
ZoneTag0=DEFAULT_GENERIC
[RESPONSE]
code = 200
description = Command completed successfully
runtime = 0.009
property[column][0] = domain
property[count][0] = 2
property[domain][0] = first-domain1.com
property[domain][1] = first-domain2.com
property[first][0] = 0
property[last][0] = 1
property[limit][0] = 1000
property[total][0] = 2

Sub-Reseller Management with TLD Zone Tags

Tags can be used to activate TLD zones for Sub-Resellers, during the creation (AddRegistrar) and modification (ModifyRegistrar) of a Sub-Reseller account.

Important: Tags are not inherited to Sub-Reseller accounts!

AddRegistrar with TLD Zone Tags

Command=AddRegistrar
...
ZoneTag0=
...
ZoneTag4095=
...

Important: Only TLD Zones currently assigned to the respective Tag will be activated. Changes to the used Tag at a later time will not be included, i.e. the activated TLD Zones will not changed.

ModifyRegistrar with TLD Zone Tags

Command=ModifyRegistrar
AddZoneTag0=
...
AddZoneTag4095=
...
DelZoneTag0=
...
DelZoneTag4095=

Deleting of ZoneTags containing Zones that are not activated for the respective Sub-Reseller account, will be ignored.

Important: Only TLD Zones currently assigned to the respective Tag will be activated. Changes to the used Tag at a later time will not be included, i.e. the activated TLD Zones will not changed.

API Commands for Tag Management

  • AddTag: Creates a new Tag
  • ModifyTag: Can be used to modify a Tag, e.g. its name, assigned domains and/or TLD zones, etc.
  • DeleteTag: Deletes a Tag including all assignments to objects using this Tag.
  • StatusTag: Shows basic information about the Tag and the number of assigned objects.
  • QueryTagList: Shows a list of all created Tags and offers various search possibilities. Parameter SHOWDEFAULTZONETAGS=1 only shows all default zone Tags.
Command=QueryTagList
ShowDefaultZoneTags=0|1 (default>

API: AddTag

The AddTag command allows you to create new tags for either domains or zones. The tag name must be unique together with the type and supports all characters, but is limited to 64 characters.

[COMMAND]

(required)
COMMAND     = AddTag
TYPE        = DOMAIN|ZONE
TAG         = [TEXT]
(optional)
COPY		= [TEXT]
DESCRIPTION = [TEXT]
ZONE#       = [ZONE]
DOMAIN#     = [DOMAIN]
EOF
[RESPONSE]

(required)
code                                             = [INT]
description                                      = [TEXT]
EOF

Description

TAG: The name of the tag. Can contain unicode characters. Is unique per type.

TYPE: The type of the tag.

COPY: Create a a copy of an existing Tag for that type.

DOMAIN#: Assign to the domain tag a list of owned domain names on creation of the tag.

ZONE#: Assign to the zone tag a list of existing zones on creation of the tag.

API: ModifyTag

The ModifyTag command allows you to change the name of an existing tag, change the description or to directly add/remove objects associated with that tag. If the tag does not exist yet, it will be created.

Important: You can only modify your own Tags. _DEFAULT Tags can not be modified.

[COMMAND]

(required)
COMMAND     = ModifyTag
TYPE        = DOMAIN|ZONE
TAG         = [TEXT]
(optional)
NEWTAG		= [TEXT]
DESCRIPTION = [TEXT]
ZONE#       = [ZONE]
DOMAIN#     = [DOMAIN]
ADDZONE#    = [ZONE]
ADDDOMAIN#  = [DOMAIN]
DELZONE#    = [ZONE]
DELDOMAIN#  = [DOMAIN]

EOF
[RESPONSE]

(required)
code                                             = [INT]
description                                      = [TEXT]
EOF

Description

TAG: The name of the tag.

NEWTAG: The name of the tag. Can contain unicode characters. Is unique per type.

TYPE: The type of the tag.

DOMAIN#: Assign to the domain tag a specific list of owned domain names.

ZONE#: Assign to the zone tag a specific list of existing zones.

ADDDOMAIN#: Add to the domain tag a list of owned domain names.

ADDZONE#: Add to the zone tag a list of existing zones.

DELETEDOMAIN#: Delete from the domain tag a list of associated domain names.

DELETEZONE#: Delete from the zone tag a list of associated zones.

API: DeleteTag

The DeleteTag command allows you to delete a tag and will remove all associations with that tag from objects.

[COMMAND]

(required)
COMMAND     = DeleteTag
TYPE        = DOMAIN|ZONE
TAG         = [TEXT]
(optional)
EOF
[RESPONSE]

(required)
code                                             = [INT]
description                                      = [TEXT]
EOF

Description

TAG: The name of the tag.

TYPE: The type of the tag.


API: StatusTag

The StatusTag command returns all information from a specific tag.

[COMMAND]

(required)
COMMAND     = StatusTAg
TYPE        = DOMAIN|ZONE
TAG         = [TEXT]

EOF
[RESPONSE]

(required)
code                     = [INT]
description              = [TEXT]
property[tag][0]         = [TEXT]
property[type][0]		 = DOMAIN|ZONE
property[description][0] = [TEXT]
property[domain][#]      = [DOMAIN]
property[zone][#]        = [ZONE]
EOF

Description

TAG: The name of the tag.

TYPE: The type of the tag.

property[domain][#]: Lists all associated domains of a domain tag

property[zone][#]: Lists all associated zones of a zone tag

API: QueryTagList

The QueryTagList returns a list of all existing tags. It also can show all default tags available in the system.

[COMMAND]

(required)
COMMAND     			= QueryTagList
(optional)
TYPE       				= DOMAIN|ZONE
TAG       			  	= [PATTERN]
SHOWDEFAULTZONETAGS     = 0|1
GENERATELIST			= 0|1
SENDLISTEMAIL			= [EMAILS]	
WIDE					= 0|1
ORDER					= ASC|DESC
ORDERBY					= TAG|TYPE
FIRST					= [INT]
LIMIT					= [INT]

EOF
[RESPONSE]

(required)
code                     = [INT]
description              = [TEXT]
property[tag][#]         = [TEXT]
property[type][#]		 = DOMAIN|ZONE
property[description][#] = [TEXT]
property[objectcount][#] = [INT]
property[count][0]       = [INT]
property[first][0]       = [INT]
property[last][0]        = [INT]
property[limit][0]       = [INT]
property[total][0]       = [INT]
EOF

Description

TAG: Patternsearch for the name of the tag.

TYPE: Show only tags with this type.

SHOWDEFAULTZONETAGS: Shows a list of all default zone tags provided by the system.


API Command Examples

Adding Tags using AddTag

Add a new Tag for Domains

[COMMAND]
command=AddTag
type=DOMAIN
tag=tertius
description=number three

Add a new Tag for Domains and assign it to Domains using AddTag

[COMMAND]
command=AddTag
type=DOMAIN
tag=primus
description=number one
domain0=first-domain1.com
domain1=first-domain2.com
domain2=first-domain3.com
domain3=first-domain4.com
domain4=first-domain5.com
domain5=first-domain6.com
domain6=first-domain7.com
domain7=first-domain8.com
domain8=first-domain9.com

Add a new Tag for a TLD Zone and assign it to TLD Zones using AddTag

[COMMAND]
command=AddTag
type=ZONE
tag=rich
description=oh so wealthy
zone0=rich
zone1=luxury
zone2=diamonds

Add a new TLD Zone Tag using AddTag and COPY from an existing TLD Zone Tag

During creation of a new TLD Zone Tag you copy from an existing TLD Zone Tag or default Tag (always starting with DEFAULT_). The new TLD Zone Tag will contain all zones copied from the existing Tag.

Important
When using the parameter COPY additional TLD Zones can not be added.
COPY is only working with TLD Zone Tags.
[COMMAND]
command=AddTag
type=ZONE
Copy=ExistingTag 

Modifying Tags using ModifyTag

Assign a Tag to some Domains using ModifyTag

[COMMAND]
command=ModifyTag
type=DOMAIN
tag=secundus
adddomain0=second-domain1.com
adddomain1=second-domain2.com
adddomain2=second-domain3.com
adddomain3=second-domain4.com
adddomain4=second-domain5.com
adddomain5=second-domain6.com

Remove a Tag from some Domains using ModifyTag

[COMMAND]
command=ModifyTag
type=DOMAIN
tag=primus
deldomain0=first-domain1.com
deldomain1=first-domain2.com
deldomain2=first-domain3.com
deldomain3=first-domain4.com
deldomain4=first-domain5.com
deldomain5=first-domain6.com

Assign and remove a Tag to/from some TLD Zones using ModifyTag

[COMMAND]
command=ModifyTag
type=ZONE
tag=famous
addzone0=com
addzone1=net
addzone2=org
delzone3=info
Personal tools
Namespaces

Variants
Actions
Resources
new gTLDs
Products
New Users
General
Tools