In HubSpot, an app is used to identify your integration. When you authenticate your integration using OAuth, the details for your app are shown to the user when they're authorizing the connection.
Having an app in HubSpot is also a requirement for using the Timeline and Webhooks APIs. Timeline events and webhook subscriptions are set up for the app, and then authorizing your app with a HubSpot account allows you to use those events and subscriptions with a customer account.
To create an app, you'll first need to have a HubSpot developer account. If you don't already have one, you can sign up here: https://app.hubspot.com/signup/developers
Once you have a Developer account and you get signed in, you'll start on the Developer dashboard, where you'll have the option to create your first app by clicking the Create app button.
Name your app, and if you're creating an app that you'll be sharing with other HubSpot users, select Public for the app visibility. Remember, the name of your app appears to users when they're authenticating your app with HubSpot.
After you create your app, you'll go back to the dashboard. Click your new app to see the settings. The app name, author name, and short description are displayed to users when they're authenticate with your integration. Click the icon to upload a new custom icon.
In addition to the name and author settings, you'll also find the Client ID and Client Secret which you'll need when initiating an OAuth connection between your app and HubSpot.