Çeviri Oluştur
Yeni çeviri oluşturur (Admin - tek veya toplu).
Endpoint
POST /api/v1/admin/translations
Authentication
Bu endpoint authentication gerektirir.
Header: Authorization: Bearer \{token\}
Permission
translations.create- Çeviri oluşturma
Request
Headers
| Header | Değer | Zorunlu |
|---|---|---|
Authorization | Bearer \{token\} | Evet |
Content-Type | application/json | Evet |
Request Body (Tek Ekleme)
| Parametre | Tip | Zorunlu | Açıklama |
|---|---|---|---|
key | string | Evet | Çeviri anahtarı |
values | object | Evet | Dil kodları ve çeviri metinleri (örn: {"tr": "Ana Sayfa", "en": "Home"}) |
group | string | Hayır | Grup adı |
description | string | Hayır | Açıklama |
is_active | boolean | Hayır | Aktif durumu (varsayılan: true) |
Request Body (Toplu Ekleme)
| Parametre | Tip | Zorunlu | Açıklama |
|---|---|---|---|
translations | array | Evet | Çeviri dizisi |
Example Request (Tek Ekleme)
{
"key": "pages.home",
"values": {
"tr": "Ana Sayfa",
"en": "Home Page",
"de": "Startseite"
},
"group": "pages",
"description": "Ana sayfa başlığı",
"is_active": true
}
Example Request (Toplu Ekleme)
{
"translations": [
{
"key": "pages.home",
"values": {
"tr": "Ana Sayfa",
"en": "Home Page"
},
"group": "pages"
},
{
"key": "pages.about",
"values": {
"tr": "Hakkımızda",
"en": "About Us"
},
"group": "pages"
}
]
}
Response
Success Response (201 Created) - Tek Ekleme
{
"message": "Translation created successfully",
"created": [
{
"id": 1,
"key": "pages.home",
"locale": "tr",
"value": "Ana Sayfa",
"group": "pages"
},
{
"id": 2,
"key": "pages.home",
"locale": "en",
"value": "Home Page",
"group": "pages"
}
],
"errors": []
}
Success Response (201 Created) - Toplu Ekleme
{
"message": "Bulk translation creation completed",
"created": 4,
"skipped": 0,
"errors": 0,
"data": {
"created": [...],
"skipped": [...],
"errors": [...]
}
}
Code Examples
cURL - Tek Ekleme
curl -X POST https://api.example.com/api/v1/admin/translations \
-H "Authorization: Bearer \{token\}" \
-H "Content-Type: application/json" \
-d '{
"key": "pages.home",
"values": {
"tr": "Ana Sayfa",
"en": "Home Page"
},
"group": "pages"
}'
Notes
- Tek ekleme:
valuesformatı kullanılır, her dil için ayrı çeviri oluşturulur - Toplu ekleme:
translationsarray formatı kullanılır - Aynı key + locale kombinasyonu zaten varsa hata döner
- Çeviriler oluşturulduktan sonra cache otomatik temizlenir
is_activedeğeri belirtilmemişse varsayılan olaraktruekullanılır
Related Endpoints
- Toplu Çeviri Ekleme - Toplu çeviri ekleme
- Çeviri Listesi - Tüm çevirileri listele