curl --request GET 'https://api.voicecheap.ai/.well-known/oauth-protected-resource/mcp'
const input = {};
const response = await fetch('https://api.voicecheap.ai/.well-known/oauth-protected-resource/mcp', {
method: 'GET',
headers: {},
redirect: 'manual',
});
console.log(response.status, await response.text());
import os
import requests
response = requests.request(
"GET",
"https://api.voicecheap.ai/.well-known/oauth-protected-resource/mcp",
headers={},
timeout=120,
allow_redirects=False,
)
print(response.status_code, response.text)
OAuth et protocole MCP
Obtenir les métadonnées de la ressource protégée MCP
Découvrez l’audience de la ressource MCP, le serveur d’autorisation, les autorisations produit prises en charge et le mode de transport de jeton bearer pris en charge.
GET
/
.well-known
/
oauth-protected-resource
/
mcp
curl --request GET 'https://api.voicecheap.ai/.well-known/oauth-protected-resource/mcp'
const input = {};
const response = await fetch('https://api.voicecheap.ai/.well-known/oauth-protected-resource/mcp', {
method: 'GET',
headers: {},
redirect: 'manual',
});
console.log(response.status, await response.text());
import os
import requests
response = requests.request(
"GET",
"https://api.voicecheap.ai/.well-known/oauth-protected-resource/mcp",
headers={},
timeout=120,
allow_redirects=False,
)
print(response.status_code, response.text)
Découvrez l’audience de la ressource MCP, le serveur d’autorisation, les autorisations produit prises en charge et le mode de transport de jeton bearer pris en charge.
GET https://api.voicecheap.ai/.well-known/oauth-protected-resource/mcp
Authentification
Aucune.Exemples de requêtes
Suivez l’encodage et l’authentification documentés pour cette route. L’enveloppe et les règles d’idempotence de l’API d’actions s’appliquent uniquement aux invocations d’actions.curl --request GET 'https://api.voicecheap.ai/.well-known/oauth-protected-resource/mcp'
const input = {};
const response = await fetch('https://api.voicecheap.ai/.well-known/oauth-protected-resource/mcp', {
method: 'GET',
headers: {},
redirect: 'manual',
});
console.log(response.status, await response.text());
import os
import requests
response = requests.request(
"GET",
"https://api.voicecheap.ai/.well-known/oauth-protected-resource/mcp",
headers={},
timeout=120,
allow_redirects=False,
)
print(response.status_code, response.text)
Réponse
Métadonnées OAuth de la ressource protégée. Les deux chemins de métadonnées publiés renvoient le même objet pour la ressource MCP.HTTP 200
{
"resource": "https://api.voicecheap.ai/mcp",
"resource_name": "VoiceCheap MCP",
"authorization_servers": ["https://api.voicecheap.ai"],
"scopes_supported": [
"account:read",
"usage:read",
"settings:read",
"settings:write",
"team:read",
"team:write",
"projects:read",
"projects:write",
"projects:delete",
"translations:write",
"transcription:read",
"transcription:write",
"subtitles:read",
"subtitles:write",
"tts:read",
"tts:write",
"voices:read",
"voices:write",
"images:read",
"images:write",
"thumbnails:read",
"thumbnails:write",
"folders:read",
"folders:write",
"glossary:read",
"glossary:write",
"webhooks:read",
"webhooks:write",
"publishing:read",
"publishing:write"
],
"bearer_methods_supported": ["header"]
}
Notes de l’opération
- Utilisez resource exactement tel qu’il est renvoyé lors de la construction des requêtes d’autorisation et de jeton. Ne le remplacez pas par /v1, n’ajoutez pas de barre oblique et n’utilisez pas l’origine d’un autre environnement.
- La ressource accepte les identifiants bearer dans les en-têtes HTTP. Les identifiants transmis dans la chaîne de requête sont rejetés par l’authentification MCP.
- scopes_supported contient uniquement les autorisations du produit ; offline_access figure dans les métadonnées du serveur d’autorisation.
- Une réponse /mcp non authentifiée indique dans WWW-Authenticate le chemin des métadonnées propre à /mcp.
- La ressource de production est https://api.voicecheap.ai/mcp. La ressource de développement par défaut est https://dev.api.voicecheap.ai/mcp ; les déploiements peuvent publier une autre origine canonique de développement.
Erreurs
| Statut HTTP | Code | Signification ou solution |
|---|---|---|
| 429 | temporarily_unavailable | La limite de fréquence des requêtes OAuth publiques a été atteinte. Attendez la fin de la fenêtre en cours avant de réessayer. |
| 500 | server_error | L’autorisation est temporairement indisponible. Réessayez plus tard. |
Cette page vous a-t-elle été utile ?

