# Sitemap, robots and llms.txt
> Public files Jazui generates for each verified site: sitemap, robots.txt, llms.txt and Markdown for AI.
Source page: https://docs.jazui.com/api/site-files/en
Jazui generates on the fly, from your cache, blog and settings, the files search engines and AI look for on your website. They're public (no token), exist only for verified sites and can be cached for an hour.
## Addresses
| Path | Content |
|---|---|
| `/v2/sites/{site}/sitemap.xml` | Sitemap with dates and language alternates. With more than 50,000 addresses it's an index pointing to `sitemap-1.xml`, `sitemap-2.xml`… |
| `/v2/sites/{site}/robots.txt` | Your robots.txt, with the AI bots you blocked and the sitemap line. |
| `/v2/sites/{site}/llms.txt` | Your site's index for language models (llmstxt.org format). |
| `/v2/sites/{site}/llms-full.txt` | The same with each article's full content. |
| `/v2/sites/{site}/articles/{lang}/{slug}.md` | An article in Markdown, clean for AI. |
| `/v2/sites/{site}/visits.js` | Script that counts visits coming from AI answers. |
## Sitemap
It includes, without duplicates: published articles (with their translations as `hreflang`), each language's blog index, categories with articles (if you set their address template) and your cached pages answering `200`, without redirects. If you'd rather upload your own sitemaps, you can do so under **Sitemaps**.
`sitemap.xml`:
```xml
https://misitio.com/blog/como-funciona-el-prerender
2026-11-03T08:15:00+00:00
https://misitio.com/precios
2026-11-01T12:00:00+00:00
```
## robots.txt
It starts from the robots.txt you write in the site settings (or `User-agent: *` and `Allow: /`), adds a group with the AI bots you blocked in robots.txt and the `Sitemap:` line if you don't have one.
`robots.txt`:
```bash
User-agent: *
Allow: /
# AI bots blocked in Jazui
User-agent: CCBot
User-agent: Bytespider
Disallow: /
Sitemap: https://api.jazui.com/v2/sites/misitio.com/sitemap.xml
```
## llms.txt
It starts with your domain and a description (written in the site settings), continues with one section per language listing your articles (linked to their Markdown version) and ends with up to 1,000 of your cached pages.
`llms.txt`:
```bash
# misitio.com
> Zapatillas de trail y montaña con envío en 24 horas.
## Blog (es)
- [Cómo funciona el prerender](https://api.jazui.com/v2/sites/misitio.com/articles/es/como-funciona-el-prerender.md): Qué ven los bots de una SPA y cómo servirles el HTML completo. (https://misitio.com/blog/como-funciona-el-prerender)
## Optional
- [Precios](https://misitio.com/precios)
```
## Serving them on your domain
Search engines and AI look for these files on your domain (`mysite.com/robots.txt`). So they find them, serve them from there by proxying to Jazui, for example:
`Cloudflare Worker`:
```javascript
// Antes de la lógica de Jazui en tu Worker: sirve los archivos del sitio desde Jazui
const FILES = ['/sitemap.xml', '/robots.txt', '/llms.txt', '/llms-full.txt'];
const url = new URL(request.url);
if (FILES.includes(url.pathname)) {
return fetch(`https://api.jazui.com/v2/sites/misitio.com${url.pathname}`);
}
```
`nginx`:
```nginx
location ~ ^/(sitemap(-\d+)?\.xml|robots\.txt|llms(-full)?\.txt)$ {
proxy_set_header Host api.jazui.com;
proxy_ssl_server_name on;
proxy_pass https://api.jazui.com/v2/sites/misitio.com/$1;
}
```
## Visits from AI answers
To know how many people reach your website from ChatGPT, Perplexity, Gemini, Copilot, Claude and other assistants, paste this line in your website's `
` (the dashboard gives it to you with your domain under **Bot traffic › Visits from AI**). It only acts when the visit comes from an assistant, without cookies or personal data:
```html
```
## IndexNow
If you enable IndexNow in the site settings (**Blog and IndexNow**), Jazui notifies Bing, Yandex and the other search engines using it each time you publish, update or unpublish an article. For them to accept it, publish the file `https://mysite.com/{key}.txt` on your domain with the key as its only content (the key is in the settings) and click **Check**.