> ## Documentation Index
> Fetch the complete documentation index at: https://api-docs.voicecheap.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Pobierz metadane serwera autoryzacji

> Poznaj publiczne punkty końcowe OAuth oraz obsługiwane w tym środowisku mechanizmy kodów autoryzacyjnych, PKCE, odświeżania i unieważniania.

Poznaj publiczne punkty końcowe OAuth oraz obsługiwane w tym środowisku mechanizmy kodów autoryzacyjnych, PKCE, odświeżania i unieważniania.

```http theme={null}
GET https://api.voicecheap.ai/.well-known/oauth-authorization-server
```

## Uwierzytelnianie

Brak.

## 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.

<RequestExample>
  ```bash cURL theme={null}
  curl --request GET 'https://api.voicecheap.ai/.well-known/oauth-authorization-server'
  ```

  ```javascript JavaScript theme={null}
  const input = {};
  const response = await fetch('https://api.voicecheap.ai/.well-known/oauth-authorization-server', {
    method: 'GET',
    headers: {},
    redirect: 'manual',
  });
  console.log(response.status, await response.text());
  ```

  ```python Python theme={null}
  import os
  import requests

  response = requests.request(
      "GET",
      "https://api.voicecheap.ai/.well-known/oauth-authorization-server",
      headers={},
      timeout=120,
      allow_redirects=False,
  )
  print(response.status_code, response.text)
  ```
</RequestExample>

## Odpowiedź

Metadane serwera autoryzacyjnego OAuth z bezwzględnymi adresami URL punktów końcowych w kanonicznym origin wystawcy.

```json HTTP 200 theme={null}
{
  "issuer": "https://api.voicecheap.ai",
  "authorization_endpoint": "https://api.voicecheap.ai/oauth/authorize",
  "token_endpoint": "https://api.voicecheap.ai/oauth/token",
  "registration_endpoint": "https://api.voicecheap.ai/oauth/register",
  "revocation_endpoint": "https://api.voicecheap.ai/oauth/revoke",
  "response_types_supported": ["code"],
  "response_modes_supported": ["query"],
  "grant_types_supported": ["authorization_code", "refresh_token"],
  "token_endpoint_auth_methods_supported": ["none"],
  "revocation_endpoint_auth_methods_supported": ["none"],
  "code_challenge_methods_supported": ["S256"],
  "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",
    "offline_access"
  ],
  "authorization_response_iss_parameter_supported": true,
  "client_id_metadata_document_supported": true
}
```

## Uwagi do operacji

* Deklarowane są wyłącznie typ odpowiedzi code i tryb odpowiedzi query.
* Klienci mogą używać rejestracji dynamicznej lub Client ID Metadata Document (CIMD). client\_id\_metadata\_document\_supported ma wartość true; klient CIMD używa publicznego adresu HTTPS dokumentu jako client\_id.
* Dokument JSON CIMD musi zawierać dokładnie zgodny client\_id, niepusty client\_name do 120 znaków oraz 1–10 dokładnych redirect\_uris. Używaj uwierzytelniania klienta publicznego none z S256 PKCE; authorization\_code jest wymagane, a refresh\_token opcjonalne.
* Udostępniaj CIMD jako nieskompresowany JSON przez publiczne HTTPS na porcie 443, z jawną ścieżką, bez poświadczeń, fragmentów, segmentów kropkowych i przekierowań. Dokument może mieć do 64 KiB i musi odpowiedzieć w ciągu 5 sekund. Metadane w pamięci podręcznej wygasają najpóźniej po 5 minutach; wymiana i odświeżanie tokenów używają metadanych powiązanych z autoryzacją.
* Gdy OpenID Connect jest dostępny, metadane serwera autoryzacji ogłaszają też zakresy openid i email oraz userinfo\_endpoint i jwks\_uri. W przeciwnym razie te zakresy i endpointy nie występują w metadanych.
* Metody uwierzytelniania tokenów i unieważniania mają wartość none. Klienci publiczni używają client\_id i S256 PKCE zamiast sekretu klienta.
* offline\_access to znacznik zakresu związany z odnawianiem, a nie uprawnienie produktu. Wydanie tokenu odświeżania zależy od tego, czy refresh\_token zarejestrowano jako typ grantu.
* Sprawdź zgodność zwróconej wartości iss z issuer w końcowym wywołaniu zwrotnym klienta. Zarówno udane, jak i odrzucone wywołania zwrotne autoryzacji zawierają iss i zwracają state, jeśli zostało podane.

## Błędy

| Status HTTP | Kod | Znaczenie lub sposób rozwiązania |
| - | - | - |
| 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. |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.