REST API v1

API Documentation

Programmatically submit binaries, poll analysis status, and retrieve structured reports. Full REST API with real-time WebSocket updates.

Base URLhttps://api.binary2english.com/api/v1

Get Started in 3 Steps

Go from sign-up to your first analysis report in under five minutes.

1

Create an Account

Sign up with email or SSO. A 14-day free trial starts automatically with full API access.

Create account
2

Generate an API Key

Navigate to Settings and create a key with the scopes you need: read, write, or admin.

See auth docs
3

Submit Your First Binary

POST your binary to the analysis endpoint. 228 engines process it across 12 phases.

View endpoint

Authentication

All API requests require a Bearer token in the Authorization header. Generate keys from your dashboard at /settings/api-keys.

HTTP Header
Authorization: Bearer b2e_live_your_key_here

Scopes

read, write, admin

Keys are scoped to specific permissions

Storage

SHA-256 hashed

Full key shown only once at creation

Prefixes

b2e_live_ / b2e_test_

Production and sandbox environments

Endpoints

The B2E API provides 11 endpoints for binary analysis, status tracking, and report retrieval.

POST/api/v1/analysisRequires authentication

Submit a binary for analysis. Returns a job ID for polling.

curl -X POST https://api.binary2english.com/api/v1/analysis \
  -H "Authorization: Bearer b2e_live_your_key_here" \
  -F "[email protected]" \
  -F "output_formats=[\"pdf\",\"json\"]" \
  -F "dynamic_analysis=false"
GET/api/v1/analysis/{job_id}Requires authentication

Get the current status of an analysis including phase progress and engine counts.

curl https://api.binary2english.com/api/v1/analysis/job_a1b2c3d4e5 \
  -H "Authorization: Bearer b2e_live_your_key_here"
GET/api/v1/analysis/{job_id}/reportRequires authentication

Retrieve the full analysis report. Supports ?format=json|pdf|docx|sarif.

GET/api/v1/analysis/{job_id}/report/section/{n}Requires authentication

Retrieve a single report section (1-24). Useful for dashboard integrations.

GET/api/v1/analysis/{job_id}/vulnerabilitiesRequires authentication

Vulnerability findings with CVE matches, CWE classifications, and severity scores.

GET/api/v1/analysis/{job_id}/provenanceRequires authentication

Complete provenance chain with cryptographic signatures for audit verification.

POST/api/v1/validateRequires authentication

Quick pre-screen: runs Phase 1 only. Returns format, architecture, and basic threat indicators in under 5 seconds.

GET/api/v1/analysesRequires authentication

List all analyses with pagination, filtering by status/format/architecture/date, and sorting.

DELETE/api/v1/analysis/{job_id}Requires authentication

Permanently delete an analysis and all associated data. Requires admin scope.

GET/api/v1/usageRequires authentication

Current billing period metrics: API calls, analyses, storage, rate limit status.

GET/api/v1/health

System status: engine availability, queue depth, average processing time.

Rate Limits

Limits are enforced per API key. Upgrade your plan for higher throughput.

TierRequests / minAnalyses / moConcurrent Jobs
Starter60102
Professional30010010
EnterpriseCustomUnlimitedCustom

Rate limit headers are included in every response: X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset. When exceeded: HTTP 429 with Retry-After header.

Response Format

All responses follow a consistent envelope structure for predictable parsing.

Success Response200 OK
 1  {
 2    "status": "success",
 3    "data": { ... },
 4    "meta": {
 5      "request_id": "req_uuid",
 6      "timestamp": "2026-03-20T...",
 7      "api_version": "v1"
 8    }
 9  }
Error Response4xx / 5xx
 1  {
 2    "status": "error",
 3    "error": {
 4      "code": "analysis_not_found",
 5      "message": "No analysis found.",
 6      "docs_url": "https://docs..."
 7    },
 8    "meta": { ... }
 9  }

Ready to integrate?

Create a free account, generate an API key, and submit your first binary in minutes.