Publishing your work


Provides UI and functionality to publish files to Shotgun.
Latest Version: v2.0.13 (prod)
For our version numbers, we follow the Semantic Versioning standard.
System Name: tk-multi-publish2

Please Note: This document describes functionality only available if you have taken control over a Toolkit configuration. Please refer to the Shotgun Integrations User Guide for more details.

The Publish app allows artists to publish their work so that it can be used by artists downstream. It supports traditional publishing workflows within the artist’s content creation software as well as stand-alone publishing of any file on disk. When working in content creation software and using the basic Shotgun integration, the app will automatically discover and display items for the artist to publish. For more sophisticated production needs, studios can write custom publish plugins to drive artist workflows.


Full documentation for the Publisher can be found here!

Related Apps and Documents


The Shotgun Loader lets you quickly overview and browse the files that you have published to Shotgun. A searchable tree view navigation system makes it easy to quickly get to the task, shot or asset that you are looking for and once there the loader shows a thumbnail based overview of all the publishes for that item. Through configurable hooks you can then easily reference or import a publish into your current scene.

Shotgun Panel

The Shotgun Panel lets you quickly access Shotgun information from an embedded panel. It provides easy access to information about the task that the user is currently working on and you have instant access to the activity stream, notes, tasks, versions and publishes. Play back versions sent to review by other members of your team. Reply to notes directly from inside your application. If you pipeline tracks dependency information, you can browse this directly from the Shotgun Panel as well.

Admin Guide

This is the Admin Guide for Shotgun Integrations.

User Guide

This is the User Guide for Shotgun Integrations.

Installation and Updates

Adding this App to the Shotgun Pipeline Toolkit

If you want to add this app to Project XYZ, in an environment named asset, execute the following command:

> tank Project XYZ install_app asset tk-maya tk-multi-publish2

Updating to the latest version

If you already have this item installed in a project and you want to get the latest version, you can run the update command. You can either navigate to the tank command that comes with that specific project, and run it there:

> cd /my_tank_configs/project_xyz
> ./tank updates

Alternatively, you can run your studio tank command and specify the project name to tell it which project to run the update check for:

> tank Project XYZ updates

Collaboration and Evolution

If you have access to the Shotgun Pipeline Toolkit, you also have access to the source code for all apps, engines and frameworks in Github where we store and manage them. Feel free to evolve these items; use them as a base for further independent development, make changes (and submit pull requests back to us!) or simply tinker with them to see how they have been built and how the toolkit works. You can access this code repository at

Special Requirements

  • You need Shotgun Pipeline Toolkit Core API version v0.18.122 or higher to use this.


Below is a summary of all the configuration settings used. These settings need to be defined in the environment file where you want to enable this App or Engine.


Type: str

Default Value: Publish

Description: Specify the name that should be used in menus and the main publish dialog


Type: bool

Default Value: True

Description: If true (default), clicking the Publish button will execute the validation logic before publishing. If false, validation will be skipped. If false, and no validation has been manually triggered, a popup, confirmation dialog will be displayed before proceeding with the publish logic. NOTE: This is an advanced option. Setting this to 'false' will most likely break the shipped toolkit integrations which assume validation is always run before publishing.


Type: list

Default Value: [{u'hook': u'{self}/', u'name': u'Publish to Shotgun', u'settings': {}}, {u'hook': u'{self}/', u'name': u'Upload for review', u'settings': {}}]

Description: List of publish plugins.


Type: bool

Default Value: True

Description: If true (default, normal operation), the user can interact with the main dialog to drop files or folders. The user can also use the browse buttons to select files or folders. When false, the feature basically disable the user ability to add anything to the project.


Type: hook

Default Value: {self}/

Description: This hook contains methods that are used during publishing to infer information from file paths. This includes version and frame number identification, publish display name, image sequence paths, etc.


Type: str

Description: The url to open when the 'help' button is clicked in the publisher. The url should typically lead to a page that outlines the studio's publishing workflow. If no url is provided, the help button will not be displayed.


Type: str

Default Value: Publish

Description: Shorter version of display_name setting, used as button name.


Type: hook

Default Value: {self}/

Description: Logic for extracting items from the scene and from dropped files.


Type: dict

Description: Collector-specific configuration settings.

Release Notes

Welcome to the release notes for this App. Below you will find an overview of all the changes we did for each release. We try to be as detailed as possible and include all bugs we have fixed, features we have added and things that may have changed. If you have questions about a particular release, don't hesitate to contact our support team!



QA fixes for setting to disable manual content load



QA fixes for thumbnail inheritance



Adds ability to view progress details in drag/drop view



Attempts to improve UX around image sequence publishing



Updated to use context selection widget from tk-framework-qtwidgets.



adds validate_on_publish setting which allows disabling of validation when Publish is clicked



Adds default custom widget for description and sphinx docs for the app


Bug fixes:

  • Items deleted will no longer show up in the list of items to publish after reloading
  • Version uploads will now use the full filename as the version name. Prior to this, the version number was stripped.


  • Publish items will now show expand/collapse buttons
  • You can now begin a new publish session without closing the app

New Features

  • Adds two new configuration options:
    • display_name: Like publish1, allows for control over the display name of the app
    • display_action_name: Controls the action display name (the publish button)



Updated metrics logged



MoBu workflow and other misc QA fixes



Updates mobu item type in base collector




  • Support for template-based workflows
    • base publish plugin now allows work & publish templates to be defined in item properties. will handle copy from work to publish location at publish time.
    • if no templates defined, fall back to path_info hook logic
  • Custom UI for publish plugins

    • adds new methods that can be implemented by publish plugins to display custom UI for publish settings
  • Added checkbox for contexts items (#43771)

    • allows toggling of all items under publish context
  • Validation warning/errors available via item tooltips (#42764)

  • Ability to open the log view from the summary overlay post publish (#42849)

Bug Fixes:

  • Drag/drop disallowed for sub items (#43792)
  • Fixed description inheritance bug (#43896)
  • Fixed icon_pixmap bug for items (PR from adriankrupa)



Checks for failed or zero-size thumbnails.


This keeps us from plowing ahead and asking the SG API to upload a non existent or zero-size jpg file, which would cause it to fail ungracefully. Instead, we log the result and continue on without a thumbnail if a problem occurs and one can't be properly written to disk.



Addresses a bug that was causing unnecessary queries to populate related tasks when selecting an item on the left.



Updated minimum required core to be 0.18.72



doc updates



updated docs



Fix for authentication bug



small qa fixes for initial release



Reduce logging from the publisher



Ensure paths are normalized before comparing to identify conflicts



State management and context widget improvements



Adds browse button to toolbar and dnd screen, 3dsmax fix, fixes scroll bars and hyperlinks in descriptions



First Release Candidate.



Please sign in to leave a comment.