Песочница
Второй процесс API со своей базой, своим seed и своими ключами. Ничто здесь не затрагивает боевые заказы.
Статус песочницы
Проверка…Проверка…
http://localhost:3050Ключи песочницы
Создайте ключ со средой Sandbox на странице API-ключей. Ключ песочницы, отправленный в боевой API, отклоняется с ERR_API_KEY_ENVIRONMENT, и наоборот.
live https://api.turanyol.com
sandbox http://localhost:3050Что в тестовых данных
База песочницы пересобирается из того же детерминированного seed, что и разработка, поэтому коды ниже стабильны между сбросами.
- Продавцы и товары по зонам Садарака A–F с названиями на az/ru/en и фотографиями.
- Клиенты с сохранёнными адресами в 20 Yanvar, Gənclik, Yasamal, Nərimanov и Nizami.
- Заказы во всех статусах, включая AT_HUB и PACKED, а также заказы на хабе, уже переданные партнёру.
- Партии доставки, водители и данные сверки наложенного платежа.
- Два партнёрских аккаунта с одним боевым и одним sandbox-ключом каждый, а также вебхуки с доставками во всех статусах.
Тестовые аккаунты
OTP в песочнице замокан: код возвращается в ответе как devCode и показывается на экране входа. Никаких реальных SMS.
| Роль | Телефон | Примечания |
|---|---|---|
| Партнёр | +994500000040 | Kargo Express — orders:read, orders:pii, logistics:write |
| Партнёр | +994500000041 | PayAZ — payments:read |
| Покупатель | +994500000100 | Aysel Məmmədova — ES-1049, ES-1025, ES-1001 |
| Продавец | +994500000010 | Vendor A-101 |
| Водитель | +994500000020 | B-2083 completed, B-2084 assigned |
| Сборщик | +994500000030 | Hub pickup queue |
| Агент поддержки | +994500000002 | Günel Rəhimova |
| Администратор | +994500000001 | Kamil Hüseynov |
Сброс песочницы
База песочницы одноразовая. Попросите нас её сбросить, или, если стек запущен у вас:
- Остановите sandbox-API, чтобы во время пересборки базы никто в неё не писал.
- Примените миграции заново и повторно выполните seed для базы песочницы.
- Запустите sandbox-API снова — seed-ключи и коды будут теми же, что раньше.
# 1. stop the sandbox API
pnpm --filter @turanyol/api exec -- true # (stop the 'dev:api:sandbox' process)
# 2. re-apply migrations and re-seed the sandbox database
DATABASE_URL=postgresql://esadarak:esadarak@localhost:5433/esadarak_sandbox?schema=public \
pnpm --filter @turanyol/api prisma:deploy
DATABASE_URL=postgresql://esadarak:esadarak@localhost:5433/esadarak_sandbox?schema=public \
pnpm db:seed
# 3. start it again
pnpm dev:api:sandboxСброс ничего не отменяет в боевом API: ключи, вебхуки и заказы там не затрагиваются.
Чем песочница отличается от боевой среды
- OTP замокан — SMS не отправляется, код возвращается вызывающей стороне.
- Оплата картой идёт через mock-провайдер, который отдаёт свою страницу оплаты и подписывает свой вебхук.
- Диспетчеризация работает на seed-водителях, поэтому партии и предложения появляются без реального фургона.
- Лимиты запросов и скоупы работают ровно как в бою — песочница не мягче.