# Plugins deployment

Deploying a plugin means making it accessible to end-users after the development phase. While the deployment process can differ across the different plugin types, there's a consistent step: uploading the plugin's source files to the Ubidots *Developer console*.\
\
At a high level, the process looks like this:

<figure><img src="/files/ZaKDdxNfe8Hy7n4qwzV8" alt=""><figcaption></figcaption></figure>

## Developer console

To access the Developer console, open the Ubidots account where the plugin will be used. Then go to *Devices* ⟶ *Plugins*. There, you will see the following icon:

<figure><img src="/files/WZbXSi95kaNxGOHiesNd" alt=""><figcaption></figcaption></figure>

The following screenshot shows what the Developer console looks like:

<figure><img src="/files/0H6mHP9RsFThGbSWjGiB" alt=""><figcaption></figcaption></figure>

From here, you can:

* Create new plugins
* Visualize and edit all previously created plugins

{% hint style="info" %}
In this context, creating a plugin means setting up a repository where the plugin's source code can be uploaded and hosted.
{% endhint %}

## Create a new plugin

Click the *add new plugin* button. A modal slides in from the right side of the screen and asks for the plugin's name and description. Fill in those fields, then click the check mark icon to continue.

<figure><img src="/files/uqpPGnmMUAj1Q66DQNxm" alt="" width="563"><figcaption></figcaption></figure>

When the modal collapses, you will see the plugin you just created:

<figure><img src="/files/b0hbGUDubuQtkgyxb5Yr" alt=""><figcaption></figcaption></figure>

Click it to display its options.

## Plugin's general information tab

<figure><img src="/files/Uwvkov1IJN9juAyfHlLx" alt=""><figcaption></figcaption></figure>

From here you can:

* Set an icon for your plugin
* Edit the plugin's name and description
* Set the README for the plugin

### Guidelines for setting a proper plugin icon

#### Image requirements

* The icon must be in *png* format.
* The icon must be a 512x512 pixels square image.

{% hint style="info" %}
Using a format other than *png* causes an error when you try to upload the image.
{% endhint %}

{% hint style="info" %}
Using a different image size, or an image without a square aspect ratio, might cause resizing. This can alter its appearance compared to the original image.
{% endhint %}

#### Using Ubidots style in the plugins icons

If you want to match the style of Ubidots native plugin icons, use the following setting:

* **Border radius:** 86 px

## Version tab

<figure><img src="/files/JyRkxAQJHMriOMb3X3B5" alt="" width="563"><figcaption></figcaption></figure>

Click the *Add new plugin version* icon, as shown above. A dialog opens for you to upload the ZIP file that contains the plugin files mentioned in the *Plugins development* section:

<figure><img src="/files/IIMZxVrQLRjPkPTTPaOn" alt="" width="563"><figcaption></figcaption></figure>

After you upload the ZIP file, the plugin's version page looks like this:

<figure><img src="/files/7y2rc0yjGjBC53l6PfPe" alt="" width="563"><figcaption></figcaption></figure>

From here you can:

* View the plugin's version
* View the plugin's price
* View the plugin's status (*Draft*, *Released*, *Published*)
* View the number of users using the plugin
* Release the plugin (paper airplane icon)

Click the *release* button and accept the pop-up:

<figure><img src="/files/dn8tJlkqjyXU3NatjnR7" alt="" width="563"><figcaption></figcaption></figure>

The plugin's status changes from *Draft* to *Released.*

For Cron and Webhook plugins, the deployment process ends here. For widget plugins, a few steps remain.

To learn how to use your new Cron or Webhook plugin, go to [Cron and Webhook](/plugins/using-the-plugins/cron-and-webhook.md).

To continue deploying a widget plugin, go to [Widget](/plugins/plugins-deployment/widget.md).


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://dev.ubidots.com/plugins/plugins-deployment.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
