URL Dasar dan autentikasi
Kirim permintaan ke URL dasar https://api.codexapipricing.com/v1 menggunakan kunci API Anda. Titik akhir ini kompatibel dengan SDK OpenAI standar, sehingga Anda hanya perlu memperbarui URL dasar dan menyediakan kunci Anda. Autentikasi dilakukan dengan meneruskan header Authorization: Bearer YOUR_API_KEY dengan setiap permintaan. Anda dapat membuat kunci segera dengan masuk menggunakan Google atau email dan kata sandi. Kunci ditampilkan sekali setelah dibuat, jadi simpan dengan aman. Prompt Anda tidak digunakan untuk pelatihan, memastikan privasi data Anda.
Endpoint Chat completions
Gunakan POST /v1/chat/completions endpoint untuk menghasilkan teks. Ini adalah antarmuka utama untuk mengirim prompt dan menerima respons. ID model selalu uncensored, terlepas dari versi model yang berjalan di server kami. Anda dapat memeriksa model yang tersedia melalui GET /v1/models. Kirim riwayat pesan Anda di messages
Parameter yang didukung dan mode JSON
Kendalikan generasi dengan parameter seperti temperature, top_p, dan stop. Gunakan response_format setel ke {"type": "json_object"} untuk memaksa output JSON. Ini berguna untuk ekstraksi data terstruktur atau pemanggilan fungsi. Anda juga dapat mengatur max_tokens untuk membatasi panjang output, dengan nilai default 2.048 jika dihilangkan. Jendela konteks mendukung hingga 100.000 token untuk prompt dan penyelesaian gabungan. Pass seed untuk hasil deterministik atau presence_penalty dan frequency_penalty untuk menyesuaikan pengulangan. Parameter ini memungkinkan penyesuaian perilaku model tanpa konfigurasi kompleks. Mode JSON memastikan pemformatan ketat untuk parsing yang andal di aplikasi Anda.
Respons streaming melalui SSE
Aktifkan streaming dengan mengatur stream: true dalam permintaan Anda. API mengembalikan Server-Sent Events (SSE) saat token dihasilkan. Ini mengurangi latensi yang dirasakan untuk respons panjang. Gunakan aliran untuk menampilkan teks secara inkremental. Fitur ini berfungsi dengan semua SDK OpenAI-compatible. Streaming sangat ideal untuk antarmuka obrolan di mana pengguna mengharapkan umpan balik segera. Potongan terakhir berisi jumlah token total untuk akurasi penagihan. Gunakan metode ini untuk menangani output besar dengan lancar tanpa menunggu respons penuh.
Batas laju dan badan permintaan
Setiap kunci API dibatasi pada 300 permintaan per menit dan 8 permintaan simultan. Ukuran badan permintaan maksimum adalah 8 MB. Jika Anda melebihi batas-batas ini, Anda akan menerima error 429. Anda dapat membuat kunci baru untuk menggantikan kunci yang ada, tetapi hanya satu kunci yang aktif per akun. Error dan penolakan tidak dihitung terhadap batas laju Anda. Jendela konteks 100.000 token memungkinkan riwayat percakapan yang ekstensif. Pertahankan badan permintaan Anda ringkas agar tetap dalam batas ukuran. Pantau penggunaan Anda untuk menghindari gangguan selama waktu sibuk. Batas-batas ini memastikan penggunaan adil di semua pelanggan prabayar.
Penanganan kesalahan dan pemecahan masalah
Tangani kesalahan dengan memeriksa kode status HTTP. Kesalahan 401 menunjukkan kunci API tidak valid atau hilang. Kesalahan 402 berarti kredit prabayar Anda habis. Kesalahan 429 menandakan bahwa Anda telah melebihi batas laju. Gunakan error field in the response to get details. Mistakes like double charges are fixed via the Support page. Credit never expires, so you can top up later. Refusals for content policy violations are free. This predictable error structure helps you debug integration issues quickly without guessing the cause.
cURL
curl https://api.codexapipricing.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "List the hourly rates for the large model."}]
}'Python
from openai import OpenAI
client = OpenAI(base_url="https://api.codexapipricing.com/v1", api_key="YOUR_KEY")
resp = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Summarise this thread without softening it."}],
)
print(resp.choices[0].message.content)Node.js
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.codexapipricing.com/v1", apiKey: process.env.API_KEY });
const resp = await client.chat.completions.create({
model: "uncensored",
messages: [{ role: "user", content: "Draft a villain monologue for my game." }],
});
console.log(resp.choices[0].message.content);Streaming
stream = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Tell the story in second person."}],
stream=True,
)
for chunk in stream:
if chunk.choices and chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="", flush=True)