API Presend pour développeurs

Points de terminaison serveur gratuits pour des tâches courantes, plus des outils intégrables côté client. Aucune clé API requise. Aucune inscription.

Points de terminaison serveur

Hébergés sur le réseau edge de Cloudflare, ils renvoient du JSON. Usage raisonnable uniquement — aucun SLA officiel, un trafic intensif ou automatisé peut être limité sans préavis.

POST /api/hash

Returns SHA-256, SHA-1 and SHA-512 for any file up to 20MB.

curl -X POST --data-binary @file.pdf \
  https://presend.pages.dev/api/hash

# {"size_bytes":17,"hashes":{"sha256":"...","sha1":"...","sha512":"..."}}

GET /api/url-clean

Strips 60+ tracking parameters (utm_*, fbclid, gclid...) from a URL.

curl "https://presend.pages.dev/api/url-clean?url=https://example.com/?utm_source=x"

# {"clean":"https://example.com/","removed":1,"valid":true}

POST /api/url-clean

Same, batched — up to 100 URLs per request.

curl -X POST -H "Content-Type: application/json" \
  -d '{"urls":["https://a.com?fbclid=x","https://b.com?gclid=y"]}' \
  https://presend.pages.dev/api/url-clean

GET /api/ip

Returns the caller's IP with geolocation, currency, language and EU/VPN flags.

curl https://presend.pages.dev/api/ip

GET /api/uuid

Generates random UUIDs (v4), up to 100 per request.

curl "https://presend.pages.dev/api/uuid?count=5"

GET /api/base64

Encode or decode Base64 text.

curl "https://presend.pages.dev/api/base64?action=encode&text=hello"

GET /api/jwt-decode

Decodes a JWT's header and payload (does not verify the signature).

curl "https://presend.pages.dev/api/jwt-decode?token=eyJhbGci..."

GET /api/timestamp

Current time, or convert between Unix timestamp and ISO date.

curl "https://presend.pages.dev/api/timestamp?unix=1700000000"

GET /api/color

Convert between hex, RGB and HSL color formats.

curl "https://presend.pages.dev/api/color?hex=ff5733"

GET /api/user-agent

Parses a User-Agent string into browser, OS and device type.

curl "https://presend.pages.dev/api/user-agent"

GET /api/password

Generates a cryptographically secure password with entropy estimate.

curl "https://presend.pages.dev/api/password?length=20&symbols=1"

GET /api/email-validate

Validates email syntax and checks for a valid MX record (real deliverability check).

curl "https://presend.pages.dev/api/email-validate?email=foo@example.com"

GET /api/favicon

Fetches the favicon URL for any domain.

curl "https://presend.pages.dev/api/favicon?domain=github.com"

GET/POST /api/csv-json

Converts between JSON and CSV. Nested objects are stringified, not flattened.

curl -X POST -H "Content-Type: application/json" \
  -d '{"direction":"json-to-csv","data":"[{\"a\":1}]"}' \
  https://presend.pages.dev/api/csv-json

GET /api/password-breach

Checks if a password appears in known data breaches (HIBP k-anonymity — your password is never sent or logged in full).

curl "https://presend.pages.dev/api/password-breach?password=..."

GET /api/email-disposable

Detects disposable/throwaway email providers from a list of 576+ known domains.

curl "https://presend.pages.dev/api/email-disposable?email=foo@mailinator.com"

GET /api/security-headers

Audits HTTP security headers (CSP, HSTS, X-Frame-Options...) and gives a letter grade.

curl "https://presend.pages.dev/api/security-headers?url=https://example.com"

GET /api/url-reputation

Checks a URL against URLhaus, a public malware/phishing database.

curl "https://presend.pages.dev/api/url-reputation?url=https://example.com"

GET /api/subdomains

Passive subdomain discovery via Certificate Transparency logs (crt.sh) — for auditing your own attack surface. Note: depends on crt.sh, which has occasional downtime outside our control.

curl "https://presend.pages.dev/api/subdomains?domain=example.com"

Outils côté client (à intégrer)

Les outils de traitement de fichiers (suppression EXIF, compression PDF, etc.) s'exécutent entièrement dans le navigateur — rien n'est envoyé, il n'y a donc pas de point de terminaison serveur pour ceux-ci. Intégrez-les directement :

<iframe 
  src="https://presend.pages.dev/tools/exif-remover?embed=1" 
  width="100%" 
  height="600" 
  frameborder="0"
></iframe>

Outils disponibles

File Hash Checker

SHA-256 / SHA-1 / SHA-512 — server API available

Docs →

URL Cleaner

Strip tracking params — server API available

Docs →

IP Geolocation

IP, location, currency — server API available

Docs →

UUID Generator

Random UUIDs — server API available

Docs →

Base64 Encoder/Decoder

Encode/decode text — server API available

Docs →

JWT Decoder

Decode JWT tokens — server API available

Docs →

Timestamp Converter

Unix/ISO date conversion — server API

Docs →

Color Converter

Hex/RGB/HSL — server API

Docs →

User-Agent Parser

Browser/OS detection — server API

Docs →

Password Generator API

Secure passwords with entropy — server API

Docs →

Email Validator

Syntax + MX record check — server API

Docs →

Favicon Fetcher

Get any site's favicon — server API

Docs →

CSV/JSON Converter

Bidirectional — server API

Docs →

Password Breach Check

HIBP-powered — server API

Docs →

Disposable Email Detector

576+ known domains — server API

Docs →

Security Headers Analyzer

CSP, HSTS grade — server API

Docs →

URL Reputation Check

Malware/phishing lookup — server API

Docs →

Attack Surface Discovery

Passive subdomain enum — server API

Docs →

EXIF Remover

Strip GPS and metadata from photos (client-side)

Docs →

PDF Compress

Reduce PDF file size (client-side)

Docs →

Password Generator

Cryptographically secure passwords (client-side)

Docs →

GET /api/api-stats

Public usage counters per endpoint, aggregated by day. No cookies, no IP stored.

curl "https://presend.pages.dev/api/api-stats"

Paquet npm

Un client JS sans dépendance qui encapsule tous les points de terminaison ci-dessus.

npm install presend-api
const presend = require('presend-api');
const { uuids } = await presend.generateUuid(3);

View on npm

Widget intégrable

Ajoutez un outil fonctionnel directement sur votre site — sans iframe, propulsé par notre API. Compatible avec : url-cleaner, uuid, color.

<div data-presend-tool="url-cleaner"></div>
<script src="https://presend.pages.dev/widget.js" async></script>

Ajoutez data-badge="false" pour masquer le lien de crédit « Powered by Presend ».

Spécification OpenAPI

Spécification lisible par machine pour tous les points de terminaison serveur : openapi.json

Open Source

Tous les outils sont open source. Contribuez sur GitHub ou forkez pour vos propres projets. github.com/presendapp/presend