Skip to content

Latest commit

 

History

History
162 lines (105 loc) · 3.52 KB

README.md

File metadata and controls

162 lines (105 loc) · 3.52 KB

@hubspot/cli

Provides an hs command for interacting with the HubSpot. Learn more about building on HubSpot.

Getting started

For more information on using these tools, see Local Development Tooling: Getting Started

Installation

npm install -g @hubspot/cli

Configuring

Once the @hubspot/cli has been added to a project, a config file named hubspot.config.yml will also be needed. It is recommended that the config file is kept in your $HOME directory.

cd ~
hs init

Auto Completion

You can set up command autocompletion by running

hs completion

and copying the output to either your .bashrc or .zshrc, and then sourcing that file source ~/.bashrc source ~/.zshrc or restarting your terminal.

Commands

A full breakdown of the commands can be found on the local development tools reference page.

Note: When @hubspot/cli is installed local to a project, the commands need to be prefixed with either yarn if using yarn or npx if using npm.

Initialize the CLI and create a config file

hs init

Show all commands

hs help

Upload a file or directory to the Design Manager

hs upload --account=DEV [src] [dest]

Fetch a file or directory by path from the Design Manager

hs fetch --account=DEV [path] [dest]

# Overwrite existing files
hs fetch --account=DEV --overwrite [path] [dest]

Watch a directory of files and automatically upload changes to the Design Manager

hs watch --account=DEV [src] [dest]

Create a new asset locally

hs create [type] [dest]

Delete a file or directory from the Design Manager

hs remove --account=DEV [path]

Authenticate against an account using either personalaccesskey or oauth2

hs auth personalaccesskey

File Manager Commands

Upload a file or directory to the File Manager

hs filemanager upload --account=DEV [src] [dest]

Fetch a file or directory from the File Manager

hs filemanager fetch --account=DEV [src] [dest]

# Overwrite existing files
hs filemanager fetch --account=DEV --overwrite [path] [dest]

HubDB Commands

Create a new HubDB table

hs hubdb create <src>

Fetch a HubDB table

hs hubdb fetch <id or name> <src>

Clear all rows in a HubDB table

hs hubdb clear <id or name>

Delete a HubDB table

hs hubdb delete <id or name>

Authentication

There are three ways that the tools can authenticate with HubSpot.

Personal Access Key (recommended)

  1. Run hs init or hs auth personalaccesskey and follow the instructions

OAuth2

  1. Create a developer app
  2. Run hs auth oauth2
  3. Select OAuth2 and follow the steps

Note: The Account ID used should be the Test Account ID (not the developer app ID). Client ID and Client Secret are from the developer app.

HubSpot API Key

  1. Set up an API Key for the Account
  2. Edit the hubspot.config.yml file to set the authType for the account to apikey and add apiKey as shown below:
defaultPortal: DEV
portals:
  - name: DEV
    portalId: 123
    authType: apikey
    apiKey: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX