# CNAP | Docs ## Docs - [Welcome to CNAP](https://docs.cnap.tech/index.md): Get started with CNAP - deploy, manage, and monetize cloud-native applications - [Quickstart](https://docs.cnap.tech/quickstart.md): Get your first product live and ready for customers in minutes - [Products Infrastructure](https://docs.cnap.tech/products.md): Understand how products enable you to sell and deploy software to customers - [Application Deployments](https://docs.cnap.tech/deployments.md): Understand how applications are installed on your clusters through products or direct installs - [Application Sources](https://docs.cnap.tech/app-sources.md): Choose how to deploy your application with Helm Charts, GitHub repositories, or Docker images - [Templates](https://docs.cnap.tech/products/templates.md): Learn how templates power your products and deployments - [Customizing Helm Values](https://docs.cnap.tech/customizing-values.md): Configure and customize your applications using Helm values for products and installations - [Package Generation](https://docs.cnap.tech/charts/chart-generation.md): How CNAP automatically creates versioned, self-contained packages from your templates - [Package Versioning](https://docs.cnap.tech/charts/versioning.md): How CNAP manages package versions and updates for your deployments - [Clusters](https://docs.cnap.tech/clusters.md): Understand how clusters work in CNAP for deploying and managing your applications - [Create a Cluster](https://docs.cnap.tech/clusters/create.md): Set up a managed Kubernetes cluster in minutes - [Add Workers](https://docs.cnap.tech/clusters/add-workers.md): Connect compute capacity to your managed cluster to run applications - [Import a Cluster](https://docs.cnap.tech/clusters/import.md): Connect your existing Kubernetes infrastructure - [Local Testing](https://docs.cnap.tech/clusters/local-testing.md): Test your applications locally with Multipass before deploying to production - [Regions](https://docs.cnap.tech/clusters/regions.md): Understand how regions organize clusters for customer selection - [Compute](https://docs.cnap.tech/compute/overview.md): Provision and manage cloud servers for your Kubernetes clusters - [Machines](https://docs.cnap.tech/compute/machines.md): CNAP-managed compute that provisions and manages worker nodes for you - [Suspend and Resume](https://docs.cnap.tech/compute/suspend-resume.md): Pause machines to stop billing while preserving data for later - [Hetzner Cloud](https://docs.cnap.tech/compute/providers/hetzner.md): EU and US cloud servers with exceptional value — the first supported compute provider - [Storage](https://docs.cnap.tech/clusters/storage.md): Add persistent storage to your clusters so applications can store data that survives restarts and upgrades - [Local Path Provisioner](https://docs.cnap.tech/clusters/storage/local-path.md): Direct local disk storage for development, single-node setups, and latency-sensitive workloads - [Piraeus (LINSTOR)](https://docs.cnap.tech/clusters/storage/piraeus.md): Replicated block storage across multiple nodes for production workloads - [External Access](https://docs.cnap.tech/networking.md): Expose your applications to the internet with custom domains or preview URLs - [Preview Domains](https://docs.cnap.tech/networking/preview-domains.md): Get instant *.cnap.app URLs for every deployment — no DNS setup needed - [Direct IP](https://docs.cnap.tech/networking/direct-ip.md): Route traffic directly to your worker nodes using Gateway API and DNS - [Cloudflare Tunnel](https://docs.cnap.tech/networking/cloudflare-tunnel.md): Use your own Cloudflare account to route custom domains to your cluster — no public IPs required - [Pricing](https://docs.cnap.tech/pricing.md): Compare CNAP plans, understand usage-based billing, and find the right tier for your workloads - [Billing](https://docs.cnap.tech/billing/overview.md): Manage your workspace subscription and understand how billing works - [Plan Tiers](https://docs.cnap.tech/billing/tiers.md): How your plan tier is resolved and how it affects quotas, instance types, and machine lifecycle - [Enterprise](https://docs.cnap.tech/billing/enterprise.md): Custom limits, dedicated support, and compliance for organizations with larger requirements - [Quotas and Limits](https://docs.cnap.tech/platform/quotas.md): How CNAP manages resource limits, provisioning speed, and API usage - [Workspaces](https://docs.cnap.tech/workspaces.md): Understand how workspaces organize your clusters, products, and resources - [Organizations](https://docs.cnap.tech/platform/organizations.md): Manage your team and customer relationships across multiple workspaces - [Marketplace](https://docs.cnap.tech/marketplace.md): Understand how the marketplace works for discovering and deploying products - [Marketplace Payments](https://docs.cnap.tech/payments.md): How your customers pay you for products deployed through the CNAP marketplace - [Security](https://docs.cnap.tech/platform/security.md): How CNAP isolates workloads, protects data, and keeps your infrastructure secure - [GitHub Integration](https://docs.cnap.tech/platform/github-integration.md): Understand how GitHub App integration enables secure repository access and automated deployments - [Private Container Registries](https://docs.cnap.tech/platform/private-registries.md): Configure authentication for private Docker registries to deploy applications with private images - [Notifications](https://docs.cnap.tech/platform/notifications.md): Stay informed about important events in your CNAP account - [Custom Dashboards](https://docs.cnap.tech/dashboards/custom-dashboards.md): Build live monitoring dashboards from reusable code snippets - [Dashboard Generation](https://docs.cnap.tech/ai/dashboard-generation.md): Use AI agents to generate and iterate on custom dashboards and snippets - [Docker Compose to Kubernetes Converter](https://docs.cnap.tech/tools/compose-converter.md): Convert Docker Compose files to Kubernetes manifests and Helm charts - [GitHub Actions Workflows](https://docs.cnap.tech/tools/github-actions.md): Reusable GitHub Actions workflows for automatic builds and deployments with Railpack - [Generic Application Chart](https://docs.cnap.tech/tools/generic-chart.md): Understand how CNAP uses the generic Helm chart for GitHub repository deployments - [$1M Cloud Product](https://docs.cnap.tech/success/build-million-dollar-products.md): Complete journey from idea to revenue: turn your software into a profitable business with CNAP - [Changelog](https://docs.cnap.tech/changelog.md): Product updates and announcements - [Introduction](https://docs.cnap.tech/apis/introduction.md): Programmatic access to CNAP resources for automation, CLI tools, and integrations - [Authentication](https://docs.cnap.tech/apis/authentication.md): Authenticate with the CNAP API - [List personal access tokens](https://docs.cnap.tech/api-reference/auth/list-personal-access-tokens.md): Returns metadata for all tokens. Full token values are never shown after creation. - [Create a personal access token](https://docs.cnap.tech/api-reference/auth/create-a-personal-access-token.md): Creates a new PAT. The full token is returned in the response and never shown again. - [Revoke a personal access token](https://docs.cnap.tech/api-reference/auth/revoke-a-personal-access-token.md) - [List workspaces](https://docs.cnap.tech/api-reference/workspaces/list-workspaces.md): Lists all workspaces the authenticated user belongs to. No X-Workspace-Id needed. - [Get workspace details](https://docs.cnap.tech/api-reference/workspaces/get-workspace-details.md) - [List workspace members](https://docs.cnap.tech/api-reference/workspaces/list-workspace-members.md): Lists direct members and organization-based members. - [Add workspace member](https://docs.cnap.tech/api-reference/workspaces/add-workspace-member.md) - [Remove workspace member](https://docs.cnap.tech/api-reference/workspaces/remove-workspace-member.md) - [Update member role](https://docs.cnap.tech/api-reference/workspaces/update-member-role.md) - [List clusters in workspace](https://docs.cnap.tech/api-reference/clusters/list-clusters-in-workspace.md): Lists all clusters in the workspace specified by the X-Workspace-Id header. - [Create a KaaS-managed cluster](https://docs.cnap.tech/api-reference/clusters/create-a-kaas-managed-cluster.md): Provisions a new Kubernetes cluster managed by CNAP. Triggers a Temporal workflow that creates the virtual cluster via ArgoCD. - [Get cluster details](https://docs.cnap.tech/api-reference/clusters/get-cluster-details.md): Returns detailed information about a cluster, including KaaS status if applicable. - [Delete cluster](https://docs.cnap.tech/api-reference/clusters/delete-cluster.md): Deletes a cluster and its configuration. KaaS-managed clusters are deprovisioned. Fails if the cluster has active installations. - [Update cluster](https://docs.cnap.tech/api-reference/clusters/update-cluster.md): Update cluster name or region. The region must be in the same workspace. - [Suspend cluster](https://docs.cnap.tech/api-reference/clusters/suspend-cluster.md): Suspends a running KaaS cluster by scaling its control plane to zero. All state is preserved. Resume with POST /clusters/{id}/resume. - [Resume cluster](https://docs.cnap.tech/api-reference/clusters/resume-cluster.md): Resumes a suspended KaaS cluster by scaling its control plane back up. Takes approximately 15-25 seconds. - [Get cluster kubeconfig](https://docs.cnap.tech/api-reference/clusters/get-cluster-kubeconfig.md): Returns the admin kubeconfig for a KaaS-managed cluster. The cluster must be in RUNNING status. - [Import an existing cluster](https://docs.cnap.tech/api-reference/clusters/import-an-existing-cluster.md): Registers an external Kubernetes cluster by kubeconfig. No provisioning — the cluster must already be running. - [Generate worker join command and cloud-init](https://docs.cnap.tech/api-reference/clusters/generate-worker-join-command-and-cloud-init.md): Returns a join token, bootstrap command template, and cloud-init config for adding a worker node to a KaaS cluster. The token is short-lived. - [Proxy to Kubernetes API](https://docs.cnap.tech/api-reference/clusters/proxy-to-kubernetes-api.md): Transparent proxy to the cluster's Kubernetes API server. The path after `/kube/` is forwarded directly. All HTTP methods are supported. - [Execute command in pod](https://docs.cnap.tech/api-reference/clusters/execute-command-in-pod.md): Runs a command in a pod container and returns stdout, stderr, and exit code. Non-interactive (no TTY, no stdin). Timeout: 30 seconds. - [List templates in workspace](https://docs.cnap.tech/api-reference/templates/list-templates-in-workspace.md): Returns all templates belonging to the workspace specified in the X-Workspace-Id header. - [Create template](https://docs.cnap.tech/api-reference/templates/create-template.md): Creates a template with helm sources. Templates define the Kubernetes resources that products deploy. - [Get template details](https://docs.cnap.tech/api-reference/templates/get-template-details.md): Returns template with its helm sources. - [Delete template](https://docs.cnap.tech/api-reference/templates/delete-template.md): Fails if referenced by products or installs. - [Update template](https://docs.cnap.tech/api-reference/templates/update-template.md): Partially updates a template. Only provided fields are changed. Updating sources triggers async chart regeneration. - [List products in workspace](https://docs.cnap.tech/api-reference/products/list-products-in-workspace.md): Returns all products belonging to the workspace specified in the X-Workspace-Id header. - [Create product](https://docs.cnap.tech/api-reference/products/create-product.md): Creates a product with helm sources and cluster associations. Triggers async chart generation. - [Get product details](https://docs.cnap.tech/api-reference/products/get-product-details.md): Returns product metadata including template reference and marketplace settings. - [Delete product](https://docs.cnap.tech/api-reference/products/delete-product.md): Fails if the product has active installs. - [Update product](https://docs.cnap.tech/api-reference/products/update-product.md): Replaces product configuration including helm sources, clusters, and settings. Triggers async chart regeneration. - [List installs in workspace](https://docs.cnap.tech/api-reference/installs/list-installs-in-workspace.md): Returns all installs belonging to the workspace specified in the X-Workspace-Id header. - [Create product install](https://docs.cnap.tech/api-reference/installs/create-product-install.md): Deploys a product to a region. Pass an `Idempotency-Key` header to safely retry on timeout. - [Get install details](https://docs.cnap.tech/api-reference/installs/get-install-details.md): Returns install metadata including its product, template, and cluster references. - [Delete install](https://docs.cnap.tech/api-reference/installs/delete-install.md): Triggers async deletion of the install and its resources. - [Get install deploy status](https://docs.cnap.tech/api-reference/installs/get-install-deploy-status.md): Returns the detailed deploy status for the install, including per-resource health and sync information. - [List pods for install](https://docs.cnap.tech/api-reference/installs/list-pods-for-install.md): Returns pods and their containers for the install. - [Create standalone install](https://docs.cnap.tech/api-reference/installs/create-standalone-install.md): Deploys custom helm sources directly to clusters without a product. Pass an `Idempotency-Key` header to safely retry on timeout. - [Update install template values](https://docs.cnap.tech/api-reference/installs/update-install-template-values.md): Updates template helm source values and regenerates the chart. Use this for standalone installs or to change the base values of a product install. - [Update install value overrides](https://docs.cnap.tech/api-reference/installs/update-install-value-overrides.md): Applies per-install value overrides on top of the product base values. Does not regenerate the chart. - [Stream install logs](https://docs.cnap.tech/api-reference/installs/stream-install-logs.md): Streams logs from the install pods via Server-Sent Events. Use the `Accept: text/event-stream` header. - [List regions in workspace](https://docs.cnap.tech/api-reference/regions/list-regions-in-workspace.md): Returns all regions belonging to the workspace specified in the X-Workspace-Id header. - [Create region](https://docs.cnap.tech/api-reference/regions/create-region.md): Creates a named region in the workspace. Regions group clusters geographically for marketplace display. - [List registry credentials](https://docs.cnap.tech/api-reference/registry/list-registry-credentials.md): Returns credentials for the workspace. Credential secrets are never exposed. - [Create registry credential](https://docs.cnap.tech/api-reference/registry/create-registry-credential.md): Adds a registry credential to the workspace for OCI proxy authentication. - [Delete registry credential](https://docs.cnap.tech/api-reference/registry/delete-registry-credential.md): Permanently removes a registry credential. Active installs using this credential may lose pull access. - [List snippets in workspace](https://docs.cnap.tech/api-reference/snippets/list-snippets-in-workspace.md): Returns all snippets belonging to the workspace specified in the X-Workspace-Id header. - [Create snippet](https://docs.cnap.tech/api-reference/snippets/create-snippet.md): Creates a reusable code snippet in the workspace. Snippets are async JavaScript functions executed in a sandboxed V8 isolate with access to cnap.request() for API calls. - [Get snippet details](https://docs.cnap.tech/api-reference/snippets/get-snippet-details.md): Returns a snippet including its code and display type. - [Delete snippet](https://docs.cnap.tech/api-reference/snippets/delete-snippet.md): Permanently deletes a snippet. Fails with 409 if the snippet is referenced by any dashboard widgets. - [Update snippet](https://docs.cnap.tech/api-reference/snippets/update-snippet.md): Updates snippet properties. Only provided fields are changed. Dashboards using this snippet will pick up code changes on next run. - [List dashboards in workspace](https://docs.cnap.tech/api-reference/dashboards/list-dashboards-in-workspace.md): Returns all dashboards belonging to the workspace specified in the X-Workspace-Id header. - [Create dashboard](https://docs.cnap.tech/api-reference/dashboards/create-dashboard.md): Creates a dashboard with an optional initial widget layout. Each widget references a snippet by ID and can override its display type. - [Get dashboard details](https://docs.cnap.tech/api-reference/dashboards/get-dashboard-details.md): Returns a dashboard including its widget layout and snippet references. - [Delete dashboard](https://docs.cnap.tech/api-reference/dashboards/delete-dashboard.md): Permanently deletes a dashboard. Referenced snippets are not affected. - [Update dashboard](https://docs.cnap.tech/api-reference/dashboards/update-dashboard.md): Update dashboard metadata and/or widget layout. - [List machines in cluster](https://docs.cnap.tech/api-reference/compute/list-machines-in-cluster.md): Lists all machines for a cluster. - [Create a machine](https://docs.cnap.tech/api-reference/compute/create-a-machine.md): Provisions a new machine in the specified cluster with the given compute configuration. - [Get machine status](https://docs.cnap.tech/api-reference/compute/get-machine-status.md): Returns current state of a machine including conditions and provider metadata. - [Delete a machine](https://docs.cnap.tech/api-reference/compute/delete-a-machine.md): Deletes a machine by provider ID. The node is drained before the cloud server is terminated. - [List available instance types](https://docs.cnap.tech/api-reference/compute/list-available-instance-types.md): Returns instance types with pricing for a compute config. Returns available instance types for provisioning. Results are cached. - [Check if machine has drifted](https://docs.cnap.tech/api-reference/compute/check-if-machine-has-drifted.md): Checks if a machine has drifted from its desired compute configuration. - [Suspend a machine](https://docs.cnap.tech/api-reference/compute/suspend-a-machine.md): Snapshots the machine disk, deletes the cloud server to stop billing, and creates a suspension record. - [Resume a suspended machine](https://docs.cnap.tech/api-reference/compute/resume-a-suspended-machine.md): Restores the machine from its snapshot, creates a new cloud server. - [List suspended machines](https://docs.cnap.tech/api-reference/compute/list-suspended-machines.md): Lists all suspended machines for the workspace. - [Delete a suspension](https://docs.cnap.tech/api-reference/compute/delete-a-suspension.md): Deletes the snapshot and suspension record permanently. - [List compute configs](https://docs.cnap.tech/api-reference/compute/list-compute-configs.md): Lists compute configs for the workspace. - [Create a compute config](https://docs.cnap.tech/api-reference/compute/create-a-compute-config.md) - [Get a compute config](https://docs.cnap.tech/api-reference/compute/get-a-compute-config.md) - [Delete a compute config](https://docs.cnap.tech/api-reference/compute/delete-a-compute-config.md) - [Get cluster compute status](https://docs.cnap.tech/api-reference/compute/get-cluster-compute-status.md): Returns auto-scaling state, machine count, and limits for a cluster. - [Update cluster compute settings](https://docs.cnap.tech/api-reference/compute/update-cluster-compute-settings.md): Controls auto-scaling behavior and machine limits for a cluster. - [List quota usage for the authenticated user](https://docs.cnap.tech/api-reference/quotas/list-quota-usage-for-the-authenticated-user.md): Returns current usage and limits for all quota metrics. Allocation and rate quotas are per-user across all workspaces. Concurrency quotas are per-cluster — pass cluster_id to include them. - [Get quota usage for a specific metric](https://docs.cnap.tech/api-reference/quotas/get-quota-usage-for-a-specific-metric.md): Returns current usage and limit for a single quota metric. Metric must be URL-encoded (e.g., compute%2Fcpu). - [List recent notifications for the authenticated user](https://docs.cnap.tech/api-reference/notifications/list-recent-notifications-for-the-authenticated-user.md) - [Count unread notifications](https://docs.cnap.tech/api-reference/notifications/count-unread-notifications.md) - [Mark a notification as read](https://docs.cnap.tech/api-reference/notifications/mark-a-notification-as-read.md) - [Mark all notifications as read](https://docs.cnap.tech/api-reference/notifications/mark-all-notifications-as-read.md) - [List credentials for a workspace](https://docs.cnap.tech/api-reference/credentials/list-credentials-for-a-workspace.md): Returns credential metadata for all types, or filtered by type. Never exposes secrets. - [Create a credential](https://docs.cnap.tech/api-reference/credentials/create-a-credential.md): Registers a credential. The secret is stored securely and never persisted in CNAP directly. - [Validate a cloud provider token](https://docs.cnap.tech/api-reference/credentials/validate-a-cloud-provider-token.md): Tests a cloud provider API token without storing it. Use before creating a credential to verify the token works. - [Delete a credential](https://docs.cnap.tech/api-reference/credentials/delete-a-credential.md) - [List organizations](https://docs.cnap.tech/api-reference/organizations/list-organizations.md): Lists all organizations the authenticated user belongs to. - [Create organization](https://docs.cnap.tech/api-reference/organizations/create-organization.md) - [Get organization details](https://docs.cnap.tech/api-reference/organizations/get-organization-details.md) - [Update organization](https://docs.cnap.tech/api-reference/organizations/update-organization.md) - [List organization members](https://docs.cnap.tech/api-reference/organizations/list-organization-members.md) - [Add organization member](https://docs.cnap.tech/api-reference/organizations/add-organization-member.md) - [Remove organization member](https://docs.cnap.tech/api-reference/organizations/remove-organization-member.md) - [Update member role](https://docs.cnap.tech/api-reference/organizations/update-member-role.md) - [List managed workspaces](https://docs.cnap.tech/api-reference/organizations/list-managed-workspaces.md): Lists workspaces managed by this organization (via managedBy). - [CLI](https://docs.cnap.tech/cli.md): Manage CNAP resources from your terminal - [Workspaces](https://docs.cnap.tech/cli/workspaces.md): Switch and list workspaces - [Clusters](https://docs.cnap.tech/cli/clusters.md): Manage clusters and download kubeconfigs - [Templates](https://docs.cnap.tech/cli/templates.md): List, inspect, and delete templates - [Products](https://docs.cnap.tech/cli/products.md): List, inspect, and delete products - [Installs](https://docs.cnap.tech/cli/installs.md): Deploy, manage, and interact with installs - [Regions](https://docs.cnap.tech/cli/regions.md): List and create regions - [Registry](https://docs.cnap.tech/cli/registry.md): Manage registry credentials - [AI & Agents](https://docs.cnap.tech/ai/index.md): Connect AI assistants and agents to CNAP through MCP servers, contextual features, and llms.txt - [Documentation MCP](https://docs.cnap.tech/ai/docs-mcp.md): Search and query CNAP documentation in real-time from any MCP-compatible AI tool - [Platform MCP](https://docs.cnap.tech/ai/platform-mcp.md): Connect AI agents to the CNAP API via the Model Context Protocol - [Code Mode in Action](https://docs.cnap.tech/ai/code-mode-in-action.md): See how agents compose complex multi-step operations in a single tool call - [Kubernetes Access](https://docs.cnap.tech/ai/kubernetes-access.md): Give AI agents direct access to cluster resources through the Kubernetes API proxy and command execution - [Parallel Log Analysis](https://docs.cnap.tech/ai/examples/parallel-log-analysis.md): 35,000 log lines across 11 containers in 506ms — one tool call - [Resource Audit](https://docs.cnap.tech/ai/examples/resource-audit.md): Cluster-wide CPU/memory capacity report in 56ms from a single API call - [Security Audit](https://docs.cnap.tech/ai/examples/security-audit.md): 9 security checks across 7 parallel API calls — full cluster security posture in one tool call - [Incident Debugging](https://docs.cnap.tech/ai/examples/incident-debugging.md): Full SRE triage in one conversation — pod status, events, error logs, and rollout history - [Database Operations](https://docs.cnap.tech/ai/examples/database-operations.md): Run SQL queries, check Redis memory, and inspect databases — all through exec - [Cross-Cluster Comparison](https://docs.cnap.tech/ai/examples/cross-cluster-comparison.md): Compare Kubernetes versions, images, and configurations across multiple clusters in one call - [CRD Discovery](https://docs.cnap.tech/ai/examples/crd-discovery.md): Discover and interact with custom Kubernetes resources the agent has never seen before - [Full-Stack Dashboard in Minutes](https://docs.cnap.tech/ai/examples/dashboard-in-minutes.md): One conversation → a live dashboard with database sizes, cache stats, app errors, and cluster health ## OpenAPI Specs - [openapi](https://docs.cnap.tech/openapi.json)