Account Management APIs

APIs for MSPs and Distributors to manage accounts

Note: These APIs only apply to distributors of MSP accounts. Most MSPs are able to manage companies via commander 'msp' commands.

Capabilities of the APIs

The primary use cases enabled via the API are:

  • Create Trial Account

  • Convert To Paid Account

  • List all MSPs

  • Get Current Usage

  • Get Monthly Usage

  • Cancel Paid Account

  • Activate Expired Accounts

  • List MSP Products

  • Delete Pending/Conflict Accounts

API definitions

Convert to Paid

post
/convert-to-paid

convert-to-paid

Authorizations
AuthorizationstringRequired

JWT with HS512 alg

Header parameters
AuthorizationstringOptional

Bearer

vendorstringOptional

vendor_name(Provided by Keeper)

Body
or
Responses
post
/convert-to-paid

Get Current Usage

post
/current-usage

Fetch Current Usage

Authorizations
AuthorizationstringRequired

JWT with HS512 alg

Header parameters
AuthorizationstringOptional

Bearer

vendorstringOptional

vendor_name(Provided by Keeper)

Body
or
Responses
post
/current-usage

Fetch Monthly Usage

post
/monthly-usage

Fetch Monthly Usage

Authorizations
AuthorizationstringRequired

JWT with HS512 alg

Header parameters
AuthorizationstringOptional

Bearer

vendorstringOptional

vendor_name(Provided by Keeper)

Body
or
Responses
post
/monthly-usage

Cancel Paid Account

post
/cancel-paid-account

Cancel Paid Account

Authorizations
AuthorizationstringRequired

JWT with HS512 alg

Header parameters
AuthorizationstringOptional

Bearer

vendorstringOptional

vendor_name(Provided by Keeper)

Body
or
Responses
post
/cancel-paid-account

Create Trial Account

post
/create-trial-account

Create Trial Account

Header parameters
AuthorizationstringOptional

Bearer JWT

vendorstringOptional

vendor_name(Provided by Keeper)

Body

Create Trial Account Request

namestring · max: 255Required
countrystring · max: 2Required

iso standard country code

Example: US
zipCodestring · max: 12Required
emailstring · emailRequired
vendorInternalIdstring · min: 1 · max: 52Required
statestringOptional
citystringOptional
streetstringOptional
phonestring · max: 15Optional

Country Code followed by phone number

Example: +1 9191919191
showPricingInMSPConsolebooleanOptionalDefault: false
Responses
post
/create-trial-account

Fetch All MSPs linked to vendor

get
/accounts

Get All linked MSPs

Authorizations
AuthorizationstringRequired

JWT with HS512 alg

Header parameters
AuthorizationstringOptional

Bearer

vendorstringOptional

vendor_name(Provided by Keeper)

Responses
get
/accounts

Activate Expired Account

post
/activate-expired

Activate Expired Account

Authorizations
AuthorizationstringRequired

JWT with HS512 alg

Header parameters
AuthorizationstringOptional

Bearer

vendorstringOptional

vendor_name(Provided by Keeper)

Body
or
Responses
post
/activate-expired

Fetch available Keeper MSP Products

get
/msp-products

Get available Keeper MSP products

Authorizations
AuthorizationstringRequired

JWT with HS512 alg

Header parameters
AuthorizationstringOptional

Bearer

vendorstringOptional

vendor_name(Provided by Keeper)

Responses
get
/msp-products

Delete Pending/Conflict Account

post
/remove-account

Delete Pending/Conflict Account

Authorizations
AuthorizationstringRequired

JWT with HS512 alg

Header parameters
AuthorizationstringOptional

Bearer

vendorstringOptional

vendor_name(Provided by Keeper)

Body
or
Responses
post
/remove-account

Creating a JSON Web Token from your pre-shared secret

After access has been requested, Keeper will share a record with you that will include the necessary information to use the APIs. In order to use any of the above API methods, a JWT needs to be created. In the below example, the 'iat' and 'exp' are 5 minutes apart. The below code will generate the token needed in the web request:

Sample JWT script example

The below script will correctly generate JWT and has the data needed for the 'create-trial-account' POST.

Other methods to generate the JWT

You can use a look like JWT.io to generate your JSON Web Token from the pre-shared secret.

  • For encryption, use HS512 Algorithm

  • Use the below json as payload, note this token has a 5 minute expiration

  • use secret.key as secret key to encode the token

Additional API detail

MSP Account Statuses

Certain API endpoints will return the status of an MSP. The below explains what each status is:

Status
Definition

PENDING

When an account is created created via the /create-trial-account endpoint, an email is sent inviting the user to activate the account and begin thier trial.

TRIAL

A newly activated MSP automatically starts with a 14 day trial. At the end of the trial, if the /convert-to-paid endpoint is not called, the MSP will be deactivated and they can no longer login. Data will be deleted after 1 year. An expired trial can be re-activated within the data retenion period.

ACTIVE

An active, paid MSP account with an expiration date some time in the future.

REGION_CONFLICT

When an account is created via the /create-trial-account endpoint in US region instead of activating account from email link, user activated trial account from website in other region. Field “accountRegion” in response shows the registered account region.

PRODUCT_CONFLICT

When an account is created created via the /create-trial-account endpoint in US region instead of activating account from email link, user activated enterprise trial/consumer trial account from website. Field “productType” in response shows the Keeper product type

EXPIRED

if the /cancel-paid-account endpoint is called, the MSP provided will be immediately expired and billing will stop for this MSP.

Product ID to SKU mapping

Each Keeper line item has a human readable name that maps to ID's. These are provided in the usage API endpoints.

productID
Line Item

720

Keeper MSP

10001

Keeper Business

10002

Keeper Business Plus

10010

Keeper Enterprise

10011

Keeper Enterprise Plus

967

Keeper Connection Manager Add On

968

Keeper Secrets Manager Add On

910

KeeperChat Add On

920

Keeper ARAM Add On

930

Keeper BreachWatch Add On

940

Keeper Compliance Reporting Add On

1011

Keeper 1TB Storage Add On

1012

Keeper 10TB Storage Add On

730

Dedicated Service & Support

973

Remote Browser Isolation

978

Privilege Access Management

API definition YAML file

If you wish to explore the APIs in another tool like postman or the swagger editor, download the associated YAML definition of the APIs below

Sample output of current usage

Sample output of monthly usage

The account creation API will automatically send an email to the created/invited account. Exmaple below.

If you need support or have additional questions on the usage of these APIs, please contact support or your sales representative.

Last updated

Was this helpful?