Публичный GraphQL API позволяет регистрировать и продлевать домены, а также проверять доступность доменных имен.
Для выполнения запросов используйте публичный GraphQL API доменов.
Через API можно зарегистрировать домен с использованием существующего шаблона контакта или создать новый контакт при регистрации.
Примеры запросов:
.uz с использованием существующего шаблона контакта — domain-registration-template.txt;.uz для физического лица — нерезидента Узбекистана — domain-registration-nonresident-person.txt;.uz для физического лица — резидента Узбекистана — domain-registration-resident-person.txt;.uz для юридического лица — нерезидента Узбекистана — domain-registration-nonresident-legal-entity.txt;.uz для юридического лица — резидента Узбекистана — domain-registration-resident-legal-entity.txt.domainName — обязательное поле. Имя домена для регистрации. Доменное имя может содержать латиницу, кириллицу, цифры и символ тире (последнее только не первым и не последним значением). Смешение алфавитов не принимается.years — обязательное поле. Период регистрации домена, для большинства зон от 1 года до 10 лет.nameservers — список неймсерверов. Минимальное значение неймсерверов — 2. Максимальное значение неймсерверов зависит от зоны. В большинстве случаев максимальное значение — 15.privacyProtection — скрытие контактных данных. Булевое значение. Если значение не передано, то по умолчанию будет передано true, т.е. скрыто.registrant — объект с полями для создания контакта в качестве регистранта. С детальным описанием полей контакта можно ознакомиться ниже. Если данные регистранта не указаны, то необходимо заполнить поле registrantTemplateHandle. Нельзя указывать оба значения registrant и registrantTemplateHandle, необходимо выбрать только одно значение в качестве регистранта.registrantTemplateHandle — идентификационный номер (ID) шаблона контакта для регистрации в качестве регистранта. Можно использовать уже созданный шаблон контактов. В консоли PS домены на странице Шаблоны контактов можно выбрать необходимый контакт. Либо запросить через GraphQL contactTemplates → list.admin — объект с полями для создания контакта в качестве администратора. С детальным описанием полей контакта можно ознакомиться ниже. Если данные администратора не указаны, то можно заполнить поле adminTemplateHandle. Необязательное поле, если не передано значение администратора, то будет использован контакт регистранта.adminTemplateHandle — ID шаблона контакта для регистрации в качестве администратора. Можно использовать уже созданный шаблон контактов. В консоли PS домены на странице Шаблоны контактов можно выбрать необходимый контакт. Либо запросить через GraphQL contactTemplates → list.domainName — зарегистрированное доменное имя;years — период регистрации домена;creationDate — дата создания домена;expirationDate — дата истечения домена;price — цена регистрации домена;registrantTemplateHandle — ID шаблона контакта регистранта;adminTemplateHandle — ID шаблона контакта администратора;errors — объект ошибки:
code — код ошибки;description — описание;data — детализированная информация в зависимости от ошибки.DOMAIN_ALREADY_EXISTS — домен уже существует и не может быть зарегистрирован. Также может быть добавлено описание, что домен освободится в определенную дату, либо домен является премиальным.WRONG_DOMAIN_NAME — неправильное доменное имя. Также будет добавлено описание ошибки: доменное имя может содержать латиницу, кириллицу и казахский алфавит, цифры и символ тире (последнее только не первым и не последним значением). Смешение алфавитов не принимается.YEARS_LIMIT_VIOLATED — нарушение периода регистрации. Период регистрации домена, для большинства зон от 1 года до 10 лет.MIN_NAMESERVERS — указанное количество неймсерверов меньше минимального значения, которое равно 2.MAX_NAMESERVERS — указанное количество неймсерверов превышает максимальное значение в определенной доменной зоне. В большинстве случаев максимальное значение — 15.NAMESERVER_NOT_EXIST — неймсервер не существует в реестре регистратуры.NAMESERVERS_IS_REQUIRED — не указан список неймсерверов.REGISTRANT_IS_REQUIRED — не указаны данные для регистранта. Необходимо указать объект контакта регистранта либо ID созданного шаблона контакта.REQUIRED_EXTENSION_IS_MISSING — не указаны дополнительные настройки, необходимые для доменной зоны. Например, для доменной зоны kz необходимо указать месторасположение сервера, а также цель.TLD_NOT_AVAILABLE — доменная зона не подключена для авторегистрации домена.REGISTRANT_FIELDS_ARE_MISSING — не указаны обязательные поля для создания контакта регистранта. Детализация приведена в разделе «Поля для создания контакта».ADMIN_FIELDS_ARE_MISSING — не указаны обязательные поля для создания контакта администратора. Детализация приведена в разделе «Поля для создания контакта».REGISTRANT_TEMPLATE_NOT_FOUND — несуществующий шаблон контакта. Шаблон контакта регистранта не найден по указанному ID в поле registrantTemplateHandle.ADMIN_TEMPLATE_NOT_FOUND — несуществующий шаблон контакта. Шаблон контакта администратора не найден по указанному ID в поле adminTemplateHandle.WRONG_PARAMETERS — нельзя указывать оба значения registrant и registrantTemplateHandle, необходимо выбрать только одно значение в качестве регистранта. Нельзя указывать оба значения admin и adminTemplateHandle, необходимо выбрать только одно значение в качестве администратора.INSUFFICIENT_ACCOUNT_BALANCE — недостаточно средств на балансе для регистрации домена.UNEXPECTED_ERROR — непредвиденная ошибка с раскрытием дополнительной информации в описании или дате.Примеры ответов API:
type — обязательное поле. Определяет либо физическое лицо (физ лицо), либо юридическое (юр лицо).residence — обязательное поле. Двухбуквенный код страны, где проживает контактное лицо.person_firstName — если указан тип физическое лицо, то поле является обязательным. Указывается имя контакта.person_lastName — если указан тип физическое лицо, то поле является обязательным. Указывается фамилия контакта.person_patronymic — если указан тип физическое лицо, то поле является опциональным. Указывается отчество контакта.person_firstNameLatin — если указан тип физическое лицо, то поле является обязательным. Указывается имя контакта на латинице (английская транслитерация).person_lastNameLatin — если указан тип физическое лицо, то поле является обязательным. Указывается фамилия контакта на латинице (английская транслитерация).person_patronymicLatin — если указан тип физическое лицо, то поле является опциональным. Указывается отчество контакта на латинице (английская транслитерация).person_birthDate — если указан тип физическое лицо, то поле является опциональным. Указывается дата рождения контакта в формате DD.MM.YYYY.taxId — если указан тип физическое лицо, доменная зона uz и резидентство Узбекистан, то поле является обязательным. Указывается идентификационный номер налогоплательщика.legalEntity_name — если указан тип юридическое лицо, то поле является обязательным. Указывается полное наименование организации.legalEntity_role — если указан тип юридическое лицо, то является обязательным. Для доменной зоны uz указывается ФИО контакта.legalEntity_nameLatin — если указан тип юридическое лицо, то поле является обязательным. Указывается полное наименование организации на латинице (английская транслитерация).legalEntity_roleLatin — если указан тип юридическое лицо, то является обязательным. Указывается ФИО контакта в организации на латинице (английская транслитерация).contact_email — обязательное поле. Адрес электронной почты контакта.contact_phone — обязательное поле. Номер телефона в международном формате +7.7273888231. Включая знак +, код страны, код города и местный телефон.contact_fax — опциональное поле. Номер факса в международном формате +7.7273888231. Включая знак +, код страны, код города и местный телефон.address_street — обязательное поле. Список адресов, где физ лицо проживает, либо где зарегистрировано юр лицо. Адрес может включать в себя название улицы, номер дома, корпус или номер квартиры.address_city — обязательное поле. Название города контакта.address_state — обязательное поле. Название области контакта.address_streetLatin — обязательное поле. Список адресов, где физ лицо проживает, либо где зарегистрировано юр лицо. Адрес может включать в себя название улицы, номер дома, корпус или номер квартиры на латинице (английская транслитерация).address_cityLatin — обязательное поле. Название города контакта на латинице (английская транслитерация).address_stateLatin — обязательное поле. Название области контакта на латинице (английская транслитерация).address_postalCode — обязательное поле. Почтовый индекс адреса контакта.address_countryCode — обязательное поле. Двухбуквенный код страны, где проживает или зарегистрировано контактное лицо.passport_code — если тип физ лицо и доменная зона uz, то поле является обязательным. Указывается серия паспорта.passport_number — если тип физ лицо и доменная зона uz, то поле является обязательным. Указывается номер паспорта.passport_who — если тип физ лицо и доменная зона uz, то поле является обязательным. Указывается наименование органа выдавшего паспорт.passport_whoLatin — если тип физ лицо и доменная зона uz, то поле является обязательным. Указывается наименование органа выдавшего паспорт на латинице (английская транслитерация).passport_issueDate — если тип физ лицо, поле является опциональным. Указывается дата выдачи паспорта в формате DD.MM.YYYY.passport_expirationDate — если тип физ лицо и доменная зона uz, то поле является обязательным. Указывается дата истечения паспорта в формате DD.MM.YYYY.uz_bankName — если тип юр лицо и доменная зона uz, то поле является обязательным. Указывается наименование банка, в котором зарегистрирована организация.uz_bankNameLatin — если тип юр лицо и доменная зона uz, то поле является обязательным. Указывается наименование банка, в котором зарегистрирована организация на латинице (английская транслитерация).uz_bankAccount — если тип юр лицо и доменная зона uz, то поле является обязательным. Указывается реквизиты банка, расчетный счет, на котором зарегистрирована организация.uz_regionCode — если доменная зона uz и резидентство Узбекистан, то поле является обязательным. Выбирается одна из областей Узбекистана или город Ташкент.Пример запроса содержится в файле domain-renewal.txt.
domainName — обязательное поле. Имя домена для продления.years — обязательное поле. Период продления домена, для большинства зон от 1 года до 10 лет.currentExpiryDate — обязательное поле в формате YYYY-mm-dd. Дата истечения домена должна совпадать с данными whois.domainName — зарегистрированное доменное имя;invoiceNum — номер счета;price — цена продления;expirationDate — дата истечения домена;errors — объект ошибки:
code — код ошибки;description — описание;data — детализированная информация в зависимости от ошибки.DOMAIN_NOT_FOUND — домен не существует/не найден в базе.WRONG_EXPIRATION_DATE — неправильная дата истечения домена. Необходимо учитывать также, что дата должна быть в UTC+0. Иначе ошибка при валидации даты.INSUFFICIENT_ACCOUNT_BALANCE — недостаточно средств на балансе для продления домена.UNEXPECTED_ERROR — непредвиденная ошибка.Пример запроса содержится в файле domain-availability-check.txt.
domains — массив названий доменов.domain — доменное имя;tld — доменная зона домена;available — доступность домена (булевое значение: true — доступен, false — недоступен);reason — причина недоступности домена.WRONG_DOMAIN_NAME — неправильное доменное имя. Также будет добавлено описание ошибки: доменное имя может содержать латиницу, кириллицу и казахский алфавит, цифры и символ тире (последнее только не первым и не последним значением). Смешение алфавитов не принимается.TLD_NOT_AVAILABLE — доменная зона не недоступна, либо не подключена для API.DOMAIN_EXISTS — домен уже существует/зарегистрирован.DOMAIN_IS_PREMIUM — домен является премиальным, следует обратиться в ОП.REGISTRY_CHECK_ERROR — произошла непредвиденная ошибка при проверке.Пример ответа содержится в файле domain-availability-response.txt.
