вот скрипт, пока что удалось нарыть, и сделать.. показывает свободный или же занятый домен..... не догоню как форму сделать, чтобы можно из формы домен вводить Код: <? class RegApiException extends Exception { const UNSPACIFIED_FORMAT = 1; } class RegApi { const INPUT_FORMAT_OBJECT = 1; const INPUT_FORMAT_ARRAY = 2; public $domain = ''; public $username = 'test'; public $password = 'test'; private $_url = 'https://api.reg.ru/api/regru2/domain/check'; private $_rgInputFormats = array( self::INPUT_FORMAT_OBJECT => 'json', self::INPUT_FORMAT_ARRAY => 'json' ); /** * @param string $domain * @param string $username * @param string $password */ public function __construct( $domain = '', $username = 'test', $password = 'test' ) { $this->domain = $domain; $this->username = $username; $this->password = $password; } /** * @param int $format * @return mixed|string * @throws RegApiException */ public function getData($format = self::INPUT_FORMAT_OBJECT) { if(!array_key_exists($format, $this->_rgInputFormats)) { throw new RegApiException( 'Неопределённый формат!', RegApiException::UNSPACIFIED_FORMAT ); } $inputData = array('domains' => array( array('dname' => $this->domain) )); $params = array( 'username' => $this->username, 'password' => $this->password, 'input_format' => $this->_rgInputFormats[$format], 'input_data' => json_encode($inputData) ); $data = file_get_contents( $this->_url . '?' . http_build_query($params) ); switch($format) { case(self::INPUT_FORMAT_OBJECT) : $data = json_decode($data); break; case(self::INPUT_FORMAT_ARRAY) : $data = json_decode($data, true); break; } return $data; } } $regApi = new RegApi('ya.ru'); $rgData = $regApi->getData(RegApi::INPUT_FORMAT_OBJECT); foreach($rgData->answer->domains as $domainData) { echo $domainData->dname, ', ', $domainData->result, '<br>'; } ?>