Metin

Yanıt Oluştur

OpenAI Responses API formatını kullanarak bir yanıt oluşturur

POST
/v1/responses

Model ayrıntılarındaki accepted_request_formats, openai_responses içeriyorsa bu uç noktayı kullanın. İstekler ve yanıtlar Responses API biçimini kullanır. İsteğe bağlı alanlar ve desteklenen değerler seçilen modele bağlıdır.

İstek Gövdesi

modelstringzorunlu

Kullanılacak modelin ID'si. Mevcut seçenekler için Models sayfasına bakın.

inputstring | array

İstek bunun yerine yeniden kullanılabilir bir prompt kullandığında veya previous_response_id ile saklanan bir yanıtı sürdürdüğünde input isteğe bağlıdır.

Konuşmayı oluşturan giriş öğelerinin listesi.

Her öğe şunlardan biri olabilir:

  • message: rol ve içerik içeren bir konuşma mesajı
  • function_call: bir fonksiyon çağrısı isteği
  • function_call_output: bir fonksiyon çağrısından gelen çıktı

Multimodal giriş için, message.content ya düz bir string ya da içerik blokları dizisi olabilir. GPT-5.6 Terra gibi görsel işleme yeteneği olan modeller için resimleri doğrudan düz metin içine URL veya Base64 dizeleri yerleştirmek yerine input_image blokları olarak iletin.

Örnek içerik blokları:

  • { "type": "input_text", "text": "Describe this image" }
  • { "type": "input_image", "image_url": "https://example.com/image.jpg" }
  • { "type": "input_image", "image_url": "data:image/png;base64,..." }
instructionsstring

Model için sistem talimatları (system message ile eşdeğer).

max_output_tokensinteger

Üretilmesi gereken maksimum token sayısı.

temperaturenumber

Örnekleme sıcaklığı. Desteklenen değerler ve varsayılanlar seçilen modele bağlıdır.

toolsarray

Modelin çağırabileceği araçlar. Desteklenen türler ve birleşimler seçilen modele bağlıdır.

streambooleanvarsayılan: false

Eğer true ise, olayların bir akışını döndürür.

previous_response_idstring

Konuşmaya devam etmek için önceki bir yanıtın ID'si.

storebooleanvarsayılan: true

Yanıtın daha sonra alınmak üzere depolanıp depolanmayacağı.

backgroundbooleanvarsayılan: false

Asenkron yürütme talep eder. Destek, seçilen modele bağlıdır.

promptobject

Yeniden kullanılabilir bir istem şablonuna ve değişkenlerine başvuru.

metadataobject

İzleme amaçlı yanıtla iliştirilecek metadata.

textobject

Metin çıktı ayarları. text.format desteği seçilen modele bağlıdır.

parallel_tool_callsbooleanvarsayılan: true

Birden fazla araç çağrısına paralel izin verilip verilmeyeceği.

top_pnumber

Nucleus örnekleme parametresi (0-1).

reasoningobject

effort dahil akıl yürütme seçenekleri seçilen modele bağlıdır.

Yanıt

idstring

Yanıt için benzersiz tanımlayıcı.

objectstring

Her zaman response.

created_atinteger

Yanıtın oluşturulduğu zamanın Unix zaman damgası.

statusstring

Yanıt durumu: queued, in_progress, completed, incomplete, failed veya cancelled. HTTP isteği başarılı olsa da bu alanı kontrol edin.

outputarray

Model tarafından oluşturulan çıktı öğelerinin listesi.

usageobject

Token kullanım istatistikleri.

İlgili uç noktalar

  • GET /v1/responses/{id} kayıtlı bir yanıtı getirir ve include, include_obfuscation, stream, starting_after parametrelerini destekler.
  • DELETE /v1/responses/{id} kayıtlı bir yanıtı siler. Üretimi iptal etmez.
  • POST /v1/responses/compact bir response.compaction nesnesi döndürür.
  • İptal, input-items ve input-tokens uç noktaları şu anda kullanılamaz.

İstek

cURL
curl -X POST "https://api.tokenlab.sh/v1/responses" \
  -H "Authorization: Bearer sk-your-api-key" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-5.6-terra",
    "input": [
      {"type": "message", "role": "user", "content": "Hello!"}
    ],
    "max_output_tokens": 1000
  }'
Python
from openai import OpenAI

client = OpenAI(
    api_key="sk-your-api-key",
    base_url="https://api.tokenlab.sh/v1"
)

response = client.responses.create(
    model="gpt-5.6-terra",
    input=[
        {"type": "message", "role": "user", "content": "Hello!"}
    ],
    max_output_tokens=1000
)

print(response.output)
JavaScript
import OpenAI from 'openai';

const client = new OpenAI({
  apiKey: 'sk-your-api-key',
  baseURL: 'https://api.tokenlab.sh/v1'
});

const response = await client.responses.create({
  model: 'gpt-5.6-terra',
  input: [
    { type: 'message', role: 'user', content: 'Hello!' }
  ],
  max_output_tokens: 1000
});

console.log(response.output);
Go
package main

import (
    "bytes"
    "encoding/json"
    "fmt"
    "net/http"
)

func main() {
    payload := map[string]interface{}{
        "model": "gpt-5.6-terra",
        "input": []map[string]interface{}{
            {"type": "message", "role": "user", "content": "Hello!"},
        },
        "max_output_tokens": 1000,
    }
    body, _ := json.Marshal(payload)

    req, _ := http.NewRequest("POST", "https://api.tokenlab.sh/v1/responses", bytes.NewBuffer(body))
    req.Header.Set("Authorization", "Bearer sk-your-api-key")
    req.Header.Set("Content-Type", "application/json")

    client := &http.Client{}
    resp, _ := client.Do(req)
    defer resp.Body.Close()

    var result map[string]interface{}
    json.NewDecoder(resp.Body).Decode(&result)
    fmt.Println(result["output"])
}
PHP
<?php
$ch = curl_init('https://api.tokenlab.sh/v1/responses');

curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_POST => true,
    CURLOPT_HTTPHEADER => [
        'Content-Type: application/json',
        'Authorization: Bearer sk-your-api-key'
    ],
    CURLOPT_POSTFIELDS => json_encode([
        'model' => 'gpt-5.6-terra',
        'input' => [
            ['type' => 'message', 'role' => 'user', 'content' => 'Hello!']
        ],
        'max_output_tokens' => 1000
    ])
]);

$response = curl_exec($ch);
curl_close($ch);

$data = json_decode($response, true);
print_r($data['output']);

Görsel Girdi Örneği

Görsel işleme yeteneği olan modelleri, resimleri message.content içinde input_image blokları olarak yerleştirerek kullanın. image_url değeri ya herkese açık bir URL ya da Base64 veri URL'si olabilir.

{
  "model": "gpt-5.6-terra",
  "input": [
    {
      "type": "message",
      "role": "user",
      "content": [
        {
          "type": "input_text",
          "text": "Please describe this image."
        },
        {
          "type": "input_image",
          "image_url": "https://example.com/demo.jpg"
        }
      ]
    }
  ]
}
{
  "model": "gpt-5.6-terra",
  "input": [
    {
      "type": "message",
      "role": "user",
      "content": [
        {
          "type": "input_text",
          "text": "Please describe this image."
        },
        {
          "type": "input_image",
          "image_url": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQ..."
        }
      ]
    }
  ]
}

Yanıt

Response
{
  "id": "resp_abc123",
  "object": "response",
  "created_at": 1706000000,
  "status": "completed",
  "model": "gpt-5.6-terra",
  "output": [
    {
      "id": "msg_abc123",
      "type": "message",
      "status": "completed",
      "role": "assistant",
      "content": [
        {"type": "output_text", "text": "Hello! How can I help you today?", "annotations": []}
      ]
    }
  ],
  "usage": {
    "input_tokens": 10,
    "output_tokens": 12,
    "total_tokens": 22
  }
}

Yetkilendirme

BearerAuth
AuthorizationBearer <token>

API Anahtarı kimlik doğrulaması. API anahtarlarını Dashboard > API > API Keys bölümünden oluşturun veya yönetin.

Konum: header

Başlıklar

X-TokenLab-Delivery-Policy?string

İstek bazlı Teslimat politikası. API anahtarı ve Çalışma Alanı varsayılanlarını geçersiz kılar. Otomatik olarak önce TokenLab Verified dener ve çıktı, istek kabulü veya kalıcı kaynak oluşturma öncesinde bir kez Official seçeneğine geçiş yapabilir.

Geçerli değerler

  • "auto"
  • "verified"
  • "official"

İstek gövdesi

application/json

Yanıt

application/json

application/json

application/json