The Autodesk App Store—information for Revit developers
This guide is for developers and content providers new to publishing plug-ins and other content on the Autodesk App Store—either free, trial, or for paid versions. It outlines best practice guidelines and a few requirements for publishers to follow when creating products for the Autodesk App Store. These guidelines are designed to ensure that users on the Autodesk App Store have a consistent experience when downloading multiple products from the store.
You will be presented with a detailed list of requirements for publishing on the store when you first register to be a publisher on the Autodesk App Store. The information that follows is a summary specific to Revit.
All content types
Most of the information we need from you is collected from the product submission form that you complete in the publisher system. This includes gathering information to auto-generate a Quick Start page in HTML format that is included with the download of your product and is viewable online. Other requirements are as follows.
Your product must be relevant to (and usable with) Revit 2020 software and must run on any Windows operating system supported by Revit 2020. You may also indicate the compatibility with Revit 2019/2018/2017.
HTML help page
The documentation information you provide when submitting your app will be used to create a standard format HTML page. This information must allow the user to quickly understand how to use your product. You can reference additional information (for example, additional help files posted on your website) from this standard documentation. The standard format HTML page will be created using information you provide when submitting your product to the store—you will be prompted to supply it as part of the submission process.
Ready to run
Your product must be ready to run as soon as it's installed. It must not require the user to manually copy or register files, or manually edit Revit settings (such as support paths).
If you use a licensing system, then it must allow your product to run as soon as it is installed by the user. This means that your application allows either instant activation (for example, online activation), or full functionality with a time-bombed grace period that is long enough for you to send activation information to the customer.
The default user privilege for the store apps is Windows 7/8.1/10 Admin User. The installer we create for your app will require elevated user privileges. If you do not wish to have elevated user privileges for your app installer or don't use the standard installer template we provide, then this must be very clearly documented in the description of your product displayed on the store.
Your product should be stable, and not behave or alter the behavior of Revit in a way that we deem unsuitable (for example, blocking standard Revit functionality, blocking the functionality of another plug-in, causing data loss, and so on).
Additional requirements for plug-ins:
Your plug-in must include a ribbon button to access your main command. If your application has many buttons, you may also choose to have a separate custom ribbon tab.
You must use an add-in manifest as the loading mechanism.
Additional requirements for family libraries:
Your family libraries (in .rfa file format) must be installed in the following folder:
Again, we'll create the installer for you and we can help you modify your libraries so that they work in this new location.
Your family library must include a ribbon button to the Revit ribbon bar. The ribbon bar UI must either provide access to the family library or launch a help file explaining how to access it.
Stand-alone applications and other content
There are no additional requirements for products that are not integrated with Revit. Such products might include eBooks, video tutorials, industry-specific calculators, and the like.
Use of the bundle and XML file for Revit 2017/2018/2019/2020 plug-in
As a default location, we’ll be using All user location to place the add-in manifest:
The plug-in files will be contained in a specific folder called “<your application name>.bundle” and a PackageContents.xml file (created by the installer we create for your app) will be stored within this .bundle folder together with the contents that you need for your application:
PackageContents.xml contains the following xml tag (among other tags that controls the information of about the installer), and further points to your .addin manifest within your bundle folder.
Revit 2017/2018/2019/2020 looks into the contents of the .bundle folder, read the PackageContents.xml file and look for “ModuleName” or the location of .addin file that further defines Revit specific information about plug-ins.
As an example, if you place your .addin manifest and assembly dll under the Contents folder, your folder structure may look like this with the above xml tag:
To see how the installed app looks, you can download some of the free plug-ins already available on the Autodesk App Store and study their format.
Use the ribbon
Using ribbon elements for your application is requirement, but how you do this will depend on your plug-in design. As a minimum, every plug-in or family library must add a panel to the Add-Ins tab that either invokes the main command defined by the plug-in or displays a help file explaining how to use the family library.
However, if your plug-in defines more than one command, then you will have to create ribbon layout for your plug-in in a way that is most helpful to the user (for example, using large buttons for most frequently used commands and small buttons for lesser used commands).
Plug-ins that installs a single panel should normally add that panel to the Add-Ins tab.
Plug-ins that creates several ribbon bar panels may prefer to create a new tab specific to that Plug-In (and preferably with the tab name being the name of the plug-in).
Use the contextual help (F1 Help) with a ribbon item
Revit API supports Contextual or F1 Help. Please refer to the RibbonItem.SetContextualHelp() method and the ContextualHelp class in the Revit API documentation. The Autodesk Plug-in of the Month sample apps posted to Autodesk Apps Store demonstrate how to implement F1 help.
We encourage you to use a help mechanism that is consistent with the Revit help, such as tooltips and contextual help placed on a ribbon item. The options supported for contextual help include linking to an external URL, launching a locally installed help file, or linking to a topic on the Autodesk help wiki.
End User License Agreement
The installer that the ADN team creates for your app includes a button that allows the user to view the standard End User License Agreement (EULA) during the app installation.
Note: This EULA is not modifiable. If you wish to include your own EULA to your app, you can either:
Reference your EULA from the standard HTM help file text, or
Display your EULA when the app runs for the first time, and require the user to accept it before the app will work
If your app or content has any special requirements and the standard installer template cannot handle as is, please talk to us.
For example, if you have specific requirements for your app to be written to a single-user, we can create the installer that install only to the current user.
For any other special needs that require a custom installation, you can provide them in the form of Windows Installer Merge Modules (.msm) files. We will merge your .msm file with the Windows Installer (.msi) file that we create for your app. Examples of such a scenario would be: writing entries to the registry for a licensing system you are using, installing dependent components by other vendors, and running custom scripts. For additional information, please contact us at email@example.com.
The ADN team is here to help you be a successful publisher on the Autodesk App Store. We’ll do whatever we can do to help you. If you have any further questions after reviewing these guidelines and the other documentation, email firstname.lastname@example.org on www.autodesk.com/developapps.
Thank you for participating on the Autodesk App Store.
Access Autodesk software for free
Trial versions are available for most Autodesk products. Download your free 30-days trial version today. You can obtain Autodesk desktop software for development use on an on-going basis by joining ADN at the Standard or Professional membership level too.
All the information and resources needed to use Autodesk cloud-based software and components in your own web and mobile applications can be found on the Autodesk Forge Developer Portal. Get easy access to Forge APIs and documentation, tutorials, GitHub samples, support and more.