Skip to main content

The TempNova Developer API lets you provision disposable inboxes and SIM-routed virtual phone numbers programmatically — ideal for QA automation, multi-account testing, and privacy-respecting registration flows. Every endpoint is authenticated with a JWT issued after sign-in, and all traffic is served over HTTPS.

Inbox Automation

Create, poll, and read disposable mailboxes from your CI pipeline to validate confirmation and OTP emails without human intervention.

SMS Verification

Allocate a SIM-routed virtual number, receive the OTP via poll or webhook, and complete phone verification end-to-end in automated tests.

Webhook Delivery

Push incoming messages to your own endpoint the moment they arrive, eliminating polling latency in high-speed test suites.

Example: receive an OTP via API

// 1. Allocate a virtual number
POST /api/v1/numbers
=> { "number": "+1XXXXXXXXX", "id": "n_abc123" }

// 2. Poll for the incoming SMS
GET  /api/v1/numbers/n_abc123/messages
=> { "messages": [ { "from": "+1000", "body": "Your code is 482913" } ] }

// 3. Release when done
DELETE /api/v1/numbers/n_abc123

Full schemas, authentication details, rate limits, and SDK downloads are available in the interactive reference below. For a conceptual background, see our developer’s guide to OTP verification.

Developer Docs

Developer API Reference

Integrate TempNova's underlying email engine into your own QA tests, verification systems, or automated accounts.

API Endpoint

https://api.temp-nova.com

Authentication

Bearer JWT (JSON Web Tokens)

Rate Limiting

8 requests/sec per client IP

Available Endpoints

GET/domains
List active temporary domains
curl -X GET "https://api.temp-nova.com/domains" \
  -H "accept: application/json"
POST/accounts
Create a new mailbox account
curl -X POST "https://api.temp-nova.com/accounts" \
  -H "Content-Type: application/json" \
  -d '{"address": "user@domain.com", "password": "secure_password"}'
POST/token
Acquire JWT authentication token
curl -X POST "https://api.temp-nova.com/token" \
  -H "Content-Type: application/json" \
  -d '{"address": "user@domain.com", "password": "secure_password"}'
GET/messages
Retrieve message index feed
curl -X GET "https://api.temp-nova.com/messages" \
  -H "Authorization: Bearer YOUR_JWT_TOKEN" \
  -H "accept: application/json"
GET/messages/{id}
Retrieve single email details
curl -X GET "https://api.temp-nova.com/messages/MESSAGE_ID" \
  -H "Authorization: Bearer YOUR_JWT_TOKEN" \
  -H "accept: application/json"
DELETE/accounts/{id}
Delete and release temporary account
curl -X DELETE "https://api.temp-nova.com/accounts/ACCOUNT_ID" \
  -H "Authorization: Bearer YOUR_JWT_TOKEN"

Auth Workflow

  1. Fetch active domains using GET /domains.
  2. Register address & password using POST /accounts.
  3. Generate auth token using POST /token.
  4. Inject token as Authorization: Bearer <JWT> for message endpoints.

Error Status Codes

400 Bad RequestInvalid formatting
401 UnauthorizedToken missing/expired
409 ConflictAddress taken
422 UnprocessableInactive domain
429 Rate LimitToo many requests