Vimehi
VIMEHI DEVELOPER PLATFORM

REST API Documentation

Real-time email verification, synchronous batch checking, and high-volume asynchronous bulk cleaning on autopilot.

Section 1

API Authentication

All requests to the Vimehi REST API authenticate using an HTTP Authorization header with standard Bearer Token format (or alternatively using the x-api-key header).

Authorization: Bearer vim_live_YOUR_SECRET_API_KEY

Where do I find my API key?

You can generate and reveal secret API keys anytime in the Customer Dashboard → API Keys tab. Keys are permanently visible via the eye toggle.

Section 2

Base URL & Execution Modes

All API endpoints are served over secure HTTPS:

https://vimehi.com

Latency

< 350ms average

Sync Batch Limit

Up to 200 emails

Async Bulk Limit

Up to 50,000 emails

Section 3

Single Email Verification

Inspect an individual email address in real-time. Performs syntax checks, throwaway disposable filtering, MX validation, and deep mailbox ping.

POST/api/verify/single
Request Example
Language:
curl -X POST https://vimehi.com/api/verify/single \
  -H "Authorization: Bearer vim_live_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"email": "alex@company.com"}'
Example Response (200 OK)
{
  "success": true,
  "jobCode": "JOB-SGL-MTSVNGFJ-TGUW",
  "result": {
    "address": "alex@company.com",
    "status": "valid",
    "diagnosis": "Mailbox exists and accepts incoming messages",
    "isRoleBased": false,
    "isDisposable": false,
    "isFreeDomain": false,
    "isCatchAll": false,
    "enrichment": {
      "isFreeDomain": false,
      "isRoleBased": false,
      "spfConfigured": true,
      "dmarcPolicy": "reject"
    }
  },
  "credits_remaining": 9998
}
Section 4

Synchronous Batch Verification (Up to 200 Emails)

Verify small lists (1 to 200 emails) in a single synchronous call. Results are returned immediately in the HTTP response within a few seconds.

POST/api/v1/verify/batch
Request Example
Language:
curl -X POST https://vimehi.com/api/v1/verify/batch \
  -H "Authorization: Bearer vim_live_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "emails": [
      "user1@domain.com",
      "user2@company.org",
      "sales@enterprise.io"
    ]
  }'
Section 5

Asynchronous Bulk Verification API (Up to 50,000 Emails)

Designed for large lists of thousands of emails without HTTP timeouts. Submits the payload and returns an immediate jobCode (< 200ms). Our backend processes the list in safe internal batches of 100.

POST/api/v1/verify/bulk
Request Example
Language:
curl -X POST https://vimehi.com/api/v1/verify/bulk \
  -H "Authorization: Bearer vim_live_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "newsletter_leads.csv",
    "emails": [
      "lead1@corp.com",
      "lead2@agency.io",
      "..."
    ]
  }'
Immediate Response (< 200ms)
{
  "success": true,
  "jobCode": "JOB-BLK-79B8DF2E",
  "filename": "newsletter_leads.csv",
  "totalEmails": 5000,
  "status": "queued",
  "phase": "Queued for processing",
  "creditsUsed": 5000,
  "remainingCredits": 4997,
  "statusUrl": "/api/v1/verify/jobs/JOB-BLK-79B8DF2E",
  "message": "Bulk verification job successfully queued. Poll statusUrl to track progress or download results."
}
Section 6

Check Bulk Job Status & Download Results

Poll real-time job progress (0–100%) and retrieve download URLs for cleaned CSV lists once finished.

GET/api/v1/verify/jobs/{jobCode}
Polling Example
Language:
curl -X GET https://vimehi.com/api/v1/verify/jobs/JOB-BLK-79B8DF2E \
  -H "Authorization: Bearer vim_live_YOUR_API_KEY"
Completed Job Response (200 OK)
{
  "success": true,
  "jobCode": "JOB-BLK-79B8DF2E",
  "filename": "newsletter_leads.csv",
  "totalEmails": 5000,
  "processedEmails": 5000,
  "progressPercent": 100,
  "status": "completed",
  "phase": "Completed",
  "resultCounts": {
    "valid": 4620,
    "invalid": 310,
    "catchAll": 55,
    "disposable": 15,
    "duplicate": 0
  },
  "downloads": {
    "all": "https://vimehi.com/api/verify/download?url=...&name=newsletter_leads.csv",
    "valid": "https://vimehi.com/api/verify/download?url=...&name=valid-newsletter_leads.csv",
    "invalid": "https://vimehi.com/api/verify/download?url=...&name=invalid-newsletter_leads.csv"
  },
  "createdAt": "2026-09-09T05:20:00Z",
  "updatedAt": "2026-09-09T05:22:15Z"
}
Section 7

Check Account Balance & Credits

Query remaining credits available on your account.

GET/api/user/credits
Request
curl -X GET https://vimehi.com/api/user/credits \
  -H "Authorization: Bearer vim_live_YOUR_API_KEY"
Response Example
{
  "success": true,
  "credits": 9998,
  "email": "alex@company.com"
}
Section 8

HTTP Status Codes & Errors

Standard HTTP status codes are returned to indicate the success or failure of requests.

CodeMeaningDescription
200 OKSuccessRequest succeeded. Verification result or job details returned.
202 AcceptedJob QueuedBulk job accepted and queued for asynchronous background processing.
400 Bad RequestInvalid InputMissing email, invalid payload structure, or batch limit exceeded.
401 UnauthorizedAuth FailureMissing, malformed, or revoked API key.
402 Payment RequiredInsufficient CreditsAccount has 0 credits. Recharge credits in your dashboard.
404 Not FoundJob Not FoundJob code does not exist or belongs to another customer account.
500 Server ErrorProcessing ErrorTemporary upstream error. Credits are automatically refunded if deducted.