One profile.
Access your next lab.
A shared learner profile, email verification, and separate two-day sessions for each DataMindsLab activity.
Activate your session
Session issued
This page is an API demonstration. Your lab’s server must validate this session before allowing experiments. The token is held only in this page’s memory; reload to clear it.
Connect any lab
- Create the lab using
POST /v1/admin/labsand your private admin key. - Save the returned lab key on that lab’s backend. Never put it in JavaScript.
- Have the learner register using
POST /v1/registrations. - Verify their code with
POST /v1/registrations/verify. - Store the returned session token on your lab server. Give the browser an opaque, secure session cookie.
- Before every protected page and experiment request, call
GET /v1/labs/{lab_id}/accessusing the bearer token andX-Lab-Key. - Deny access on API failure, expiry, revocation, or the wrong lab.
The included Flask example implements registration, verification, server-side token storage, CSRF checks, and route protection. See README.md.
Admin endpoints
GET /v1/admin/users lists verified user profiles. GET /v1/admin/enrollments?lab_id=tokenization-lab lists lab registrations. DELETE /v1/admin/sessions/{id} revokes a session. All require X-Admin-Key.
Development email
With MAIL_MODE=file, messages are written privately to the server’s data/dev-mail directory. No real email is sent. Set SMTP and APP_ENV=production before public use. No code is returned by the API.
Names, email addresses and optional organization/phone are stored in SQLite. A user profile is created or updated only after email verification. Sessions are scoped to one lab. There is no marketing opt-in in this service.
Open complete API documentation →