An Outreach app is a collection of third-party features that extend Outreach. Within an app you define which Outreach extension points you'd like to use and what API's you'd like to consume. You can create one app with many extensions or publish your extensions as separate apps.
In addition to these extensions that surface within the Outreach client application you may also want to build a custom app with Outreach REST API. To do that start with an Outreach app that contains an API access feature.
When you start developing your app it is not visible to anyone but the admins of the Outreach org to which it belongs - developers (=admins) are able to install the app for themselves. UI extensions will be visible only to admins that have the development version installed. Org level, backend features (e.g. mailing links extension) will work for any user of the org. And any user can connect to API via the app for testing purposes.
Once you are ready to release your app to the end users you may choose from 3 visibility states:
- Internal - app is installable/usable in your organization only. No one outside of your organization has access to it.
- Unlisted - app is installable by org admin of any Outreach organization if you share a link to the app with them. It is not discoverable.
- Public - app is listed in Outreach Marketplace and available to anyone.
Note that before you can release the app as unlisted or public (or on any subsequent updates to it) it needs to go through an Outreach review. Internal apps are not subject for review and can be released at any time.
After you have released the first version of your app you can work on updates to it. Any changes you make to the app in Outreach Developer Portal won't affect your released app version until you release a new version. The development version will be affected by the changes immediately as you click on the Save button.