JetBrains Marketplace Help

Plugin Repository REST Client

JetBrains is maintaining an official client and CLI (command line interface) for JetBrains Plugin Repository.

You can find it in the plugin-repository-rest-client GitHub repository.

Examples

The code snippet below will initiate the instance of the JetBrains Marketplace repository.

val instance = PluginRepositoryFactory.create("https://plugins.jetbrains.com", "authToken")

Download plugin

instance.downloader.download("org.jetbrains.plugins.go", version, into, channel)

Upload update and new plugins

The code snippet below will init the instance of the JetBrains Marketplace repository. You need to provide a permanent hub token to authorize.

// upload update to existing plugin. instance.uploader.uploadPlugin("org.jetbrains.kotlin", file, channel, notes) // upload new plugin into Marketplace repository. instance.uploader.uploadNewPlugin(file, categoryId, licenseUrl)

Plugin info

val pluginMeta = instance.pluginUpdateManager.getIntellijUpdateMetadata(pluginId, updateId) val updateInfo = instance.pluginUpdateManager.getUpdatesByVersionAndFamily("org.jetbrains.kotlin", version, family) val plugin = instance.pluginManager.getPlugin(pluginId)

Settings

MARKETPLACE_MAX_PARALLEL_CONNECTIONS system property - The maximum number of requests to execute concurrently. Default: 16.

Client

The org.jetbrains.intellij.pluginRepository.Client main class provides command line interface for uploading, downloading and listing plugins on the plugin repository.

Published on Bintray

https://bintray.com/jetbrains/intellij-plugin-service/plugin-repository-rest-client

Last modified: 09 July 2020