Test environment only

Boltt DSP — UAT Credentials

Everything seeded into the Device Services Platform UAT backend so you can exercise all 12 API endpoints from the browser. Click any dark value to copy it.

01 Platform keys

Base URL for every call: http://localhost:4100/dsp/v1

SDK API Key

header X-SDK-API-Key — used only by POST /device/activate
X-SDK-API-Keysdk-test-key-uat-boltt-2024

UAT OTP Bypass

accepted as otp_code for ANY pending OTP request (UAT only)
otp_code123456
spec §12.1 test mobile+919999900000

Auth model

JWT Bearer — three token types

device_token ← /device/activate (90 d)
user_token ← /user/verify-otp (30 d)
admin_token ← /auth/admin/login (8 h)

02 Admin accounts

POST /auth/admin/login with these to mint an admin_token (needed for /device/unregister).

Boltt Release Manager

owner — permissions: review:read, review:write, device:read, device:block, device:unregister, activation:read, warranty:read, warranty:admin, ota:read, ota:approve, telemetry:read, model:read, model:write, audit:read, rbac:manage, settings:write
emailadmin@boltt.com
passwordBoltt#Release2026

Bitmisri DSP Operator

ops_admin — permissions: review:read, review:write, device:read, device:block, device:unregister, activation:read, warranty:read, warranty:admin, ota:read, ota:approve, telemetry:read, model:read, model:write, audit:read, settings:write
emailops@bitmisri.com
passwordBitmisri#Ops2026

Boltt Read-only Analyst

viewer — permissions: review:read, device:read, activation:read, warranty:read, ota:read, telemetry:read, model:read, audit:read
emailviewer@boltt.com
passwordBoltt#View2026
Shortcut: a pre-minted Release Manager token (7-day UAT convenience expiry) is below — paste it straight into the playground's Bearer field.
admin_token (release_manager, valid 7 days)eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0b2tlbl90eXBlIjoiYWRtaW4iLCJhZG1pbl9pZCI6ImQ5ZmNmM2I5LTUzZDEtNDE2MC04ZTJlLWNmZjRkYTRlZGVlOSIsImVtYWlsIjoiYWRtaW5AYm9sdHQuY29tIiwicm9sZSI6Im93bmVyIiwicGVybWlzc2lvbnMiOlsicmV2aWV3OnJlYWQiLCJyZXZpZXc6d3JpdGUiLCJkZXZpY2U6cmVhZCIsImRldmljZTpibG9jayIsImRldmljZTp1bnJlZ2lzdGVyIiwiYWN0aXZhdGlvbjpyZWFkIiwid2FycmFudHk6cmVhZCIsIndhcnJhbnR5OmFkbWluIiwib3RhOnJlYWQiLCJvdGE6YXBwcm92ZSIsInRlbGVtZXRyeTpyZWFkIiwibW9kZWw6cmVhZCIsIm1vZGVsOndyaXRlIiwiYXVkaXQ6cmVhZCIsInJiYWM6bWFuYWdlIiwic2V0dGluZ3M6d3JpdGUiXSwiaWF0IjoxNzgxMzc3NjQzLCJleHAiOjE3ODE5ODI0NDN9.ON0i1LSgXf2hUmlilnjBUC3svJghoWbYWBVfo7NF47w

03 Ready-to-use test devices

Three hero devices cover every flow. Tokens are live JWTs signed by this backend.

Device A — fresh & unlinked

use for: OTP flow → user_token → warranty → OTA check (fw 1.2.0 → update to 1.3.0 available)
device_idf61a3e7c-e072-40f8-9089-c183c6ce245c
imei1356938030011051
pre-issued otp request_id (use with bypass OTP)otp-req-uat0demo
device_tokeneyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0b2tlbl90eXBlIjoiZGV2aWNlIiwiZGV2aWNlX2lkIjoiZjYxYTNlN2MtZTA3Mi00MGY4LTkwODktYzE4M2M2Y2UyNDVjIiwiaW1laTEiOiIzNTY5MzgwMzAwMTEwNTEiLCJtb2RlbF9jb2RlIjoiQk9MVFQtUEg1Ry0yMDI2IiwiZGV2aWNlX3R5cGUiOiJzbWFydHBob25lIiwiaWF0IjoxNzgxMzc3NjQzLCJleHAiOjE3ODkxNTM2NDN9.es2ZlTMScma3i8pKy5cs4n5lYqI4_VAvHiDAdixDdks

Device B — fully linked

customer +919999900000 linked, active warranty — use for: /device/profile, DSP-030 duplicate-warranty demo
device_id08a4c197-b237-47c3-badb-c3c6e7977c60
customer_id4a23a060-73fa-40e9-a45a-6b3e84fe85d0
warranty_id7e7bad62-335b-47d1-8bb9-8e20d1a53e1e
device_tokeneyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0b2tlbl90eXBlIjoiZGV2aWNlIiwiZGV2aWNlX2lkIjoiMDhhNGMxOTctYjIzNy00N2MzLWJhZGItYzNjNmU3OTc3YzYwIiwiaW1laTEiOiIzNTY5MzgwMzAwMTEwNzciLCJtb2RlbF9jb2RlIjoiQk9MVFQtUEg1Ry0yMDI2IiwiZGV2aWNlX3R5cGUiOiJzbWFydHBob25lIiwiaWF0IjoxNzgxMzc3NjQzLCJleHAiOjE3ODkxNTM2NDN9.BRQXgyENFcPQh6t5tOD1leioVkTSUAwpQZRwJQJuan4
user_tokeneyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0b2tlbl90eXBlIjoidXNlciIsImN1c3RvbWVyX2lkIjoiNGEyM2EwNjAtNzNmYS00MGU5LWE0NWEtNmIzZTg0ZmU4NWQwIiwibW9iaWxlX251bWJlciI6Iis5MTk5OTk5MDAwMDAiLCJkZXZpY2VfaWQiOiIwOGE0YzE5Ny1iMjM3LTQ3YzMtYmFkYi1jM2M2ZTc5NzdjNjAiLCJpYXQiOjE3ODEzNzc2NDMsImV4cCI6MTc4Mzk2OTY0M30.mbLyJVMLRFVv79g56tR9kImKZUrerDxG9wSmo5DA7ls

Device C — blacklisted

reported stolen — every call with this token returns DSP-071 DEVICE_BLACKLISTED (403)
device_id975a60d5-86e4-4830-9e2f-9a29af8e6536
imei1 (CEIR-blocked)356938030011093
device_tokeneyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0b2tlbl90eXBlIjoiZGV2aWNlIiwiZGV2aWNlX2lkIjoiOTc1YTYwZDUtODZlNC00ODMwLTllMmYtOWEyOWFmOGU2NTM2IiwiaW1laTEiOiIzNTY5MzgwMzAwMTEwOTMiLCJtb2RlbF9jb2RlIjoiQk9MVFQtU1Q0Ry0yMDI2IiwiZGV2aWNlX3R5cGUiOiJzbWFydHBob25lIiwiaWF0IjoxNzgxMzc3NjQzLCJleHAiOjE3ODkxNTM2NDN9.h-ewI5V9GasHSQWT4EZxotKL9DrmVOPZM1bvte3mhNg

04 Fresh IMEIs for live activation

Unregistered, Luhn-valid IMEIs — activate them yourself via POST /device/activate (model codes in §06). Each allows 3 attempts per 24 h.

#IMEI (click to copy)Suggested model_code
1356938030011101BOLTT-PH5G-2026
2356938030011119BOLTT-ST4G-2026
3356938030011127BOLTT-BL5G-2026
4356938030011135BOLTT-TB10-2026
5356938030011143BOLTT-PH5G-2026
6356938030011150BOLTT-ST4G-2026

05 OTA release catalogue

Seeded firmware releases. Only approved / rolling_out / completed releases are offered by /ota/check-update.

update_idModelTarget fwMin fwTypeStatusRollout
ota-upd-20260601-001BOLTT-PH5G-20261.2.01.0.0fullcompleted100%
ota-upd-20260602-002BOLTT-PH5G-20261.3.01.1.0deltarolling_out50%
ota-upd-20260603-003BOLTT-PH5G-20261.4.01.3.0deltapending_approval0%
ota-upd-20260604-004BOLTT-ST4G-20261.2.01.0.0deltarolling_out25%
ota-upd-20260605-005BOLTT-BL5G-20262.1.02.0.0fullcompleted100%
ota-upd-20260606-006BOLTT-TB10-20261.1.01.0.0deltaapproved5%

06 Reference data

Allowed models

model_codeNameWarranty
BOLTT-PH5G-2026Boltt Phantom 5G12 mo
BOLTT-ST4G-2026Boltt Storm 4G12 mo
BOLTT-BL5G-2026Boltt Blaze 5G Pro18 mo
BOLTT-TB10-2026Boltt Tab X1012 mo

Retailer Master (for warranty/register)

retailer_codeName
RET-MH-001Boltt Flagship Store Mumbai, Mumbai
RET-MH-002Croma Andheri West, Mumbai
RET-DL-001Boltt Experience Centre CP, New Delhi
RET-KA-001Reliance Digital Indiranagar, Bengaluru
RET-KA-002Boltt Partner Store Koramangala, Bengaluru
RET-TN-001Poorvika Mobiles T Nagar, Chennai

Sample verified customers

customer_idMobileName
9df8aa8f-9bc0-40a6-a4c1-1886f565968d+919876543210Aarav Patel
691a6433-9c19-4711-a169-1d7d4b9f11d9+919876543217Vihaan Khan
78118047-46f9-4f9e-82e1-e8daf66a800e+919876543224Ananya Singh
b35b9edc-a638-49b0-ab5d-3ec0c4e92483+919876543231Diya Chopra
6d8d240c-9a37-45ef-80eb-6e4db949e639+919876543238Ishaan Kulkarni
204a5f50-d1e6-41e1-81a4-885d4ec7a8b9+919876543245Kavya Patel
0875aae4-33e1-4a71-a222-934531a1f188+919876543252Rohan Khan
ffd3635a-5e40-497f-9ef4-4992fe1997b9+919876543259Priya Singh

07 5-minute browser walkthrough

Open the API Playground, then:

Activate a device

POST /device/activate — set header X-SDK-API-Key (§01), body with a fresh IMEI from §04. You get a device_token. Repeat the same IMEI to see DSP-001 (409).

Authorize

Click the playground's Auth section, paste the device_token as Bearer.

Request + verify OTP

POST /user/request-otp with any +91 mobile, then POST /user/verify-otp with otp_code: 123456 and the returned request_id. You get a user_token. (Device A's pre-issued request_id works too.)

Register warranty

Switch Bearer to the user_token; POST /warranty/register with purchase_date within the last 90 days and retailer RET-MH-001. Run it twice for DSP-030.

OTA cycle

Back on the device_token: POST /ota/check-update with current_fw_version: "1.2.0", model BOLTT-PH5G-2026 → update 1.3.0 offered. Then POST /ota/report-status with status: "success". Try battery_level: 15 for the BATTERY_TOO_LOW branch.

Telemetry, heartbeat, crash

POST /device/telemetry (try battery_level: 150 for detailed validation errors), /device/heartbeat, /device/crash-report.

Admin unregister

Login via /auth/admin/login (§02) or use the pre-minted token; POST /device/unregister with reason customer_resale. Try the viewer account to see DSP-112. Use Device C's token anywhere for DSP-071.

08 Seeded inventory

63
devices
26
customers
21
warranties
6
ota updates
15
ota reports
480
telemetry
15
crash reports
10
retailers
3
admin users
5
roles
300
review taps