ID ▾
Dapatkan kunci API

URL Dasar API Codex: Cara Mengarahkan Klien Anda ke Kami

URL dasar API codex untuk layanan ini adalah https://api.getcodexapi.com/v1, ID modelnya adalah uncensored, dan kunci Anda ditempatkan dalam header Bearer standar. Setiap SDK atau klien OpenAI dapat digunakan setelah Anda mengubah nilai-nilai tersebut.

Diperbarui

Kabel bercahaya yang menghubungkan laptop ke kubus server, mengilustrasikan mengarahkan klien ke URL dasar API

Poin utama

  • URL Dasar: https://api.getcodexapi.com/v1 (termasuk /v1, hilangkan jalur endpoint).
  • ID model adalah uncensored, dan autentikasi adalah Authorization: Bearer dengan kunci Anda.
  • Uji koneksi terlebih dahulu dengan GET /v1/models sebelum menghubungkan aplikasi yang lebih besar.
  • Kebanyakan kegagalan disebabkan oleh adanya /v1 ganda, jalur tambahan, atau kunci yang salah.

Tiga nilai yang Anda butuhkan

Setiap klien yang kompatibel dengan OpenAI meminta tiga hal yang sama. Berikut nilai-nilainya untuk layanan ini.

PengaturanNilai
URL dasarhttps://api.getcodexapi.com/v1
Kunci APIKunci Anda dari halaman kunci API
Modeluncensored

Kunci dikirim sebagai Authorization: Bearer YOUR_KEY. Dua endpoint yang dapat Anda panggil adalah POST /v1/chat/completions dan GET /v1/models. Ini adalah layanan independen yang menjalankan satu model bobot terbuka, bukan Codex milik OpenAI, jadi jangan tempelkan endpoint atau kunci OpenAI asli ke dalam pengaturan yang sama.

Periksa koneksi dengan curl

Sebelum Anda mengedit konfigurasi aplikasi apa pun, konfirmasi bahwa kunci dan URL berfungsi dari terminal. Daftar model adalah pemeriksaan termurah, karena tidak memerlukan prompt:

curl https://api.getcodexapi.com/v1/models \
  -H "Authorization: Bearer YOUR_API_KEY"

Anda harus mendapatkan daftar JSON yang mencakup model uncensored. Kemudian kirimkan satu penyelesaian sungguhan:

curl https://api.getcodexapi.com/v1/chat/completions \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "uncensored",
    "messages": [{"role": "user", "content": "Say hello in five words."}]
  }'

Jika kedua panggilan berhasil, masalah dalam kegagalan selanjutnya ada di konfigurasi klien Anda, bukan layanan. Header respons mencakup X-Request-Id, yang berguna untuk disimpan jika Anda perlu melacak panggilan tertentu, dan X-Balance-USD, yang menunjukkan sisa kredit Anda.

Python dengan SDK OpenAI

Paket openai resmi mengambil URL dasar dalam konstruktor klien. Tidak ada perubahan lain pada kode Anda.

from openai import OpenAI

client = OpenAI(
    base_url="https://api.getcodexapi.com/v1",
    api_key="YOUR_API_KEY",
)

resp = client.chat.completions.create(
    model="uncensored",
    messages=[
        {"role": "system", "content": "You are a concise assistant."},
        {"role": "user", "content": "Explain what a base URL is in two sentences."},
    ],
)
print(resp.choices[0].message.content)

Jika Anda lebih suka menjaga konfigurasi di luar kode, SDK juga membaca OPENAI_BASE_URL dan OPENAI_API_KEY dari lingkungan:

export OPENAI_BASE_URL="https://api.getcodexapi.com/v1"
export OPENAI_API_KEY="YOUR_API_KEY"

Dengan pengaturan tersebut, OpenAI() tanpa argumen akan mengambilnya. Ini berguna karena banyak alat pihak ketiga yang dibangun di atas SDK mewarisi variabel yang sama tanpa perubahan kode.

Node.js

SDK JavaScript menggunakan nama opsi yang sama, dieja baseURL.

import OpenAI from "openai";

const client = new OpenAI({
  baseURL: "https://api.getcodexapi.com/v1",
  apiKey: process.env.API_KEY,
});

const stream = await client.chat.completions.create({
  model: "uncensored",
  messages: [{ role: "user", content: "Write a haiku about version control." }],
  stream: true,
});

for await (const chunk of stream) {
  process.stdout.write(chunk.choices[0]?.delta?.content ?? "");
}

Streaming dikembalikan sebagai peristiwa yang dikirim server dengan stream: true, dan penggunaan disertakan di akhir. Perlu diingat bahwa permintaan streaming memegang salah satu slot konkurensi Anda hingga stream selesai, sehingga stream yang Anda tinggalkan tanpa menutupnya akan terus dihitung terhadap batas.

Aplikasi yang memiliki layar pengaturan

Alat desktop dan editor biasanya memberi label bidang dengan salah satu dari tiga cara: "URL Dasar", "API Base" atau "endpoint kompatibel OpenAI". Semua menginginkan string yang sama. Beberapa catatan yang menghemat waktu:

  • Pilih tipe penyedia OpenAI atau "kompatibel OpenAI kustom", bukan tipe spesifik vendor.
  • Ketikkan nama model secara manual jika aplikasi memiliki kotak teks bebas. uncensored adalah ID persis.
  • Jika aplikasi memiliki tombol "tes koneksi", biasanya itu memanggil daftar model, yang didukung API ini.
  • Beberapa aplikasi meng-cache daftar model dari penyedia sebelumnya. Hapus entri lama dan tambahkan yang baru jika dropdown terlihat salah.

Untuk contoh kerja di editor tertentu, lihat panduan menghubungkan Cursor, atau halaman API coding untuk gambaran keseluruhan. Referensi parameter lengkap ada di dokumen API.

Setelah koneksi berhasil, simpan nilai persis di tempat yang dapat Anda temukan lagi: URL, nama model, dan tanggal Anda membuat kunci. Tim sering kehilangan satu jam kemudian karena salinan konfigurasi yang masih memegang nilai lama. Satu file contoh bersama di repositori, dengan placeholder sebagai pengganti kunci asli, mencegah hal itu.

Kesalahan umum dan perbaikannya

URL berakhir sebagai /v1/v1

Beberapa klien menambahkan /v1 secara otomatis. Jika permintaan Anda gagal dan log klien menampilkan jalur dengan /v1/v1/chat/completions, hapus /v1 dari URL dasar yang Anda masukkan. Sebaliknya juga terjadi: klien yang tidak menambahkannya memerlukannya dalam pengaturan Anda. Log jalur permintaan menyelesaikan pertanyaan ini dengan cepat.

Anda memasukkan endpoint lengkap ke dalam URL dasar

URL dasar berhenti di /v1. Jangan masukkan /chat/completions di sana. SDK menambahkan jalur untuk setiap panggilan.

Garis miring akhir atau salah ketik di host

Sebagian besar SDK mentolerir garis miring di akhir, tetapi beberapa alat lama membangun jalur dengan penggabungan sederhana dan berakhir dengan garis miring ganda. Hapus jika Anda melihat respons 404 yang aneh.

Kunci salah, atau kunci layanan lain

Kunci OpenAI tidak akan berfungsi di sini, dan kunci kami tidak akan berfungsi di sana. Kesalahan autentikasi hampir selalu berarti masalah salin-tempel, seperti karakter yang hilang atau spasi di akhir.

Berhasil di curl tetapi tidak di aplikasi Anda

Jika curl berhasil dan aplikasi gagal dengan URL dan kunci yang sama, perbedaannya ada di lingkungan. Periksa apakah aplikasi berjalan di balik proxy atau di dalam kontainer tanpa akses keluar, apakah aplikasi membaca variabel lingkungan lama seperti OPENAI_BASE_URL yang tersisa dari proyek lain, dan apakah file konfigurasi menimpa nilai yang Anda atur dalam kode. Mencetak URL akhir yang akan dipanggil klien, tepat sebelum permintaan, menyelesaikan sebagian besar kasus ini dalam satu menit.

HTTP 429

Ini berarti batas telah terpenuhi. Kode kesalahan rate_limited adalah permintaan per menit, dan concurrency adalah terlalu banyak permintaan sekaligus. Kunci penuh memungkinkan 8 permintaan konkuren dan 300 per menit; kunci uji coba memungkinkan 2 dan 60. Saat kelebihan beban sementara, Anda juga mendapatkan 429 dengan header Retry-After: 5, jadi tunggu lima detik dan coba lagi.

LangChain dan menjaga URL di satu tempat

Framework yang dibangun di atas klien OpenAI mengambil nilai yang sama. Dalam integrasi OpenAI LangChain, argumennya dinamai seperti ini:

from langchain_openai import ChatOpenAI

llm = ChatOpenAI(
    model="uncensored",
    base_url="https://api.getcodexapi.com/v1",
    api_key="YOUR_API_KEY",
)
print(llm.invoke("Name three uses of a base URL.").content)

Terlepas dari frameworknya, jangan sebar URL di seluruh kode Anda. Letakkan di satu variabel lingkungan atau satu file pengaturan, dan baca dari sana. Dengan cara itu, berpindah antara kunci uji coba dan kunci produksi, atau antara mesin, berarti mengubah satu baris. Ini juga menjaga kunci di luar repositori Anda: simpan kunci di variabel lingkungan atau manajer rahasia, jangan di file yang yang sudah di-commit.

Jika Anda mencari endpoint milik OpenAI untuk produk Codex mereka, ini bukan itu. URL dasar dan autentikasi mereka didokumentasikan oleh OpenAI, jadi ikuti dokumentasi terbaru mereka untuk itu. Alamat di halaman ini milik layanan independen dan hanya menerima kunci yang diterbitkan di sini.

Apa yang dapat Anda kirimkan setelah terhubung

Endpoint mendukung streaming, pemanggilan fungsi (tools, tool_choice, dengan hasil dikembalikan sebagai pesan role: "tool"), dan mode JSON melalui response_format: {"type": "json_object"}. Parameter temperature, top_p, stop, seed dan penalti diteruskan. Jendela konteks adalah 100.000 token untuk prompt plus completion, dan badan permintaan maksimum adalah 8 MB.

Ini hanya teks. Tidak ada generasi gambar atau audio, tidak ada embedding dan tidak ada penyetelan halus, sehingga fitur klien yang bergantung pada hal-hal tersebut tidak akan berfungsi dengan URL dasar ini. Penggunaan ditagihkan per token sebesar $0,15 per 1M input dan $0,50 per 1M output; halaman harga memiliki contoh yang berfungsi.

Tanya jawab

Apa URL dasarnya?

Ini adalah https://api.getcodexapi.com/v1. Gunakan sebagai base URL di SDK atau aplikasi apa pun yang kompatibel dengan OpenAI, dengan model diatur ke uncensored.

Apakah ini endpoint Codex resmi OpenAI?

Tidak. Ini adalah API independen yang kompatibel dengan OpenAI yang menjalankan satu model bobot terbuka. Ini tidak dijalankan oleh OpenAI atau vendor model lainnya.

Mengapa saya mendapatkan 404 setelah mengubah base URL?

Biasanya jalurnya salah, baik /v1 yang ganda atau jalur endpoint yang disertakan dalam base URL. Periksa log permintaan klien Anda dan sesuaikan.

Apakah saya memerlukan SDK khusus?

Tidak. SDK OpenAI standar untuk Python dan Node berfungsi, begitu juga HTTP biasa dengan curl. Anda hanya perlu mengubah base URL, kunci, dan nama model.

Kunci Anda hanya selangkah lagi dari satu formulir

Buat akun, salin kunci, ubah URL dasar. Itu saja seluruh proses pengaturannya.

Dapatkan kunci API