canonical: https://jentic.com/apis/aista.ai/aista

# AISTA API

Jentic maintains a curated, agent-optimized OpenAPI specification for AISTA API, keeping it validated and agent-ready. AISTA is a chatbot creation and management platform that lets developers spin up ChatGPT-style assistants trained on custom data. The 6-endpoint API covers chatbot listing, creation, retrieval, deletion, and two training paths - uploading training data directly or scraping a website to harvest source content. Authentication uses an X-API-Key header.

## For AI agents

Create and manage custom-trained chatbots, then upload training data or scrape a website to ground them. Useful for an agent that builds vertical assistants on demand.

## Scope

Does not host raw LLM completions, vector databases, or analytics dashboards - use for chatbot creation and training only.

## Capabilities

- Create new chatbots with a custom configuration
- List existing chatbots scoped to the API key
- Retrieve a chatbot's metadata and current training state
- Delete chatbots that are no longer needed
- Upload structured training data to a specific chatbot
- Trigger a website scrape that ingests pages as training material

## Use cases

### Custom support assistant from a docs site

Stand up a customer-support chatbot grounded in a product's public documentation. Create the chatbot via POST /chatbots, then call POST /chatbots/{id}/scrape to ingest a docs URL - AISTA crawls and indexes the pages so the bot answers from real product content.

Example prompt: POST /chatbots to create 'docs-bot', then POST /chatbots/{id}/scrape with url=https://docs.example.com

### Programmatic bot fleet management

Run a catalogue of chatbots - one per customer or one per product line - and manage their lifecycle from a back-office tool. The API exposes list, get, and delete so an internal admin agent can audit and clean up bots without using the AISTA dashboard.

Example prompt: Call GET /chatbots, identify any chatbot whose name starts with 'test-', and DELETE each via /chatbots/{id}

### AI agent integration via Jentic

Allow an orchestration agent to provision bots on demand - for example, when a new customer signs up, the agent searches Jentic for chatbot creation, calls AISTA to create the bot, and uploads onboarding training data, all without holding the X-API-Key.

Example prompt: Search Jentic for 'create a chatbot trained on uploaded data', load the AISTA POST /chatbots and POST /chatbots/{id}/training operations, and execute

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | /chatbots | Create a new chatbot |
| GET | /chatbots | List chatbots on the account |
| GET | /chatbots/{id} | Get a chatbot's configuration |
| DELETE | /chatbots/{id} | Delete a chatbot |
| POST | /chatbots/{id}/training | Upload training data |
| POST | /chatbots/{id}/scrape | Scrape a website for training |

## Key resources

- **Chatbots** — Create, list, retrieve, and delete chatbot instances
- **Training** — Upload training data or trigger a website scrape to ground a chatbot

## Why Jentic

- **Setup:** Wiring AISTA by hand means handling its X-API-Key header, sequencing chatbot creation, scraping, and training, and writing your own retry logic. Through Jentic you install once, import AISTA from the API Directory, store the key once, and your agent calls it.
- **Permission scoping:** AISTA puts the chatbot id in the URL path (/chatbots/{id}/training, /chatbots/{id}/scrape), so a rule can pin your agent to one chatbot. You choose the operations it may call, so chatbot deletion is only included if you add it.
- **Credential handling:** Your AISTA key is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'create a chatbot trained on a website', and Jentic returns the AISTA /chatbots and /scrape operations with their schemas so the agent calls them in sequence without browsing the reference docs.

## Related APIs

- **CustomGPT** — Build custom-trained chatbots from documents and websites with a comparable feature set.
- **Chatbot.com** — Visual chatbot builder with conversation flow design.
- **OpenAI API** — Use OpenAI directly for raw LLM completions outside the AISTA chatbot wrapper.

## FAQ

### Which OpenAPI specification does this AISTA API page describe?

A curated, agent-optimized Jentic specification covering 6 AISTA operations - chatbot create, list, get, and delete, plus the two training paths. Jentic validates it against the live API and keeps it up to date, and it is the document this page's endpoint list is built from. Get started with Jentic One, the self-hosted execution layer.

### What authentication does the AISTA API use?

AISTA uses an API key passed in the X-API-Key header. Through Jentic the key is stored encrypted in your Jentic One instance and injected at execution time, so it never appears in agent code or prompts.

### Can I train an AISTA chatbot from a website URL?

Yes. Call POST /chatbots/{id}/scrape with the target URL - AISTA will crawl the site and index the content as training material. For structured uploads, POST /chatbots/{id}/training accepts training files directly.

### How do I create a chatbot through Jentic?

Use the Jentic search query 'create a chatbot trained on custom data'. Jentic returns the POST /chatbots operation; supply the chatbot config, then chain into POST /chatbots/{id}/training or /scrape to load content.

### Are there rate limits for AISTA?

Rate limits are not declared in the OpenAPI spec; usage is governed by your AISTA plan. Spread bulk training uploads over time and watch for 429 responses on rapid scrape requests.

### Can I limit what my agent is allowed to do with the AISTA API?

Yes. Jentic One is self-hosted, so your own rules decide which AISTA operations and credentials the agent may use. Because AISTA puts the chatbot id in the URL path (/chatbots/{id}/training, /chatbots/{id}/scrape), you can pin the agent to a single chatbot and let it upload training data or trigger a website scrape without touching others. You also choose which operations are exposed, so a destructive call like DELETE /chatbots/{id} is available to the agent only if you add it.
