Skip to content

DeepAudit AI API

Version 1 · Last updated May 21, 2026

The DeepAudit AI API runs SEO audits on any public web page and returns a structured report — overall score, letter grade, prioritized issues with fix snippets, category breakdown, a shareable report URL, and a PDF. It is the API behind the DeepAudit AI Zapier integration. The API is operated by Axion Deep Labs, Inc. (Axion Deep Digital).

Base URL

https://juxr2ms3i6trxezehorzgwceli0bgcbe.lambda-url.us-east-1.on.aws

All endpoints below are relative to this base URL. All requests and responses are JSON.

Authentication

Every request is authenticated with an API key passed as a bearer token:

Authorization: Bearer da_your_api_key

Get a key free at axiondeepdigital.com/api-access. Signup is a magic link sent to your email — no password. You can regenerate a key at any time at /api-access/manage; the previous key is revoked immediately.

Credits & quota

The free plan includes 10 credits per calendar month, resetting on the 1st. A quick scan costs 1 credit; a deep scan costs 2. Remaining credits are returned on every audit response and from /v1/whoami. A request that would exceed your quota returns 429.

POST /v1/audit — run an audit

Request body:

{
  "url": "https://example.com",   // required — public URL to audit
  "scanType": "quick",            // "quick" (1 credit) or "deep" (2 credits)
  "callbackUrl": "https://..."    // optional — see Asynchronous mode
}

Synchronous (quick scan)

A quick scan without a callbackUrl returns the full report in the response. It typically takes 30–40 seconds.

curl -X POST "$BASE/v1/audit" \
  -H "Authorization: Bearer da_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://example.com","scanType":"quick"}'

Asynchronous (deep scan, or any scan with a callback)

A deep scan crawls up to 50 pages and takes a few minutes. Provide a callbackUrl and the API responds immediately with 202, then POSTs the finished report to your callback URL when the audit completes. This is how the Zapier integration handles long-running audits.

HTTP 202
{ "status": "processing",
  "message": "Audit started. The finished report will be delivered to the callback URL." }

Without a callback, a deep scan returns 202 with an auditId you poll for (see below).

GET /v1/audit — poll or retrieve

GET /v1/audit?jobId=<auditId> polls an in-progress deep scan. While running it returns { "status": "processing" }; when done it returns the full report.

GET /v1/audit?id=<auditId> retrieves a completed report by ID. Reports are retained for 30 days. A report can only be retrieved with the API key that created it.

GET /v1/whoami — account & quota

Returns the account tied to the API key. Used by the Zapier integration to validate a connection.

{
  "email": "you@example.com",
  "plan": "free",
  "monthlyQuota": 10,
  "creditsRemaining": 7,
  "quotaResetsAt": "2026-06-01T00:00:00.000Z"
}

The audit report object

Every completed audit — synchronous, polled, or delivered via callback — returns the same shape:

{
  "auditId": "11111111-2222-3333-4444-555555555555",
  "targetUrl": "https://example.com",
  "auditedAt": "2026-05-21T19:02:41Z",
  "score": 67,                       // overall score, 0-100
  "grade": "C+",                     // letter grade
  "summary": "One-sentence plain-English summary.",
  "topIssues": [                     // up to 5, highest severity first
    {
      "category": "performance",
      "severity": "high",
      "title": "Mobile LCP is 4.2s",
      "detail": "Largest Contentful Paint above the 2.5s threshold.",
      "fix": "Compress hero image and defer non-critical JS."
    }
  ],
  "categoryScores": {                // 0-100 per category
    "technical": 71, "content": 65, "onPage": 58, "social": 60,
    "security": 90, "performance": 52, "accessibility": 88,
    "aiReadiness": 60, "locality": 72
  },
  "reportUrl": "https://www.axiondeepdigital.com/r/<auditId>",
  "pdfUrl": "https://...amazonaws.com/reports/...pdf",
  "consultationUrl": "https://www.axiondeepdigital.com/booking?audit=<auditId>",
  "creditsRemaining": 6,
  "quotaResetsAt": "2026-06-01T00:00:00.000Z"
}

Errors

Errors return a non-2xx status with a JSON body of { "error": "<code>", "message": "<text>" }.

400  invalid_json / missing_url / private_url  — bad or missing input
401  missing_api_key / invalid_api_key        — no or unrecognized key
403  not_authorized                           — report belongs to another key
404  audit_not_found / job_not_found          — unknown or expired ID
429  quota_exceeded                           — monthly credits exhausted
502  audit_failed                             — the audit could not complete

Support

Questions about the API or the Zapier integration: labs@axiondeep.com.