Feedzap
Documentation

Ship Feedzap in 5 minutes.

Paste a snippet, point users at the widget, and watch reports roll into your inbox with screenshots, selectors, and context attached.

Getting started

  1. Create a free account — magic link or Google, no credit card.
  2. Create a project. You'll land on the install page with a snippet pre-filled with your project key.
  3. Paste the snippet into your site's <head>. The widget mounts a floating pill that your users click to file a report.
  4. Reports appear in your Inbox in real time — screenshot, DOM selector, URL, browser and custom context.

Install the widget

Drop this snippet just before </body>. ReplaceYOUR_PROJECT_KEY with the key from your project's install page.

<script
  src="https://feedzap.vercel.app/widget.js"
  data-project="YOUR_PROJECT_KEY"
  defer
></script>

The widget is ~14 KB gzipped, loads async, and does not block rendering. It adds no third-party cookies and respects prefers-reduced-motion.

Attach user context

To tag reports with a signed-in user, set the identify payload after auth:

window.Feedzap?.identify({
  userId: "user_123",
  email: "ada@example.com",
  plan: "pro",
});

API reference

If you can't use the snippet (server-side, mobile, CLI), POST reports directly to the ingest endpoint.

POST /api/ingest

curl -X POST https://feedzap.vercel.app/api/ingest \
  -H "Content-Type: application/json" \
  -d '{
    "projectKey": "YOUR_PROJECT_KEY",
    "message": "Checkout button is dead on Safari 17",
    "url": "https://yourapp.com/checkout",
    "selector": "button[data-cta=pay]",
    "screenshot": "data:image/png;base64,...",
    "context": { "userId": "u_123", "plan": "pro" }
  }'

Responses

  • 201 — report accepted, returns { id, createdAt }.
  • 402 — monthly limit hit (free plan, 20 reports). Upgrade to Premium for unlimited.
  • 404 — project key not found.
  • 429 — rate limit exceeded.

Webhooks

Pipe new reports into Slack, Linear, or your own endpoint. Add a webhook URL under Project → Settings → Webhooks.

Payload

{
  "event": "report.created",
  "report": {
    "id": "rpt_01H...",
    "message": "Checkout button is dead",
    "url": "https://yourapp.com/checkout",
    "selector": "button[data-cta=pay]",
    "screenshotUrl": "https://...signed...",
    "context": { "userId": "u_123" },
    "createdAt": "2026-04-25T12:34:56Z"
  }
}

Each delivery is signed with an HMAC-SHA256 header X-Feedzap-Signature. We retry failed deliveries up to 5 times with exponential backoff.

Plans & limits

  • Free — 20 reports / month, unlimited projects, unlimited teammates.
  • Premium — $29 / month. Unlimited reports, AI auto-insights, priority support.

Usage resets on the 1st of each month. See pricing for details.

Team & invites

Invite teammates from Project → Team. They'll get a magic-link invite; on both plans, seats are unlimited.

Roles: owner (billing + delete), admin (settings + invites), member (inbox + insights).

Still stuck?

We answer every email. Reach out and we'll help you ship.

Get started free