In-app feedback
Send bug reports, ideas, questions and praise from your app to RevenueHog with the keyless SDK feedback endpoint, or from your servers with an API key.
RevenueHog stores feedback your users write (bugs, ideas, questions and praise) next to their revenue. There are two ingest paths with the same body:
| Path | Auth | Use from |
|---|---|---|
POST /api/sdk/v1/feedback | None, or an App Attest device token | Your app |
POST /api/v1/feedback | API key (Bearer rh_live_…) | Your servers. See Feedback API. |
No SDK method wraps feedback yet; send a plain HTTP request.
Send feedback from the app
POST /api/sdk/v1/feedback
Content-Type: application/json
{
"bundleId": "com.example.app",
"kind": "bug",
"message": "The export button does nothing on iPad.",
"rating": 2,
"platform": "ios",
"appUserId": "user_42",
"metadata": { "appVersion": "2.4.0", "screen": "export" }
}{ "ok": true, "id": "…" }Fields
Prop
Type
Errors
| Status | Body |
|---|---|
400 | invalid JSON, missing bundleId, invalid kind, message is required, message is too long (max 5000), data must be an object, metadata is too large (max 8192 bytes), rating must be an integer from 1 to 5 |
401 | invalid device token (only when an unknown dt_ token is sent) |
429 | rate_limited with retry-after |
An unresolvable bundle ID returns { "ok": true } and stores nothing.
What happens next
SDK feedback is stored with source sdk, attested when a device token was sent, and is never test data. Non-test feedback is posted to Slack when you have routing set up. It appears on the Feedback page.
Related
Last updated on
Paywall experiments
Run A/B tests on the products and order your paywall offers, with sticky per-install assignment, exposure counting, weight epochs and readable results.
API overview
Reference for the RevenueHog HTTP APIs, covering the keyless SDK endpoints, the feedback API, paywall management, CSV export and server-to-server notifications.