> ## Documentation Index
> Fetch the complete documentation index at: https://docs.skyvexsoftware.com/llms.txt
> Use this file to discover all available pages before exploring further.

# The Developer centre

> Where you create plugins, publish versions, manage your listing and answer pilots, on skyvexsoftware.com.

The Developer centre lives at [skyvexsoftware.com/developer](https://skyvexsoftware.com/developer). Turn it on from **Settings, Developer** if you don't see it in the sidebar.

## Plugins

**Create plugin** asks for a name, the plugin's id (the same `id` as in `plugin.json`), whether it's an airline or a pilot plugin, and whether it's **Public** or **Private** ([private plugins](/guide/private-plugins)). Each plugin then has these tabs:

* **Versions:** every upload with its review and release. Open a version for its What's new, source and history.
* **Listing:** the name, summary, About, icons and [screenshots](/sdk/screenshots) airlines see in Browse plugins. Uploading a version never changes the listing. A new plugin's name and description come from `plugin.json` only while the listing is empty.
* **Airlines** (**Pilots** for a pilot plugin): who has it installed. For a private plugin, this is also where you share it with other airlines by their invite code.
* **Settings**, **Distribution** and **Deprecate or unpublish**.

## Publishing a version

Use **Publish a version** and drop in the zip from `pnpm bundle`, or upload from a script with an API token that has the `plugin:upload` scope ([Build & Deploy](/sdk/build-and-deploy)). Before uploading, the sheet checks the zip: a readable `plugin.json` with snake\_case keys only, an `id` that matches this plugin, and a version newer than your latest.

To upload from a script, create the token on the Developer centre's **API tokens** tab.

Every version needs a **What's new**. Pilots see it with the update and the reviewer reads it. Type it in the sheet when you publish. An upload from a script sends it as the `changelog` field (`SKYVEX_WHATS_NEW` with `pnpm bundle`). Nothing in the zip is read for it.

### Drafts

An upload from a script without a What's new isn't rejected. It waits as a **draft**: it isn't in review and pilots can't get it. Add a What's new to the draft in the Developer centre and submit it to send it for review. You also get an email saying it's waiting. **Discard** deletes a draft; it never went to review, so you can upload the same version number again.

### Release modes

Choose when you upload:

* **Release it straight away** (automatic): released as soon as it's approved.
* **I'll release it myself** (manual): waits as Ready to release until you press **Release**, so you can time an update.

Every plugin, public or private, needs at least 3 [listing screenshot](/sdk/screenshots) pairs before a version can be submitted for review. Uploads still go up, as drafts, and **Submit for review** says how many pairs are missing. See [How we review plugins](/guide/plugin-review).

### Withdraw and roll back

While a version waits for review you can **Withdraw** it. It leaves the queue and is never released, and you can upload the same version number again. Once a newer version is out, **Roll back** on an earlier approved version makes it current again for pilots.

## Support

Third-party plugins get a **Contact the developer** button in Stratos. Those tickets arrive in the Developer centre's **Support** inbox, with the same replies, notes and statuses as [airline support](/guide/support). Skyvex Software's own plugins send pilots to Skyvex Software instead.

## Profile and verification

Your developer profile (name, website, GitHub and a support contact) shows on your plugins. Once you meet the requirements you can ask to become a [verified developer](/sdk/verified-developers).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.