Product Guide

Guide

Everything you need to know about Signal shoot

Features

Core features (receive, reply, export, tags, translation, and more) ship on every plan. Automation (webhooks) starts at Pro. Usage limits vary by plan.

Ingest API

A single HTTP POST endpoint receives feedback from any platform — React Native, Flutter, Swift, Kotlin, or plain fetch. No SDK to install. Works with anything that speaks HTTP.

Fully Customizable Schema

You are not limited to bug/feedback/inquiry. Define any type you want — "report", "praise", "crash", "review", or anything that fits your app. The same applies to channels: use "contact-form", "settings-page", "onboarding-survey", or any string. You can also attach arbitrary metadata as a JSON object (app version, OS, device, screen name, user plan, etc.). The dashboard automatically picks up every type and channel you send — each appears as a filter button without any configuration. The detail view displays metadata as key-value pairs.

Feedback Inbox

All feedback lands in a single inbox. Filter by type, status, source, channel, or priority. Search by keyword. Quick-stat cards show unresolved, unread, needs-reply, and high-priority counts — click to filter. Pagination with configurable page sizes.

Tags, Priority & Status

Each feedback entry has three triage dimensions. Status tracks where it is in your workflow: "new" (just arrived, unreviewed), "in progress" (you're looking into it), "resolved" (fixed or answered), or "archived" (no longer relevant). Tags are free-form labels you create on the fly — type a tag name and press enter. Use them to group feedback by feature area ("map", "notifications", "billing"), by root cause ("crash", "ui-glitch", "missing-feature"), or by anything else that helps you spot patterns. Tags appear as filter options in the inbox and as aggregation categories on the dashboard. Priority (high, medium, low) lets you mark urgency. The "high priority only" toggle in the inbox lets you zero in on urgent reports during triage.

Reply to Users

When feedback includes a user_id, you can write a reply directly from the feedback detail view in the dashboard. Signal shoot stores the reply with sender marked as "developer". On the app side, call GET /v1/feedback/{app_id}/replies?user_id=xxx to retrieve all feedback entries for that user, each with its replies array. Each reply object contains an id, sender ("developer" or "user"), message text, and created_at timestamp. Your app displays these replies however you choose — an in-app notification, a message thread, a support chat view. For threaded follow-ups, the user sends a new POST request with parent_id set to the original feedback ID. Signal shoot adds this as a reply with sender "user" to the existing thread and reopens the feedback if it was resolved or archived. The conversation stays in one place: one feedback entry, multiple replies back and forth.

One-click Translation

Click the Translate button on any feedback detail view to translate the message. Signal shoot auto-detects the source language. On the first click in a browser tab, a consent dialog explains what is sent and you must acknowledge before the message is forwarded; subsequent clicks in the same tab skip the dialog. The translation appears inline — it is not saved permanently and Signal shoot re-translates on each click. Available on all plans at no extra cost.

Store Review Logging

On the Setup page, paste raw review text from App Store Connect, the Google Play Console, or Apple review board emails into the import field. The parser auto-detects: star rating (e.g. "2/5"), app version (e.g. "Version 2.1.0"), and the review source (App Store, Google Play, or Apple review guideline). Signal shoot creates a normalized draft with extracted metadata and pre-filled tags. You review the draft, adjust if needed, and submit it to your inbox. The result is a feedback entry with source set to "app_store" or "play_store", the rating stored as metadata, and the version number tagged — sitting next to your in-app submissions. This is a manual paste flow on all plans. Automated sync is planned for paid tiers.

Dashboard & Recurring Topics

Overview page showing unresolved count, feedback trends, breakdowns by type and source, recurring topics, and open action items. Gives you a quick picture of what needs attention.

Action Items

From any feedback detail view, you can create an action item — a task with a title that describes what needs to happen (e.g. "Fix timezone crash on schedule screen"). Action items have three statuses: todo (not started), doing (in progress), and done (shipped). You can link multiple feedback entries to the same action item. For example, if five users report the same crash, you create one action item and link all five reports to it. The feedback detail view shows which action item a report is linked to, and the action items list shows how many feedback entries are attached to each task. This gives you a clear picture: how many users are affected, what you decided to do about it, and whether it shipped.

Data Export

Export your feedback data in two ways. From the Inbox page, export one app at a time in CSV or JSON. From the Account page, export all apps together in JSON, including test data, replies, and action items. Export is available on all plans. Your data belongs to you — download it at any time.

Webhook Delivery

Register an HTTPS endpoint in Settings › Webhooks and Signal shoot will deliver feedback and reply events as POST requests — a natural fit for Zapier / n8n / Linear integrations. Webhooks require the Pro plan or higher. They are scoped to a single app; each app supports up to 5 endpoints. Delivery payloads carry the full feedback body plus metadata, so receivers should verify the Signal-Signature header (HMAC-SHA256) before acting on the content. Downgrading to Free keeps your endpoints registered but pauses delivery — re-upgrade to resume.