We test together against the sandbox catalog before issuing a production key. What must pass:
| Check | Expected |
|---|---|
| Intent | Commercial query ("best budget laptop backpack") → card. Informational query ("how do transformers work") → ad: null, chat unchanged. |
| Rendering | Card and "Sponsored" label appear; images load (CSP img-src OK); layout responsive on mobile and desktop. |
| Click | /c/{token} returns 302 to the tracking link; a test conversion attributes to your publisher ID. |
| Geo | Different geo values → different inventory (e.g. MY vs BR). |
| Resilience | 429 and a forced timeout → assistant reply still shown, no card, no error to the user. |
| Logging | You log our request_id per call so incidents can be traced. |
From you during testing: staging access for us, request_id logging, someone who can tweak the client code same day.
Go-live: after green tests we issue the production key + URL and agree throughput per key based on your stated volume. You swap the key/URL in secrets and release. Monitor the first days: share of turns with a card, CTR, 429 count — we do the same on our side.
Common issues: images blank → CSP img-src; card never appears → check geo is sent and the key is the sandbox one; card link opens your domain → you're wrapping click_url; chat hangs on errors → missing fail-soft/timeout.
Was this article helpful?
That’s Great!
Thank you for your feedback
Sorry! We couldn't be helpful
Thank you for your feedback
Feedback sent
We appreciate your effort and will try to fix the article