> ## Documentation Index
> Fetch the complete documentation index at: https://docs.sunra.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Create a response

OpenAI Responses API formatını kullanarak akışlı veya akışsız bir yanıt oluşturur.

## Kimlik Doğrulama

<ParamField header="Authorization" type="string" required>
  Bearer token. Authorization başlığında API anahtarınızı bearer token olarak kullanın.

  Format: `Bearer <SUNRA_KEY>`
</ParamField>

## İstek

Bu endpoint bir JSON nesnesi bekler.

<ParamField body="model" type="string" required>
  Yanıt üretmek için kullanılacak model. Mevcut modelleri [sunra.ai/models](https://sunra.ai/models) adresinde inceleyin.
</ParamField>

<ParamField body="input" type="string | object[]">
  Yanıt isteği için girdi. Bir dize veya girdi öğeleri dizisi olabilir.

  <Expandable title="özellikler (dizi olduğunda)">
    <ParamField body="type" type="string">
      Girdi öğesinin türü. Örn., `message`.
    </ParamField>

    <ParamField body="role" type="string">
      Mesaj yazarının rolü. Desteklenen değerler: `user`, `assistant`, `system`.
    </ParamField>

    <ParamField body="content" type="string">
      Girdi mesajının içeriği.
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="instructions" type="string">
  Model için sistem düzeyinde talimatlar. Bir sistem mesajına eşdeğer.
</ParamField>

<ParamField body="stream" type="boolean" default={false}>
  `true` olarak ayarlanırsa, yanıt server-sent events (SSE) kullanılarak akışla iletilir.
</ParamField>

<ParamField body="max_output_tokens" type="integer">
  Üretilecek maksimum çıkış token sayısı.
</ParamField>

<ParamField body="temperature" type="number">
  0 ile 2 arasında örnekleme sıcaklığı. Yüksek değerler rastgeleliği artırır.
</ParamField>

<ParamField body="top_p" type="number">
  Çekirdek örnekleme parametresi (0-1).
</ParamField>

<ParamField body="frequency_penalty" type="number">
  -2.0 ile 2.0 arasında bir sayı. Tokenleri mevcut sıklıklarına göre cezalandırır.
</ParamField>

<ParamField body="presence_penalty" type="number">
  -2.0 ile 2.0 arasında bir sayı. Tokenleri daha önce görünüp görünmediklerine göre cezalandırır.
</ParamField>

<ParamField body="store" type="boolean" default={true}>
  Üretilen yanıtın daha sonra alınmak üzere saklanıp saklanmayacağı.
</ParamField>

## Yanıt

Başarılı yanıt nesnesi.

<ResponseField name="id" type="string">
  Benzersiz yanıt tanımlayıcısı.
</ResponseField>

<ResponseField name="object" type="string">
  Nesne türü. Her zaman `response`.
</ResponseField>

<ResponseField name="created_at" type="number">
  Oluşturulma Unix zaman damgası.
</ResponseField>

<ResponseField name="status" type="string">
  Yanıtın durumu. `completed`, `failed`, `in_progress` veya `cancelled` olabilir.
</ResponseField>

<ResponseField name="model" type="string">
  Yanıt için kullanılan model.
</ResponseField>

<ResponseField name="output" type="object[]">
  Model tarafından üretilen çıkış öğelerinin listesi.

  <Expandable title="özellikler">
    <ResponseField name="type" type="string">
      Çıkış öğesinin türü. Örn., `message`.
    </ResponseField>

    <ResponseField name="id" type="string">
      Çıkış öğesi için benzersiz tanımlayıcı.
    </ResponseField>

    <ResponseField name="role" type="string">
      Rol. Her zaman `assistant`.
    </ResponseField>

    <ResponseField name="content" type="object[]">
      Çıkışın içeriği.

      <Expandable title="özellikler">
        <ResponseField name="type" type="string">
          İçerik türü. Örn., `output_text`.
        </ResponseField>

        <ResponseField name="text" type="string">
          Üretilen metin.
        </ResponseField>
      </Expandable>
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="usage" type="object">
  Token kullanım istatistikleri.

  <Expandable title="özellikler">
    <ResponseField name="input_tokens" type="integer">
      İşlenen giriş token sayısı.
    </ResponseField>

    <ResponseField name="output_tokens" type="integer">
      Üretilen çıkış token sayısı.
    </ResponseField>

    <ResponseField name="total_tokens" type="integer">
      Kullanılan toplam token sayısı.
    </ResponseField>
  </Expandable>
</ResponseField>

<RequestExample>
  ```bash cURL theme={null}
  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?"
        }
      ]
    }'
  ```

  ```python Python theme={null}
  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())
  ```

  ```javascript JavaScript theme={null}
  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);
  ```
</RequestExample>

<ResponseExample>
  ```json 200 theme={null}
  {
    "id": "resp-abc123",
    "object": "response",
    "created_at": 1704067200,
    "status": "completed",
    "model": "openai/gpt-4o",
    "output": [
      {
        "type": "message",
        "id": "msg_abc123",
        "role": "assistant",
        "content": [
          {
            "type": "output_text",
            "text": "Hello! I'm doing well, thank you for asking."
          }
        ]
      }
    ],
    "frequency_penalty": 0,
    "presence_penalty": 0,
    "temperature": 1.0,
    "top_p": 1.0,
    "usage": {
      "input_tokens": 15,
      "output_tokens": 12,
      "total_tokens": 27
    }
  }
  ```
</ResponseExample>
