Сценарий из mcp-everything. Актуально на 2026-10-24.
Развернуть новый сайт клиента на хостинге: каталог сайта, домен, привязка.
AUTH='login=<логин>&passwd=<API-пароль>&output_format=json&input_format=json'
curl "https://api.beget.com/api/site/add?$AUTH" --data-urlencode 'input_data={"name": "shop.ru"}' -G
curl "https://api.beget.com/api/domain/addVirtual?$AUTH" --data-urlencode 'input_data={"hostname": "shop", "zone_id": 1}' -G
curl "https://api.beget.com/api/site/linkDomain?$AUTH" --data-urlencode 'input_data={"domain_id": <ID домена>, "site_id": <ID сайта>}' -G
https://api.beget.comhttps://api.beget.com/api/раздел/метод?параметрыТип: Другое
В каждом запросе передаются login (логин аккаунта) и passwd (API-пароль, URL-кодированный).
https://api.beget.com/api/user/getAccountInfo?login=user&passwd=mypassword
В result: id, zone, price, price_renew, is_idn, min_period, max_period и др.
| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
login |
query | string | да | Логин |
passwd |
query | string | да | API-пароль |
Возвращает ID домена.
| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
input_format |
query | string | да | json |
input_data.hostname |
query | string | да | Имя домена без зоны |
input_data.zone_id |
query | integer | да | ID зоны |
Пример запроса:
https://api.beget.com/api/domain/addVirtual?login=userlogin&passwd=password&input_format=json&output_format=json&input_data={"hostname":"domain","zone_id": 1}
Полный путь сайта — name/public_html.
| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
input_format |
query | string | да | json |
input_data.name |
query | string | да | Имя директории сайта, например site.ru |
Сайт начнёт открываться через 5–10 минут.
| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
input_format |
query | string | да | json |
input_data.domain_id |
query | integer | да | ID домена |
input_data.site_id |
query | integer | да | ID сайта |
input_format: plain (по умолчанию) или json; при json все аргументы метода передаются в input_data JSON-строкой, URL-кодированной.{"status": "success", "answer": ...}; результат метода — в answer.result. Ошибка метода приходит внутри успешного ответа: answer.status = error, массив answer.errors.stat (статистика), mail, ftp, cron; методы domain/getSubdomainList, deleteSubdomain, getDirectives, addDirectives, site/delete, freeze, unfreeze, mysql/addAccess, dropDb, backup/getLog и др.Если этого недостаточно — официальная документация: https://beget.com/ru/kb/api/beget-api Вся интеграция одним документом: https://mcp-everything.ru/integrations/beget.md