API Documentation
Analyze emails and SMS programmatically using the DelPhish REST API. Requires a Pro plan with an API key.
Authentication
All API requests require a Bearer token. Use your API key (created in Account → API Keys) as the token.
API keys start with dp_. Keep them secret. You can revoke a key at any time from your account page.
Rate Limits
429 Too Many Requests response with a Retry-After header.
Endpoints
Analyze an email or SMS message for phishing indicators. Returns a full analysis with scores, risk factors, URL intelligence, and classification.
Request Body
| Field | Type | Description |
|---|---|---|
sender | string | Sender email address or phone number |
subject | string | Email subject line (empty for SMS) |
body | string | required Email body (HTML or plain text) or SMS message |
urls | string | Newline-separated list of URLs found in the message |
headers | string | Raw email headers (for SPF/DKIM/DMARC checks) |
attachments | string | Comma-separated attachment filenames |
message_type | string | "email" (default), "sms", "url" (link-only analysis), or "text" (text snippet) |
Example (curl)
Example (Python)
Response
List your analysis history. Paginated, newest first.
| Param | Type | Description |
|---|---|---|
page | int | Page number (default: 1) |
page_size | int | Results per page (default: 20, max: 100) |
Get full details of a specific analysis by ID.
Download a PDF report for an analysis. Returns application/pdf.
| Param | Type | Description |
|---|---|---|
language | string | "en" or "es" (default: "es") |
Analyze multiple messages in a single request. Max 10 messages per batch.
Request Body
Response Codes
| Code | Description |
|---|---|
200 | Success |
400 | Bad request (invalid input) |
401 | Unauthorized (missing or invalid API key) |
403 | Forbidden (feature not available on your plan) |
404 | Not found |
422 | Validation error |
429 | Rate limit exceeded |
500 | Internal server error |