curl --request POST 'https://api.voicecheap.ai/v1/actions/settings_get' \
--header "x-api-key: $VOICECHEAP_API_KEY" \
--header 'Content-Type: application/json' \
--data '{}'
const input = {};
const response = await fetch('https://api.voicecheap.ai/v1/actions/settings_get', {
method: 'POST',
headers: {
'x-api-key': process.env.VOICECHEAP_API_KEY,
'Content-Type': 'application/json',
},
body: JSON.stringify(input),
});
const body = await response.json();
if (!response.ok) throw new Error(body.code + ': ' + body.message);
console.log(body);
import os
import requests
response = requests.post(
"https://api.voicecheap.ai/v1/actions/settings_get",
headers={"x-api-key": os.environ["VOICECHEAP_API_KEY"]},
json={},
timeout=120,
)
body = response.json()
if not response.ok:
raise RuntimeError(f"{body.get('code')}: {body.get('message')}")
print(body)
{
"data": {
"companyName": "Studio",
"brandVocabulary": [
"VoiceCheap"
],
"customTranslationInstructions": "Keep product names unchanged.",
"canEditSharedSettings": true,
"favoriteTemplates": {
"dynamicSubtitles": null,
"voiceIds": []
},
"targetLanguagePresets": [
{
"id": "european_languages",
"name": "European languages",
"languages": [
"french",
"german"
]
}
],
"socialMediaStatsPresets": [],
"textToSpeechBrandPresets": [],
"defaultVoiceCloningSettings": {
"stability": 0.5,
"similarity": 0.75
},
"isSoundNotificationsEnabled": true,
"isVoiceCloningSettingsTipDismissed": false
}
}
Einstellungen und Benachrichtigungen
Kontoeinstellungen abrufen
Rufen Sie gespeichertes Vokabular, Übersetzungsanweisungen, Stimmen- und Sprachvoreinstellungen, bevorzugte Vorlagen und persönliche Oberflächeneinstellungen ab.
POST
/
v1
/
actions
/
settings_get
curl --request POST 'https://api.voicecheap.ai/v1/actions/settings_get' \
--header "x-api-key: $VOICECHEAP_API_KEY" \
--header 'Content-Type: application/json' \
--data '{}'
const input = {};
const response = await fetch('https://api.voicecheap.ai/v1/actions/settings_get', {
method: 'POST',
headers: {
'x-api-key': process.env.VOICECHEAP_API_KEY,
'Content-Type': 'application/json',
},
body: JSON.stringify(input),
});
const body = await response.json();
if (!response.ok) throw new Error(body.code + ': ' + body.message);
console.log(body);
import os
import requests
response = requests.post(
"https://api.voicecheap.ai/v1/actions/settings_get",
headers={"x-api-key": os.environ["VOICECHEAP_API_KEY"]},
json={},
timeout=120,
)
body = response.json()
if not response.ok:
raise RuntimeError(f"{body.get('code')}: {body.get('message')}")
print(body)
{
"data": {
"companyName": "Studio",
"brandVocabulary": [
"VoiceCheap"
],
"customTranslationInstructions": "Keep product names unchanged.",
"canEditSharedSettings": true,
"favoriteTemplates": {
"dynamicSubtitles": null,
"voiceIds": []
},
"targetLanguagePresets": [
{
"id": "european_languages",
"name": "European languages",
"languages": [
"french",
"german"
]
}
],
"socialMediaStatsPresets": [],
"textToSpeechBrandPresets": [],
"defaultVoiceCloningSettings": {
"stability": 0.5,
"similarity": 0.75
},
"isSoundNotificationsEnabled": true,
"isVoiceCloningSettingsTipDismissed": false
}
}
Rufen Sie gespeichertes Vokabular, Übersetzungsanweisungen, Stimmen- und Sprachvoreinstellungen, bevorzugte Vorlagen und persönliche Oberflächeneinstellungen ab.
Erforderliche Berechtigungen:
POST https://api.voicecheap.ai/v1/actions/settings_get
Authentifizierung und Berechtigungen
string
erforderlich
Senden Sie einen VoiceCheap-API-Schlüssel in diesem Header. Authorization: Bearer mit demselben API-Schlüssel wird ebenfalls unterstützt.
OAuth-Zugriffstoken werden nur von MCP akzeptiert, nicht von diesem REST-Endpunkt.
settings:read.
Ein aktives kostenpflichtiges Abonnement ist erforderlich. Berechtigungen ändern weder Teamrollen noch Ressourceneigentum, Medienguthaben oder Tariflimits.
Parameter
Senden Sie ein leeres JSON-Objekt. Diese Aktion hat keine Eingabefelder.Vollständiges Eingabeschema
Vollständiges Eingabeschema
Das folgende JSON Schema enthält die exakten Feldnamen, verschachtelten Typen, Standardwerte, Grenzen und akzeptierten Werte aus der Discovery. Zusätzliche feldübergreifende Regeln finden Sie in den Hinweisen zur Operation.
{
"type": "object",
"properties": {},
"additionalProperties": false
}
Anfragebeispiele
Ersetzen Sie die beispielhaften Ressourcenkennungen und Medienschlüssel durch Werte, die für Ihr Konto zurückgegeben wurden. Behalten Sie bei Wiederholungen derselben Mutation dieselbe Anfragekennung bei.curl --request POST 'https://api.voicecheap.ai/v1/actions/settings_get' \
--header "x-api-key: $VOICECHEAP_API_KEY" \
--header 'Content-Type: application/json' \
--data '{}'
const input = {};
const response = await fetch('https://api.voicecheap.ai/v1/actions/settings_get', {
method: 'POST',
headers: {
'x-api-key': process.env.VOICECHEAP_API_KEY,
'Content-Type': 'application/json',
},
body: JSON.stringify(input),
});
const body = await response.json();
if (!response.ok) throw new Error(body.code + ': ' + body.message);
console.log(body);
import os
import requests
response = requests.post(
"https://api.voicecheap.ai/v1/actions/settings_get",
headers={"x-api-key": os.environ["VOICECHEAP_API_KEY"]},
json={},
timeout=120,
)
body = response.json()
if not response.ok:
raise RuntimeError(f"{body.get('code')}: {body.get('message')}")
print(body)
Antwort
Eine erfolgreiche erste Ausführung gibt HTTP 200 mit dem Ergebnis der Operation unter data zurück. Bei einer Wiederholung kann stattdessen der gespeicherte Anfragestatus zurückgegeben werden. Das Beispiel zeigt eine unterstützte Antwort, nicht alle optionalen Felder. Gibt die persönlichen Einstellungen des Aufrufers sowie das gemeinsame Vokabular und die Übersetzungsanweisungen des Eigentümers des aktiven Arbeitsbereichs zurück.{
"data": {
"companyName": "Studio",
"brandVocabulary": [
"VoiceCheap"
],
"customTranslationInstructions": "Keep product names unchanged.",
"canEditSharedSettings": true,
"favoriteTemplates": {
"dynamicSubtitles": null,
"voiceIds": []
},
"targetLanguagePresets": [
{
"id": "european_languages",
"name": "European languages",
"languages": [
"french",
"german"
]
}
],
"socialMediaStatsPresets": [],
"textToSpeechBrandPresets": [],
"defaultVoiceCloningSettings": {
"stability": 0.5,
"similarity": 0.75
},
"isSoundNotificationsEnabled": true,
"isVoiceCloningSettingsTipDismissed": false
}
}
Ergebnisfelder
| Feld | Beschreibung |
|---|---|
data.companyName | Unternehmensname des persönlichen Kontos oder null. |
data.brandVocabulary | Gemeinsames Vokabular des Eigentümers des Arbeitsbereichs; ein leeres Array bedeutet, dass keines vorhanden ist. |
data.customTranslationInstructions | Gemeinsame Übersetzungsanweisungen des Kontos; eine leere Zeichenfolge bedeutet, dass keine vorliegen. |
data.canEditSharedSettings | Gibt an, ob der Aufrufer das gemeinsame Vokabular und die Übersetzungsanweisungen ändern darf. |
data.favoriteTemplates | Gespeicherte Untertitel- und Stimmfavoriten oder null. |
data.favoriteTemplates.dynamicSubtitles | Name der bevorzugten dynamischen Untertitelvorlage oder null. |
data.favoriteTemplates.voiceIds | Kennungen der favorisierten Stimmen. |
data.targetLanguagePresets | Gespeicherte persönliche Sprachvoreinstellungen. |
data.targetLanguagePresets[].id | Kennung der Voreinstellung. |
data.targetLanguagePresets[].name | Anzeigename der Voreinstellung. |
data.targetLanguagePresets[].languages | In dieser Voreinstellung gespeicherte Sprachen. |
data.socialMediaStatsPresets | Gespeicherte persönliche Kanalauswahl. |
data.socialMediaStatsPresets[].channelIds | In dieser Voreinstellung gespeicherte Kanalkennungen. |
data.textToSpeechBrandPresets | Gespeicherte persönliche Voreinstellungen für die Sprechweise der Sprachausgabe. |
data.textToSpeechBrandPresets[].voice | Gespeicherte Kennung der Stimmenauswahl. |
data.textToSpeechBrandPresets[].instructionPreset | Name der gespeicherten Voreinstellung für die Sprechweise. |
data.textToSpeechBrandPresets[].instructions | Gespeicherte Sprechanweisungen. |
data.textToSpeechBrandPresets[].speed | Gespeicherter Multiplikator für die Sprechgeschwindigkeit. |
data.defaultVoiceCloningSettings | Standardwerte für stability und similarity oder null. |
data.isSoundNotificationsEnabled | Persönliche Einstellung für akustische Benachrichtigungen. |
data.isVoiceCloningSettingsTipDismissed | Ob der Aufrufer den Hinweis zu den Stimmeinstellungen geschlossen hat. |
Hinweise zur Operation
- Wenn das Konto ein Teammitglied ist, stammen gemeinsame Einstellungen vom Teaminhaber, während Oberflächeneinstellungen persönlich bleiben.
Nutzung
Jeder erfolgreiche Aufruf verbraucht einen monatlichen API/MCP-Aufruf. Zusätzlich gelten das Medienguthaben und die eigenen Generierungskontingente der Operation.Fehler
| HTTP-Status | Code | Bedeutung oder Behebung |
|---|---|---|
| 400 | CREDENTIAL_IN_QUERY | Zugangsdaten wurden in einem Abfrageparameter namens access_token oder api_key übergeben. Senden Sie Zugangsdaten in Headern. |
| 400 | VALIDATION_ERROR | Das JSON-Objekt enthält ein nicht unterstütztes Feld, einen ungültigen Wert oder ein fehlendes erforderliches Argument. |
| 401 | API_KEY_EXPIRED | Der API-Schlüssel ist abgelaufen. |
| 401 | INVALID_API_KEY | Geben Sie einen gültigen, nicht abgelaufenen API-Schlüssel an. |
| 401 | INVALID_CREDENTIAL | Der Authorization-Header ist fehlerhaft oder steht im Konflikt mit x-api-key. |
| 401 | MISSING_CREDENTIAL | Es wurde kein nutzbarer Berechtigungsnachweis im Header übergeben, oder er überschritt 4096 Zeichen. |
| 401 | USER_NOT_FOUND | Das Konto des Zugangsnachweises existiert nicht mehr. |
| 403 | AMBIGUOUS_TEAM_API_KEY | Der Benutzer des Berechtigungsnachweises gehört mehr als einem Team an, weshalb der Abrechnungskontext nicht eindeutig ist. |
| 403 | INSUFFICIENT_SCOPE | Erteilen Sie alle erforderlichen Berechtigungen oder verwenden Sie andere Zugangsdaten. |
| 403 | INTEGRATION_PLAN_UNSUPPORTED | Die Integrationslimits des Kontos konnten nicht verifiziert werden. |
| 403 | SUBSCRIPTION_REQUIRED | Verwenden Sie ein aktives kostenpflichtiges Abonnement. |
| 403 | TEAM_MEMBERSHIP_INVALID | Die aktuelle Teammitgliedschaft des Kontos stimmt nicht mit dem Arbeitsbereich dieser Verbindung überein. Aktualisieren Sie die Mitgliedschaft und stellen Sie die Verbindung erneut her. |
| 403 | TEAM_OWNER_NOT_FOUND | Das maßgebliche Konto des Teaminhabers wurde nicht gefunden. |
| 404 | ACCOUNT_NOT_FOUND | Das Konto oder das Konto des aktiven Arbeitsbereichs wurde nicht gefunden. |
| 429 | INTEGRATION_MONTHLY_LIMIT_REACHED | Warten Sie auf die monatliche Zurücksetzung oder wechseln Sie den Tarif. |
| 429 | INTEGRATION_RATE_LIMIT_REACHED | Warten Sie gegebenenfalls die in Retry-After angegebene Zeit und verwenden Sie zunehmend längere Warteintervalle. |
| 500 | INTERNAL_ERROR | Prüfen Sie den Status der gespeicherten Anfrage und den Ressourcenverlauf, bevor Sie eine Mutation erneut versuchen. |
| 503 | SERVER_RESTARTING | Der Server wird neu gestartet. Versuchen Sie es in Kürze erneut und behalten Sie bei einer Mutation dieselbe Anfragekennung bei. |
{
"code": "INSUFFICIENT_SCOPE",
"message": "This credential does not permit the requested action.",
"status": 403,
"details": {
"requiredScopes": ["settings:read"]
}
}
War diese Seite hilfreich?

