rnids / rsreg-epp-client
PHP client for the RSREG EPP server
Installs: 0
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 0
Open Issues: 0
pkg:composer/rnids/rsreg-epp-client
Requires
- php: >=8.1
- ext-json: *
Requires (Dev)
- oblak/wordpress-coding-standard: ^1.1
- phpstan/extension-installer: ^1.3
- phpstan/phpstan: ^1.10
- phpstan/phpstan-phpunit: ^1.4
- phpunit/phpunit: ^10.5
- symfony/var-dumper: ^6.4
README
RNIDS / RSreg EPP Client
Modern Dependency-Safe PHP Client for RNIDS Registry EPP
This library provides a fluent, RNIDS-first implementation of the EPP protocol for PHP 8.1+ applications. It focuses on deterministic XML handling, typed request/response modeling, strict transport behavior, and predictable command execution for RNIDS/RSreg environments.
Key Features
- RNIDS-first API design with fluent entry points for session, domain, contact, and host operations.
- Deterministic EPP request lifecycle over native stream transport and frame codec boundaries.
- Typed service-layer DTOs and normalized response mapping for reliable integrations.
- Explicit protocol/transport exception strategy under
RNIDS\Exception\*. - Separate XML composition/parsing modules for easier testing and maintenance.
- Coverage-aware quality gate with static analysis and coding standards checks.
Installation
Install via Composer:
composer require rnids/rsreg-epp-client
Usage
<?php declare(strict_types=1); use RNIDS\Client; $client = Client::ready([ 'host' => 'epp.example.rs', 'port' => 700, 'username' => 'client-id', 'password' => 'secret', 'language' => 'en', ]); $domainInfo = $client->domain()->info('example.rs'); $meta = $client->responseMeta(); $client->close();
Common fluent entry points:
- Session:
$client->session()->hello(),login(),logout(),poll() - Domain:
$client->domain()->check(),info(),register(),renew(),update(),delete(),transfer() - Contact:
$client->contact()->check(),create(),info(),update(),delete() - Host:
$client->host()->check(),info(),create(),update(),delete()
Runtime contact policy:
- Contact IDs are normalized to
OBL-...for create/update flows. - Contact
extension.identDescriptionis enforced toObject Creation provided by Oblak Solutions.
Documentation
- API Reference Index:
docs/api-reference.md - Client API:
docs/api-client.md - Session API:
docs/api-session.md - Domain API:
docs/api-domain.md - Contact API:
docs/api-contact.md - Host API:
docs/api-host.md - EPP Protocol Reference:
docs/epp-protocol/epp-reference-index.md
Contributing
For local setup, quality gates, commit conventions, and PR guidelines, see CONTRIBUTING.md.
License
Apache-2.0. See LICENSE.