Skip Navigation
Show nav
Heroku Dev Center
  • Get Started
  • Documentation
  • Changelog
  • Search
  • Get Started
    • Node.js
    • Ruby on Rails
    • Ruby
    • Python
    • Java
    • PHP
    • Go
    • Scala
    • Clojure
  • Documentation
  • Changelog
  • More
    Additional Resources
    • Home
    • Elements
    • Products
    • Pricing
    • Careers
    • Help
    • Status
    • Events
    • Podcasts
    • Compliance Center
    Heroku Blog

    Heroku Blog

    Find out what's new with Heroku on our blog.

    Visit Blog
  • Log inorSign up
View categories

Categories

  • Heroku Architecture
    • Dynos (app containers)
    • Stacks (operating system images)
    • Networking & DNS
    • Platform Policies
    • Platform Principles
  • Command Line
  • Deployment
    • Deploying with Git
    • Deploying with Docker
    • Deployment Integrations
  • Continuous Delivery
    • Continuous Integration
  • Language Support
    • Node.js
    • Ruby
      • Working with Bundler
      • Rails Support
    • Python
      • Background Jobs in Python
      • Working with Django
    • Java
      • Working with Maven
      • Java Database Operations
      • Working with the Play Framework
      • Working with Spring Boot
      • Java Advanced Topics
    • PHP
    • Go
      • Go Dependency Management
    • Scala
    • Clojure
  • Databases & Data Management
    • Heroku Postgres
      • Postgres Basics
      • Postgres Getting Started
      • Postgres Performance
      • Postgres Data Transfer & Preservation
      • Postgres Availability
      • Postgres Special Topics
    • Heroku Data For Redis
    • Apache Kafka on Heroku
    • Other Data Stores
  • Monitoring & Metrics
    • Logging
  • App Performance
  • Add-ons
    • All Add-ons
  • Collaboration
  • Security
    • App Security
    • Identities & Authentication
    • Compliance
  • Heroku Enterprise
    • Private Spaces
      • Infrastructure Networking
    • Enterprise Accounts
    • Enterprise Teams
    • Heroku Connect (Salesforce sync)
      • Heroku Connect Administration
      • Heroku Connect Reference
      • Heroku Connect Troubleshooting
    • Single Sign-on (SSO)
  • Patterns & Best Practices
  • Extending Heroku
    • Platform API
    • App Webhooks
    • Heroku Labs
    • Building Add-ons
      • Add-on Development Tasks
      • Add-on APIs
      • Add-on Guidelines & Requirements
    • Building CLI Plugins
    • Developing Buildpacks
    • Dev Center
  • Accounts & Billing
  • Troubleshooting & Support
  • Integrating with Salesforce
  • Extending Heroku
  • Building Add-ons
  • Add-on Development Tasks
  • Presenting Additional Terms of Service to Customers as an Add-on Partner

Presenting Additional Terms of Service to Customers as an Add-on Partner

English — 日本語に切り替える

Last updated January 04, 2021

Table of Contents

  • How to require additional Terms of Service or customer configuration
  • Supporting Review and CI apps

This article is outdated and for reference only. See this article for the current Heroku Add-on Terms of Use practices.

Some add-ons may require the acceptance of additional Terms of Service or additional configuration before a Heroku customer can begin using it.

We don’t directly support injecting custom Terms of Service into the add-on provisioning flow, however you can implement this pattern easily with the Add-ons SSO dashboard you provide.

How to require additional Terms of Service or customer configuration

The below articulates a possible strategy where essentially you assume an add-on is “inactive” until a customer has taken the necessary post-provisioning steps.

  • A customer provisions an add-on instance.
  • Mark that instance as inactive in your infrastructure during provisioning,
  • Return a message like the below in your JSON response to the original provisioning request. This message will be displayed in the CLI and the Heroku dashboard.
You've taken the first step - now open the add-on dashboard to sign our Term of Service. Once you've done that, you'll be ready to use your new add-on.
  • Modify your add-on infrastructure to set the add-on instance as active once the customer has visited your add-on dashboard via SSO and taken the necessary steps.
  • You may want to create a background job that emails customers that haven’t taken the necessary post-provisioning steps after a set time period to ensure they don’t forget to fully activate your add-on.

Supporting Review and CI apps

Review and CI apps allow customers to test changes in short-lived, production-like environments. Please see this article for more details on how partners can support these short-lived applications.

If you implement a system that requires the customer to accept additional terms of service, Heroku customers will not be able to effectively use your add-on in Review and CI apps. This is because add-on installation will require manual steps.

You should:

  • Create a Review and CI app specific plan per the guidelines in this article,
  • When you detect that a customer has requested a plan specific to Review and CI apps, you should mark your add-on active immediately.

Your Heroku customer has most likely already signed your TOS in a staging or production app, but you should confer with your legal team if this is adequate.

Keep reading

  • Add-on Development Tasks

Feedback

Log in to submit feedback.

Writing to Application Logs as an Add-on Partner Supporting Private Spaces as an Add-on Partner

Information & Support

  • Getting Started
  • Documentation
  • Changelog
  • Compliance Center
  • Training & Education
  • Blog
  • Podcasts
  • Support Channels
  • Status

Language Reference

  • Node.js
  • Ruby
  • Java
  • PHP
  • Python
  • Go
  • Scala
  • Clojure

Other Resources

  • Careers
  • Elements
  • Products
  • Pricing

Subscribe to our monthly newsletter

Your email address:

  • RSS
    • Dev Center Articles
    • Dev Center Changelog
    • Heroku Blog
    • Heroku News Blog
    • Heroku Engineering Blog
  • Heroku Podcasts
  • Twitter
    • Dev Center Articles
    • Dev Center Changelog
    • Heroku
    • Heroku Status
  • Facebook
  • Instagram
  • Github
  • LinkedIn
  • YouTube
Heroku is acompany

 © Salesforce.com

  • heroku.com
  • Terms of Service
  • Privacy
  • Cookies
  • Cookie Preferences