Halaman ini menjelaskan pola integrasi standar untuk API Analisis YlanAI.
Antarmuka saat ini mengikuti protokol yang kompatibel dengan OpenAI dan ditujukan untuk klien yang mendukung chat/completions dan completions.
Output API mengikuti standar analisis yang sama dengan layanan di dalam produk. Output ini hanya diberikan sebagai referensi untuk pembelajaran, riset, komunikasi, dan hiburan, bukan kesimpulan yang menjamin hasil masa depan, serta tidak menggantikan pendapat profesional dalam urusan medis, hukum, kepatuhan, atau keuangan besar.
| Item | Deskripsi |
|---|---|
| Base URL yang direkomendasikan | https://ylan.ai/api/openai |
| Base URL kompatibilitas | https://ylan.ai/api/openai/v1 |
| Metode default | POST |
| Daftar model | GET /models |
| Detail model | GET /models/{id} |
| Endpoint percakapan | POST /chat/completions |
Endpoint legacy completions | POST /completions |
Untuk klien pihak ketiga yang menambahkan /v1 secara otomatis, gunakan https://ylan.ai/api/openai sebagai base URL.
Semua permintaan harus menyertakan header berikut:
Authorization: Bearer sk-...
API Key terikat ke akun pengguna saat ini, dan konsumsi akan dipotong dari saldo satuan analisis berbayar akun tersebut.
Untuk klien yang tidak dapat mengatur Authorization, kompatibilitas juga tersedia melalui api-key: sk-... dan x-api-key: sk-....
Percakapan multi-turn didukung. Pemanggil dapat menjaga konteks berkelanjutan dengan mengirim riwayat percakapan melalui array messages.
| Cakupan | Deskripsi |
|---|---|
| Kapabilitas terbuka | Saat ini hanya API analisis yang dibuka |
| Chat umum | Tidak dibuka |
| Skenario yang didukung | Mendukung analisis satu subjek dan analisis pasangan |
| Standar keluaran | Selaras dengan pengalaman produk di situs |
Referensi resmi mengikuti hasil real-time dari GET /models. Daftar model dapat berubah sesuai perkembangan kemampuan platform.
| Model | Deskripsi |
|---|---|
openai/gpt-5.4 | Cocok untuk analisis dengan tuntutan kualitas tinggi |
openai/gpt-5.3-chat | Cocok untuk interpretasi umum dan percakapan multi-turn |
deepseek/deepseek-v3.2 | Cocok untuk analisis beragam dan percakapan multi-turn |
| Skenario | Format respons |
|---|---|
stream=true | Mengembalikan aliran SSE kompatibel OpenAI dengan payload chat.completion.chunk dan penutup data: [DONE] |
stream=false | Mengembalikan respons JSON standar chat.completion |
POST /completions | Mengembalikan JSON text_completion kompatibel OpenAI atau aliran SSE |
| Header non-stream berhasil | Menyertakan x-ylan-charged-credits dan x-ylan-remaining-paid-credits |
| Parameter | Tipe | Deskripsi |
|---|---|---|
model | string | Nama model yang dikembalikan oleh GET /models |
messages | array | Array pesan kompatibel OpenAI; harus berisi minimal satu pesan user |
prompt | string | Input legacy untuk completions; dapat digunakan ketika messages tidak dikirim |
input | string | Field input kompatibilitas untuk beberapa klien pihak ketiga ketika messages tidak dikirim |
stream | boolean | Apakah menggunakan respons streaming. Nilai default false |
locale | string | Bahasa keluaran, misalnya id, zh, en |
topic | string | Topik analisis, misalnya wealth_pattern atau marriage_status |
subject_mode | string | Mode analisis: single atau pair |
method | string | Metode analisis yang ditafsirkan oleh rantai analisis saat ini |
birth_profile | object | Input data kelahiran untuk analisis satu subjek |
chart_input | object | Input bagan terstruktur untuk skenario dengan bagan yang sudah disiapkan |
pair_state | object | Input untuk analisis pasangan |
metadata | object | Metadata tambahan yang dapat melengkapi topic, locale, birthProfile, pairState, dan lainnya |
curl -N https://ylan.ai/api/openai/chat/completions \
-H 'Authorization: Bearer sk-your-api-key' \
-H 'Content-Type: application/json' \
-d '{
"model": "openai/gpt-5.4",
"stream": true,
"locale": "id",
"topic": "wealth_pattern",
"subject_mode": "single",
"birth_profile": {
"calendar": "solar",
"birthDate": "1992-08-15",
"birthTime": "09:30",
"gender": "male",
"location": "Shenzhen"
},
"messages": [
{
"role": "user",
"content": "Tolong analisis tren keuangan saya tahun ini."
}
]
}'curl -N https://ylan.ai/api/openai/chat/completions \
-H 'Authorization: Bearer sk-your-api-key' \
-H 'Content-Type: application/json' \
-d '{
"model": "deepseek/deepseek-v3.2",
"stream": true,
"locale": "id",
"topic": "marriage_status",
"subject_mode": "pair",
"pair_state": {
"subjects": [
{
"birthProfile": {
"calendar": "solar",
"birthDate": "1992-08-15",
"birthTime": "09:30",
"gender": "male",
"location": "Shenzhen"
}
},
{
"birthProfile": {
"calendar": "solar",
"birthDate": "1995-03-08",
"birthTime": "22:15",
"gender": "female",
"location": "Guangzhou"
}
}
]
},
"messages": [
{
"role": "user",
"content": "Tolong analisis arah jangka panjang hubungan ini dan poin utama kecocokan kami."
}
]
}'| Skenario | Aturan |
|---|---|
| Analisis satu subjek | 100 satuan analisis per respons sukses |
| Analisis pasangan | 200 satuan analisis per respons sukses |
need_input | Tidak dikenakan biaya |
| Cakupan satuan analisis | Hanya satuan analisis berbayar yang dapat digunakan; bonus pendaftaran dan satuan hadiah tidak berlaku |
stream=true | Potongan dikonfirmasi saat konten valid pertama yang terlihat dikembalikan |
stream=false | Potongan dikonfirmasi setelah respons lengkap berhasil dikembalikan |
| Timeout, gagal, atau respons kosong | Potongan tidak dikonfirmasi atau dikembalikan sesuai aturan yang berlaku |
| HTTP Status | Error Code | Deskripsi |
|---|---|---|
400 | invalid_messages | Permintaan tidak memiliki pesan valid atau tidak ada pesan user |
400 | invalid_prompt | Permintaan tidak menyertakan messages, prompt, maupun input |
400 | invalid_model | Model yang diminta tidak ada dalam allowlist saat ini |
401 | invalid_api_key | API Key tidak valid atau tidak dikirim |
402 | insufficient_paid_credits | Satuan analisis berbayar akun tidak mencukupi |
500 | request_timeout | Permintaan habis waktu |
500 | request_failed | Permintaan gagal |
500 | internal_error | Kesalahan internal server |
502 | empty_response | Model tidak mengembalikan konten valid yang terlihat |
Ketika data kelahiran, data topik, atau data pasangan belum lengkap, API dapat mengembalikan respons tipe need_input. Respons ini hanya digunakan untuk melengkapi prasyarat analisis dan tidak dikenakan biaya.