Metaregistrar EPP documentation

Welcome to the Metaregistrar EPP documentation. This documentation is for the new EPP interface released in 2016.

About EPP

The EPP protocol is used by registries all around the world as standard for creating, updating and deleting domain names.

The protocol makes use of 3 types of objects, and combines them with 5 actions.


  • Domain objects contain information about domain names
  • Contact objects contain information about the contacts that are associated with domain names, like the registrant, the Admin-contact or the technical contact
  • Host objects contain nameserver information

Additional commands

  • DNS commands Create, modify or delete entries in the DNS of Metaregistrar
  • SSL comamnds Request or renew SSL certificates via the Metaregistrar services


  • Check performs a check if a domain, contact or host object exists. Use it to verfiy if you can register a certain domain name, or to check if a host- or contact object exists before using it in a domain.
  • Create makes the desired object
  • Delete removes it again. Contact and Host objects may only be deleted if they are not associated any more with Domain objects.
  • Info get all attributes associated with an object
  • Update change attributed associated with an object
  • Renew Only available for domain objects: Renew a domain name, move the expiration date further into the future
  • Transfer Only available for domain objects: hosts and contacts cannot be transferred
  • Undelete Only available for domain objects: Undelete a domain name that was previously deleted

In addition to this, EPP contains a few commands that are not immediately associated with the objects mentioned above.

  • Login Identifies you to the system and starts a session
  • Logout Logs you out, ends the session and closes the connection
  • Poll Queries for messages / events that have happened
  • Hello Checks the status of the service and the connection

EPP Result codes

The result codes from EPP are always 4 digits with the following meaning:

  • 1st digit 1 or 2. 1 means command successful, 2 means command failed
  • 2nd digit 0-5, 0=protocol problem, 1=implementation-specific problem, 2=security issue, 3=data management problem, 4=server system problem, 5=connection problem
  • 3rd digit and 4th digit More detail why the response went bad

Worth mentioning is that

response code 1000 means: command completed succesfully,

but 1001 means: command succesful, but there is one action pending.

The result of that pending action will come in later via a poll message.

A detailed list of result codes and their meanings can be found here

Please also note the information about EPP transaction IDs