Vertaal mijn REST API-documentatie naar meerdere talen met Swagger of Redoc
description
Met deze prompt kun je eenvoudig een meertalige REST API-documentatie maken die je bereik vergroot en de gebruikerservaring verbetert voor ontwikkelaars wereldwijd. Dit lost het probleem op van beperkte toegankelijkheid door taalbarrières en biedt een duidelijke structuur en vertalingen die beter zijn dan handmatige of inconsistente vertalingen.
prompt
Help me mijn REST API-documentatie te vertalen naar meerdere talen met behulp van <kies Swagger of Redoc>. Mijn originele API-specificatie of documentatie: <voer je API-specificatie of documentatie in>. Ge ...
try_prompt
generate_helper
disclaimerOnPageApi
tags
ai_answers
provider: openai
model: gpt-4.1-nano
Natuurlijk! Om je REST API-documentatie meertalig te maken met Swagger (OpenAPI), kun je de volgende aanpak hanteren:
1. Meertalige Documentatiestructuur:
- Gebruik meerdere talen door verschillende versies of secties in je OpenAPI-specificatie op te nemen.
- Voeg een ‘x-internationalization’ of vergelijkbare custom extensie toe om vertalingen te ondersteunen.
- Maak aparte beschrijvingen voor elke taal binnen dezelfde specificatie of gebruik meerdere documentatiesites.
2. Opzet in OpenAPI (voorbeeld):
```yaml
openapi: 3.0.3
info:
title: Mijn API
description: >
# API Beschrijving
Dit is de Nederlandse documentatie.
# Voeg vertalingen toe via custom extensies
x-i18n:
en:
title: My API
description: >
# API description in English
This is the English documentation.
fr:
title: Mon API
description: >
# Description en français
Ceci est la documentation en français.
servers:
- url: https://mijnapi.nl
paths:
/items:
get:
summary:
nl: Haal alle items op
en: Get all items
fr: Récupérer tous les éléments
description:
nl: >
Deze endpoint haalt alle items op uit de database.
en: >
This endpoint retrieves all items from the database.
fr: >
Cette endpoint récupère tous les éléments de la base de données.
parameters:
- name: limit
in: query
description:
nl: Aantal items om op te halen
en: Number of items to retrieve
fr: Nombre d'éléments à récupérer
schema:
type: integer
responses:
'200':
description:
nl: Succesvolle respons
en: Successful response
fr: Réponse réussie
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Item'
components:
schemas:
Item:
type: object
properties:
id:
type: integer
description:
nl: Uniek identificatienummer
en: Unique identification number
fr: Numéro d'identification unique
naam:
type: string
description:
nl: Naam van het item
en: Name of the item
fr: Nom de l'élément
```
3. Vertalingen van belangrijke secties:
- Endpoints / Paths: Vertaal de ‘summary’ en ‘description’ voor elke taal.
- Parameters: Geef per taal de beschrijving weer.
- Foutcodes: Documenteer foutcodes en boodschappen in meerdere talen in ‘responses’.
- Voorbeelden: Voeg ‘examples’ toe met vertalingen indien nodig.
4. Alternatief: Meerdere API-specificaties
- Maak aparte YAML-bestanden voor elke taal en host ze onder verschillende URL’s of versies.
- Bijvoorbeeld:
- openapi-nl.yaml
- openapi-en.yaml
- openapi-fr.yaml
5. Gebruik van Swagger UI:
- Laad de juiste OpenAPI-specificatie afhankelijk van de taalkeuze van de gebruiker.
- Of implementeer een taalkeuzemenu dat de juiste documentatie laadt.
Samenvatting:
Door binnen je OpenAPI specificatie meerdere talen te ondersteunen via ‘x-i18n’ extensies of door aparte bestanden te gebruiken, maak je je API-documentatie toegankelijk voor internationale ontwikkelaars. Zorg voor consistente vertalingen van endpoints, parameters, foutmeldingen en voorbeelden.
Wil je dat ik een volledig voorbeeld voor jouw API opstel of hulp bij een specifieke vertaling?
provider: deepseek
model: deepseek-chat
Zeker, ik help je graag je REST API-documentatie meertalig te maken met Swagger/OpenAPI. Hier is een gestructureerde aanpak:
## Meertalige Documentatiestructuur
### 1. OpenAPI Configuratie
```yaml
openapi: 3.0.0
info:
title:
en: My API Documentation
nl: Mijn API Documentatie
de: Meine API-Dokumentation
fr: Documentation de mon API
description:
en: Multi-language API for developers
nl: Meertalige API voor ontwikkelaars
de: Mehrsprachige API für Entwickler
fr: API multilingue pour les développeurs
version: 1.0.0
```
### 2. Taalondersteuning instellen
```yaml
servers:
- url: https://api.jouwdomein.nl
description:
en: Production server
nl: Productieserver
de: Produktionsserver
fr: Serveur de production
components:
parameters:
Accept-Language:
in: header
name: Accept-Language
description:
en: Language preference (en, nl, de, fr)
nl: Taalvoorkeur (en, nl, de, fr)
de: Sprachpräferenz (en, nl, de, fr)
fr: Préférence linguistique (en, nl, de, fr)
schema:
type: string
default: en
```
### 3. Vertaalde Endpoints Voorbeeld
```yaml
paths:
/users:
get:
summary:
en: Get all users
nl: Alle gebruikers ophalen
de: Alle Benutzer abrufen
fr: Obtenir tous les utilisateurs
description:
en: Retrieves a list of all registered users
nl: Haalt een lijst op van alle geregistreerde gebruikers
de: Ruft eine Liste aller registrierten Benutzer ab
fr: Récupère une liste de tous les utilisateurs enregistrés
parameters:
- $ref: '#/components/parameters/Accept-Language'
responses:
'200':
description:
en: Successful operation
nl: Succesvolle operatie
de: Erfolgreicher Vorgang
fr: Opération réussie
```
### 4. Meertalige Foutcodes
```yaml
components:
responses:
NotFound:
description:
en: Resource not found
nl: Bron niet gevonden
de: Ressource nicht gefunden
fr: Ressource non trouvée
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
examples:
en:
value:
error:
code: 404
message: "User not found"
nl:
value:
error:
code: 404
message: "Gebruiker niet gevonden"
de:
value:
error:
code: 404
message: "Benutzer nicht gefunden"
fr:
value:
error:
code: 404
message: "Utilisateur non trouvé"
```
### 5. Parameter Vertalingen
```yaml
parameters:
- in: query
name: limit
schema:
type: integer
required: false
description:
en: Maximum number of results to return
nl: Maximum aantal resultaten om terug te geven
de: Maximale Anzahl der zurückzugebenden Ergebnisse
fr: Nombre maximum de résultats à retourner
```
## Implementatiestappen:
1. **Basisstructuur behouden**: Houd je bestaande OpenAPI-specificatie intact
2. **Vertalingen toevoegen**: Gebruik meertalige objecten voor beschrijvingen
3. **Taalheader**: Implementeer Accept-Language header ondersteuning
4. **Automatiseren**: Overweeg tools zoals:
- Swagger i18n plugins
- Custom scripts voor vertalingen
- API translation services
## Aanbevolen Tools:
- **Swagger UI**: Ondersteunt meertalige documentatie
- **Redocly**: Geavanceerde meertalige features
- **i18n libraries**: Voor geautomatiseerde vertalingen
## Best Practices:
1. Houd technische termen consistent tussen talen
2. Gebruik professionele vertalers voor kritieke delen
3. Test de documentatie in elke ondersteunde taal
4. Houd vertalingen synchroon met API-wijzigingen
Wil je dat ik specifieke secties van jouw openapi.yaml bestand vertaal? Stuur me dan de relevante delen en ik help je graag met de meertalige implementatie.