Firstmail api docs
API Документация
Доступ к панели с помощью запросов к API
Servershttps://firstmail.ltd/api/v1/ - Продакшн сервер
Authorize
Биллинг
Операции с балансом и транзакциями
GET
Получение баланса
Возвращает текущий баланс пользователя и информацию о последнем обновлении
Parameters
Cancel
No parameters
Execute
Responses
CodeDescriptionLinks200Успешный ответ
Media type
application/json
Controls Accept header.
- Example Value
- Schema
{
"success": true,
"data": {
"balance": 1250.5,
"currency": "RUB",
"last_updated": "2026-01-31T20:56:23.806Z"
}
}
No links
GET
История транзакций
Возвращает список финансовых транзакций с возможностью фильтрации и пагинации
Parameters
Cancel
No parameters
Execute
Responses
CodeDescriptionLinks200Список транзакций
Media type
application/json
Controls Accept header.
- Example Value
- Schema
{
"success": true,
"data": [
{
"id": "tx-123",
"amount": 1000,
"currency": "RUB",
"transaction_type": "payment",
"description": "Пополнение баланса",
"status": "completed",
"created_at": "2026-01-31T20:56:23.807Z"
}
]
}
No links
Выделенные серверы
Управление выделенными серверами
GET
Список выделенных серверов
Возвращает список выделенных серверов пользователя
Parameters
Cancel
No parameters
Execute
Responses
CodeDescriptionLinks200Список выделенных серверов
Media type
application/json
Controls Accept header.
- Example Value
- Schema
{
"success": true,
"data": [
{
"id": "ded-123",
"name": "my-dedicated",
"status": "running",
"ip_address": "192.168.1.200",
"location": "moscow",
"specs": {
"cpu": "Intel Xeon E5-2670",
"ram": "32 GB DDR4",
"disk": "1TB NVMe SSD",
"bandwidth": "1Gbps"
}
}
]
}
No links
POST
Заказ выделенного сервера
Создает заказ на новый выделенный сервер
Parameters
Cancel
No parameters
Request body
application/json
- Edit Value
- Schema
Execute
Responses
CodeDescriptionLinks201Выделенный сервер заказан успешно
Media type
application/json
Controls Accept header.
- Example Value
- Schema
{
"success": true,
"data": {
"id": "ded-123",
"name": "my-dedicated",
"status": "running",
"ip_address": "192.168.1.200",
"location": "moscow",
"specs": {
"cpu": "Intel Xeon E5-2670",
"ram": "32 GB DDR4",
"disk": "1TB NVMe SSD",
"bandwidth": "1Gbps"
}
}
}
No links
Домены
Регистрация доменов, массовые заказы и управление статусом
GET
Список доменов
Возвращает список доменов пользователя с информацией о статусе и сроках
Parameters
Cancel
No parameters
Execute
Responses
CodeDescriptionLinks200Список доменов
Media type
application/json
Controls Accept header.
- Example Value
- Schema
{
"success": true,
"data": [
{
"id": "domain-123",
"name": "example.com",
"status": "active",
"expires": "2026-01-31T20:56:23.813Z",
"auto_renew": true,
"dns_managed": true
}
]
}
No links
GET
Статус домена
Получает текущий статус домена и информацию о регистрации
Parameters
Cancel
NameDescriptiondomain_id *
string
(path)
ID домена
Execute
Responses
CodeDescriptionLinks200Статус домена получен успешно
Media type
application/json
Controls Accept header.
- Example Value
- Schema
{
"success": true,
"data": {
"status": "active",
"expires_at": "2026-01-31T20:56:23.815Z",
"registrar_lock": false
}
}
No links
GET
Детальная информация о домене
Возвращает полную информацию о домене, включая DNS-записи и историю транзакций
Parameters
Cancel
NameDescriptiondomainId *
string
(path)
ID домена
Execute
Responses
CodeDescriptionLinks200Данные о домене
Media type
application/json
Controls Accept header.
- Example Value
- Schema
{
"success": true,
"data": {
"id": "domain-123",
"name": "example.com",
"status": "active",
"expires": "2026-01-31T20:56:23.816Z",
"auto_renew": true,
"dns_managed": true
}
}
No links
POST
Заказ домена
Создает заказ на регистрацию нового домена
Parameters
Cancel
No parameters
Request body
application/json
- Edit Value
- Schema
Execute
Responses
CodeDescriptionLinks200Заказ создан успешно
Media type
application/json
Controls Accept header.
- Example Value
- Schema
{
"success": true,
"data": {
"order_id": "string"
}
}
No links
Почтовые операции
Чтение писем по логину и паролю, получение новых сообщений
POST
Получить сообщения по логину и паролю
Возвращает список писем из почтового ящика по логину и паролю
Parameters
Cancel
No parameters
Request body
application/json
- Edit Value
- Schema
Execute
Responses
CodeDescriptionLinks200Список сообщений получен успешно
Media type
application/json
Controls Accept header.
- Example Value
- Schema
{
"success": true,
"data": {
"messages": [
{
"id": "msg-123",
"uid": 1234,
"subject": "Test message",
"from": "sender@example.com",
"to": [
"string"
],
"cc": [
"string"
],
"bcc": [
"string"
],
"date": "2026-01-31T20:56:23.821Z",
"size": 2048,
"flags": [
"string"
],
"is_read": false,
"is_flagged": false,
"body_text": "string",
"body_html": "string",
"headers": {},
"attachments": [
{
"filename": "string",
"size": 0,
"content_type": "string",
"content_id": "string"
}
]
}
],
"total_count": 25,
"unread_count": 5
}
}
No links401Неверный логин или пароль
Media type
application/json
- Example Value
- Schema
{
"success": false,
"error": "Error message",
"details": {}
}
No links
POST
Получить последнее сообщение
Возвращает последнее полученное письмо из почтового ящика
Parameters
Cancel
No parameters
Request body
application/json
- Edit Value
- Schema
Execute
Responses
CodeDescriptionLinks200Последнее сообщение получено успешно
Media type
application/json
Controls Accept header.
- Example Value
- Schema
{
"success": true,
"data": {
"id": "msg-123",
"uid": 1234,
"subject": "Test message",
"from": "sender@example.com",
"to": [
"string"
],
"cc": [
"string"
],
"bcc": [
"string"
],
"date": "2026-01-31T20:56:23.824Z",
"size": 2048,
"flags": [
"string"
],
"is_read": false,
"is_flagged": false,
"body_text": "string",
"body_html": "string",
"headers": {},
"attachments": [
{
"filename": "string",
"size": 0,
"content_type": "string",
"content_id": "string"
}
]
}
}
No links404Сообщений не найдено
Media type
application/json
- Example Value
- Schema
{
"success": false,
"error": "Error message",
"details": {}
}
No links
POST
Получить новые непрочитанные сообщения
Возвращает только новые непрочитанные письма из почтового ящика
Parameters
Cancel
No parameters
Request body
application/json
- Edit Value
- Schema
Execute
Responses
CodeDescriptionLinks200Новые сообщения получены успешно
Media type
application/json
Controls Accept header.
- Example Value
- Schema
{
"success": true,
"data": {
"unread_messages": [
{
"id": "msg-123",
"uid": 1234,
"subject": "Test message",
"from": "sender@example.com",
"to": [
"string"
],
"cc": [
"string"
],
"bcc": [
"string"
],
"date": "2026-01-31T20:56:23.827Z",
"size": 2048,
"flags": [
"string"
],
"is_read": false,
"is_flagged": false,
"body_text": "string",
"body_html": "string",
"headers": {},
"attachments": [
{
"filename": "string",
"size": 0,
"content_type": "string",
"content_id": "string"
}
]
}
],
"unread_count": 3,
"total_messages": 47
}
}
No links
POST
Смена пароля почтового ящика
Изменяет пароль для почтового ящика. Доступно только если не установлена двухфакторная аутентификация (2FA) или резервный email.
Parameters
Cancel
No parameters
Request body
application/json
- Edit Value
- Schema
Execute
Responses
CodeDescriptionLinks200Пароль успешно изменен
Media type
application/json
Controls Accept header.
- Example Value
- Schema
{
"success": true,
"message": "Пароль успешно изменен",
"data": {
"email": "user@firstmail.ru",
"password_changed_at": "2026-01-31T20:56:23.830Z"
}
}
No links400Ошибка валидации или невозможно изменить пароль
Media type
application/json
Examples
2fa_enabled
backup_email_set
weak_password
- Example Value
- Schema
{
"success": false,
"error": "Невозможно изменить пароль: установлена двухфакторная аутентификация"
}
No links401Неверный текущий пароль
Media type
application/json
- Example Value
- Schema
{
"success": false,
"error": "Неверный текущий пароль"
}
No links404Почтовый ящик не найден
Media type
application/json
- Example Value
- Schema
{
"success": false,
"error": "Почтовый ящик не найден"
}
No links
VPS Серверы
Управление VPS серверами и мониторинг
GET
Список VPS серверов
Возвращает список VPS серверов пользователя и их текущий статус
Parameters
Cancel
No parameters
Execute
Responses
CodeDescriptionLinks200Список VPS серверов
Media type
application/json
Controls Accept header.
- Example Value
- Schema
{
"success": true,
"data": [
{
"id": "vps-123",
"name": "my-vps",
"status": "running",
"ip_address": "192.168.1.100",
"plan": "vps-basic",
"location": "moscow",
"specs": {
"cpu": "2 vCPU",
"ram": "4 GB",
"disk": "80 GB SSD"
}
}
]
}
No links
POST
Заказ VPS сервера
Создает заказ на новый VPS сервер
Parameters
Cancel
No parameters
Request body
application/json
- Edit Value
- Schema
Execute
Responses
CodeDescriptionLinks201VPS заказ создан успешно
Media type
application/json
Controls Accept header.
- Example Value
- Schema
{
"success": true,
"data": {
"id": "vps-123",
"name": "my-vps",
"status": "running",
"ip_address": "192.168.1.100",
"plan": "vps-basic",
"location": "moscow",
"specs": {
"cpu": "2 vCPU",
"ram": "4 GB",
"disk": "80 GB SSD"
}
}
}
No links
Schemas
Error
Balance
Transaction
Domain
DnsRecord
Server
VPSServer
DedicatedServer
ServerStats
EmailBox
EmailOrder
ImapConnection
ImapFolder
EmailMessage
ApiUsage