🔐 EPP Protocol API

Extensible Provisioning Protocol (EPP) interface for domain management. RFC 5730-5734 compliant implementation.

📋 Overview

The Unregistry EPP API provides programmatic access to domain registration, management, and monitoring services. Our implementation follows RFC standards and supports all major EPP operations.

🚀 Base URL

https://unregistry.com/api/v2/epp/

🔑 Authentication

All EPP commands require authentication. Use your API key in the X-API-Key header:

X-API-Key: your_api_key_here

📡 EPP Commands

HELLO Command

POST /api/v2/epp/hello

Server greeting and capability information.

{ "command": "hello" }

LOGIN Command

POST /api/v2/epp/login

Authenticate with EPP credentials.

{ "command": "login", "clID": "your_registrar_id", "pw": "your_password" }

CHECK Command

POST /api/v2/epp/check

Check domain availability.

{ "command": "check", "domains": ["example.app.onl", "test.org.onl"] }

INFO Command

POST /api/v2/epp/info

Retrieve domain information.

{ "command": "info", "domain": "example.app.onl" }

CREATE Command

POST /api/v2/epp/create

Register a new domain.

{ "command": "create", "domain": "newdomain.app.onl", "period": {"unit": "y", "value": 1}, "registrant": "contact_id", "contacts": { "admin": "admin_contact_id", "tech": "tech_contact_id" } }

UPDATE Command

POST /api/v2/epp/update

Update domain information.

{ "command": "update", "domain": "example.app.onl", "chg": { "registrant": "new_contact_id", "authInfo": {"pw": "new_auth_code"} } }

DELETE Command

POST /api/v2/epp/delete

Delete a domain.

{ "command": "delete", "domain": "example.app.onl" }

RENEW Command

POST /api/v2/epp/renew

Renew a domain registration.

{ "command": "renew", "domain": "example.app.onl", "curExpDate": "2025-12-31", "period": {"unit": "y", "value": 1} }

📊 Response Codes

1000 - Success

Command completed successfully

1500 - Logout

Command completed successfully; ending session

2000 - Unknown Command

Unknown command

2001 - Command Syntax

Command syntax error

2003 - Required Parameter

Required parameter missing

2200 - Authentication

Authentication error

2302 - Object Exists

Object exists

2303 - Object Not Found

Object does not exist

🔧 Testing

Test the EPP API with curl:

curl -X POST https://unregistry.com/api/v2/epp/hello \ -H "X-API-Key: your_api_key" \ -H "Content-Type: application/json" \ -d '{"command":"hello"}'

📝 Example Response

{ "success": true, "greeting": { "svID": "Unregistry EPP Server v2.0", "svDate": "2025-08-09T12:00:00Z", "svcMenu": { "version": "1.0", "lang": ["en"], "objURI": [ "urn:ietf:params:xml:ns:domain-1.0", "urn:ietf:params:xml:ns:contact-1.0" ] } } }