Donate
donatewiki
https://donate.wikimedia.org/wiki/Special:FundraiserRedirector
MediaWiki 1.47.0-wmf.2
first-letter
Media
Special
Talk
User
User talk
Donate
Donate talk
File
File talk
MediaWiki
MediaWiki talk
Template
Template talk
Help
Help talk
Category
Category talk
Campaign
Campaign talk
TimedText
TimedText talk
Module
Module talk
MediaWiki:AppsCampaignConfig/schema.json
8
9453
42652
39193
2026-05-15T16:12:29Z
PPenloglou-WMF
52
Updating schema to reflect version 2. Language subkeys are an array of objects (banners). New "weight" and "id" keys added for banners.
42652
json
application/json
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://donate.wikimedia.org/wiki/MediaWiki:AppsCampaignConfig/schema.json",
"title": "Apps Campaign Configuration",
"description": "List of campaign announcements to be shown in apps.",
"type": "array",
"items": {
"title": "Campaign",
"type": "object",
"properties": {
"id": {
"description": "Unique identifier of a campaign. Must not be the same as any current or previous campaign.",
"type": "string"
},
"version": {
"description": "Version number of this structure, to be incremented when a significant change to the schema is made.",
"type": "integer"
},
"start_time": {
"type": "string",
"format": "date-time"
},
"end_time": {
"type": "string",
"format": "date-time"
},
"countries": {
"description": "Country codes where this campaign will be shown.",
"type": "array",
"items": {
"type": "string"
},
"minItems": 1,
"uniqueItems": true
},
"platforms": {
"description": "List of platforms on which this campaign will be shown, along with any applicable platform-specific parameters.",
"type": "object",
"properties": {
"iOS": {
"description": "iOS-specific parameters for this campaign.",
"type": "object"
},
"Android": {
"description": "Android-specific parameters for this campaign.",
"type": "object"
}
}
},
"assets": {
"description": "List of assets to be shown in this campaign, grouped by language code.",
"type": "object",
"patternProperties": {
"^.*$": {
"type": "array",
"items": {
"type": "object",
"properties": {
"weight": {
"description": "Impression proprotion per banner",
"type": "number",
"minimum": 0,
"maximum": 1
},
"id": {
"description": "Unique ID for banner",
"type": "string"
},
"text": {
"description": "Body text of the campaign message.",
"type": "string"
},
"footer": {
"description": "Footer text of the campaign message.",
"type": "string"
},
"currency_code": {
"description": "Currency code for the donation amount.",
"type": "string"
},
"actions": {
"description": "List of actions defined for buttons used in the campaign dialog.",
"type": "array",
"items": {
"type": "object",
"properties": {
"title": {
"description": "Label shown on the button.",
"type": "string"
},
"url": {
"description": "URL to be opened when the button is tapped.",
"type": "string"
}
},
"required": [
"title"
]
}
}
}
}
}
},
"additionalProperties": false
}
},
"required": [
"id",
"version",
"start_time",
"end_time",
"countries",
"platforms",
"assets"
]
}
}
plnp0632yyanomutdo27y40azbsgenr