{ "$schema": "http://json-schema.org/draft-06/schema#", "$id": "https://plasmo.com/bpp/keys.schema.json", "title": "Browser Platform Publisher keys", "description": "Keys for the Browser Platform Publisher.", "$ref": "#/definitions/Root", "definitions": { "Root": { "type": "object", "properties": { "chrome": { "$ref": "#/definitions/Chrome" }, "firefox": { "$ref": "#/definitions/Firefox" }, "edge": { "$ref": "#/definitions/Edge" } } }, "Chrome": { "description": "For refreshToken and clientId, follow: https://github.com/PlasmoHQ/chrome-webstore-api/blob/main/token.md", "type": "object", "properties": { "extId": { "type": "string", "description": "Get it from https://chrome.google.com/webstore/detail/EXT_ID" }, "refreshToken": { "type": "string", "description": "See: https://github.com/PlasmoHQ/chrome-webstore-api/blob/main/token.md" }, "clientId": { "type": "string", "description": "See: https://github.com/PlasmoHQ/chrome-webstore-api/blob/main/token.md" }, "clientSecret": { "type": "string", "description": "See: https://github.com/PlasmoHQ/chrome-webstore-api/blob/main/token.md" }, "zip": { "type": "string" }, "target": { "type": "string", "description": "The target audience to publish to. Defaults to 'default'", "enum": ["default", "trustedTesters"], "default": "default" } }, "required": ["extId", "refreshToken", "clientId", "clientSecret"] }, "Firefox": { "type": "object", "description": "For API Key and API Secret, visit: https://addons.mozilla.org/en-US/developers/addon/api/key/", "properties": { "apiKey": { "type": "string", "description": "The JWT issuer, from https://addons.mozilla.org/en-US/developers/addon/api/key/" }, "apiSecret": { "type": "string", "description": "The JWT secret, from https://addons.mozilla.org/en-US/developers/addon/api/key/" }, "extId": { "type": "string", "description": "This is the extension UUID, get it from https://addons.mozilla.org/en-US/developers/addon/{ext-name}/edit, under Technical Details. If it is embedded in your manifest under gecko.id, omit this property." }, "zip": { "type": "string" } }, "required": ["apiKey", "apiSecret"] }, "Edge": { "type": "object", "properties": { "productId": { "type": "string", "description": "Create an Edge add-on and get it from the dashboard: https://partner.microsoft.com/en-us/dashboard/microsoftedge/{product-id}/package/dashboard" }, "clientId": { "type": "string", "description": "You can find your client ID by visiting the Microsoft Partner Center: https://partner.microsoft.com/en-us/dashboard/microsoftedge/publishapi" }, "clientSecret": { "type": "string", "description": "You can find your client secret by visiting the Microsoft Partner Center: https://partner.microsoft.com/en-us/dashboard/microsoftedge/publishapi" }, "accessTokenUrl": { "type": "string", "description": "You can find your access token URL by visiting the Microsoft Partner Center: https://partner.microsoft.com/en-us/dashboard/microsoftedge/publishapi" }, "zip": { "type": "string" }, "notes": { "type": "string", "description": "Provide notes for certification to the Edge Add-ons reviewers" } }, "required": ["productId", "clientId", "clientSecret", "accessTokenUrl"] }, "Opera": { "type": "object", "description": "NOTE: Opera add-ons reviewer require inspecting your extension's source code.", "properties": { "packageId": { "type": "string", "description": "Get it from https://addons.opera.com/developer/package/PACKAGE_ID" }, "zip": { "type": "string" }, "changelog": { "type": "string", "description": "Provide changelog for the Opera users" } }, "required": ["packageId", "csrftoken", "sessionid"] } } }