Data schemas

Weblate uses JSON Schema to define layout of external JSON files.

The published schemas use JSON Schema Draft 2020-12. External validators must support this draft and enable format checking to enforce dates, hostnames, and IRIs, as Weblate does. Reusable schema definitions use $defs.

Weblate Translation Memory Schema

https://weblate.org/schemas/weblate-memory.schema.json

type

array

items

The Translation Memory Item

type

object

properties

  • category

The String Category

1 is global, 2 is shared, 10000000+ are project specific, 20000000+ are user specific

type

integer

examples

1

minimum

0

default

1

  • origin

The String Origin

Filename or component name

type

string

examples

test.tmx

project/component

default

  • context

The String Context or Key

Translation context or key for monolingual formats

type

string

examples

Greeting used in emails

default

  • source

The Source String

type

string

examples

Hello

minLength

1

default

  • source_language

The Source Language

ISO 639-1 / ISO 639-2 / IETF BCP 47

type

string

examples

en

pattern

^[^ ]+$

default

  • target

The Target String

type

string

examples

Ahoj

minLength

1

default

  • target_language

The Target Language

ISO 639-1 / ISO 639-2 / IETF BCP 47

type

string

examples

cs

pattern

^[^ ]+$

default

  • status

Status

type

integer

additionalProperties

false

$defs

Weblate user data export

https://weblate.org/schemas/weblate-userdata.schema.json

type

object

properties

  • basic

Basic

type

object

properties

  • username

Username

type

string

examples

admin

default

  • full_name

Full name

type

string

examples

Weblate Admin

default

  • email

E-mail

type

string

examples

noreply@example.com

default

format

email

  • date_joined

Date joined

type

string

examples

2019-11-18T18:53:54.862Z

default

format

date-time

additionalProperties

false

  • profile

Profile

type

object

properties

  • language

Language

type

string

examples

cs

pattern

^[^ ]*$

default

  • suggested

Number of suggested strings

type

integer

examples

1

default

0

  • translated

Number of translated strings

type

integer

examples

24

default

0

  • uploaded

Number of uploaded screenshots

type

integer

examples

1

default

0

  • hide_completed

Hide completed translations on the dashboard

type

boolean

examples

false

default

true

  • secondary_in_zen

Show secondary translations in the Zen mode

type

boolean

examples

true

default

true

  • hide_source_secondary

Hide source if a secondary translation exists

type

boolean

examples

false

default

true

  • wide_tables

Show all columns in lists using horizontal scrolling

type

boolean

examples

false

default

false

  • listing_columns

Visible columns in lists

type

array

default

untranslated

untranslated_words

untranslated_chars

nottranslated

checks

suggestions

comments

items

Column

type

string

enum

total, untranslated, untranslated_words, untranslated_chars, nottranslated, checks, suggestions, comments

examples

checks

  • editor_link

Editor link

type

string

examples

pattern

^.*$

default

  • translate_mode

Translation editor mode

type

integer

examples

0

default

0

  • zen_mode

Zen editor mode

type

integer

examples

0

default

0

  • special_chars

Special characters

type

string

examples

pattern

^.*$

default

  • theme

Theme

type

string

examples

auto

pattern

^(auto|dark|light)$

default

auto

  • dashboard_view

Default dashboard view

type

integer

examples

1

default

0

  • dashboard_component_list

Default component list

default

null

anyOf

type

null

type

integer

  • languages

Translated languages

type

array

default

items

Language code

type

string

examples

cs

pattern

^.*$

default

  • secondary_languages

Secondary languages

type

array

default

items

Language code

type

string

examples

sk

pattern

^.*$

default

  • watched

Watched projects

type

array

default

items

Project slug

type

string

examples

weblate

pattern

^.*$

default

  • website

Website URL

type

string

  • contact

Contact URL

type

string

  • liberapay

Liberapay username

type

string

  • fediverse

Fediverse URL

type

string

  • codesite

Code site URL

type

string

  • github

GitHub username

type

string

  • twitter

X username

type

string

  • linkedin

LinkedIn profile name

type

string

  • location

Location

type

string

  • company

Company

type

string

  • public_email

Public email

type

string

  • commit_email

Commit email

type

string

  • nearby_strings

Number of nearby strings

type

integer

  • commit_name

Commit name choice

type

integer

  • auto_watch

Automatically watch projects

type

boolean

  • contribute_personal_tm

Contribute to personal translation memory

type

boolean

  • commented

Number of commented strings

type

integer

  • last_2fa

Last used two-factor method

type

string

additionalProperties

false

  • auditlog

Audit log

type

array

default

items

Items

type

object

properties

  • address

IP address

anyOf

type

null

type

string

examples

127.0.0.1

pattern

^.*$

default

  • user_agent

User agent

type

string

examples

PC / Linux / Firefox 70.0

pattern

^.*$

default

  • timestamp

Timestamp

type

string

examples

2019-11-18T18:58:30.845Z

default

format

date-time

  • activity

Activity

type

string

examples

login

pattern

^.*$

default

additionalProperties

false

  • notifications

General notification settings

type

array

items

type

object

properties

  • notification

type

string

  • scope

type

integer

  • frequency

type

integer

  • project

Project slug

type

string / null

  • component

Component path

type

string / null

  • onetime

One-time notification

type

boolean

additionalProperties

false

  • saved_searches

User saved searches

type

array

items

type

object

properties

  • name

type

string

  • query

type

string

  • description

type

string

additionalProperties

false

$defs

Weblate Messaging

https://weblate.org/schemas/weblate-messaging.schema.json

Schema for Weblate Messaging

type

object

properties

  • change_id

Change ID

ID numerico della modifica

type

integer

  • action

Change Action

Verbose name of the change, see Change actions source code for possible values

type

string

  • timestamp

Timestamp

Datazione in formato ISO

type

string

format

date-time

  • target

Target

Nuovo valore della modifica (es. nuova traduzione della stringa)

type

string / array

  • old

Old Value

Vecchio valore della modifica (es. traduzione precedente della stringa)

type

string / array

  • source

Source

Source string

type

string / array

  • url

URL

Absolute URL to view the related object

type

string

  • author

Author

Author username (this can be different from user for example when accepting suggestions)

type

string

  • user

Acting username

type

string

  • project

Project slug

type

string

  • component

Component slug

type

string

  • translation

Translation Language Code

type

string

  • category

Category and subcategory slugs

type

array

items

Category slug

type

string

  • context

Translation context or key for monolingual formats

type

string

additionalProperties

false

$defs

CDN manifest

https://weblate.org/schemas/weblate-cdn-manifest.schema.json

Translation files published by the JavaScript and translation files CDN add-ons.

type

object

properties

  • schemaVersion

const

1

  • locales

Published files keyed by Weblate language code; an empty object is allowed. Files are sorted by URL.

type

object

additionalProperties

type

array

items

type

object

properties

  • url

File URL relative to the manifest URL, including percent-encoded nested paths. Published files are mutable.

type

string

minLength

1

  • sha256

SHA-256 checksum of the published bytes.

type

string

pattern

^[0-9a-f]{64}$(?![\s\S])

  • size

File size in bytes; empty files are allowed.

type

integer

minimum

0

additionalProperties

false

minItems

1

propertyNames

minLength

1

additionalProperties

false

Vedi anche

Kotlin SDK build registration

https://weblate.org/schemas/weblate-kotlin-sdk-build.schema.json

Resource IDs from a final Android build, submitted to the Kotlin SDK CDN add-on.

type

object

properties

  • schemaVersion

Build metadata format version.

default

1

const

1

  • packageName

Android application package name.

type

string

maxLength

127

pattern

^[A-Za-z][A-Za-z0-9_]*(?:\.[A-Za-z][A-Za-z0-9_]*)+$(?![\s\S])

  • versionCode

type

integer

maximum

2100000000

minimum

1

  • strings

default

resources

  • plurals

default

resources

additionalProperties

false

anyOf

properties

  • strings

minProperties

1

properties

  • plurals

minProperties

1

resources

type

object

additionalProperties

type

string

pattern

^0x7[fF](?!00)[0-9a-fA-F]{6}$(?![\s\S])

propertyNames

pattern

^[a-zA-Z_][a-zA-Z0-9_.]*$(?![\s\S])

Kotlin SDK CDN manifest

https://weblate.org/schemas/weblate-kotlin-sdk-manifest.schema.json

Published ARSC artifacts for one registered Android build.

type

object

properties

  • schemaVersion

const

1

  • packageName

type

string

maxLength

127

pattern

^[A-Za-z][A-Za-z0-9_]*(?:\.[A-Za-z][A-Za-z0-9_]*)+$(?![\s\S])

  • versionCode

type

integer

maximum

2100000000

minimum

1

  • locales

Artifacts keyed by Weblate language code; an empty object is allowed.

type

object

additionalProperties

type

object

properties

  • url

Artifact URL relative to the manifest URL.

type

string

pattern

^\.\./\.\./artifacts/[0-9a-f]{64}\.arsc$(?![\s\S])

  • sha256

type

string

pattern

^[0-9a-f]{64}$(?![\s\S])

  • size

Artifact size in bytes.

type

integer

minimum

1

additionalProperties

false

propertyNames

minLength

1

additionalProperties

false