Explore — Quick Start
Show AI-generated questions on an article page. A reader picks one and lands on your answers page, so one article leads to the next.
This takes about ten minutes. At the end you have a working page.
Before you start
Explore is enabled per environment. Miso generates the related questions on a schedule, and that job runs only for the environments Miso turns it on for. Ask your Miso representative, or write to support@askmiso.com, before you start.
Get your keys. Open the Miso Dashboard, pick your environment, and copy the keys from Overview.

| Key | Where it belongs |
|---|---|
| Publishable | Browser code. The SDK uses this one. |
| Secret | Your server. Never ship it to a browser. |
Put your content in Miso. Explore generates its questions from one article in your catalog, so that article has to be there:
curl -X POST "https://api.askmiso.com/v1/products" \
-H "X-Api-Key: YOUR_SECRET_KEY" \
-H "Content-Type: application/json" \
-d '{
"data": [
{
"product_id": "art_001",
"title": "Your article title",
"url": "https://example.com/your-article",
"published_at": "2026-06-12T09:00:00Z",
"html": "<p>The full article body.</p>"
}
]
}'
No content of your own yet? Load a real one in a few minutes. Example: Wikinews parses a free public archive of about 20,900 news articles and sends it to Miso, so you have something to ask questions about.
See Integrating Your Data for batches and the other upload methods.
Have an answers page. A reader who picks a question needs somewhere to
land. Build it with Ask — Quick Start first, or point useLink at
any page that accepts a question.
1. Install the SDK
<script
async
src="https://cdn.jsdelivr.net/npm/@miso.ai/client-sdk@1/dist/umd/miso.min.js"
></script>
npm install --save @miso.ai/client-sdk
The script tag loads the SDK asynchronously. Use the misocmd queue, which
runs your function as soon as the SDK is ready.
2. Add the elements
Explore uses custom elements. Put them where the questions belong, usually under the article body:
<miso-explore>
<miso-related-questions></miso-related-questions>
<miso-query></miso-query>
</miso-explore>
miso-related-questions lists the generated questions. miso-query adds a box
for a reader who wants to ask their own.
3. Start the workflow
const misocmd = window.misocmd || (window.misocmd = []);
misocmd.push(() => {
const client = new MisoClient('YOUR_PUBLISHABLE_API_KEY');
const workflow = client.ui.explore;
// Which article to generate questions for. This id must exist
// in your catalog.
workflow.useApi({ product_id: 'art_001' });
// Where a question sends the reader.
workflow.useLink(question =>
`/ask.html?q=${encodeURIComponent(question)}`
);
workflow.start();
});
Three things to set:
| Call | What it controls |
|---|---|
useApi({ product_id }) |
The article Miso reads. Render this from your CMS, so each page passes its own id. |
useLink(fn) |
The destination. Return the URL of your answers page. |
start() |
Runs the workflow and renders the questions. |
The complete page
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>Miso Explore</title>
<script
async
src="https://cdn.jsdelivr.net/npm/@miso.ai/client-sdk@1/dist/umd/miso.min.js"
></script>
</head>
<body>
<article>
<h1>Your article title</h1>
<p>The article body.</p>
</article>
<miso-explore>
<miso-related-questions></miso-related-questions>
<miso-query></miso-query>
</miso-explore>
<script>
const misocmd = window.misocmd || (window.misocmd = []);
misocmd.push(() => {
const client = new MisoClient('YOUR_PUBLISHABLE_API_KEY');
const workflow = client.ui.explore;
workflow.useApi({ product_id: 'art_001' });
workflow.useLink(question =>
`/ask.html?q=${encodeURIComponent(question)}`
);
workflow.start();
});
</script>
</body>
</html>
Check it works
Open the page. Miso lists questions about that one article. Select one, and your answers page opens with the question in the URL.

| Symptom | Cause |
|---|---|
| No questions appear | Explore is not enabled for this environment, or the product_id is not in your catalog. |
| The questions are generic | The article has little text. Send the body in html or description. |
| A question opens the wrong page | useLink returns a path your site does not serve. |
Next
- Ask — Quick Start — the answers page these questions lead to.
- Hybrid Search — Quick Start — search results and an answer together.
- Explore module reference — every element and option.
- Explore Questions API — generate the questions from your own back end.
