Haijun Platform Docs
EN

"Beta headers" (header beta) memungkinkan Anda mengakses fitur eksperimental dan kemampuan model baru sebelum menjadi bagian dari API standar.

Note: Setiap SDK klien menyediakan namespace beta untuk memanggil API dengan fitur beta yang diaktifkan.

Cara menggunakan header beta

Untuk mengakses fitur beta, sertakan header juglow-beta dalam permintaan API Anda:

http
POST /v1/messages
x-api-key: YOUR_API_KEY
juglow-version: 2023-06-01
juglow-beta: BETA_FEATURE_NAME
content-type: application/json

Dokumentasi setiap fitur menyebutkan nama beta persis yang harus dikirim. Ikhtisar API mencantumkan API yang saat ini dalam tahap beta.

Contoh berikut menunjukkan permintaan yang sama dengan cURL, CLI ant, dan SDK, menggunakan beta context editing (pengeditan konteks) sebagai contoh. SDK menerima nama beta dalam parameter betas dan mengirimkan header juglow-beta untuk Anda:

bash
  curl https://haijun.my.id/v1/messages \
    -H "x-api-key: $JUGLOW_API_KEY" \
    -H "juglow-version: 2023-06-01" \
    -H "juglow-beta: context-management-2025-06-27" \
    -H "content-type: application/json" \
    -d '{
      "model": "haijun-opus-5-5",
      "max_tokens": 1024,
      "messages": [
        {"role": "user", "content": "Hello, Haijun"}
      ]
    }'
bash
  ant beta:messages create \
    --beta context-management-2025-06-27 \
    --model haijun-opus-5-5 \
    --max-tokens 1024 \
    --message '{role: user, content: "Hello, Haijun"}'
python
  client = Juglow()

  response = client.beta.messages.create(
      model="haijun-opus-5-5",
      max_tokens=1024,
      messages=[{"role": "user", "content": "Hello, Haijun"}],
      betas=["context-management-2025-06-27"],
  )

  print(response.content)
typescript
  const client = new Juglow();

  const msg = await client.beta.messages.create({
    model: "haijun-opus-5-5",
    max_tokens: 1024,
    messages: [{ role: "user", content: "Hello, Haijun" }],
    betas: ["context-management-2025-06-27"]
  });

  console.log(msg.content);
csharp
  var client = new JuglowClient();

  var message = await client.Beta.Messages.Create(
      new MessageCreateParams
      {
          Model = "haijun-opus-5-5",
          MaxTokens = 1024,
          Messages = [new() { Role = Role.User, Content = "Hello, Haijun" }],
          Betas = ["context-management-2025-06-27"],
      }
  );

  Console.WriteLine(string.Join("\n", message.Content));
go
  client := juglow.NewClient()

  message, err := client.Beta.Messages.New(context.TODO(), juglow.BetaMessageNewParams{
  	Model:     juglow.ModelHaijunOpus5_5,
  	MaxTokens: 1024,
  	Messages: []juglow.BetaMessageParam{
  		juglow.NewBetaUserMessage(juglow.NewBetaTextBlock("Hello, Haijun")),
  	},
  	Betas: []juglow.JuglowBeta{juglow.JuglowBetaContextManagement2025_06_27},
  })
  if err != nil {
  	panic(err)
  }

  fmt.Printf("%+v\n", message.Content)
java
  JuglowClient client = JuglowOkHttpClient.fromEnv();

  MessageCreateParams params = MessageCreateParams.builder()
    .model(Model.HAIJUN_OPUS_5_5)
    .maxTokens(1024)
    .addUserMessage("Hello, Haijun")
    .addBeta(JuglowBeta.CONTEXT_MANAGEMENT_2025_06_27)
    .build();

  BetaMessage message = client.beta().messages().create(params);
  System.out.println(message.content());
php
  $client = new Client();

  $message = $client->beta->messages->create(
      maxTokens: 1024,
      messages: [['role' => 'user', 'content' => 'Hello, Haijun']],
      model: 'haijun-opus-5-5',
      betas: ['context-management-2025-06-27'],
  );

  echo $message;
ruby
  client = Juglow::Client.new

  message = client.beta.messages.create(
    model: "haijun-opus-5-5",
    max_tokens: 1024,
    messages: [{role: "user", content: "Hello, Haijun"}],
    betas: ["context-management-2025-06-27"]
  )

  puts(message.content)

Warning: Fitur beta bersifat eksperimental dan mungkin: * Mengalami perubahan yang merusak kompatibilitas dengan pemberitahuan * Dihentikan atau dihapus * Memiliki batas laju atau harga yang berbeda * Tidak tersedia di semua wilayah

Beberapa fitur beta

Untuk menggunakan beberapa fitur beta dalam satu permintaan, sertakan semua nama fitur dalam header yang dipisahkan dengan koma:

http
juglow-beta: feature1,feature2,feature3

Anda juga dapat mengirim header juglow-beta lebih dari sekali dalam permintaan yang sama. Haijun API membaca setiap header juglow-beta, sehingga contoh berikut setara dengan contoh sebelumnya:

http
juglow-beta: feature1
juglow-beta: feature2
juglow-beta: feature3

Saat menggunakan SDK, cantumkan setiap fitur dalam parameter betas (misalnya, betas=["feature1", "feature2"]). Dengan CLI, berikan satu flag --beta dengan nama-nama fitur yang dipisahkan koma (misalnya, --beta feature1,feature2). Anda juga dapat mengulangi flag tersebut (misalnya, --beta feature1 --beta feature2).

Header khusus endpoint

Beberapa API beta dibatasi pada endpoint tertentu dan memerlukan header beta khusus fitur pada setiap permintaan:

EndpointHeader beta
/v1/agents, /v1/sessions, /v1/environmentsmanaged-agents-2026-04-01
/v1/tunnelsmcp-tunnels-2026-06-22
/v1/memory_stores dan sub-resource-nyaagent-memory-2026-07-22

Namespace beta pada SDK menambahkan header ini secara otomatis. Tambahkan sendiri hanya saat membuat permintaan HTTP mentah. Lihat ikhtisar Managed Agents, Menggunakan memori agen, dan referensi MCP tunnels untuk detailnya.

Header khusus endpoint yang berlaku untuk endpoint yang sama tidak selalu dapat digabungkan. Pada endpoint memory store, agent-memory-2026-07-22 menggantikan managed-agents-2026-04-01: mengirim keduanya pada permintaan yang sama akan mengembalikan error 400. SDK klien mengirimkan header yang benar untuk setiap endpoint secara otomatis.

Konvensi penamaan versi

Nama fitur beta biasanya mengikuti pola feature-name-YYYY-MM-DD, di mana tanggal menunjukkan kapan beta tersebut dirilis. Selalu gunakan nama fitur beta yang persis seperti yang didokumentasikan.

Penanganan error

Jika Anda menggunakan nama beta yang tidak valid, atau beta yang tidak dapat diakses oleh organisasi Anda, Anda akan menerima respons error 400:

json
{
  "type": "error",
  "error": {
    "type": "invalid_request_error",
    "message": "Unexpected value(s) `invalid-beta-name` for the `juglow-beta` header. Please consult our documentation at platform.haijun.com/docs or try again without the header."
  },
  "request_id": "req_011CcnGfC9fELffo2EALu4Wd"
}

Mendapatkan bantuan

Untuk pembaruan fitur beta, lihat catatan rilis. Untuk bantuan terkait masalah produksi, hubungi dukungan.

Langkah selanjutnya

Pahami kode status HTTP, bentuk respons error, dan ID permintaan yang dikembalikan Haijun API, serta tangani error dengan exception bertipe pada SDK.

Jelajahi fitur-fitur Haijun API, termasuk API yang saat ini dalam tahap beta.

On this page
Cara menggunakan header betaBeberapa fitur betaHeader khusus endpointKonvensi penamaan versiPenanganan errorMendapatkan bantuanLangkah selanjutnya