Доступные методыПрофиль
Профиль
Методы для получения данных профиля пользователя.
Обзор
Модуль для получения данных профиля текущего пользователя.
GET /profile
Получить данные профиля пользователя.
Rate Limit: глобальный (200 req/min)
Пример запроса
curl -X GET "https://api.stealthsurf.app/profile" \
-H "Authorization: Bearer stlth_XXXXXXXX_YYYYYYYYYYYYYYYYYYYYYYYY"Ответ
{
status: true,
statusCode: 200,
data: {
id: number
email: string | null
uuid: string | null
subscription_key: string | null
sign_in_method: string // google | telegram | vk | authCode | signIn
referral_balance: number // Реферальный баланс в рублях
balance: number // Баланс аккаунта в рублях
referrals_count: number
is_telegram_connected: boolean
referral_code: string
onboarding_completed: boolean
pricing_rules?: Array<{ // Персональные скидки/наценки (если есть)
type: string // Тип продукта: all | config | configs | cloud_server | cloud_servers | paid_option | paid_options
product_title: string // Название продукта на русском
percent: number // Процент скидки/наценки (отрицательный = скидка, положительный = наценка)
comment: string | null // Комментарий к правилу
}>
}
}Пример ответа
{
"status": true,
"statusCode": 200,
"data": {
"id": 12345,
"email": "user@example.com",
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"subscription_key": "abc123def456",
"sign_in_method": "telegram",
"referral_balance": 1590,
"balance": 1000,
"referrals_count": 5,
"is_telegram_connected": true,
"referral_code": "MYREF123",
"onboarding_completed": true,
"pricing_rules": [
{
"type": "all",
"product_title": "Все услуги",
"percent": -15,
"comment": "VIP скидка"
}
]
}
}Реферальный баланс указан в рублях. Поле pricing_rules присутствует только если у пользователя есть персональные скидки или наценки.
GET /profile/notification-settings
Получить настройки уведомлений.
Rate Limit: глобальный (200 req/min)
Пример запроса
curl -X GET "https://api.stealthsurf.app/profile/notification-settings" \
-H "Authorization: Bearer stlth_XXXXXXXX_YYYYYYYYYYYYYYYYYYYYYYYY"Ответ
{
status: true,
statusCode: 200,
data: {
renewal_reminders: boolean // Напоминания о продлении
notification_start_hour: number // Начало времени уведомлений (0-23)
notification_end_hour: number // Конец времени уведомлений (0-23)
timezone_offset: number // Смещение часового пояса в минутах
}
}PATCH /profile/notification-settings
Обновить настройки уведомлений.
Rate Limit: 5 req/min
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
renewal_reminders | boolean | Нет | Напоминания о продлении |
notification_start_hour | number | Нет | Начало времени уведомлений (0-23) |
notification_end_hour | number | Нет | Конец времени уведомлений (0-23) |
timezone_offset | number | Нет | Смещение часового пояса (-720 до 840) |
Пример запроса
curl -X PATCH "https://api.stealthsurf.app/profile/notification-settings" \
-H "Authorization: Bearer stlth_XXXXXXXX_YYYYYYYYYYYYYYYYYYYYYYYY" \
-H "Content-Type: application/json" \
-d '{
"renewal_reminders": true,
"notification_start_hour": 10,
"notification_end_hour": 22,
"timezone_offset": 180
}'Ответ
Такой же как GET /profile/notification-settings.
PATCH /profile/subscriptionLink
Перегенерировать ссылку подписки.
Rate Limit: 2 req/min
Пример запроса
curl -X PATCH "https://api.stealthsurf.app/profile/subscriptionLink" \
-H "Authorization: Bearer stlth_XXXXXXXX_YYYYYYYYYYYYYYYYYYYYYYYY"Ответ
{
status: true,
statusCode: 200,
data: string // Новый subscription_key
}При перегенерации ссылки подписки все привязанные устройства будут удалены, а доступ Remnawave будет отозван.
Помогла ли вам эта статья?