Troubleshooting
Quick reference
Section titled “Quick reference”| Status | Message | Fix |
|---|---|---|
401 | Token has expired | Re-run OTP verification to get a fresh token. Never cache tokens across sessions. |
403 | Origin not allowed | Add your domain or bundle ID to Settings → API Settings → Allowed Domains. |
403 | Not authorized | The bearer token was issued for a different userId than the one in the path. Fetch a fresh token. |
404 | Banner or collection point not found | Verify assetId, bannerId, and X-Org-Id. Re-run the asset and collection point fetch steps. |
409 | All consents already completed | Consent links are single-use. Issue a new link if the user needs to re-consent. |
429 | Too many requests | Respect the Retry-After header before retrying. Contact support for a raised limit. |
503 | OTP delivery failed | Transient MSG91 failure. Retry with exponential backoff. |
Banner not loading
Section titled “Banner not loading”- Check the browser console for network errors on the banner fetch (
/api/v1/internal/banners/…). - Confirm
assetIdandbannerIdare not swapped —bannerIdis the collection pointdisplay_id. - Confirm the SDK base URL points to
https://trukit-dev.truconsent.io, not the management API URL.
Consent not recording
Section titled “Consent not recording”- Confirm
X-Org-Idis set — this routes the request to your tenant schema. - Confirm
X-API-Keyuses the consent-scope key, not the admin key. - Confirm
collectionPointIdin the request path matches a collection point in your dashboard.
OTP not delivered
Section titled “OTP not delivered”- Phone number must be E.164 format:
+919876543210. - Check MSG91 delivery reports under Settings → Notifications in the dashboard.
Still stuck?
Section titled “Still stuck?”Open a support ticket from the platform dashboard or email support with your X-Org-Id, the full request (minus API key), and the response body.