Skip to content

Upload API — Localization export and import #13

@MariusStorhaug

Description

Parent: #4

Delivers functions for exporting and importing localization data for CurseForge projects. This is a niche feature primarily used by World of Warcraft addon authors for managing localized strings.

Acceptance criteria:

  • Export-CurseForgeLocalization exports localization data with full parameter support (ExportType, Language, Unlocalized handling, TableName, Namespaces, etc.)
  • Import-CurseForgeLocalization imports localization data via JSON payload
  • Missing phrase handling options supported: DoNothing, DeleteIfNoTranslations, DeleteIfTranslationsOnlyExistForSelectedLanguage, DeletePhrase
  • Unit tests cover parameter serialization and response parsing

Endpoints:

Function Method Path
Export-CurseForgeLocalization GET /api/projects/{projectId}/localization/export
Import-CurseForgeLocalization POST /api/projects/{projectId}/localization/import

Export parameters:

Parameter Values Default
ExportType Table, TableAdditions, GlobalStrings TableAdditions
Language enUS, deDE, esES, etc. enUS
Unlocalized ShowPrimary, ShowPrimaryAsComment, ShowBlankAsComment, Ignore ShowPrimary
TableName any string L
EscapeNonAsciiCharacters bool false
TrueIfValueEqualsKey bool false
ConcatenateSubNamespaces bool false
Namespaces comma-delimited names Base Namespace

Import payload:

{
    "metadata": {
        "language": "enUS",
        "namespace": "toc",
        "formatType": "TableAdditions",
        "missing-phrase-handling": "DoNothing"
    },
    "localizations": "string content to import"
}

Blocked by: #11 (needs Upload API client)


Sub-issues

See linked Tasks below.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No fields configured for Feature.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions