Cari dokumen...

Mulai mengetik untuk mencari dokumentasi

Panduan Platform

Persetujuan untuk penyedia model

Mengapa sebagian penyedia memerlukan persetujuan Anda, cara memberikan atau menariknya, dan cara klien API menangani error persetujuan.

Sebagian penyedia di balik model UnoRouter menggunakan masukan Anda untuk tujuan mereka sendiri, misalnya menyimpannya atau melatih model mereka sendiri. Penyedia lain tidak mempublikasikan cara mereka menangani masukan. UnoRouter memperlakukan mereka dengan cara yang sama, karena penggunaan seperti itu tidak dapat dikesampingkan.

Jika penyedia seperti itu berkedudukan di negara tanpa tingkat perlindungan data yang memadai, masukan Anda baru dikirim ke sana setelah Anda memberikan persetujuan sekali kepada penyedia tersebut (Pasal 49 ayat 1 huruf a GDPR). Persetujuan menyebutkan penyedia dan negaranya, serta mencakup semua model yang disediakan penyedia itu.

Penyedia seperti ini di negara dengan perlindungan memadai tidak memerlukan persetujuan. Anda melihat pemberitahuan sebelum memilih model seperti itu.

Rinciannya ada di kebijakan privasi dan di bagian 6 ketentuan penggunaan.

Buka Persetujuan, tautannya ada di footer dan di menu akun. Tab Penyedia menampilkan setiap penyedia yang memerlukan persetujuan beserta nama dan negaranya, apa yang dilakukannya dengan masukan (melatih, menyimpan, atau tidak diketahui), berapa banyak model dan koneksinya yang aktif, dan apakah Anda sudah memberikan persetujuan.

Tab Penyedia di halaman persetujuan dengan nama, negara, penanganan masukan, dan status persetujuan tiap penyedia

Tab Model menampilkan model. Setujui pada sebuah model membuka tampilannya: menampilkan tepat penyedia yang masih diperlukan model itu, dan Setujui semua memberikan persetujuan sekaligus dengan satu teks yang menyebut setiap penyedia.

Tampilan persetujuan satu model dengan penyedia yang masih diperlukan dan tombol Setujui semua

Dialog persetujuan menampilkan teks lengkap sebelum Anda mengonfirmasi, dan teks itulah yang disimpan bersama persetujuan Anda. Tarik menghapus persetujuan untuk satu penyedia kapan saja; model yang disediakannya akan diblokir untuk Anda sampai Anda memberikan persetujuan lagi.

Dialog persetujuan dengan penyedia, negaranya, risikonya, dan penanganan masukan

Tanpa akun, persetujuan terikat pada browser Anda. Tamu menggunakan halaman yang sama atau Kelola persetujuan di menu chat.

Anda dapat mengajukan keberatan atas penerusan masukan Anda ke penyedia yang menggunakannya untuk tujuan mereka sendiri (Pasal 21 GDPR). Sakelarnya ada di bagian atas halaman persetujuan dan di pengaturan akun Anda. Selama aktif, permintaan Anda melewati penyedia tersebut, dan model yang hanya disediakan oleh mereka tidak tersedia bagi Anda.

Sakelar keberatan di bagian atas halaman persetujuan

Jika permintaan ditujukan ke model yang penyedianya masih memerlukan persetujuan Anda, API menjawab 403 dengan kode consent_required. Pesannya menyebut penyedia yang belum disetujui beserta negaranya dan menautkan halaman persetujuan model tersebut; param berisi kode mereka yang dipisahkan koma.

json
HTTP/1.1 403 Forbidden

{
  "error": {
    "code": "consent_required",
    "message": "claude-opus-5.5 needs your consent for these providers: a7 (China), ih (Indonesia), pol (Hong Kong). Give it once at https://unorouter.com/consents?model=claude-opus-5.5; it covers every model these providers serve. (request id: ...)",
    "param": "CN-19,ID-01,HK-01",
    "type": "new_api_error"
  }
}

Tunjukkan tautan kepada pemilik kunci. Setelah persetujuan, permintaan yang sama akan berhasil. Persetujuan mencakup semua model milik penyedia, sehingga satu persetujuan sering membuka beberapa model.

typescript
const model = "claude-opus-5.5";
const res = await fetch("https://api.unorouter.com/v1/chat/completions", {
  method: "POST",
  headers: {
    Authorization: `Bearer ${process.env.UNOROUTER_API_KEY}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({ model, messages: [{ role: "user", content: "Hello" }] }),
});

if (res.status === 403) {
  const body = await res.json();
  if (body.error?.code === "consent_required") {
    // The message names the providers; the consent page for the model:
    const link = `https://unorouter.com/consents?model=${encodeURIComponent(model)}`;
    showToUser(`${body.error.message}\n${link}`);
  }
}
KodeArti
consent_requiredPenyedia model memerlukan persetujuan Anda. Buka tautan di pesan, berikan persetujuan, lalu ulangi permintaan.
consent_businessModel memerlukan persetujuan yang tidak dapat diberikan akun bisnis. Pilih model lain.
own_purpose_objectedAnda mengajukan keberatan atas penggunaan untuk tujuan sendiri dan model hanya disediakan oleh penyedia seperti itu. Pilih model lain atau tarik keberatan.

Penolakan permintaan tanpa persetujuan diaktifkan secara bertahap dan akan diumumkan sebelumnya. Sampai saat itu permintaan tidak ditolak, tetapi Anda sudah dapat memberikan persetujuan.