تحديث إعدادات إشعارات مساحة العمل
const options = {
method: 'PATCH',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
email_preferences: {
auto_top_up_failure: true,
payment_method_expiring: true,
model_deprecation: true
}
})
};
fetch('https://api.phaseo.app/v1/notifications/settings', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.phaseo.app/v1/notifications/settings"
payload = { "email_preferences": {
"auto_top_up_failure": True,
"payment_method_expiring": True,
"model_deprecation": True
} }
headers = {"Content-Type": "application/json"}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)curl --request PATCH \
--url https://api.phaseo.app/v1/notifications/settings \
--header 'Content-Type: application/json' \
--data '
{
"email_preferences": {
"auto_top_up_failure": true,
"payment_method_expiring": true,
"model_deprecation": true
}
}
'package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.phaseo.app/v1/notifications/settings"
payload := strings.NewReader("{\n \"email_preferences\": {\n \"auto_top_up_failure\": true,\n \"payment_method_expiring\": true,\n \"model_deprecation\": true\n }\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.patch("https://api.phaseo.app/v1/notifications/settings")
.header("Content-Type", "application/json")
.body("{\n \"email_preferences\": {\n \"auto_top_up_failure\": true,\n \"payment_method_expiring\": true,\n \"model_deprecation\": true\n }\n}")
.asString();<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.phaseo.app/v1/notifications/settings",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'email_preferences' => [
'auto_top_up_failure' => true,
'payment_method_expiring' => true,
'model_deprecation' => true
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}require 'uri'
require 'net/http'
url = URI("https://api.phaseo.app/v1/notifications/settings")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"email_preferences\": {\n \"auto_top_up_failure\": true,\n \"payment_method_expiring\": true,\n \"model_deprecation\": true\n }\n}"
response = http.request(request)
puts response.read_body{
"data": {
"auto_top_up": {
"enabled": true,
"balance_threshold_nanos": 1,
"amount_nanos": 1,
"payment_method_id": "<string>"
},
"low_balance_email": {
"enabled": true,
"threshold_usd": 1
},
"email_preferences": {
"auto_top_up_failure": true,
"payment_method_expiring": true,
"model_deprecation": true
}
}
}{
"error": "error_type",
"ok": false,
"message": "Human-readable error message",
"description": "Additional error details.",
"generation_id": "G-abc123",
"status_code": 502,
"error_type": "system",
"error_origin": "upstream",
"reason": "all_candidates_failed",
"attempt_count": 2,
"failed_providers": [
"google-ai-studio",
"openai"
],
"failed_statuses": [
403,
429
],
"upstream_error": {
"code": "PERMISSION_DENIED",
"message": "The caller does not have permission.",
"description": "<string>",
"param": "<string>"
},
"failure_sample": [
{
"provider": "<string>",
"type": "<string>",
"status": 123,
"upstream_error_code": "<string>",
"upstream_error_message": "<string>",
"upstream_error_description": "<string>",
"upstream_error_param": "<string>",
"upstream_payload_preview": "<string>",
"retryable": true
}
],
"provider_failure_diagnostics": {
"category": "credentials_not_configured",
"hint": "<string>",
"provider": "<string>"
},
"routing_diagnostics": {
"filterStages": [
{
"stage": "<string>",
"beforeCount": 123,
"afterCount": 123,
"droppedProviders": [
{
"providerId": "<string>",
"reason": "<string>"
}
]
}
]
},
"provider_candidate_diagnostics": {
"totalProviders": 123,
"supportsEndpointCount": 123,
"candidateCount": 123,
"droppedUnsupportedEndpoint": [
"<string>"
],
"droppedMissingAdapter": [
{
"providerId": "<string>",
"endpoint": "<string>"
}
]
},
"provider_enablement": {
"capability": "<string>",
"providersBefore": [
"<string>"
],
"providersAfter": [
"<string>"
],
"dropped": [
{
"providerId": "<string>",
"reason": "<string>"
}
]
},
"missing_pricing_providers": [
"<string>"
],
"provider_payment_required_provider": "openai",
"provider_payment_required_support_notice": "Our upstream provider billing appears to be unavailable. If this persists, contact support.",
"details": [
{}
]
}الإشعارات
تحديث إعدادات الإشعارات
يحدّث قسماً واحداً أو أكثر من سياسة الإشعارات الدائمة. يتطلب تفعيل التعبئة التلقائية معرّفاً موجوداً لطريقة دفع محفوظة ومصادقة ثنائية موثقة. يمكن تحديث إعداد قائم دون تكرار إقرار MFA. للتفعيل دون MFA يجب على العملاء تعيين mfa_bypass_acknowledged صراحةً إلى true وتوفير القيمة الدقيقة I ACCEPT THE RISK للحقل mfa_bypass_phrase؛ يظل جمع معلومات الدفع إجراءً تفاعلياً في الحساب.
PATCH
/
notifications
/
settings
تحديث إعدادات إشعارات مساحة العمل
const options = {
method: 'PATCH',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
email_preferences: {
auto_top_up_failure: true,
payment_method_expiring: true,
model_deprecation: true
}
})
};
fetch('https://api.phaseo.app/v1/notifications/settings', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.phaseo.app/v1/notifications/settings"
payload = { "email_preferences": {
"auto_top_up_failure": True,
"payment_method_expiring": True,
"model_deprecation": True
} }
headers = {"Content-Type": "application/json"}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)curl --request PATCH \
--url https://api.phaseo.app/v1/notifications/settings \
--header 'Content-Type: application/json' \
--data '
{
"email_preferences": {
"auto_top_up_failure": true,
"payment_method_expiring": true,
"model_deprecation": true
}
}
'package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.phaseo.app/v1/notifications/settings"
payload := strings.NewReader("{\n \"email_preferences\": {\n \"auto_top_up_failure\": true,\n \"payment_method_expiring\": true,\n \"model_deprecation\": true\n }\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.patch("https://api.phaseo.app/v1/notifications/settings")
.header("Content-Type", "application/json")
.body("{\n \"email_preferences\": {\n \"auto_top_up_failure\": true,\n \"payment_method_expiring\": true,\n \"model_deprecation\": true\n }\n}")
.asString();<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.phaseo.app/v1/notifications/settings",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'email_preferences' => [
'auto_top_up_failure' => true,
'payment_method_expiring' => true,
'model_deprecation' => true
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}require 'uri'
require 'net/http'
url = URI("https://api.phaseo.app/v1/notifications/settings")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"email_preferences\": {\n \"auto_top_up_failure\": true,\n \"payment_method_expiring\": true,\n \"model_deprecation\": true\n }\n}"
response = http.request(request)
puts response.read_body{
"data": {
"auto_top_up": {
"enabled": true,
"balance_threshold_nanos": 1,
"amount_nanos": 1,
"payment_method_id": "<string>"
},
"low_balance_email": {
"enabled": true,
"threshold_usd": 1
},
"email_preferences": {
"auto_top_up_failure": true,
"payment_method_expiring": true,
"model_deprecation": true
}
}
}{
"error": "error_type",
"ok": false,
"message": "Human-readable error message",
"description": "Additional error details.",
"generation_id": "G-abc123",
"status_code": 502,
"error_type": "system",
"error_origin": "upstream",
"reason": "all_candidates_failed",
"attempt_count": 2,
"failed_providers": [
"google-ai-studio",
"openai"
],
"failed_statuses": [
403,
429
],
"upstream_error": {
"code": "PERMISSION_DENIED",
"message": "The caller does not have permission.",
"description": "<string>",
"param": "<string>"
},
"failure_sample": [
{
"provider": "<string>",
"type": "<string>",
"status": 123,
"upstream_error_code": "<string>",
"upstream_error_message": "<string>",
"upstream_error_description": "<string>",
"upstream_error_param": "<string>",
"upstream_payload_preview": "<string>",
"retryable": true
}
],
"provider_failure_diagnostics": {
"category": "credentials_not_configured",
"hint": "<string>",
"provider": "<string>"
},
"routing_diagnostics": {
"filterStages": [
{
"stage": "<string>",
"beforeCount": 123,
"afterCount": 123,
"droppedProviders": [
{
"providerId": "<string>",
"reason": "<string>"
}
]
}
]
},
"provider_candidate_diagnostics": {
"totalProviders": 123,
"supportsEndpointCount": 123,
"candidateCount": 123,
"droppedUnsupportedEndpoint": [
"<string>"
],
"droppedMissingAdapter": [
{
"providerId": "<string>",
"endpoint": "<string>"
}
]
},
"provider_enablement": {
"capability": "<string>",
"providersBefore": [
"<string>"
],
"providersAfter": [
"<string>"
],
"dropped": [
{
"providerId": "<string>",
"reason": "<string>"
}
]
},
"missing_pricing_providers": [
"<string>"
],
"provider_payment_required_provider": "openai",
"provider_payment_required_support_notice": "Our upstream provider billing appears to be unavailable. If this persists, contact support.",
"details": [
{}
]
}آخر تعديل في ٢ أكتوبر ٢٠٢٦
هل كانت هذه الصفحة مفيدة؟