Skip to main content

Core Concepts

Organizations, Customers, and Users#

Prismatic writes software for other software companies who have their own customers, so it's important to disambiguate terms like organization and customer.

When your company signs up with Prismatic, you create an organization. Your organization has multiple customers whom you can manage. Users can be created for both your organization and your customers, with organization users having broader, company-wide roles and permissions, and customer users having permissions limited in scope to their company. To keep things separate, we often refer to organization users as "team members" in docs and the web app.

Integrations and Instances#

Within your organization you can assemble an integration by tying together multiple component's actions. That integration can be tested using our integration designer. Once you are satisfied with your integration, it can be published, and instances of the integration can be configured and deployed to one or many of your customers.

Instances deployed to customers can be configured using customer-specific config variables and credentials, so one integration can be uniquely deployed to multiple customers with different setups.

Credentials#

Your customers' integrations will need to interact with third-party apps and services. Instances of integrations can reference credentials to interact with external services - credentials securely store API keys, username/password pairs, etc. They can be organization-wide or customer-specific. When an instance is deployed, credentials are saved statically into the deployment. This lets you assemble an integration once, and customize it with config variables and credentials for each of your customers so they have unique deployments.

Logging, Monitoring, and Alerting#

When an integration behaves unexpectedly (takes too long to run, or fails to run to completion), you want your team to be notified. Prismatic's alert monitors can be configured to monitor your instances, and notify your team in the event of an issue. Logs of all instance runs are retained, so you can debug production issues and rapidly resolve problems.

Not all alerts indicate bad things happened - alert monitors can be configured to run when an instance is enabled (so your project management team can mark implementations as complete), or can be configured to alert a customer via Slack or Email that an integration that runs daily ran successfully.