# deepl/openapi architecture

> Architecture diagram of the GitHub repository deepl/openapi, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-27). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/deepl/openapi
- Repository: https://github.com/deepl/openapi

## Overview

This repository is a public mirror of DeepL API specifications, not an API implementation. Its two product surfaces are the REST API and the Voice API. The README identifies REST translation, glossary, and document capabilities, and Voice transcription and translation; the specification files are the only source paths available, so those capability nodes point to their enclosing spec. The README also documents automatic syncing from the upstream repository and use of the specs with API exploration and SDK-generation tools; source excerpts were unavailable to verify further internal details.

Main entry points: [`openapi.yaml`](https://github.com/deepl/openapi/blob/main/openapi.yaml) (REST OpenAPI YAML), [`voice.asyncapi.yaml`](https://github.com/deepl/openapi/blob/main/voice.asyncapi.yaml) (Voice AsyncAPI YAML), [`openapi.json`](https://github.com/deepl/openapi/blob/main/openapi.json) (REST OpenAPI JSON), [`voice.asyncapi.json`](https://github.com/deepl/openapi/blob/main/voice.asyncapi.json) (Voice AsyncAPI JSON)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_rest["REST API"]
  node_rest_yaml["REST OpenAPI YAML<br/>[openapi.yaml]"]
  node_rest_json["REST OpenAPI JSON<br/>[openapi.json]"]
  node_translation["Translation<br/>[openapi.yaml]"]
  node_glossaries["Glossaries<br/>[openapi.yaml]"]
  node_documents["Documents<br/>[openapi.yaml]"]
end

subgraph group_voice["Voice API"]
  node_voice_yaml["Voice AsyncAPI YAML"]
  node_voice_json["Voice AsyncAPI JSON"]
  node_transcription["Audio transcription"]
  node_voice_translation["Audio translation"]
end

node_upstream(("Upstream specs"))
node_explorer(("API explorers"))
node_generator(("SDK generators"))

node_upstream -.->|"syncs specs"| node_rest_yaml
node_upstream -.->|"syncs specs"| node_rest_json
node_upstream -.->|"syncs specs"| node_voice_yaml
node_upstream -.->|"syncs specs"| node_voice_json
node_explorer -->|"explores"| node_rest_yaml
node_explorer -->|"explores"| node_voice_yaml
node_generator -->|"generates SDKs"| node_rest_yaml
node_generator -->|"generates SDKs"| node_voice_yaml

click node_rest_yaml "https://github.com/deepl/openapi/blob/main/openapi.yaml"
click node_rest_json "https://github.com/deepl/openapi/blob/main/openapi.json"
click node_translation "https://github.com/deepl/openapi/blob/main/openapi.yaml"
click node_glossaries "https://github.com/deepl/openapi/blob/main/openapi.yaml"
click node_documents "https://github.com/deepl/openapi/blob/main/openapi.yaml"
click node_voice_yaml "https://github.com/deepl/openapi/blob/main/voice.asyncapi.yaml"
click node_voice_json "https://github.com/deepl/openapi/blob/main/voice.asyncapi.json"
click node_transcription "https://github.com/deepl/openapi/blob/main/voice.asyncapi.yaml"
click node_voice_translation "https://github.com/deepl/openapi/blob/main/voice.asyncapi.yaml"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_rest_yaml,node_rest_json,node_translation,node_glossaries,node_documents toneBlue
class node_voice_yaml,node_voice_json,node_transcription,node_voice_translation toneAmber
class node_upstream,node_generator toneIndigo
class node_explorer toneMint
```

## Components

### REST API

- [REST OpenAPI YAML](https://github.com/deepl/openapi/blob/main/openapi.yaml): `openapi.yaml`
- [REST OpenAPI JSON](https://github.com/deepl/openapi/blob/main/openapi.json): `openapi.json`
- [Translation](https://github.com/deepl/openapi/blob/main/openapi.yaml): `openapi.yaml`
- [Glossaries](https://github.com/deepl/openapi/blob/main/openapi.yaml): `openapi.yaml`
- [Documents](https://github.com/deepl/openapi/blob/main/openapi.yaml): `openapi.yaml`

### Voice API

- [Voice AsyncAPI YAML](https://github.com/deepl/openapi/blob/main/voice.asyncapi.yaml): `voice.asyncapi.yaml`
- [Voice AsyncAPI JSON](https://github.com/deepl/openapi/blob/main/voice.asyncapi.json): `voice.asyncapi.json`
- [Audio transcription](https://github.com/deepl/openapi/blob/main/voice.asyncapi.yaml): `voice.asyncapi.yaml`
- [Audio translation](https://github.com/deepl/openapi/blob/main/voice.asyncapi.yaml): `voice.asyncapi.yaml`

### Other components

- **Upstream specs**
- **API explorers**
- **SDK generators**

## Connections

- Upstream specs → REST OpenAPI YAML: syncs specs
- Upstream specs → REST OpenAPI JSON: syncs specs
- Upstream specs → Voice AsyncAPI YAML: syncs specs
- Upstream specs → Voice AsyncAPI JSON: syncs specs
- API explorers → REST OpenAPI YAML: explores
- API explorers → Voice AsyncAPI YAML: explores
- SDK generators → REST OpenAPI YAML: generates SDKs
- SDK generators → Voice AsyncAPI YAML: generates SDKs
