TimeHereNow (RODiT Tech Demo) API
Blockchain-powered time services with RODiT continuous mutual authentication.
What is RODiT?
RODiT (Rich Online Digital Token) is a revolutionary authentication technology that provides continuous mutual authentication between client and server.
Continuous Validation
API calls are mutually authenticated periodically, preventing token theft and replay attacks.
Blockchain-Anchored
RODiT tokens are cryptographically linked to NEAR blockchain, providing immutable proof of authentication and eliminating centralized trust points.
Integrated Subscription
Authentication and subscription management are unified. Access control is built into the token itself, eliminating separate billing systems.
Key Features
NEAR Blockchain Time
All time values sourced from NEAR blockchain at 5Hz polling (200ms intervals), NOT system/NTP time. Blockchain time granularity: ~500-600ms.
RODiT Token Authentication
JWT-based authentication with RODiT tokens. Continuous mutual authentication for secure API access.
Blockchain-Timestamped Timers
Schedule webhook timers with blockchain timestamps . Delay range: 1 second to 48 hours.
Complete IANA Timezone Database
Full integration with IANA Time Zone Database for accurate timezone conversions worldwide with DST handling.
Model Context Protocol (MCP)
AI integration support with MCP for resource discovery and API schema access for AI agents.
IP Geolocation
Automatic timezone detection based on IP address (IPv4/IPv6) using geoip-lite for seamless user experience.
API Endpoints
🔐 Authentication
POST /api/login — Authenticate with RODiT token
POST /api/logout — Terminate session
👥 Session Management
GET /api/sessions/list_all — List all sessions
POST /api/sessions/revoke — Revoke session
POST /api/sessions/cleanup — Clean expired sessions
🌍 Timezone Operations
POST /api/timezone — List all IANA timezones
POST /api/timezone/area — Filter by continent/region
POST /api/timezone/time — Get blockchain time by timezone
POST /api/timezones/by-country — Get timezones by country
🕐 Time Retrieval
GET /health — Health check & blockchain status
POST /api/ip — Get time by IP geolocation
🔏 Blockchain Features
POST /api/sign/hash — Sign hash with blockchain timestamp
Creates tamper-proof timestamped signatures
⏲️ Timer/Webhook
POST /api/timers/schedule — Schedule blockchain-timed webhook
Delay: 1 sec to 48 hours
ULID timer IDs, payload preservation
📊 Metrics
GET /api/metrics — Performance metrics
GET /api/metrics/system — System metrics
POST /api/metrics/reset — Reset counters (Admin)
🤖 Model Context Protocol
GET /mcp/resources — MCP resource discovery
GET /mcp/resource/{uri} — Get resource content
GET /mcp/schema — API schema for AI agents
Get Your RODiT Subscription
TimeHereNow (RODiT Tech Demo) RODiT tokens combine authentication, subscription, and configuration into a single blockchain-anchored credential.
What's Included
- ✅ RODiT authentication token
- ✅ Blockchain time API access
- ✅ Webhook timer services
- ✅ IANA timezone database
- ✅ Continuous mutual auth
- ✅ NPM package integration
Requirements
- 🔹 NEAR Protocol wallet
- 🔹 Implicit account (generated)
- 🔹 HTTPS webhook URL
- 🔹 Node.js 20.x or higher
- 🔹 SSL certificates (self-signed OK)
Integration
- 🚀 Install via NPM
- 🚀 Configure credentials
- 🚀 Purchase RODiT token
- 🚀 Start making API calls
- 🚀 Full demo code included
Secure blockchain-based subscription • No recurring billing hassles
Quick Start Guide (9 Steps)
Clone Repository
git clone https://github.com/cableguard/timeherenow.git
Navigate to the timeherenow directory
Install Dependencies
Requires Node.js 20.x or highernpm install
Install near-cli-rs
Linux/macOS: curl --proto '=https' --tlsv1.2 -LsSf https://github.com/near/near-cli-rs/releases/latest/download/near-cli-rs-installer.sh | sh
Windows: Use PowerShell installer or Cargo
Generate NEAR Implicit Account
near account create-account fund-later use-auto-generation save-to-folder /home/YOUR_USER_ID/.near-credentials/mainnet
Configure Application
Edit config/default.json with your NEAR credentials file path and settings
Create Required Directories
mkdir -p logs data .near-credentials/mainnet selfcerts
Generate SSL Certificates
openssl req -x509 -newkey rsa:4096 -keyout selfcerts/privkey.pem -out selfcerts/fullchain.pem -days 365 -nodes
Required for HTTPS webhooks
Purchase TimeHereNow (RODiT Tech Demo) RODiT
Visit purchase.timeherenow.com
Need: NEAR wallet, implicit account, webhook URL
Test the API
npm start or npm run start:pretty (formatted logs)
Run tests: npm test
Resources
Full Documentation • GitHub Demo • Purchase RODiT • RODiT-AUTH-BE NPM Package