---
title: "Count approximate tokens for a string or chat message list before sending to an LLM."
method: POST
path: "/v1/tokens/count"
tags: ["security"]
---

# Count approximate tokens for a string or chat message list before sending to an LLM.

`POST /v1/tokens/count`

## Request

- Base URL: `https://api.agent-toolbox.ai`
- URL: `https://api.agent-toolbox.ai/v1/tokens/count`
- Auth: one of:
  - HTTP bearer
  - none

Cost: 1 credit(s). Free tier: 10 calls per IP (no auth).

## Request body

- CountTokensRequest
  - `text` string
  - `messages` object[]
    - `role` string, required
    - `content` string, required
  - `model` 'gpt-4' | 'gpt-3.5' | 'claude' | 'gemini' | 'generic'

## Response `200`

Success.

- union
  - object
    - `tokens` integer, required
    - `characters` integer, required
    - `words` integer, required
    - `estimatedCostUsd` object, required
      - `input` number, required
      - `output1k` number, required
    - `model` 'gpt-4' | 'gpt-3.5' | 'claude' | 'gemini' | 'generic', required
  - object
    - `total` integer, required
    - `perMessage` object[], required
      - `role` string, required
      - `tokens` integer, required
    - `estimatedCostUsd` object, required
      - `input` number, required
      - `output1k` number, required
    - `model` 'gpt-4' | 'gpt-3.5' | 'claude' | 'gemini' | 'generic', required
    - `contextWindowRemaining` integer, required

## Other responses

- `400`: Invalid request body.
- `402`: Free tier exhausted or insufficient credits.

---

[API](https://skmtc.dev/agent-toolbox/apis/agent-toolbox-ai-api.md) · [All operations](https://skmtc.dev/agent-toolbox/apis/agent-toolbox-ai-api/llms.txt) · [OpenAPI document](https://skmtc.dev/agent-toolbox/apis/agent-toolbox-ai-api/revisions/07132043190b?raw)
