Developer API

Build ne Free.ai - imwe Bearer token, 400 + AI zvinhu.

Chat, vhidhiyo

30,000 free tokens/day. Cards kamwe chete zvinoda kuti uwane.

Single endpoint per modality

One URL inoona nezvese chat model. One URL yese image model. Pick the model with a single string. No per-provider SDK shuffle.

Honesty, markup-shamwaridzika billing

Self-hosted mamodheru anobhadhara nemari yakawandisa. Premium mamodheru anowedzera yakajeka markup iyo inodzikira sezvaunoita. Yese mhinduro inozivisa yakazara token mutengo.

99 mitauro kubva pabhokisi

Chat, kushandura, TTS, STT — zvose zvikuru modality anotaura 99 mitauro pasina extra config. Pass a language code uye inoita basa.

60-second quickstart

Same API, mazita mana. Dzvanya yako sk-free-... key uye edza.

curl https://api.free.ai/v1/chat/ \
  -H "Authorization: Bearer sk-free-YOUR-KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "qwen2.5-7b",
    "messages": [{"role":"user","content":"Hello!"}]
  }'
import requests

r = requests.post(
    "https://api.free.ai/v1/chat/",
    headers={"Authorization": "Bearer sk-free-YOUR-KEY"},
    json={
        "model": "qwen2.5-7b",
        "messages": [{"role": "user", "content": "Hello!"}],
    },
)
print(r.json()["choices"][0]["message"]["content"])
const r = await fetch("https://api.free.ai/v1/chat/", {
  method: "POST",
  headers: {
    "Authorization": "Bearer sk-free-YOUR-KEY",
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    model: "qwen2.5-7b",
    messages: [{role: "user", content: "Hello!"}],
  }),
});
const data = await r.json();
console.log(data.choices[0].message.content);
package main

import (
  "bytes"; "fmt"; "io"; "net/http"
)

func main() {
  body := []byte(`{"model":"qwen2.5-7b","messages":[{"role":"user","content":"Hello!"}]}`)
  req, _ := http.NewRequest("POST", "https://api.free.ai/v1/chat/", bytes.NewBuffer(body))
  req.Header.Set("Authorization", "Bearer sk-free-YOUR-KEY")
  req.Header.Set("Content-Type", "application/json")
  resp, _ := http.DefaultClient.Do(req)
  defer resp.Body.Close()
  out, _ := io.ReadAll(resp.Body)
  fmt.Println(string(out))
}
require "net/http"
require "json"

uri = URI("https://api.free.ai/v1/chat/")
req = Net::HTTP::Post.new(uri, {
  "Authorization" => "Bearer sk-free-YOUR-KEY",
  "Content-Type"  => "application/json",
})
req.body = {
  model: "qwen2.5-7b",
  messages: [{role: "user", content: "Hello!"}],
}.to_json

res = Net::HTTP.start(uri.host, uri.port, use_ssl: true) { |h| h.request(req) }
puts JSON.parse(res.body)["choices"][0]["message"]["content"]

Pricing - discounts kick mu otomatiki

Self-hosted mamodheru anofamba zvakasununguka pazuva rako rezuva re30,000-token pool, wobva wabhadhara nemari yakaoma. Premium mamodheru anobhadhara sezvaunoshandisa; markup drops ne30-zuva kubhadharisa.

Free pool
30,000 / day
Web chete — inotarisana ne self-hosted mamodheru
Pay-as-you-go
1.50×
< $500 / 30 days
_Mazhinji
1.30×
≥ $500 / 30 days
Mumwe munhu
1.15×
≥ $2,000 / month

Full pricing kuparadzwa →

API mibvunzo miviri

Plan yako inobvisa otomatiki chiyero chemwedzi chekukumbira kwechimwe chinhu — hapana chinhu chitsva chinodiwa. Token billing per request haisi kuchinja.

Plan Mutengo Chikumbiro / mwedzi Rate / min
_Dambudziko $0 1,000 60
Chikuru $5/mwedzi 10,000 120
Pro $19/mwedzi 100,000 300
Business $49/mwedzi 1,000,000 600

Choose a plan →

Kutumira AI maficha mukati meyako yega zvigadzirwa? Ona Platform API yezvirongwa zvebhizinesi uye kubhadharwa kwehuwandu.

Chii chaungaita

Kuisa yako @handle sechat mumiriri

Kudzidzisa AI persona pane yako ruzivo, bvisa imwe-line script tag pane chero peji. Vafambi vanotaura AI yako; yako account inotora mutengo.

Kuisa @yourhandle

Webhooks

Kugadzirisa kudzokororwa kwechikumbiro chakanyorwa kune mabasa asingaperi (kuburitsa mavhidhiyo, kushandura mabhajeti, kugovera-kubatanidza kugadzira, kuzivisa nezvekushaya mari). HMAC-SHA256 kunyora mu X-Free-Signature.

Kugadzirisa webhooks →

FAQ

Sign up free at /signup/ and confirm your email — that unlocks the 30,000-token daily free pool. Open /account/?tab=api and click Generate. Keys are Bearer tokens of the form sk-free-... and start working immediately. No application, no waitinglist.

The 30,000-token zuva nezuva free pool anotaura self-hosted mamodheru paweb uye API. Beyond it, self-hosted mamodheru bhiri rakazara token kuongorora; external models add a 50% retail markup at deduction. Kana iwe wakashandisa $ 500 mu30-zuva window the markup drops to 30%; at $ 2,000 + iwe unenge uri mubatanidzwa uye markup inodzikira ku 15%. Premium external models always bill purchased tokens; token top-ups start at $ 1.

API mibvunzo inotungamirirwa nemari yako yakatengeswa uye nechiratidzo chemwedzi chinobatanidza nechirongwa chako: 1,000 kufona pasina, 10,000 paBasic, 100,000 paPro, 1M paBusiness. Hapana kufona kwesekondi-sekondi kumusoro - kana chiratidzo chako chine ma tokens uye iwe uri pasi pechiratidzo chemwedzi, mibvunzo inofamba.

Yes. Pass stream:true on /v1/chat/ to receive Server-Sent Events. The wire format mirrors the OpenAI streaming convention so existing client SDKs work without modification.

Yeah — chat endpoint inogamuchira tools array per the OpenAI tool-calling schema. Models iyo inotsigira native tool use (Qwen 2.5 family + most premium models) ichadzosera tool_calls; models pasina native support ichadzokera ku JSON-mode prompt.

Standard JSON: {error:{message, type, code}}. HTTP 402 means out of credits (response includes shortfall + an upgrade URL). HTTP 429 means daily pool exhausted on a non-API call. HTTP 400 covers validation errors with a human-readable message.

We publish freeai-code on npm + PyPI for the Coder IDE wrapper. For the raw API, the OpenAI SDKs work - point base_url at https://api.free.ai/v1 and pass your sk-free-... key. Same for Vercel AI SDK, LangChain, llamaindex, etc.

Kugadzirisa yako endpoint URL pasi / account /? tab = mugadziri. Tinonyora chero payload ne HMAC-SHA256 - saini iri mu X-Free-Signature header. Webhook zviitiko zvinopisa: kuenderera mberi kwebasa, kugovera-link generation, low-credit alerts, uye timu yekukumbira kubvuma.

Tinowedzera mutengo wekutanga wezvipo nechiyero chechirongwa chako (1.50 × chitoro, 1.30 × chitoro, 1.15 × mubatanidzwa). Self-hosted mamodheru haasi nemari yekudhinda — iwe unobhadhara iyo yakachena token count.

Free models run on our self-hosted GPU fleet (Qwen 2.5, FLUX, Whisper, Kokoro, etc.) and are covered by your daily pool. Paid models route to leading external providers — those require purchased credits and can't be paid for from the daily pool. Both share the same /v1/chat/ endpoint; pass model:premium/ to opt into a paid model.

Yeah — chero self-hosted model pa Free.ai iri open-source pasi permissive licenses (Apache 2.0, MIT). The model IDs isu tinoshandisa zvinoenzana neupstream HuggingFace IDs, uye yedu gpu_api repo ndeye yevaverengi.

BYOK inokutendera kuti utore yako yekunze-mutengesi API key, saka mafoni anobhadharwa neako account upstream — iwe unodyara mapepa edu ese paaya mamodheru. Kusvikira ipapo, mapepa e bulk + masangano anodziya mapepa ekuvhara kune vatengi vane huwandu hwakawanda.

Love Free.ai? Tinya pano kuti utore Free.ai!

Ratidza iyi peji