No results found

Try searching for a category name, endpoint path, or keyword.

Base URL
https://viper-api.name.ng/api/v1
API Key

🔐 Authentication

Every API call must include your key either as an X-API-Key header (recommended) or as a ?key= query param. Each call deducts 1 credit from your monthly quota.

authentication.sh
# Option 1 — Header (recommended)
curl -X GET \
  "https://viper-api.name.ng/api/v1/utility/uuid" \
  -H "X-API-Key: viper_your_key_here"

# Option 2 — Query param
curl "https://viper-api.name.ng/api/v1/utility/uuid?key=viper_your_key"

# Response headers tell you your remaining quota
# X-Quota-Remaining: 147

🔧 Utility

POST /api/v1/utility/qr QR Code Generator

Generate a QR code image (returns base64) from any text or URL.

ParameterTypeDescription
textrequired string Text or URL to encode
utility/qr.sh
POST /api/v1/utility/qr
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "text": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/utility/base64/encode Base64 Encode

Encode a string to Base64.

ParameterTypeDescription
textrequired string String to encode
utility/base64/encode.sh
POST /api/v1/utility/base64/encode
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "text": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/utility/base64/decode Base64 Decode

Decode a Base64 string back to UTF-8.

ParameterTypeDescription
textrequired string Base64 string to decode
utility/base64/decode.sh
POST /api/v1/utility/base64/decode
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "text": ""
}
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/utility/uuid UUID Generator

Generate 1-10 cryptographically secure UUID v4 values.

ParameterTypeDescription
countoptional string Number of UUIDs (default: 1, max: 10)
utility/uuid.sh
GET /api/v1/utility/uuid
X-API-Key: viper_your_key_here

# Query params:
#   count=  (optional)

              
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/utility/password Password Generator

Generate a strong random password with strength score.

ParameterTypeDescription
lengthoptional string Length (default: 16, max: 128)
symbolsoptional string Include symbols true/false (default: true)
utility/password.sh
POST /api/v1/utility/password
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "length": "",
  "symbols": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/utility/slugify Text Slugifier

Convert text to a URL-friendly slug.

ParameterTypeDescription
textrequired string Text to slugify
utility/slugify.sh
POST /api/v1/utility/slugify
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "text": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/utility/text/analyze Text Analyzer

Count words, chars, sentences, paragraphs and reading time.

ParameterTypeDescription
textrequired string Text to analyze
utility/text/analyze.sh
POST /api/v1/utility/text/analyze
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "text": ""
}
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/utility/ip IP Lookup

Geo-locate any IP address (country, city, ISP, timezone).

ParameterTypeDescription
ipoptional string IP address (optional — uses caller IP if omitted)
utility/ip.sh
GET /api/v1/utility/ip
X-API-Key: viper_your_key_here

# Query params:
#   ip=  (optional)

              
Live Playground — 1 credit per run
200 OK
response.json

⚡ Text & String

POST /api/v1/text/case Case Converter

Convert text between upper, lower, title, camel, snake, kebab, pascal, constant, sentence, alternating.

ParameterTypeDescription
textrequired string Input text
torequired string upper|lower|title|sentence|camel|pascal|snake|kebab|constant|alternating
text/case.sh
POST /api/v1/text/case
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "text": "",
  "to": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/text/truncate Truncate Text

Trim text to a max length with custom ellipsis.

ParameterTypeDescription
textrequired string Input text
lengthoptional string Max characters (default: 100)
ellipsisoptional string Suffix string (default: ...)
text/truncate.sh
POST /api/v1/text/truncate
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "text": "",
  "length": "",
  "ellipsis": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/text/reverse Reverse Text

Reverse chars, words, or lines.

ParameterTypeDescription
textrequired string Input text
modeoptional string chars | words | lines (default: chars)
text/reverse.sh
POST /api/v1/text/reverse
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "text": "",
  "mode": ""
}
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/text/lorem Lorem Ipsum

Generate placeholder lorem ipsum text.

ParameterTypeDescription
countoptional string Number of items (default: 1)
typeoptional string paragraphs | sentences | words (default: paragraphs)
text/lorem.sh
GET /api/v1/text/lorem
X-API-Key: viper_your_key_here

# Query params:
#   count=  (optional)
#   type=  (optional)

              
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/text/palindrome Palindrome Check

Check if text is a palindrome.

ParameterTypeDescription
textrequired string Text to check
text/palindrome.sh
POST /api/v1/text/palindrome
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "text": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/text/count Count Occurrences

Count how many times a substring appears.

ParameterTypeDescription
textrequired string Source text
findrequired string Substring to find
case_sensitiveoptional string true/false (default: false)
text/count.sh
POST /api/v1/text/count
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "text": "",
  "find": "",
  "case_sensitive": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/text/dedupe Remove Duplicates

Remove duplicate lines from text.

ParameterTypeDescription
textrequired string Multi-line text
case_sensitiveoptional string true/false (default: true)
text/dedupe.sh
POST /api/v1/text/dedupe
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "text": "",
  "case_sensitive": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/text/extract/emails Extract Emails

Extract all email addresses from a block of text.

ParameterTypeDescription
textrequired string Text to scan
text/extract/emails.sh
POST /api/v1/text/extract/emails
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "text": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/text/extract/urls Extract URLs

Extract all URLs from a block of text.

ParameterTypeDescription
textrequired string Text to scan
text/extract/urls.sh
POST /api/v1/text/extract/urls
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "text": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/text/extract/numbers Extract Numbers

Extract all numbers with stats (sum, avg, min, max).

ParameterTypeDescription
textrequired string Text to scan
text/extract/numbers.sh
POST /api/v1/text/extract/numbers
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "text": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/text/hash Hash Generator

Hash text with md5, sha1, sha256, or sha512.

ParameterTypeDescription
textrequired string Text to hash
algorithmoptional string md5|sha1|sha256|sha512 (default: sha256)
text/hash.sh
POST /api/v1/text/hash
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "text": "",
  "algorithm": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/text/diff Line Diff

Compare two texts and get added/removed/unchanged lines.

ParameterTypeDescription
text1required string Original text
text2required string New text
text/diff.sh
POST /api/v1/text/diff
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "text1": "",
  "text2": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/text/translate Translate Text

Translate text between 100+ languages. Free, no key needed. Powered by MyMemory.

ParameterTypeDescription
textrequired string Text to translate (max 500 chars)
torequired string Target language code e.g. es, fr, yo, ha, ig, ar
fromoptional string Source language code (default: auto)
text/translate.sh
POST /api/v1/text/translate
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "text": "",
  "to": "",
  "from": ""
}
Live Playground — 1 credit per run
200 OK
response.json

⚡ Numbers & Math

GET /api/v1/number/random Random Number

Generate 1-100 random integers within a range.

ParameterTypeDescription
minoptional string Min value (default: 1)
maxoptional string Max value (default: 100)
countoptional string How many (default: 1, max: 100)
number/random.sh
GET /api/v1/number/random
X-API-Key: viper_your_key_here

# Query params:
#   min=  (optional)
#   max=  (optional)
#   count=  (optional)

              
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/number/words Number to Words

Convert any integer up to billions to written English words.

ParameterTypeDescription
nrequired string Integer number
number/words.sh
GET /api/v1/number/words
X-API-Key: viper_your_key_here

# Query params:
#   n=  

              
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/number/roman Roman Numerals

Convert integer (1-3999) to Roman numerals.

ParameterTypeDescription
nrequired string Integer between 1 and 3999
number/roman.sh
GET /api/v1/number/roman
X-API-Key: viper_your_key_here

# Query params:
#   n=  

              
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/number/fibonacci Fibonacci Sequence

Get the first N numbers of the Fibonacci sequence.

ParameterTypeDescription
noptional string How many terms (default: 10, max: 100)
number/fibonacci.sh
GET /api/v1/number/fibonacci
X-API-Key: viper_your_key_here

# Query params:
#   n=  (optional)

              
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/number/prime Prime Check

Check if a number is prime.

ParameterTypeDescription
nrequired string Integer to check
number/prime.sh
GET /api/v1/number/prime
X-API-Key: viper_your_key_here

# Query params:
#   n=  

              
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/number/stats Statistics

Get mean, median, mode, std dev, variance for a set of numbers.

ParameterTypeDescription
numbersrequired string JSON array of numbers e.g. [1,2,3,4,5]
number/stats.sh
POST /api/v1/number/stats
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "numbers": ""
}
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/number/convert Unit Converter

Convert between length, weight, speed, data, time, area units.

ParameterTypeDescription
valuerequired string Numeric value
fromrequired string Unit e.g. km, lb, mb
torequired string Target unit
number/convert.sh
GET /api/v1/number/convert
X-API-Key: viper_your_key_here

# Query params:
#   value=  
#   from=  
#   to=  

              
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/number/bmi BMI Calculator

Calculate Body Mass Index and category.

ParameterTypeDescription
weightrequired string Weight in kg
heightrequired string Height in cm
number/bmi.sh
GET /api/v1/number/bmi
X-API-Key: viper_your_key_here

# Query params:
#   weight=  
#   height=  

              
Live Playground — 1 credit per run
200 OK
response.json

⚡ Validation

POST /api/v1/validate/email Email Validator

Validate email format and detect disposable addresses.

ParameterTypeDescription
emailrequired string Email address to validate
validate/email.sh
POST /api/v1/validate/email
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "email": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/validate/url URL Validator

Validate URL structure and parse its components.

ParameterTypeDescription
urlrequired string URL to validate
validate/url.sh
POST /api/v1/validate/url
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "url": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/validate/phone Phone Validator

Validate phone number format, detect Nigerian numbers.

ParameterTypeDescription
phonerequired string Phone number (any format)
validate/phone.sh
POST /api/v1/validate/phone
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "phone": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/validate/credit-card Credit Card (Luhn)

Validate credit card number using Luhn algorithm, detect card type.

ParameterTypeDescription
numberrequired string Card number (spaces/dashes stripped)
validate/credit-card.sh
POST /api/v1/validate/credit-card
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "number": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/validate/password-strength Password Strength

Score a password and get improvement suggestions.

ParameterTypeDescription
passwordrequired string Password to analyse
validate/password-strength.sh
POST /api/v1/validate/password-strength
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "password": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/validate/color Color Validator

Validate hex or RGB color, convert to hex/RGB/HSL.

ParameterTypeDescription
colorrequired string Color string e.g. #ff0000 or rgb(255,0,0)
validate/color.sh
POST /api/v1/validate/color
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "color": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/validate/nin NIN Format Check

Validate Nigerian NIN format (11-digit numeric).

ParameterTypeDescription
ninrequired string National Identification Number
validate/nin.sh
POST /api/v1/validate/nin
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "nin": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/validate/bvn BVN Format Check

Validate Nigerian BVN format (11-digit numeric).

ParameterTypeDescription
bvnrequired string Bank Verification Number
validate/bvn.sh
POST /api/v1/validate/bvn
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "bvn": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/validate/disposable Disposable Email Check

Check if an email domain is a known disposable/throwaway provider. No key needed.

ParameterTypeDescription
emailrequired string Email address to check
validate/disposable.sh
POST /api/v1/validate/disposable
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "email": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/validate/phone-lookup Phone Lookup (Detailed)

Detect carrier, line type and country from a phone number. Nigerian networks fully supported (MTN/Airtel/Glo/9mobile). Uses libphonenumber-js locally — no API key.

ParameterTypeDescription
phonerequired string Phone number in any format
countryoptional string Default country hint e.g. NG, US, GB (default: NG)
validate/phone-lookup.sh
POST /api/v1/validate/phone-lookup
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "phone": "",
  "country": ""
}
Live Playground — 1 credit per run
200 OK
response.json

⚡ Generate

GET /api/v1/generate/color Random Color Palette

Generate a random colour palette with hex, rgb, hsl values.

ParameterTypeDescription
countoptional string Number of colors (default: 5, max: 20)
generate/color.sh
GET /api/v1/generate/color
X-API-Key: viper_your_key_here

# Query params:
#   count=  (optional)

              
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/generate/name Random Name

Generate random full names (first + last).

ParameterTypeDescription
countoptional string Number of names (default: 1, max: 50)
genderoptional string male | female | any (default: any)
generate/name.sh
GET /api/v1/generate/name
X-API-Key: viper_your_key_here

# Query params:
#   count=  (optional)
#   gender=  (optional)

              
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/generate/barcode Barcode Generator

Generate a barcode SVG for EAN-13, Code128, or UPC-A formats.

ParameterTypeDescription
valuerequired string Value to encode
formatoptional string ean13|code128|upca (default: code128)
generate/barcode.sh
POST /api/v1/generate/barcode
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "value": "",
  "format": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/generate/users Fake User Data

Generate realistic fake user profiles for testing.

ParameterTypeDescription
countoptional string Number of users (default: 5, max: 50)
generate/users.sh
POST /api/v1/generate/users
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "count": ""
}
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/generate/avatar Initials Avatar (SVG)

Generate a crisp SVG avatar from initials. Returns image/svg+xml — use directly as an <img> src URL. No external API, pure local.

ParameterTypeDescription
nameoptional string Full name e.g. "John Doe" (default: Viper API)
sizeoptional string Width/height in px (default: 80, max: 400)
bgoptional string Background hex color without # (default: 7c3aed)
coloroptional string Text hex color without # (default: ffffff)
roundedoptional string true = circle, false = rounded square (default: true)
generate/avatar.sh
GET /api/v1/generate/avatar
X-API-Key: viper_your_key_here

# Query params:
#   name=  (optional)
#   size=  (optional)
#   bg=  (optional)
#   color=  (optional)
#   rounded=  (optional)

              
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/generate/invoice Invoice PDF Generator

Generate a professional invoice PDF from structured JSON. Returns base64-encoded PDF. Requires pdfkit: npm install pdfkit.

ParameterTypeDescription
invoice_numberoptional string Invoice number (default: INV-001)
dateoptional string Issue date YYYY-MM-DD (default: today)
due_dateoptional string Due date YYYY-MM-DD
fromoptional string Object: { name, email, address }
tooptional string Object: { name, email, address }
itemsrequired string Array of { description, qty, price }
currencyoptional string Currency code (default: USD)
tax_percentoptional string Tax % to add (default: 0)
notesoptional string Optional footer note
generate/invoice.sh
POST /api/v1/generate/invoice
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "invoice_number": "",
  "date": "",
  "due_date": "",
  "from": "",
  "to": "",
  "items": "",
  "currency": "",
  "tax_percent": "",
  "notes": ""
}
Live Playground — 1 credit per run
200 OK
response.json

⚡ Date & Time

GET /api/v1/datetime/now Current Time

Get the current UTC time in multiple formats (ISO, unix, readable).

ParameterTypeDescription
tzoptional string IANA timezone e.g. Africa/Lagos (default: UTC)
datetime/now.sh
GET /api/v1/datetime/now
X-API-Key: viper_your_key_here

# Query params:
#   tz=  (optional)

              
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/datetime/convert Convert Timezone

Convert a datetime from one timezone to another.

ParameterTypeDescription
datetimerequired string ISO datetime string
fromrequired string Source IANA timezone
torequired string Target IANA timezone
datetime/convert.sh
GET /api/v1/datetime/convert
X-API-Key: viper_your_key_here

# Query params:
#   datetime=  
#   from=  
#   to=  

              
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/datetime/diff Date Difference

Get the difference between two dates in multiple units.

ParameterTypeDescription
fromrequired string Start date YYYY-MM-DD
tooptional string End date YYYY-MM-DD (default: today)
datetime/diff.sh
GET /api/v1/datetime/diff
X-API-Key: viper_your_key_here

# Query params:
#   from=  
#   to=  (optional)

              
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/datetime/add Add / Subtract

Add or subtract days/months/years from a date.

ParameterTypeDescription
daterequired string Base date YYYY-MM-DD
amountrequired string Amount (negative to subtract)
unitrequired string days|weeks|months|years
datetime/add.sh
GET /api/v1/datetime/add
X-API-Key: viper_your_key_here

# Query params:
#   date=  
#   amount=  
#   unit=  

              
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/datetime/format Format Date

Format a date in any strftime-style pattern or named format.

ParameterTypeDescription
daterequired string Date string
formatoptional string Output format string (default: ISO)
timezoneoptional string IANA timezone
datetime/format.sh
GET /api/v1/datetime/format
X-API-Key: viper_your_key_here

# Query params:
#   date=  
#   format=  (optional)
#   timezone=  (optional)

              
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/datetime/businessday Business Day Check

Check if a date is a business day (Mon-Fri).

ParameterTypeDescription
dateoptional string Date YYYY-MM-DD (default: today)
datetime/businessday.sh
GET /api/v1/datetime/businessday
X-API-Key: viper_your_key_here

# Query params:
#   date=  (optional)

              
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/datetime/timezone Timezone Lookup

Get full timezone info — local time, UTC offset, DST status — for any IANA timezone or city name. Powered by WorldTimeAPI (free, no key).

ParameterTypeDescription
tzoptional string IANA timezone e.g. Africa/Lagos, America/New_York
cityoptional string City name e.g. Lagos, London, Tokyo (alternative to tz)
datetime/timezone.sh
GET /api/v1/datetime/timezone
X-API-Key: viper_your_key_here

# Query params:
#   tz=  (optional)
#   city=  (optional)

              
Live Playground — 1 credit per run
200 OK
response.json

⚡ Finance

GET /api/v1/finance/rates Exchange Rates

Live FX rates for 150+ currencies. Needs EXCHANGERATE_API_KEY.

ParameterTypeDescription
baseoptional string Base currency (default: USD)
finance/rates.sh
GET /api/v1/finance/rates
X-API-Key: viper_your_key_here

# Query params:
#   base=  (optional)

              
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/finance/convert Currency Converter

Convert an amount between any two currencies.

ParameterTypeDescription
fromrequired string Source currency e.g. USD
torequired string Target currency e.g. NGN
amountoptional string Amount (default: 1)
finance/convert.sh
GET /api/v1/finance/convert
X-API-Key: viper_your_key_here

# Query params:
#   from=  
#   to=  
#   amount=  (optional)

              
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/finance/symbols Currency Symbols

List all supported currency codes, names and symbols.

No parameters required.

finance/symbols.sh
GET /api/v1/finance/symbols
X-API-Key: viper_your_key_here

# No body or params needed — just the API key
Live Playground — 1 credit per run
200 OK
response.json

⚡ Network & Web

GET /api/v1/network/dns DNS Lookup

Resolve DNS records (A, AAAA, MX, TXT, NS, CNAME) for a domain.

ParameterTypeDescription
domainrequired string Domain name
typeoptional string Record type: A|AAAA|MX|TXT|NS|CNAME (default: A)
network/dns.sh
GET /api/v1/network/dns
X-API-Key: viper_your_key_here

# Query params:
#   domain=  
#   type=  (optional)

              
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/network/ssl SSL Certificate

Inspect a domain SSL/TLS certificate — expiry, issuer, SANs.

ParameterTypeDescription
domainrequired string Domain name (no https://)
network/ssl.sh
GET /api/v1/network/ssl
X-API-Key: viper_your_key_here

# Query params:
#   domain=  

              
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/network/headers HTTP Headers

Fetch the response headers returned by any URL.

ParameterTypeDescription
urlrequired string Full URL
network/headers.sh
GET /api/v1/network/headers
X-API-Key: viper_your_key_here

# Query params:
#   url=  

              
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/network/ping Ping Host

Check if a host is reachable and measure response time.

ParameterTypeDescription
hostrequired string Hostname or IP address
network/ping.sh
GET /api/v1/network/ping
X-API-Key: viper_your_key_here

# Query params:
#   host=  

              
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/network/domain-age Domain Age

Look up when a domain was first registered and calculate its age. Parses WHOIS data — no API key needed.

ParameterTypeDescription
domainrequired string Domain name e.g. google.com
network/domain-age.sh
GET /api/v1/network/domain-age
X-API-Key: viper_your_key_here

# Query params:
#   domain=  

              
Live Playground — 1 credit per run
200 OK
response.json

⚡ Host & IP

GET /api/v1/host/ip IP Geo-Info

Get country, region, city, ISP, ASN and coordinates for any IP.

ParameterTypeDescription
ipoptional string IPv4/IPv6 address (defaults to caller IP)
host/ip.sh
GET /api/v1/host/ip
X-API-Key: viper_your_key_here

# Query params:
#   ip=  (optional)

              
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/host/lookup Reverse DNS Lookup

Resolve an IP to its hostname (PTR record).

ParameterTypeDescription
iprequired string IPv4 or IPv6 address
host/lookup.sh
GET /api/v1/host/lookup
X-API-Key: viper_your_key_here

# Query params:
#   ip=  

              
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/host/whois WHOIS Lookup

Fetch raw WHOIS data for a domain or IP.

ParameterTypeDescription
queryrequired string Domain name or IP address
host/whois.sh
GET /api/v1/host/whois
X-API-Key: viper_your_key_here

# Query params:
#   query=  

              
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/host/ports Port Scanner

Scan common ports on a host and report open/closed status.

ParameterTypeDescription
hostrequired string Hostname or IP
host/ports.sh
GET /api/v1/host/ports
X-API-Key: viper_your_key_here

# Query params:
#   host=  

              
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/host/tech Tech Detection

Detect CMS, frameworks, CDN and server software from a site headers.

ParameterTypeDescription
urlrequired string Full URL including https://
host/tech.sh
GET /api/v1/host/tech
X-API-Key: viper_your_key_here

# Query params:
#   url=  

              
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/host/reputation IP Reputation

Check if an IP is a known proxy, VPN, datacenter or mobile network. Returns a risk score and flags. Powered by ip-api.com (free, no key).

ParameterTypeDescription
ipoptional string IPv4 address to check (defaults to caller IP)
host/reputation.sh
GET /api/v1/host/reputation
X-API-Key: viper_your_key_here

# Query params:
#   ip=  (optional)

              
Live Playground — 1 credit per run
200 OK
response.json

⚡ Detect & Analyse

POST /api/v1/detect/language Language Detection

Detect the written language of any text.

ParameterTypeDescription
textrequired string Text to analyse (min 10 chars for accuracy)
detect/language.sh
POST /api/v1/detect/language
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "text": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/detect/sentiment Sentiment Analysis

Analyse the emotional tone of text (positive/negative/neutral + score).

ParameterTypeDescription
textrequired string Text to analyse
detect/sentiment.sh
POST /api/v1/detect/sentiment
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "text": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/detect/spam Spam Detection

Heuristic spam score — checks for caps abuse, link density, spam phrases.

ParameterTypeDescription
textrequired string Text or email body to scan
detect/spam.sh
POST /api/v1/detect/spam
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "text": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/detect/readability Readability Score

Flesch-Kincaid readability grade and reading ease score.

ParameterTypeDescription
textrequired string Text to analyse (min 100 chars)
detect/readability.sh
POST /api/v1/detect/readability
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "text": ""
}
Live Playground — 1 credit per run
200 OK
response.json

⚡ Image Tools

GET /api/v1/image/generate AI Image Generator

Generate an AI image from a text prompt via Pollinations.ai (free, no key). Returns a direct image URL.

ParameterTypeDescription
promptrequired string Image description
widthoptional string Width in px (default: 1024)
heightoptional string Height in px (default: 1024)
modeloptional string Model name (default: flux)
image/generate.sh
GET /api/v1/image/generate
X-API-Key: viper_your_key_here

# Query params:
#   prompt=  
#   width=  (optional)
#   height=  (optional)
#   model=  (optional)

              
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/image/screenshot Website Screenshot

Capture a screenshot of any URL via Microlink (free tier).

ParameterTypeDescription
urlrequired string URL to screenshot
fullpageoptional string true for full-page capture
mobileoptional string true for mobile viewport
image/screenshot.sh
GET /api/v1/image/screenshot
X-API-Key: viper_your_key_here

# Query params:
#   url=  
#   fullpage=  (optional)
#   mobile=  (optional)

              
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/image/resize Resize & Convert

Resize an image by URL and convert format via images.weserv.nl (free CDN).

ParameterTypeDescription
urlrequired string Public image URL
widthoptional string Target width px
heightoptional string Target height px
fitoptional string cover|contain|fill|inside|outside (default: cover)
outputoptional string jpg|png|webp|gif (default: jpg)
image/resize.sh
POST /api/v1/image/resize
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "url": "",
  "width": "",
  "height": "",
  "fit": "",
  "output": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/image/ocr OCR — Image to Text

Extract text from any image (URL or base64). Powered by OCR.space free API (25,000 req/month). Add OCR_API_KEY to .env for higher limits.

ParameterTypeDescription
urloptional string Public image URL
base64optional string Base64-encoded image (raw or data URI)
languageoptional string Language code e.g. eng, fra, deu (default: eng)
scaleoptional string Upscale small images before OCR (default: true)
image/ocr.sh
POST /api/v1/image/ocr
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "url": "",
  "base64": "",
  "language": "",
  "scale": ""
}
Live Playground — 1 credit per run
200 OK
response.json

⚡ Data Conversion

POST /api/v1/data/json-to-csv JSON to CSV

Convert a JSON array to CSV format.

ParameterTypeDescription
datarequired string JSON array of objects
data/json-to-csv.sh
POST /api/v1/data/json-to-csv
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "data": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/data/csv-to-json CSV to JSON

Parse CSV text into a JSON array.

ParameterTypeDescription
csvrequired string CSV string (first row = headers)
delimiteroptional string Column delimiter (default: ,)
data/csv-to-json.sh
POST /api/v1/data/csv-to-json
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "csv": "",
  "delimiter": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/data/json-to-xml JSON to XML

Convert a JSON object to an XML string.

ParameterTypeDescription
datarequired string JSON object
rootoptional string Root element name (default: root)
data/json-to-xml.sh
POST /api/v1/data/json-to-xml
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "data": "",
  "root": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/data/xml-to-json XML to JSON

Parse an XML string into a JSON object.

ParameterTypeDescription
xmlrequired string XML string
data/xml-to-json.sh
POST /api/v1/data/xml-to-json
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "xml": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/data/json-to-yaml JSON to YAML

Convert JSON to YAML format.

ParameterTypeDescription
datarequired string JSON object or array
data/json-to-yaml.sh
POST /api/v1/data/json-to-yaml
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "data": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/data/yaml-to-json YAML to JSON

Parse YAML into a JSON object.

ParameterTypeDescription
yamlrequired string YAML string
data/yaml-to-json.sh
POST /api/v1/data/yaml-to-json
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "yaml": ""
}
Live Playground — 1 credit per run
200 OK
response.json

⚡ Weather

GET /api/v1/weather/current Current Weather

Live weather for any city or coordinates. Needs OPENWEATHER_API_KEY.

ParameterTypeDescription
cityoptional string City name e.g. Lagos
latoptional string Latitude
lonoptional string Longitude
unitsoptional string metric|imperial (default: metric)
weather/current.sh
GET /api/v1/weather/current
X-API-Key: viper_your_key_here

# Query params:
#   city=  (optional)
#   lat=  (optional)
#   lon=  (optional)
#   units=  (optional)

              
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/weather/forecast 5-Day Forecast

3-hour interval forecast for 5 days. Needs OPENWEATHER_API_KEY.

ParameterTypeDescription
cityoptional string City name
latoptional string Latitude
lonoptional string Longitude
unitsoptional string metric|imperial (default: metric)
weather/forecast.sh
GET /api/v1/weather/forecast
X-API-Key: viper_your_key_here

# Query params:
#   city=  (optional)
#   lat=  (optional)
#   lon=  (optional)
#   units=  (optional)

              
Live Playground — 1 credit per run
200 OK
response.json

⚡ Notify

POST /api/v1/notify/email Send Email

Send a transactional email via your configured SMTP server.

ParameterTypeDescription
torequired string Recipient email address
subjectrequired string Email subject
bodyrequired string Plain text or HTML body
fromoptional string Sender name (default: Viper API)
notify/email.sh
POST /api/v1/notify/email
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "to": "",
  "subject": "",
  "body": "",
  "from": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/notify/webhook Trigger Webhook

POST a JSON payload to any external URL.

ParameterTypeDescription
urlrequired string Webhook endpoint URL
payloadrequired string JSON object to send
headersoptional string Optional custom request headers
notify/webhook.sh
POST /api/v1/notify/webhook
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "url": "",
  "payload": "",
  "headers": ""
}
Live Playground — 1 credit per run
200 OK
response.json

⚡ Spotify

GET /api/v1/spotify/search Search Tracks

Search Spotify for tracks, albums or artists. Needs SPOTIFY_CLIENT_ID + SPOTIFY_CLIENT_SECRET.

ParameterTypeDescription
qrequired string Search query
typeoptional string track|album|artist (default: track)
limitoptional string Results (default: 10, max: 50)
spotify/search.sh
GET /api/v1/spotify/search
X-API-Key: viper_your_key_here

# Query params:
#   q=  
#   type=  (optional)
#   limit=  (optional)

              
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/spotify/track Track Details

Get full details for a Spotify track by ID.

ParameterTypeDescription
idrequired string Spotify track ID
spotify/track.sh
GET /api/v1/spotify/track
X-API-Key: viper_your_key_here

# Query params:
#   id=  

              
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/spotify/album Album Details

Get full details for a Spotify album by ID.

ParameterTypeDescription
idrequired string Spotify album ID
spotify/album.sh
GET /api/v1/spotify/album
X-API-Key: viper_your_key_here

# Query params:
#   id=  

              
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/spotify/artist Artist Details

Get full details for a Spotify artist by ID.

ParameterTypeDescription
idrequired string Spotify artist ID
spotify/artist.sh
GET /api/v1/spotify/artist
X-API-Key: viper_your_key_here

# Query params:
#   id=  

              
Live Playground — 1 credit per run
200 OK
response.json

⚡ Downloads

POST /api/v1/download/info Media Info

Get metadata (title, formats, duration) for a video URL without downloading.

ParameterTypeDescription
urlrequired string Video URL (YouTube, TikTok, Instagram, 50+ platforms)
download/info.sh
POST /api/v1/download/info
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "url": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/download/video Download Video

Download a video and return a direct link.

ParameterTypeDescription
urlrequired string Video URL
qualityoptional string best|worst|720p|480p|360p (default: best)
download/video.sh
POST /api/v1/download/video
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "url": "",
  "quality": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/download/audio Download Audio

Extract audio (MP3) from any video URL.

ParameterTypeDescription
urlrequired string Video URL
download/audio.sh
POST /api/v1/download/audio
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "url": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/download/thumbnail Download Thumbnail

Extract the thumbnail/cover image from a video URL.

ParameterTypeDescription
urlrequired string Video URL
download/thumbnail.sh
POST /api/v1/download/thumbnail
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "url": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/download/playlist Playlist Info

Get the track listing and metadata for a playlist.

ParameterTypeDescription
urlrequired string Playlist URL
download/playlist.sh
POST /api/v1/download/playlist
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "url": ""
}
Live Playground — 1 credit per run
200 OK
response.json

⚡ Meta

GET /api/v1/meta/og Open Graph Scraper

Extract Open Graph / Twitter card metadata from any URL.

ParameterTypeDescription
urlrequired string URL to scrape
meta/og.sh
GET /api/v1/meta/og
X-API-Key: viper_your_key_here

# Query params:
#   url=  

              
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/meta/sitemap Sitemap Parser

Fetch and parse a sitemap.xml, returning all URLs.

ParameterTypeDescription
urlrequired string Domain or full sitemap URL
meta/sitemap.sh
GET /api/v1/meta/sitemap
X-API-Key: viper_your_key_here

# Query params:
#   url=  

              
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/meta/status API Status

Returns live API status, version, total endpoints and categories.

No parameters required.

meta/status.sh
GET /api/v1/meta/status
X-API-Key: viper_your_key_here

# No body or params needed — just the API key
Live Playground — 1 credit per run
200 OK
response.json

⚡ Crypto & Blockchain

GET /api/v1/crypto/price Coin Price

Live price for any cryptocurrency in USD or other fiat.

ParameterTypeDescription
coinrequired string Coin ID e.g. bitcoin, ethereum, solana
currencyoptional string Fiat currency (default: usd)
crypto/price.sh
GET /api/v1/crypto/price
X-API-Key: viper_your_key_here

# Query params:
#   coin=  
#   currency=  (optional)

              
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/crypto/top Top Coins

Top N cryptocurrencies by market cap.

ParameterTypeDescription
limitoptional string Number of coins (default: 10, max: 100)
currencyoptional string vs currency (default: usd)
crypto/top.sh
GET /api/v1/crypto/top
X-API-Key: viper_your_key_here

# Query params:
#   limit=  (optional)
#   currency=  (optional)

              
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/crypto/history Price History

Historical daily closing prices for a coin.

ParameterTypeDescription
coinrequired string Coin ID e.g. bitcoin
daysoptional string Days of history (default: 7, max: 365)
crypto/history.sh
GET /api/v1/crypto/history
X-API-Key: viper_your_key_here

# Query params:
#   coin=  
#   days=  (optional)

              
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/crypto/convert Crypto Converter

Convert between crypto and fiat amounts at live rates.

ParameterTypeDescription
fromrequired string Coin ID or fiat code
torequired string Target coin ID or fiat code
amountoptional string Amount to convert (default: 1)
crypto/convert.sh
GET /api/v1/crypto/convert
X-API-Key: viper_your_key_here

# Query params:
#   from=  
#   to=  
#   amount=  (optional)

              
Live Playground — 1 credit per run
200 OK
response.json

⚡ URL Tools

POST /api/v1/url/shorten Shorten URL

Shorten any URL using TinyURL (free, no key needed).

ParameterTypeDescription
urlrequired string Full URL to shorten
url/shorten.sh
POST /api/v1/url/shorten
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "url": ""
}
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/url/expand Expand URL

Expand a shortened URL to its final destination.

ParameterTypeDescription
urlrequired string Short URL to expand
url/expand.sh
GET /api/v1/url/expand
X-API-Key: viper_your_key_here

# Query params:
#   url=  

              
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/url/parse Parse URL

Break a URL into all its components — protocol, host, path, params, hash.

ParameterTypeDescription
urlrequired string URL to parse
url/parse.sh
POST /api/v1/url/parse
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "url": ""
}
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/url/safe Safety Check

Heuristic safety check — detects phishing patterns, suspicious domains.

ParameterTypeDescription
urlrequired string URL to check
url/safe.sh
GET /api/v1/url/safe
X-API-Key: viper_your_key_here

# Query params:
#   url=  

              
Live Playground — 1 credit per run
200 OK
response.json

⚡ News

GET /api/v1/news/top Top Headlines

Latest top headlines by category and country. Needs GNEWS_API_KEY.

ParameterTypeDescription
categoryoptional string general|world|nation|business|technology|entertainment|sports|science|health (default: general)
countryoptional string Country code e.g. ng, us, gb (default: ng)
langoptional string Language code e.g. en (default: en)
limitoptional string Results (default: 10, max: 10 on free tier)
news/top.sh
GET /api/v1/news/top
X-API-Key: viper_your_key_here

# Query params:
#   category=  (optional)
#   country=  (optional)
#   lang=  (optional)
#   limit=  (optional)

              
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/news/search Search News

Search news articles by keyword. Needs GNEWS_API_KEY.

ParameterTypeDescription
qrequired string Search query
langoptional string Language code (default: en)
limitoptional string Results (default: 10)
news/search.sh
GET /api/v1/news/search
X-API-Key: viper_your_key_here

# Query params:
#   q=  
#   lang=  (optional)
#   limit=  (optional)

              
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/news/sources Sources Info

List all supported categories, countries and languages.

No parameters required.

news/sources.sh
GET /api/v1/news/sources
X-API-Key: viper_your_key_here

# No body or params needed — just the API key
Live Playground — 1 credit per run
200 OK
response.json

⚡ Temp Email

GET /api/v1/tempemail/generate Generate Email

Get a fresh temporary email address. No sign-up needed.

ParameterTypeDescription
domainoptional string Preferred domain e.g. 1secmail.com
tempemail/generate.sh
GET /api/v1/tempemail/generate
X-API-Key: viper_your_key_here

# Query params:
#   domain=  (optional)

              
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/tempemail/inbox Read Inbox

Check inbox for a temp email address.

ParameterTypeDescription
emailrequired string The temp email address
tempemail/inbox.sh
GET /api/v1/tempemail/inbox
X-API-Key: viper_your_key_here

# Query params:
#   email=  

              
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/tempemail/message Read Message

Read the full content of one email message.

ParameterTypeDescription
emailrequired string The temp email address
idrequired string Message ID from inbox
tempemail/message.sh
GET /api/v1/tempemail/message
X-API-Key: viper_your_key_here

# Query params:
#   email=  
#   id=  

              
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/tempemail/domains List Domains

List all available @domains for temp email generation.

No parameters required.

tempemail/domains.sh
GET /api/v1/tempemail/domains
X-API-Key: viper_your_key_here

# No body or params needed — just the API key
Live Playground — 1 credit per run
200 OK
response.json

⚡ Colour Tools

GET /api/v1/color/convert Convert Color

Convert any color between HEX, RGB, HSL and CMYK formats.

ParameterTypeDescription
valuerequired string Color value e.g. %23ff5733 (URL-encode the #)
fromoptional string hex|rgb|hsl (auto-detected if omitted)
color/convert.sh
GET /api/v1/color/convert
X-API-Key: viper_your_key_here

# Query params:
#   value=  
#   from=  (optional)

              
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/color/name Color Name

Get the nearest CSS color name for any hex code.

ParameterTypeDescription
hexrequired string Hex color e.g. ff5733 (without #)
color/name.sh
GET /api/v1/color/name
X-API-Key: viper_your_key_here

# Query params:
#   hex=  

              
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/color/contrast Contrast Ratio

WCAG contrast ratio between foreground and background colors.

ParameterTypeDescription
fgrequired string Foreground hex (without #)
bgrequired string Background hex (without #)
color/contrast.sh
GET /api/v1/color/contrast
X-API-Key: viper_your_key_here

# Query params:
#   fg=  
#   bg=  

              
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/color/random Random Color

Generate random color(s) with all format values.

ParameterTypeDescription
countoptional string How many colors (default: 1, max: 20)
color/random.sh
GET /api/v1/color/random
X-API-Key: viper_your_key_here

# Query params:
#   count=  (optional)

              
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/color/mix Mix Colors

Mix two or more hex colors with optional weights.

ParameterTypeDescription
colorsrequired string JSON array of hex colors e.g. ["#ff0000","#0000ff"]
weightsoptional string JSON array of mix weights e.g. [0.7,0.3]
color/mix.sh
POST /api/v1/color/mix
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "colors": "",
  "weights": ""
}
Live Playground — 1 credit per run
200 OK
response.json

⚡ Code Utilities

POST /api/v1/code/minify Minify Code

Minify JSON, HTML, CSS or JavaScript. Returns size saved.

ParameterTypeDescription
coderequired string Source code string
typeoptional string json|html|css|js (default: json)
code/minify.sh
POST /api/v1/code/minify
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "code": "",
  "type": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/code/format Format/Beautify

Prettify JSON or HTML with configurable indentation.

ParameterTypeDescription
coderequired string Source code string
typeoptional string json|html (default: json)
indentoptional string Spaces per indent (default: 2)
code/format.sh
POST /api/v1/code/format
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "code": "",
  "type": "",
  "indent": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/code/count Count Lines

Count total, code, comment and blank lines. Detects language.

ParameterTypeDescription
coderequired string Source code string
code/count.sh
POST /api/v1/code/count
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "code": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/code/escape Escape

Escape code for HTML, URL, Base64 or Unicode.

ParameterTypeDescription
coderequired string String to escape
typeoptional string html|url|base64|unicode (default: html)
code/escape.sh
POST /api/v1/code/escape
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "code": "",
  "type": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/code/unescape Unescape

Reverse HTML entities, URL encoding, Base64 or Unicode escapes.

ParameterTypeDescription
coderequired string Escaped string
typeoptional string html|url|base64|unicode (default: html)
code/unescape.sh
POST /api/v1/code/unescape
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "code": "",
  "type": ""
}
Live Playground — 1 credit per run
200 OK
response.json

⚡ AI Text

POST /api/v1/ai/complete Text Completion

Complete or generate text from any prompt using LLaMA 3 via Groq (free, fast). Add GROQ_API_KEY to .env — free key at console.groq.com.

ParameterTypeDescription
promptrequired string Your prompt (max 4000 chars)
max_tokensoptional string Max tokens to generate (default: 512, max: 1024)
ai/complete.sh
POST /api/v1/ai/complete
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "prompt": "",
  "max_tokens": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/ai/summarize Summarize Text

Summarise any long passage in short, medium or long form using AI. Requires GROQ_API_KEY.

ParameterTypeDescription
textrequired string Text to summarise (max 8000 chars)
lengthoptional string short | medium | long (default: medium)
ai/summarize.sh
POST /api/v1/ai/summarize
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "text": "",
  "length": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/ai/grammar Grammar Correction

Fix grammar, spelling and punctuation errors. Returns corrected text + list of issues found. Requires GROQ_API_KEY.

ParameterTypeDescription
textrequired string Text to correct (max 3000 chars)
ai/grammar.sh
POST /api/v1/ai/grammar
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "text": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/ai/explain Explain Anything

Get a clear explanation of any concept, question or code snippet at simple or technical level. Requires GROQ_API_KEY.

ParameterTypeDescription
textrequired string Concept, question or code snippet (max 2000 chars)
leveloptional string simple | technical (default: simple)
ai/explain.sh
POST /api/v1/ai/explain
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "text": "",
  "level": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/ai/tone Tone Rewriter

Rewrite text in a different tone — professional, casual, friendly, formal or persuasive. Requires GROQ_API_KEY.

ParameterTypeDescription
textrequired string Text to rewrite (max 2000 chars)
torequired string professional | casual | friendly | formal | persuasive
ai/tone.sh
POST /api/v1/ai/tone
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "text": "",
  "to": ""
}
Live Playground — 1 credit per run
200 OK
response.json

⚡ PDF Tools

POST /api/v1/pdf/generate Generate PDF

Create a clean, styled PDF from structured JSON — title, sections, body text and tables. Returns base64-encoded PDF. Requires: npm install pdfkit.

ParameterTypeDescription
titlerequired string Document title
subtitleoptional string Subtitle shown in header
sectionsoptional string Array of { heading, body, table: { headers[], rows[][] } }
footeroptional string Footer text
pdf/generate.sh
POST /api/v1/pdf/generate
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "title": "",
  "subtitle": "",
  "sections": "",
  "footer": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/pdf/extract Extract PDF Text

Extract all readable text from a PDF. Returns text, page count and word count. Requires: npm install pdf-parse.

ParameterTypeDescription
pdf_base64optional string Base64-encoded PDF
pdf_urloptional string Public URL of a PDF file (alternative to base64)
pdf/extract.sh
POST /api/v1/pdf/extract
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "pdf_base64": "",
  "pdf_url": ""
}
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/pdf/merge Merge PDFs

Merge 2–10 PDF files into one. Returns base64-encoded merged PDF. Requires: npm install pdf-lib.

ParameterTypeDescription
pdfsrequired string Array of 2–10 base64-encoded PDF strings
pdf/merge.sh
POST /api/v1/pdf/merge
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "pdfs": ""
}
Live Playground — 1 credit per run
200 OK
response.json

⚡ Security

GET /api/v1/security/pwned Password Breach Check

Check if a password has appeared in known data breaches using HIBP k-anonymity. Only the first 5 chars of the SHA1 hash are sent — your password is never transmitted. Free, no key needed.

ParameterTypeDescription
passwordrequired string Password to check (k-anonymity — never sent in full)
security/pwned.sh
GET /api/v1/security/pwned
X-API-Key: viper_your_key_here

# Query params:
#   password=  

              
Live Playground — 1 credit per run
200 OK
response.json
GET /api/v1/security/headers Security Headers Audit

Fetch a URL and audit its HTTP security headers — HSTS, CSP, X-Frame-Options, Referrer-Policy and more. Returns a letter grade and score.

ParameterTypeDescription
urlrequired string Full URL to audit e.g. https://example.com
security/headers.sh
GET /api/v1/security/headers
X-API-Key: viper_your_key_here

# Query params:
#   url=  

              
Live Playground — 1 credit per run
200 OK
response.json
POST /api/v1/security/csp CSP Analyser

Analyse a Content-Security-Policy header string and flag unsafe directives (unsafe-inline, unsafe-eval, wildcards). Returns a score and issue list.

ParameterTypeDescription
policyrequired string Full CSP header string e.g. "default-src 'self'; script-src 'unsafe-inline'"
security/csp.sh
POST /api/v1/security/csp
X-API-Key: viper_your_key_here

Content-Type: application/json

{
  "policy": ""
}
Live Playground — 1 credit per run
200 OK
response.json

⚠️ Error Codes

CodeNameDescription
401UnauthorizedMissing or invalid API key
403ForbiddenAccount suspended or key disabled
404Not FoundEndpoint does not exist
429Too Many RequestsMonthly quota exhausted — upgrade your plan
500Server ErrorUpstream error — retry after a moment