رضایتهای ارائهدهندگان مدل
چرا بعضی ارائهدهندگان رضایت میخواهند، چگونه بدهید یا پس بگیرید، و کلاینتهای API خطای رضایت را چطور هندل کنند.
بعضی ارائهدهندگان پشت مدلهای Routerah از ورودیهای شما برای مقاصد خودشان استفاده میکنند؛ مثلاً برای نگهداریشان یا آموزش مدلهای خودشان. بعضی هم منتشر نکردهاند با ورودیها چه میکنند. Routerah هر دو را یکسان در نظر میگیرد، چون چنین استفادهای را نمیتوان رد کرد.
اگر چنین ارائهدهندهای در کشوری بدون سطح کافی حفاظت داده مستقر باشد، ورودیهای شما فقط بعد از یک بار رضایت به آن ارائهدهنده آنجا میروند (ماده ۴۹(۱)(الف) GDPR). رضایت، ارائهدهنده و کشورش را نام میبرد و همه مدلهایی را که او سرو میکند میپوشاند.
ارائهدهندگان اینگونه در کشورهای با حفاظت کافی به رضایت نیاز ندارند. قبل از انتخاب چنین مدلای اطلاعیهای میبینید.
جزئیات درسیاست حفظ حریم خصوصیو در بخش ۶شرایط استفادهاست.
باز کنیدرضایتنامههاکه در پاصفحه و منوی حساب لینک شده است. تب Providers هر ارائهدهنده نیازمند رضایت را با نام و کشورش، کاری که با ورودیها میکند (آموزش، ذخیره یا نامعلوم)، تعداد مدلها و کانالهای فعالش و اینکه آیا رضایت دادهاید فهرست میکند.

تب Models به جای آن مدلها را فهرست میکند. رضایت روی یک مدل، نمای همان مدل را باز میکند: دقیقاً ارائهدهندگانی که این مدل هنوز از آنها نیاز دارد را نشان میدهد و «Consent to all» همه را در یک گام با متنی که هر ارائهدهنده را نام میبرد میدهد.

دیالوگ رضایت، متن کامل را قبل از تأیید نشان میدهد و دقیقاً همین متن با رضایت شما ذخیره میشود. «Withdraw» رضایت یک ارائهدهنده را هر زمان برمیدارد؛ مدلهایی که او سرو میکند بعدش برای شما مسدود میشوند تا دوباره رضایت بدهید.

بدون حساب، رضایتها متعلق به مرورگر شماست. مهمانها از همین صفحه یا از «مدیریت رضایتها» در منوی گفتگو استفاده میکنند.
میتوانید با انتقال ورودیهایتان به ارائهدهندگانی که آنها را برای مقاصد خودشان استفاده میکنند مخالفت کنید (ماده ۲۱ GDPR). کلیدش بالای صفحه رضایتها و در تنظیمات حساب شماست. تا وقتی روشن است، درخواستهایتان از این ارائهدهندگان میگذرد و مدلهایی که فقط از طریق آنها سرو میشوند برایتان در دسترس نیستند.

وقتی درخواستی به مدلی برود که ارائهدهندگانش هنوز رضایت شما را میخواهند، API با 403 و کد consent_required جواب میدهد. پیام، ارائهدهندگان جاافتاده را با کشورهایشان نام میبرد و صفحه رضایت آن مدل را لینک میکند؛ param کدهایشان را با کاما فهرست میکند.
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://routerah.app/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"
}
}لینک را به مالک کلید نشان دهید. بعد از رضایت، همان درخواست عبور میکند. یک رضایت همه مدلهایی را که ارائهدهنده سرو میکند میپوشاند؛ پس یک رضایت اغلب چند مدل را باز میکند.
const model = "claude-opus-5.5";
const res = await fetch("https://api.routerah.app/v1/chat/completions", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.ROUTERAH_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://routerah.app/consents?model=${encodeURIComponent(model)}`;
showToUser(`${body.error.message}\n${link}`);
}
}| کد | معنا |
|---|---|
consent_required | یکی از ارائهدهندگان مدل به رضایت شما نیاز دارد. لینک داخل پیام را باز کنید، رضایت بدهید و درخواست را تکرار کنید. |
consent_business | مدل به رضایتی نیاز دارد که حسابهای تجاری نمیتوانند بدهند. مدل دیگری انتخاب کنید. |
own_purpose_objected | شما با استفاده برای مقاصد خودشان مخالفت کردهاید و مدل فقط توسط چنین ارائهدهندگانی سرو میشود. مدل دیگری انتخاب کنید یا اعتراض را پس بگیرید. |
رد کردن درخواستهای بدون رضایت مرحلهای فعال میشود و از قبل اعلام خواهد شد. تا آن زمان درخواستها رد نمیشوند، اما همین حالا میتوانید رضایتهایتان را بدهید.