An experimental service providing unlimited
/chat/completions
for free, for teens in
Hack Club. No API
key needed.
-1 tokens processed since January 2025. Available
models:
qwen/qwen3-32b
,
openai/gpt-oss-120b
,
openai/gpt-oss-20b
,
meta-llama/llama-4-maverick-17b-128e-instruct
.
Open source at github.com/hackclub/ai!
curl -X POST https://ai.hackclub.com/chat/completions \
-H "Content-Type: application/json" \
-d '{
"messages": [{"role": "user", "content": "Tell me a joke!"}],
"model": "qwen/qwen3-32b"
}'
To get available models:
curl https://ai.hackclub.com/model
Example response: qwen/qwen3-32b, openai/gpt-oss-120b, openai/gpt-oss-20b, meta-llama/llama-4-maverick-17b-128e-instruct
The API accepts all standard OpenAI-style parameters for chat completions:
messages
- Array of message objects with role and contentmodel
- Choose from available models: qwen/qwen3-32b
, openai/gpt-oss-120b
, openai/gpt-oss-20b
, meta-llama/llama-4-maverick-17b-128e-instruct
temperature
- Controls randomness (0.0 to 2.0)max_completion_tokens
- Maximum number of tokens to generatetop_p
- Controls diversity via nucleus samplingfrequency_penalty
- Reduces repetition of token sequencespresence_penalty
- Reduces repetition of tokensstream
- Set to true for streaming responsesstop
- Array of tokens at which to stop generationresponse_format
- Format of the response (e.g., JSON mode)seed
- Integer for random seed to enable deterministic samplingtools
- List of tools the model may calltool_choice
- Controls which (if any) tool is calledinclude_reasoning
- Set to true to include reasoning in responses (reasoning models only)reasoning_format
- Format for reasoning output (reasoning models only)reasoning_effort
- Controls the reasoning effort for Qwen models (none or default)Note: You can specify which model to use with the model
parameter. If not specified or if an unavailable model is requested, the first available model (qwen/qwen3-32b) will be used.
Note: Reasoning parameters (include_reasoning
and reasoning_format
) only work when the currently set model is a reasoning model.
Note: The reasoning_effort
parameter only works for Qwen models. Use "none" for fast responses without reasoning or "default" for normal reasoning effort.
You must be a teenager in the Hack Club Slack. All requests and responses are logged to prevent abuse. Projects only — no personal use. This means you can't use it in Cursor or anything similar for the moment! Abuse means this will get shut down — we're a nonprofit funded by donations.