curl --request POST 'https://api.voicecheap.ai/oauth/userinfo' \
--header "Authorization: Bearer $VOICECHEAP_ACCESS_TOKEN" \
--header 'Content-Type: application/json' \
--data '{}'
const input = {};
const response = await fetch('https://api.voicecheap.ai/oauth/userinfo', {
method: 'POST',
headers: {
Authorization: `Bearer ${process.env.VOICECHEAP_ACCESS_TOKEN}`,
'Content-Type': 'application/json',
},
body: JSON.stringify(input),
redirect: 'manual',
});
console.log(response.status, await response.text());
import os
import requests
response = requests.request(
"POST",
"https://api.voicecheap.ai/oauth/userinfo",
headers={"Authorization":"Bearer " + os.environ["VOICECHEAP_ACCESS_TOKEN"],"Content-Type":"application/json"},
json={},
timeout=120,
allow_redirects=False,
)
print(response.status_code, response.text)
OAuth y protocolo MCP
Obtener la identidad del usuario conectado (POST)
Lee los claims de identidad concedidos a una conexión OAuth.
POST
/
oauth
/
userinfo
curl --request POST 'https://api.voicecheap.ai/oauth/userinfo' \
--header "Authorization: Bearer $VOICECHEAP_ACCESS_TOKEN" \
--header 'Content-Type: application/json' \
--data '{}'
const input = {};
const response = await fetch('https://api.voicecheap.ai/oauth/userinfo', {
method: 'POST',
headers: {
Authorization: `Bearer ${process.env.VOICECHEAP_ACCESS_TOKEN}`,
'Content-Type': 'application/json',
},
body: JSON.stringify(input),
redirect: 'manual',
});
console.log(response.status, await response.text());
import os
import requests
response = requests.request(
"POST",
"https://api.voicecheap.ai/oauth/userinfo",
headers={"Authorization":"Bearer " + os.environ["VOICECHEAP_ACCESS_TOKEN"],"Content-Type":"application/json"},
json={},
timeout=120,
allow_redirects=False,
)
print(response.status_code, response.text)
Lee los claims de identidad concedidos a una conexión OAuth.
POST https://api.voicecheap.ai/oauth/userinfo
Autenticación
Envía un token de acceso OAuth en Authorization: Bearer. Debe incluir openid; los claims de correo también requieren email. No se aceptan claves API ni credenciales en parámetros de consulta.Ejemplos de solicitud
Sigue la codificación y la autenticación documentadas para esta ruta. El formato envolvente y las reglas de idempotencia de la API de acciones solo se aplican a las invocaciones de acciones.curl --request POST 'https://api.voicecheap.ai/oauth/userinfo' \
--header "Authorization: Bearer $VOICECHEAP_ACCESS_TOKEN" \
--header 'Content-Type: application/json' \
--data '{}'
const input = {};
const response = await fetch('https://api.voicecheap.ai/oauth/userinfo', {
method: 'POST',
headers: {
Authorization: `Bearer ${process.env.VOICECHEAP_ACCESS_TOKEN}`,
'Content-Type': 'application/json',
},
body: JSON.stringify(input),
redirect: 'manual',
});
console.log(response.status, await response.text());
import os
import requests
response = requests.request(
"POST",
"https://api.voicecheap.ai/oauth/userinfo",
headers={"Authorization":"Bearer " + os.environ["VOICECHEAP_ACCESS_TOKEN"],"Content-Type":"application/json"},
json={},
timeout=120,
allow_redirects=False,
)
print(response.status_code, response.text)
Respuesta
Lee los claims de identidad concedidos a una conexión OAuth.HTTP 200
{
"sub": "voicecheap-user-id",
"email": "customer@example.com",
"email_verified": false
}
Cabeceras de respuesta
{
"Cache-Control": "no-store",
"Pragma": "no-cache"
}
Notas de la operación
- Los endpoints OpenID Connect devuelven HTTP 404 cuando la integración de identidad no está disponible en este entorno. Comprueba el descubrimiento antes de depender de funciones de identidad.
- sub es el identificador estable de la cuenta. email y email_verified solo se incluyen si se concedió email y la cuenta tiene una dirección de correo. email_verified refleja el estado real de verificación y puede ser false. Las cuentas eliminadas o desactivadas no pueden usar UserInfo.
Errores
| Estado HTTP | Código | Significado o solución |
|---|---|---|
| 400 | invalid_request | Envía el token de acceso OAuth solo en la cabecera Authorization. Se rechazan las claves API y las credenciales access_token/api_key en la consulta o el cuerpo. |
| 401 | invalid_token | El token de acceso OAuth falta, es inválido, ha caducado, está revocado o ya no está autorizado. Vuelve a conectar la cuenta. |
| 403 | insufficient_scope | El token no tiene openid o la cuenta ya no tiene acceso válido. Vuelve a conectar con el permiso de identidad necesario y una cuenta apta. Consulta el desafío WWW-Authenticate para obtener detalles. |
| 404 | invalid_request | Los endpoints OpenID Connect devuelven HTTP 404 cuando la integración de identidad no está disponible en este entorno. Comprueba el descubrimiento antes de depender de funciones de identidad. |
| 429 | temporarily_unavailable | Se ha alcanzado el límite público de frecuencia de solicitudes OAuth. Espera a que termine la ventana actual antes de reintentarlo. |
| 500 | server_error | La autorización no está disponible temporalmente. Vuelve a intentarlo más tarde. |
¿Esta página le ayudó?

