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

# Dokumentacja API

> Pełna dokumentacja REST API VoiceCheap

# Dokumentacja API

API VoiceCheap jest zorganizowane zgodnie z zasadami REST. Wykorzystuje standardowe metody HTTP, zwraca odpowiedzi zakodowane w formacie JSON i używa standardowych kodów odpowiedzi HTTP.

## Podstawowy adres URL

Wszystkie żądania API należy kierować na adres:

```
https://api.voicecheap.ai
```

## Uwierzytelnianie

Wszystkie żądania wymagają klucza API przekazanego w nagłówku `x-api-key`. Szczegóły znajdują się na stronie [Uwierzytelnianie](/docs/pl/authentication).

## Typy zawartości

* **Żądanie**: Użyj `multipart/form-data` do przesyłania plików, `application/json` dla pozostałych żądań
* **Odpowiedź**: Punkty końcowe JSON zwracają `application/json`. Eksporty transkrypcji mogą również zwracać tekst w formacie SRT lub VTT.

## Dostępne punkty końcowe

<CardGroup cols={2}>
  <Card title="Transkrypcja mediów" icon="captions" href="/docs/pl/api-reference/transcribe">
    `POST /v1/transcribe`

    Transkrybuj przesłany plik do formatu JSON, SRT lub VTT.
  </Card>

  <Card title="Eksport transkrypcji projektu" icon="file-lines" href="/docs/pl/api-reference/project-transcript">
    `POST /v1/projects/{projectId}/transcript`

    Pobierz oryginalne lub przetłumaczone transkrypcje projektu.
  </Card>

  <Card title="Rozpocznij tłumaczenie" icon="play" href="/docs/pl/api-reference/translate">
    `POST /v1/translate`

    Prześlij plik wideo lub audio i rozpocznij projekt tłumaczeniowy.
  </Card>

  <Card title="Pobierz status tłumaczenia" icon="magnifying-glass" href="/docs/pl/api-reference/translation-status">
    `GET /v1/translate/{projectId}/status`

    Sprawdź status projektu tłumaczeniowego i pobierz wyniki.
  </Card>

  <Card title="Pobierz szczegóły projektu" icon="list-tree" href="/docs/pl/api-reference/project-details">
    `GET /v1/projects/{projectId}`

    Pobierz historię przetłumaczonych wersji, historię synchronizacji ruchu ust oraz stan projektu.
  </Card>

  <Card title="Usuń projekt" icon="trash" href="/docs/pl/api-reference/delete-project">
    `DELETE /v1/translate/{projectId}`

    Trwale usuń projekt tłumaczeniowy oraz powiązane z nim zasoby.
  </Card>
</CardGroup>

## Przepływ pracy tłumaczenia

Typowy przepływ pracy przy tłumaczeniu wideo wygląda następująco:

```mermaid theme={null}
sequenceDiagram
    participant Client
    participant API
    participant Processing

    Client->>API: POST /v1/translate (file + options)
    API->>Processing: Queue translation job
    API-->>Client: 200 OK (projectId)

    loop Poll for status
        Client->>API: GET /v1/translate/{projectId}/status
        API-->>Client: Status (processing/success/failed)
    end

    Note over Client: Download translated video URL when status is "success"
```

## Format odpowiedzi

Wszystkie poprawne odpowiedzi mają następującą ogólną strukturę:

```json theme={null}
{
  "success": true,
  "message": "Description of the result"
  // Additional fields specific to the endpoint
}
```

Odpowiedzi z błędami mają następującą strukturę:

```json theme={null}
{
  "code": "ERROR_CODE",
  "message": "Human-readable error description"
}
```

## Kody stanu HTTP

| Kod stanu | Opis                                                     |
| --------- | -------------------------------------------------------- |
| 200       | Sukces                                                   |
| 400       | Błędne żądanie - Nieprawidłowe parametry                 |
| 401       | Brak autoryzacji - Nieprawidłowy lub brakujący klucz API |
| 403       | Zabronione - Niewystarczające uprawnienia lub kredyty    |
| 404       | Nie znaleziono - Zasób nie istnieje                      |
| 429       | Zbyt wiele żądań - Przekroczono limit szybkości          |
| 500       | Wewnętrzny błąd serwera                                  |
