Product Guide

Guide

Everything you need to know about Signal shoot

Getting Started

1

Create an account

This is a quick overview. For step-by-step implementation details, see the Setup Guide tab. Click "Sign in" and authenticate with your GitHub account. The OAuth flow redirects you to GitHub, you authorize Signal shoot, and Signal shoot redirects you back to the dashboard. On your first sign-in, Signal shoot automatically creates your developer account and provisions your first app with a unique App ID, a live API key (fb_live_...), and a test API key (fb_test_...). There is no separate registration form or email verification step.

2

Copy your API key

After your first sign-in, Signal shoot redirects you to Settings and displays your API keys once. Copy them immediately — they cannot be shown again. You get two keys: a live key (fb_live_...) for production and a test key (fb_test_...) for development. Feedback sent with the test key is stored separately and does not appear in your production inbox, so you can test freely without noise. Test keys expire 1 hour after generation. If the key has expired, regenerate a new one from Settings. If you lose a key or suspect compromise, regenerate from Settings at any time — the old key is invalidated immediately.

3

Add feedback to your app

Add one fetch() call to your app — in a contact form, bug report button, or feedback modal. The code looks like this: POST to https://api.signalshoot.com/v1/ingest/{YOUR_APP_ID} with an X-API-Key header and a JSON body containing type, message, and optionally channel, user_id, and metadata. For example: fetch(url, { method: 'POST', headers: { 'Content-Type': 'application/json', 'X-API-Key': 'fb_live_...' }, body: JSON.stringify({ type: 'bug', message: userInput, channel: 'contact-form' }) }). That is the entire integration. The Setup Guide page has copy-paste snippets for React Native, Swift, Kotlin, and other platforms.

4

Verify the API connection

Send your first request using the test API key (fb_test_...) so it does not mix with real production data. Use cURL, Postman, or your app's test environment to hit the real Ingest API. Test-key submissions are stored separately and do not appear in the production inbox by default — enable the "Test data" toggle in the inbox filter bar to verify arrival. Test keys expire after 1 hour, so they cannot be used for long-term production use. Once verified, switch to the live key (fb_live_...). Note that feedback sent with the live key counts toward the monthly limit for Free and Pro plans.

5

Start triaging

Once feedback starts arriving, open the inbox and work through items. A typical triage session: filter to "unread only" or "high priority only" to focus on what needs attention. Open each item, read the message and any attached metadata (device, OS, app version). Set the status to "in progress" if you are investigating, or "resolved" if it is already fixed. Add tags to group related reports — e.g. tag three separate reports about the same crash with "timezone-bug". Create an action item if the feedback requires a code change, and link related reports to it. Write a reply if the user included their user_id. As feedback accumulates over days and weeks, the dashboard's recurring topics section reveals which tags appear most often, showing you where to focus your development effort.