curl -X POST https://api-llm.sunra.ai/v1/responses \
-H "Authorization: Bearer <SUNRA_KEY>" \
-H "Content-Type: application/json" \
-d '{
"model": "openai/gpt-4o",
"input": [
{
"type": "message",
"role": "user",
"content": "Hello, how are you?"
}
]
}'
import requests
response = requests.post(
"https://api-llm.sunra.ai/v1/responses",
headers={
"Authorization": "Bearer <SUNRA_KEY>",
"Content-Type": "application/json"
},
json={
"model": "openai/gpt-4o",
"input": [
{
"type": "message",
"role": "user",
"content": "Hello, how are you?"
}
]
}
)
print(response.json())
const response = await fetch("https://api-llm.sunra.ai/v1/responses", {
method: "POST",
headers: {
"Authorization": "Bearer <SUNRA_KEY>",
"Content-Type": "application/json"
},
body: JSON.stringify({
model: "openai/gpt-4o",
input: [
{
type: "message",
role: "user",
content: "Hello, how are you?"
}
]
})
});
const data = await response.json();
console.log(data);
{
"id": "resp-abc123",
"object": "response",
"created_at": 1704067200,
"status": "completed",
"model": "openai/gpt-4o",
"output": [
{
"type": "message",
"id": "msg_abc123",
"role": "assistant",
"status": "completed",
"content": [
{
"type": "output_text",
"text": "Hello! I'm doing well, thank you for asking. How can I help you today?",
"annotations": []
}
]
}
],
"temperature": 1.0,
"top_p": 1.0,
"max_output_tokens": null,
"usage": {
"input_tokens": 15,
"output_tokens": 18,
"total_tokens": 33,
"input_tokens_details": {
"cached_tokens": 0
},
"output_tokens_details": {
"reasoning_tokens": 0
}
},
"error": null
}
LLM
Create a response
POST
/
v1
/
responses
curl -X POST https://api-llm.sunra.ai/v1/responses \
-H "Authorization: Bearer <SUNRA_KEY>" \
-H "Content-Type: application/json" \
-d '{
"model": "openai/gpt-4o",
"input": [
{
"type": "message",
"role": "user",
"content": "Hello, how are you?"
}
]
}'
import requests
response = requests.post(
"https://api-llm.sunra.ai/v1/responses",
headers={
"Authorization": "Bearer <SUNRA_KEY>",
"Content-Type": "application/json"
},
json={
"model": "openai/gpt-4o",
"input": [
{
"type": "message",
"role": "user",
"content": "Hello, how are you?"
}
]
}
)
print(response.json())
const response = await fetch("https://api-llm.sunra.ai/v1/responses", {
method: "POST",
headers: {
"Authorization": "Bearer <SUNRA_KEY>",
"Content-Type": "application/json"
},
body: JSON.stringify({
model: "openai/gpt-4o",
input: [
{
type: "message",
role: "user",
content: "Hello, how are you?"
}
]
})
});
const data = await response.json();
console.log(data);
{
"id": "resp-abc123",
"object": "response",
"created_at": 1704067200,
"status": "completed",
"model": "openai/gpt-4o",
"output": [
{
"type": "message",
"id": "msg_abc123",
"role": "assistant",
"status": "completed",
"content": [
{
"type": "output_text",
"text": "Hello! I'm doing well, thank you for asking. How can I help you today?",
"annotations": []
}
]
}
],
"temperature": 1.0,
"top_p": 1.0,
"max_output_tokens": null,
"usage": {
"input_tokens": 15,
"output_tokens": 18,
"total_tokens": 33,
"input_tokens_details": {
"cached_tokens": 0
},
"output_tokens_details": {
"reasoning_tokens": 0
}
},
"error": null
}
Membuat respons streaming atau non-streaming menggunakan format OpenAI Responses API.
Autentikasi
string
wajib
Bearer token. Gunakan kunci API Anda sebagai bearer token di header Authorization.Format:
Bearer <SUNRA_KEY>Permintaan
Endpoint ini menerima sebuah objek.string
wajib
ID model yang digunakan untuk menghasilkan respons. Jelajahi model yang tersedia di sunra.ai/models.
string | object[]
Input untuk permintaan respons. Dapat berupa string atau array item input.
Tampilkan properties (when array)
Tampilkan properties (when array)
string
Tipe item input. Nilai yang didukung:
message, item_reference.string
Peran penulis pesan. Nilai yang didukung:
user, assistant, system.string | object[]
Konten pesan input. Dapat berupa string atau array bagian konten.
string
ID item. Diperlukan untuk pesan
assistant dalam riwayat percakapan.string
Status item. Diperlukan untuk pesan
assistant dalam riwayat percakapan.string | null
Menyisipkan pesan sistem (atau pengembang) sebagai item pertama dalam konteks model. Ketika digunakan dengan
input, instruksi disisipkan di awal input.boolean
default:false
Jika diatur ke
true, respons akan di-streaming menggunakan server-sent events (SSE).integer
Batas atas untuk jumlah token output, termasuk token output yang terlihat dan token penalaran.
number
default:1
Temperatur sampling antara 0 dan 2. Nilai lebih tinggi meningkatkan keacakan.
number
default:1
Parameter nucleus sampling. Alternatif untuk sampling dengan temperatur.
number
default:0
Angka antara -2.0 dan 2.0. Nilai positif menghukum token baru berdasarkan frekuensi kemunculannya dalam teks.
number
default:0
Angka antara -2.0 dan 2.0. Nilai positif menghukum token baru berdasarkan apakah mereka sudah muncul dalam teks.
object[]
Array alat yang dapat dipanggil oleh model.
Tampilkan properties
Tampilkan properties
string | object
Mengontrol perilaku pemilihan alat. Nilai string yang didukung:
none, auto, required. Dapat juga menentukan fungsi tertentu.boolean
default:true
Apakah mengizinkan model menjalankan panggilan alat secara paralel.
object
Konfigurasi untuk format respons teks.
Tampilkan properties
Tampilkan properties
object
Konfigurasi format teks.
object
Konfigurasi untuk output penalaran.
Tampilkan properties
Tampilkan properties
string
Membatasi upaya pada penalaran. Nilai yang didukung:
low, medium, high.boolean
default:true
Apakah menyimpan respons yang dihasilkan untuk pengambilan nanti.
object
Set 16 pasangan kunci-nilai yang dapat dilampirkan ke respons. Kunci adalah string dengan maksimal 64 karakter. Nilai adalah string dengan maksimal 512 karakter.
string
Pengenal unik yang mewakili pengguna akhir Anda. Maksimal 128 karakter.
Respons
Objek respons yang berhasil.string
Pengenal respons unik.
string
Tipe objek. Selalu
response.number
Timestamp Unix (dalam detik) kapan respons dibuat.
string
Status respons. Nilai yang mungkin:
completed, failed, in_progress, cancelled.string
Model yang digunakan untuk menghasilkan respons.
object[]
Array item konten yang dihasilkan oleh model.
Tampilkan properties
Tampilkan properties
string
Tipe item output. Misalnya,
message.string
ID unik item output.
string
Peran. Selalu
assistant.string
Status pesan. Misalnya,
completed.object
Statistik penggunaan token untuk respons.
number
Temperatur sampling yang digunakan.
number
Nilai nucleus sampling yang digunakan.
integer | null
Pengaturan token output maksimum yang digunakan.
object | null
Objek error jika pembuatan gagal.
curl -X POST https://api-llm.sunra.ai/v1/responses \
-H "Authorization: Bearer <SUNRA_KEY>" \
-H "Content-Type: application/json" \
-d '{
"model": "openai/gpt-4o",
"input": [
{
"type": "message",
"role": "user",
"content": "Hello, how are you?"
}
]
}'
import requests
response = requests.post(
"https://api-llm.sunra.ai/v1/responses",
headers={
"Authorization": "Bearer <SUNRA_KEY>",
"Content-Type": "application/json"
},
json={
"model": "openai/gpt-4o",
"input": [
{
"type": "message",
"role": "user",
"content": "Hello, how are you?"
}
]
}
)
print(response.json())
const response = await fetch("https://api-llm.sunra.ai/v1/responses", {
method: "POST",
headers: {
"Authorization": "Bearer <SUNRA_KEY>",
"Content-Type": "application/json"
},
body: JSON.stringify({
model: "openai/gpt-4o",
input: [
{
type: "message",
role: "user",
content: "Hello, how are you?"
}
]
})
});
const data = await response.json();
console.log(data);
{
"id": "resp-abc123",
"object": "response",
"created_at": 1704067200,
"status": "completed",
"model": "openai/gpt-4o",
"output": [
{
"type": "message",
"id": "msg_abc123",
"role": "assistant",
"status": "completed",
"content": [
{
"type": "output_text",
"text": "Hello! I'm doing well, thank you for asking. How can I help you today?",
"annotations": []
}
]
}
],
"temperature": 1.0,
"top_p": 1.0,
"max_output_tokens": null,
"usage": {
"input_tokens": 15,
"output_tokens": 18,
"total_tokens": 33,
"input_tokens_details": {
"cached_tokens": 0
},
"output_tokens_details": {
"reasoning_tokens": 0
}
},
"error": null
}
⌘I