Skip to main content
This quickstart uses the Web SDK, the fastest path to a live ad. For iOS, Android, React, the Publisher Widget, AdsMCP or the REST API, see those pages. If you have not read Choosing your integration path, read it first: your integration path determines which demand can serve on your surface.
1

Get your API key and slot ID

Sign in at app.adgentek.ai. Your API key is under Settings, API Keys. Your slot ID is the placement you want to fill, under Inventory, Surfaces.You need both — the SDK will not initialise without them.
2

Add the SDK

Add the script tag to your page, before the closing body tag:
Then add a container where the ad should render:
3

Initialise

init() only stores configuration — it does not request or render anything.
4

Request and render an ad

Pass the conversation turns. showAd() requests an ad, renders it into your container, and fires its tracking pixels:
It resolves to the ad object, or to null on a no-fill.
Use getAd() instead if you want to render the ad yourself — for example to compare our bid_price against other demand first. It renders nothing and fires nothing, so you take on the tracking obligation. See Running your own auction.
5

Verify

Open your browser DevTools, Network tab. Trigger a conversation turn with commercial intent (for example, ask about mattresses or SUVs). Confirm:
  1. A get-ad request fires and returns an ad payload.
  2. When the ad renders, an impression pixel request fires from the page.
The impression pixel firing from the browser is what makes the impression billable. showAd() handles this automatically. Never fire it from your backend.

Next steps

Web SDK reference

Every method, the ad object’s fields, and bid_price.

Publisher controls

Category blocks, brand blocklists, frequency caps, floors.

Ad formats

Enable Spark and other formats for your surface.