← Blog

Claude Chatbot Website: Use One or Build Your Own

2026-09-10 · 5 min read · SubToAPI Team

Searching for a "Claude chatbot website" usually means one of two things: you want a website where you can talk to Claude right now, or you want to add a Claude-powered chatbot to your own website or product. Both are straightforward, and this article covers both paths.

If you just want to chat with Claude, the official website is claude.ai, where Anthropic hosts the chatbot directly with a free tier and paid Pro/Max plans. If you're building your own site with a chatbot embedded in it, you need API access, a backend that calls the model, and a frontend widget — which is a different (and more interesting) problem.

Using Claude's Official Chatbot Website

Anthropic's own chatbot lives at claude.ai. It supports:

This is the right choice if you just want a conversational assistant in your browser. It's not designed to be embedded elsewhere, and there's no way to white-label it or put it behind your own domain — it's Anthropic's product, not a component you integrate.

Building a Claude Chatbot Into Your Own Website

If your goal is a chatbot widget on your own site — for support, onboarding, internal tools, or a customer-facing product — you need three things:

  1. API access to Claude models (Anthropic's API directly, or a wrapper service)
  2. A backend endpoint that receives user messages, calls the model, and returns a response
  3. A frontend chat UI — custom-built or from an open-source component library

The API access piece is where most of the decisions live.

Option 1: Anthropic API Directly

Sign up for an Anthropic developer account, generate an API key, and call the Messages API from your backend. This gives you full control and the lowest latency path to the model, but you're responsible for:

This is the right path if you already have infrastructure for API key management and usage metering, or if you're building something with very specific low-level needs.

Option 2: SubToAPI for a Faster Path

SubToAPI turns your existing Claude access into a standard HTTPS API with application-specific keys (sub_live_...), so you can build a chatbot website without setting up separate Anthropic billing infrastructure. It's useful if:

A basic non-streaming call to build a chat endpoint looks like this:

curl https://api.subtoapi.app/v1/messages \
  -H "Authorization: Bearer $SUBTOAPI_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "claude-sonnet-4-5",
    "max_tokens": 1024,
    "messages": [
      {"role": "user", "content": "What can you help me with?"}
    ]
  }'

For a chatbot website, users expect the reply to appear word-by-word instead of waiting for the full response. Streaming handles that:

const response = await fetch("https://api.subtoapi.app/v1/messages", {
  method: "POST",
  headers: {
    "Authorization": `Bearer ${process.env.SUBTOAPI_KEY}`,
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    model: "claude-sonnet-4-5",
    max_tokens: 1024,
    stream: true,
    messages: [{ role: "user", content: userMessage }]
  })
});

const reader = response.body.getReader();
const decoder = new TextDecoder();

while (true) {
  const { done, value } = await reader.read();
  if (done) break;
  const chunk = decoder.decode(value);
  // parse SSE events and append text to your chat UI
}

See /docs/streaming for the full event format, and /docs/messages for request and response fields.

Adding Tools for a More Capable Website Chatbot

A chatbot that can only answer from its training data is limited. Most useful website chatbots need to look up order status, search a knowledge base, or check inventory. Claude's tool use lets the model call functions you define and get results back mid-conversation:

{
  "model": "claude-sonnet-4-5",
  "max_tokens": 1024,
  "tools": [
    {
      "name": "check_order_status",
      "description": "Look up an order by ID",
      "input_schema": {
        "type": "object",
        "properties": {
          "order_id": { "type": "string" }
        },
        "required": ["order_id"]
      }
    }
  ],
  "messages": [
    { "role": "user", "content": "Where's my order #4821?" }
  ]
}

Claude decides when to call the tool, your backend executes the actual lookup, and the result gets fed back into the conversation. Full details are at /docs/tools.

Frontend Options

You don't need to build a chat UI from scratch. Common approaches:

The frontend just needs to send user input to your backend endpoint and render the streamed response — the model logic stays server-side so your API key is never exposed to the browser.

Getting Started

To build a Claude chatbot website with SubToAPI:

  1. Create an account at /signup and start the free trial
  2. Generate an application key from the dashboard
  3. Follow /docs/quickstart to send your first message
  4. Add streaming for a responsive chat experience, and tools if your bot needs to take actions
  5. Check /pricing for Solo, Team, and Scale plans once you're ready to move past the trial

questions

Is claude.ai the same as building a chatbot into my own website? No. claude.ai is Anthropic's hosted chatbot for end users. To put a Claude-powered chatbot on your own site, you need API access and your own backend and frontend — claude.ai isn't embeddable.

Do I need to build the chat UI myself? You need some frontend, but it can be simple — a message list and input box calling your backend. The backend handles the model calls; the frontend just displays streamed responses.

Can a website chatbot look up live data like orders or inventory? Yes, using tool use. You define functions Claude can call, your backend executes them against your systems, and the results feed back into the conversation. See /docs/tools for setup.

Turn your Claude access into an HTTPS API

SubToAPI gives you application API keys, streaming, tool use and usage insights on top of your existing Claude access — set up in minutes.

Start free  Read the quickstart →