curl --request GET 'https://api.voicecheap.ai/oauth/userinfo' \
--header "Authorization: Bearer $VOICECHEAP_ACCESS_TOKEN"
const input = {};
const response = await fetch('https://api.voicecheap.ai/oauth/userinfo', {
method: 'GET',
headers: {
Authorization: `Bearer ${process.env.VOICECHEAP_ACCESS_TOKEN}`,
},
redirect: 'manual',
});
console.log(response.status, await response.text());
import os
import requests
response = requests.request(
"GET",
"https://api.voicecheap.ai/oauth/userinfo",
headers={"Authorization":"Bearer " + os.environ["VOICECHEAP_ACCESS_TOKEN"]},
timeout=120,
allow_redirects=False,
)
print(response.status_code, response.text)
OAuth i protokół MCP
Pobierz tożsamość połączonego użytkownika
Odczytaj roszczenia tożsamości przyznane połączeniu OAuth.
GET
/
oauth
/
userinfo
curl --request GET 'https://api.voicecheap.ai/oauth/userinfo' \
--header "Authorization: Bearer $VOICECHEAP_ACCESS_TOKEN"
const input = {};
const response = await fetch('https://api.voicecheap.ai/oauth/userinfo', {
method: 'GET',
headers: {
Authorization: `Bearer ${process.env.VOICECHEAP_ACCESS_TOKEN}`,
},
redirect: 'manual',
});
console.log(response.status, await response.text());
import os
import requests
response = requests.request(
"GET",
"https://api.voicecheap.ai/oauth/userinfo",
headers={"Authorization":"Bearer " + os.environ["VOICECHEAP_ACCESS_TOKEN"]},
timeout=120,
allow_redirects=False,
)
print(response.status_code, response.text)
Odczytaj roszczenia tożsamości przyznane połączeniu OAuth.
GET https://api.voicecheap.ai/oauth/userinfo
Uwierzytelnianie
Wyślij token dostępu OAuth w Authorization: Bearer. Token musi zawierać openid; roszczenia e-mail wymagają też email. Klucze API i poświadczenia w parametrach zapytania nie są akceptowane.Przykłady żądań
Stosuj udokumentowany sposób kodowania i uwierzytelniania dla tej ścieżki. Struktura odpowiedzi i reguły idempotencji API akcji dotyczą wyłącznie wywołań akcji.curl --request GET 'https://api.voicecheap.ai/oauth/userinfo' \
--header "Authorization: Bearer $VOICECHEAP_ACCESS_TOKEN"
const input = {};
const response = await fetch('https://api.voicecheap.ai/oauth/userinfo', {
method: 'GET',
headers: {
Authorization: `Bearer ${process.env.VOICECHEAP_ACCESS_TOKEN}`,
},
redirect: 'manual',
});
console.log(response.status, await response.text());
import os
import requests
response = requests.request(
"GET",
"https://api.voicecheap.ai/oauth/userinfo",
headers={"Authorization":"Bearer " + os.environ["VOICECHEAP_ACCESS_TOKEN"]},
timeout=120,
allow_redirects=False,
)
print(response.status_code, response.text)
Odpowiedź
Odczytaj roszczenia tożsamości przyznane połączeniu OAuth.HTTP 200
{
"sub": "voicecheap-user-id",
"email": "customer@example.com",
"email_verified": false
}
Nagłówki odpowiedzi
{
"Cache-Control": "no-store",
"Pragma": "no-cache"
}
Uwagi do operacji
- Endpointy OpenID Connect zwracają HTTP 404, gdy integracja tożsamości jest niedostępna w tym środowisku. Sprawdź wykrywanie przed korzystaniem z funkcji tożsamości.
- sub jest stałym identyfikatorem konta. email i email_verified są dołączane tylko po przyznaniu email i gdy konto ma adres e-mail. email_verified odzwierciedla rzeczywisty stan weryfikacji i może mieć wartość false. Usunięte lub wyłączone konta nie mogą używać UserInfo.
Błędy
| Status HTTP | Kod | Znaczenie lub sposób rozwiązania |
|---|---|---|
| 400 | invalid_request | Wysyłaj token dostępu OAuth wyłącznie w nagłówku Authorization. Klucze API i poświadczenia access_token/api_key w zapytaniu lub treści są odrzucane. |
| 401 | invalid_token | Token dostępu OAuth jest nieobecny, nieprawidłowy, wygasł, został unieważniony lub nie jest już autoryzowany. Połącz konto ponownie. |
| 403 | insufficient_scope | Token nie ma openid lub konto nie spełnia już warunków dostępu. Połącz się ponownie z wymaganym uprawnieniem tożsamości i uprawnionym kontem. Szczegóły znajdziesz w wyzwaniu WWW-Authenticate. |
| 404 | invalid_request | Endpointy OpenID Connect zwracają HTTP 404, gdy integracja tożsamości jest niedostępna w tym środowisku. Sprawdź wykrywanie przed korzystaniem z funkcji tożsamości. |
| 429 | temporarily_unavailable | Osiągnięto publiczny limit częstotliwości żądań OAuth. Przed ponowieniem poczekaj na zakończenie bieżącego okna. |
| 500 | server_error | Autoryzacja jest tymczasowo niedostępna. Spróbuj ponownie później. |
Czy ta strona była pomocna?

