Skip to content

Specification Choices

This guide helps you understand the different approaches to defining your SaaS Product specification model in Omnistrate.

Choosing your specification model

When building your SaaS on Omnistrate, you have two main approaches for defining your service specification:

Compose specification

For services built using Docker Compose, you can define your entire service specification directly within the compose file using Omnistrate's custom extensions. This approach allows you to:

  • Define service plans using x-omnistrate-service-plan
  • Configure API parameters with x-omnistrate-api-params
  • Set up compute resources, storage, and capabilities
  • Configure integrations and action hooks

When to use: Ideal for containerized applications that can be fully described using Docker Compose syntax.

Plan specification

For services built using Helm charts, Kubernetes Operators, Kustomize, or Terraform, you'll need to create a separate plan specification file that defines:

  • Plans and deployment configuration
  • API parameters and compute resources
  • Network configurations and capabilities
  • Cloud provider-specific settings

When to use: Required for Helm, Operator, Kustomize, or Terraform-based deployments where the service definition is separate from the plan configuration.

Next steps

  • For Docker Compose approach: See the Compose Specification guide for detailed configuration options
  • For separate plan specification: See the Plan Specification guide for the complete schema and examples

Choose the approach that best fits your deployment model and infrastructure requirements.