Skip to main content
POST
/
v1
/
messages
/
count_tokens
Count input tokens
curl --request POST \
  --url https://api.abliteration.ai/v1/messages/count_tokens \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "model": "abliterated-model",
  "messages": [
    {
      "role": "user",
      "content": "Count these tokens for me."
    }
  ]
}
'
import requests

url = "https://api.abliteration.ai/v1/messages/count_tokens"

payload = {
    "model": "abliterated-model",
    "messages": [
        {
            "role": "user",
            "content": "Count these tokens for me."
        }
    ]
}
headers = {
    "Authorization": "Bearer <token>",
    "Content-Type": "application/json"
}

response = requests.post(url, json=payload, headers=headers)

print(response.text)
const options = {
  method: 'POST',
  headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
  body: JSON.stringify({
    model: 'abliterated-model',
    messages: [{role: 'user', content: 'Count these tokens for me.'}]
  })
};

fetch('https://api.abliteration.ai/v1/messages/count_tokens', options)
  .then(res => res.json())
  .then(res => console.log(res))
  .catch(err => console.error(err));
{
  "input_tokens": 12
}
{
  "type": "error",
  "error": {
    "type": "<string>",
    "message": "<string>"
  }
}
{
  "type": "error",
  "error": {
    "type": "<string>",
    "message": "<string>"
  }
}
{
  "error": "<string>",
  "code": "<string>"
}

Authorizations

Authorization
string
header
required

Use a JWT or abliteration.ai API key as a Bearer token.

Body

application/json
model
string
required

Model id (e.g. abliterated-model).

messages
object[]
required

Non-empty array of message objects. Each has role (user or assistant) and content (string or content-block array).

Minimum array length: 1
max_tokens
integer

Maximum number of tokens to generate.

Required range: x >= 1
temperature
number

Sampling temperature.

Required range: 0 <= x <= 2
stream
boolean
default:false

Enable Server-Sent Events streaming.

system

System prompt. Can be a string or an array of content blocks.

flagged_categories
string[]

Optional moderation categories to block. Supported: harassment, hate, illicit, sexual. Self-harm and sexual/minors are always blocked.

Response

Token count

input_tokens
integer
required

Estimated number of input tokens.

Last modified on May 2, 2026