coolipy.enums

Enums mirroring the string-constrained fields of the Coolify API.

Every member's ~enum.Enum.value is the exact wire value the API expects or returns, so serialize enums via .value (pydantic does this automatically when models are dumped with mode="json").

  1"""Enums mirroring the string-constrained fields of the Coolify API.
  2
  3Every member's :attr:`~enum.Enum.value` is the exact wire value the API expects
  4or returns, so serialize enums via ``.value`` (pydantic does this automatically
  5when models are dumped with ``mode="json"``).
  6"""
  7
  8from __future__ import annotations
  9
 10from enum import Enum
 11
 12
 13class BuildPack(str, Enum):
 14    """Build pack used to build an application."""
 15
 16    NIXPACKS = "nixpacks"
 17    RAILPACK = "railpack"
 18    STATIC = "static"
 19    DOCKERFILE = "dockerfile"
 20    DOCKERCOMPOSE = "dockercompose"
 21
 22
 23class Redirect(str, Enum):
 24    """Domain redirect mode."""
 25
 26    WWW = "www"
 27    NON_WWW = "non-www"
 28    BOTH = "both"
 29
 30
 31class ProxyType(str, Enum):
 32    """Reverse proxy used by a server."""
 33
 34    TRAEFIK = "traefik"
 35    CADDY = "caddy"
 36    NONE = "none"
 37
 38
 39class DestinationType(str, Enum):
 40    """Network type of a destination."""
 41
 42    STANDALONE = "standalone"
 43    SWARM = "swarm"
 44
 45
 46class ServiceType(str, Enum):
 47    """Known Coolify service types."""
 48
 49    ACTIVEPIECES = "activepieces"
 50    APPSMITH = "appsmith"
 51    APPWRITE = "appwrite"
 52    AUTHENTIK = "authentik"
 53    BABYBUDDY = "babybuddy"
 54    BUDGE = "budge"
 55    CHANGEDETECTION = "changedetection"
 56    CHATWOOT = "chatwoot"
 57    CLASSICPRESS_WITH_MARIADB = "classicpress-with-mariadb"
 58    CLASSICPRESS_WITH_MYSQL = "classicpress-with-mysql"
 59    CLASSICPRESS_WITHOUT_DATABASE = "classicpress-without-database"
 60    CLOUDFLARED = "cloudflared"
 61    CODE_SERVER = "code-server"
 62    DASHBOARD = "dashboard"
 63    DIRECTUS = "directus"
 64    DIRECTUS_WITH_POSTGRESQL = "directus-with-postgresql"
 65    DOCKER_REGISTRY = "docker-registry"
 66    DOCUSEAL = "docuseal"
 67    DOCUSEAL_WITH_POSTGRES = "docuseal-with-postgres"
 68    DOKUWIKI = "dokuwiki"
 69    DUPLICATI = "duplicati"
 70    EMBY = "emby"
 71    EMBYSTAT = "embystat"
 72    FIDER = "fider"
 73    FILEBROWSER = "filebrowser"
 74    FIREFLY = "firefly"
 75    FORMBRICKS = "formbricks"
 76    GHOST = "ghost"
 77    GITEA = "gitea"
 78    GITEA_WITH_MARIADB = "gitea-with-mariadb"
 79    GITEA_WITH_MYSQL = "gitea-with-mysql"
 80    GITEA_WITH_POSTGRESQL = "gitea-with-postgresql"
 81    GLANCE = "glance"
 82    GLANCES = "glances"
 83    GLITCHTIP = "glitchtip"
 84    GRAFANA = "grafana"
 85    GRAFANA_WITH_POSTGRESQL = "grafana-with-postgresql"
 86    GROCY = "grocy"
 87    HEIMDALL = "heimdall"
 88    HOMEPAGE = "homepage"
 89    JELLYFIN = "jellyfin"
 90    JENKINS = "jenkins"
 91    KUZZLE = "kuzzle"
 92    LISTMONK = "listmonk"
 93    LOGTO = "logto"
 94    MEDIAWIKI = "mediawiki"
 95    MEILISEARCH = "meilisearch"
 96    METABASE = "metabase"
 97    METUBE = "metube"
 98    MINIO = "minio"
 99    MOODLE = "moodle"
100    MOSQUITTO = "mosquitto"
101    N8N = "n8n"
102    N8N_WITH_POSTGRESQL = "n8n-with-postgresql"
103    NEXT_IMAGE_TRANSFORMATION = "next-image-transformation"
104    NEXTCLOUD = "nextcloud"
105    NOCODB = "nocodb"
106    ODOO = "odoo"
107    OPENBLOCKS = "openblocks"
108    PAIRDROP = "pairdrop"
109    PENPOT = "penpot"
110    PHPMYADMIN = "phpmyadmin"
111    POCKETBASE = "pocketbase"
112    POSTHOG = "posthog"
113    REACTIVE_RESUME = "reactive-resume"
114    ROCKETCHAT = "rocketchat"
115    SHLINK = "shlink"
116    SLASH = "slash"
117    SNAPDROP = "snapdrop"
118    STATUSNOOK = "statusnook"
119    STIRLING_PDF = "stirling-pdf"
120    SUPABASE = "supabase"
121    SYNCTHING = "syncthing"
122    TOLGEE = "tolgee"
123    TRIGGER = "trigger"
124    TRIGGER_WITH_EXTERNAL_DATABASE = "trigger-with-external-database"
125    TWENTY = "twenty"
126    UMAMI = "umami"
127    UNLEASH_WITH_POSTGRESQL = "unleash-with-postgresql"
128    UNLEASH_WITHOUT_DATABASE = "unleash-without-database"
129    UPTIME_KUMA = "uptime-kuma"
130    VAULTWARDEN = "vaultwarden"
131    VIKUNJA = "vikunja"
132    WEBLATE = "weblate"
133    WHOOGLE = "whoogle"
134    WORDPRESS_WITH_MARIADB = "wordpress-with-mariadb"
135    WORDPRESS_WITH_MYSQL = "wordpress-with-mysql"
136    WORDPRESS_WITHOUT_DATABASE = "wordpress-without-database"
class BuildPack(builtins.str, enum.Enum):
14class BuildPack(str, Enum):
15    """Build pack used to build an application."""
16
17    NIXPACKS = "nixpacks"
18    RAILPACK = "railpack"
19    STATIC = "static"
20    DOCKERFILE = "dockerfile"
21    DOCKERCOMPOSE = "dockercompose"

Build pack used to build an application.

NIXPACKS = <BuildPack.NIXPACKS: 'nixpacks'>
RAILPACK = <BuildPack.RAILPACK: 'railpack'>
STATIC = <BuildPack.STATIC: 'static'>
DOCKERFILE = <BuildPack.DOCKERFILE: 'dockerfile'>
DOCKERCOMPOSE = <BuildPack.DOCKERCOMPOSE: 'dockercompose'>
class Redirect(builtins.str, enum.Enum):
24class Redirect(str, Enum):
25    """Domain redirect mode."""
26
27    WWW = "www"
28    NON_WWW = "non-www"
29    BOTH = "both"

Domain redirect mode.

WWW = <Redirect.WWW: 'www'>
NON_WWW = <Redirect.NON_WWW: 'non-www'>
BOTH = <Redirect.BOTH: 'both'>
class ProxyType(builtins.str, enum.Enum):
32class ProxyType(str, Enum):
33    """Reverse proxy used by a server."""
34
35    TRAEFIK = "traefik"
36    CADDY = "caddy"
37    NONE = "none"

Reverse proxy used by a server.

TRAEFIK = <ProxyType.TRAEFIK: 'traefik'>
CADDY = <ProxyType.CADDY: 'caddy'>
NONE = <ProxyType.NONE: 'none'>
class DestinationType(builtins.str, enum.Enum):
40class DestinationType(str, Enum):
41    """Network type of a destination."""
42
43    STANDALONE = "standalone"
44    SWARM = "swarm"

Network type of a destination.

STANDALONE = <DestinationType.STANDALONE: 'standalone'>
SWARM = <DestinationType.SWARM: 'swarm'>
class ServiceType(builtins.str, enum.Enum):
 47class ServiceType(str, Enum):
 48    """Known Coolify service types."""
 49
 50    ACTIVEPIECES = "activepieces"
 51    APPSMITH = "appsmith"
 52    APPWRITE = "appwrite"
 53    AUTHENTIK = "authentik"
 54    BABYBUDDY = "babybuddy"
 55    BUDGE = "budge"
 56    CHANGEDETECTION = "changedetection"
 57    CHATWOOT = "chatwoot"
 58    CLASSICPRESS_WITH_MARIADB = "classicpress-with-mariadb"
 59    CLASSICPRESS_WITH_MYSQL = "classicpress-with-mysql"
 60    CLASSICPRESS_WITHOUT_DATABASE = "classicpress-without-database"
 61    CLOUDFLARED = "cloudflared"
 62    CODE_SERVER = "code-server"
 63    DASHBOARD = "dashboard"
 64    DIRECTUS = "directus"
 65    DIRECTUS_WITH_POSTGRESQL = "directus-with-postgresql"
 66    DOCKER_REGISTRY = "docker-registry"
 67    DOCUSEAL = "docuseal"
 68    DOCUSEAL_WITH_POSTGRES = "docuseal-with-postgres"
 69    DOKUWIKI = "dokuwiki"
 70    DUPLICATI = "duplicati"
 71    EMBY = "emby"
 72    EMBYSTAT = "embystat"
 73    FIDER = "fider"
 74    FILEBROWSER = "filebrowser"
 75    FIREFLY = "firefly"
 76    FORMBRICKS = "formbricks"
 77    GHOST = "ghost"
 78    GITEA = "gitea"
 79    GITEA_WITH_MARIADB = "gitea-with-mariadb"
 80    GITEA_WITH_MYSQL = "gitea-with-mysql"
 81    GITEA_WITH_POSTGRESQL = "gitea-with-postgresql"
 82    GLANCE = "glance"
 83    GLANCES = "glances"
 84    GLITCHTIP = "glitchtip"
 85    GRAFANA = "grafana"
 86    GRAFANA_WITH_POSTGRESQL = "grafana-with-postgresql"
 87    GROCY = "grocy"
 88    HEIMDALL = "heimdall"
 89    HOMEPAGE = "homepage"
 90    JELLYFIN = "jellyfin"
 91    JENKINS = "jenkins"
 92    KUZZLE = "kuzzle"
 93    LISTMONK = "listmonk"
 94    LOGTO = "logto"
 95    MEDIAWIKI = "mediawiki"
 96    MEILISEARCH = "meilisearch"
 97    METABASE = "metabase"
 98    METUBE = "metube"
 99    MINIO = "minio"
100    MOODLE = "moodle"
101    MOSQUITTO = "mosquitto"
102    N8N = "n8n"
103    N8N_WITH_POSTGRESQL = "n8n-with-postgresql"
104    NEXT_IMAGE_TRANSFORMATION = "next-image-transformation"
105    NEXTCLOUD = "nextcloud"
106    NOCODB = "nocodb"
107    ODOO = "odoo"
108    OPENBLOCKS = "openblocks"
109    PAIRDROP = "pairdrop"
110    PENPOT = "penpot"
111    PHPMYADMIN = "phpmyadmin"
112    POCKETBASE = "pocketbase"
113    POSTHOG = "posthog"
114    REACTIVE_RESUME = "reactive-resume"
115    ROCKETCHAT = "rocketchat"
116    SHLINK = "shlink"
117    SLASH = "slash"
118    SNAPDROP = "snapdrop"
119    STATUSNOOK = "statusnook"
120    STIRLING_PDF = "stirling-pdf"
121    SUPABASE = "supabase"
122    SYNCTHING = "syncthing"
123    TOLGEE = "tolgee"
124    TRIGGER = "trigger"
125    TRIGGER_WITH_EXTERNAL_DATABASE = "trigger-with-external-database"
126    TWENTY = "twenty"
127    UMAMI = "umami"
128    UNLEASH_WITH_POSTGRESQL = "unleash-with-postgresql"
129    UNLEASH_WITHOUT_DATABASE = "unleash-without-database"
130    UPTIME_KUMA = "uptime-kuma"
131    VAULTWARDEN = "vaultwarden"
132    VIKUNJA = "vikunja"
133    WEBLATE = "weblate"
134    WHOOGLE = "whoogle"
135    WORDPRESS_WITH_MARIADB = "wordpress-with-mariadb"
136    WORDPRESS_WITH_MYSQL = "wordpress-with-mysql"
137    WORDPRESS_WITHOUT_DATABASE = "wordpress-without-database"

Known Coolify service types.

ACTIVEPIECES = <ServiceType.ACTIVEPIECES: 'activepieces'>
APPSMITH = <ServiceType.APPSMITH: 'appsmith'>
APPWRITE = <ServiceType.APPWRITE: 'appwrite'>
AUTHENTIK = <ServiceType.AUTHENTIK: 'authentik'>
BABYBUDDY = <ServiceType.BABYBUDDY: 'babybuddy'>
BUDGE = <ServiceType.BUDGE: 'budge'>
CHANGEDETECTION = <ServiceType.CHANGEDETECTION: 'changedetection'>
CHATWOOT = <ServiceType.CHATWOOT: 'chatwoot'>
CLASSICPRESS_WITH_MARIADB = <ServiceType.CLASSICPRESS_WITH_MARIADB: 'classicpress-with-mariadb'>
CLASSICPRESS_WITH_MYSQL = <ServiceType.CLASSICPRESS_WITH_MYSQL: 'classicpress-with-mysql'>
CLASSICPRESS_WITHOUT_DATABASE = <ServiceType.CLASSICPRESS_WITHOUT_DATABASE: 'classicpress-without-database'>
CLOUDFLARED = <ServiceType.CLOUDFLARED: 'cloudflared'>
CODE_SERVER = <ServiceType.CODE_SERVER: 'code-server'>
DASHBOARD = <ServiceType.DASHBOARD: 'dashboard'>
DIRECTUS = <ServiceType.DIRECTUS: 'directus'>
DIRECTUS_WITH_POSTGRESQL = <ServiceType.DIRECTUS_WITH_POSTGRESQL: 'directus-with-postgresql'>
DOCKER_REGISTRY = <ServiceType.DOCKER_REGISTRY: 'docker-registry'>
DOCUSEAL = <ServiceType.DOCUSEAL: 'docuseal'>
DOCUSEAL_WITH_POSTGRES = <ServiceType.DOCUSEAL_WITH_POSTGRES: 'docuseal-with-postgres'>
DOKUWIKI = <ServiceType.DOKUWIKI: 'dokuwiki'>
DUPLICATI = <ServiceType.DUPLICATI: 'duplicati'>
EMBY = <ServiceType.EMBY: 'emby'>
EMBYSTAT = <ServiceType.EMBYSTAT: 'embystat'>
FIDER = <ServiceType.FIDER: 'fider'>
FILEBROWSER = <ServiceType.FILEBROWSER: 'filebrowser'>
FIREFLY = <ServiceType.FIREFLY: 'firefly'>
FORMBRICKS = <ServiceType.FORMBRICKS: 'formbricks'>
GHOST = <ServiceType.GHOST: 'ghost'>
GITEA = <ServiceType.GITEA: 'gitea'>
GITEA_WITH_MARIADB = <ServiceType.GITEA_WITH_MARIADB: 'gitea-with-mariadb'>
GITEA_WITH_MYSQL = <ServiceType.GITEA_WITH_MYSQL: 'gitea-with-mysql'>
GITEA_WITH_POSTGRESQL = <ServiceType.GITEA_WITH_POSTGRESQL: 'gitea-with-postgresql'>
GLANCE = <ServiceType.GLANCE: 'glance'>
GLANCES = <ServiceType.GLANCES: 'glances'>
GLITCHTIP = <ServiceType.GLITCHTIP: 'glitchtip'>
GRAFANA = <ServiceType.GRAFANA: 'grafana'>
GRAFANA_WITH_POSTGRESQL = <ServiceType.GRAFANA_WITH_POSTGRESQL: 'grafana-with-postgresql'>
GROCY = <ServiceType.GROCY: 'grocy'>
HEIMDALL = <ServiceType.HEIMDALL: 'heimdall'>
HOMEPAGE = <ServiceType.HOMEPAGE: 'homepage'>
JELLYFIN = <ServiceType.JELLYFIN: 'jellyfin'>
JENKINS = <ServiceType.JENKINS: 'jenkins'>
KUZZLE = <ServiceType.KUZZLE: 'kuzzle'>
LISTMONK = <ServiceType.LISTMONK: 'listmonk'>
LOGTO = <ServiceType.LOGTO: 'logto'>
MEDIAWIKI = <ServiceType.MEDIAWIKI: 'mediawiki'>
MEILISEARCH = <ServiceType.MEILISEARCH: 'meilisearch'>
METABASE = <ServiceType.METABASE: 'metabase'>
METUBE = <ServiceType.METUBE: 'metube'>
MINIO = <ServiceType.MINIO: 'minio'>
MOODLE = <ServiceType.MOODLE: 'moodle'>
MOSQUITTO = <ServiceType.MOSQUITTO: 'mosquitto'>
N8N = <ServiceType.N8N: 'n8n'>
N8N_WITH_POSTGRESQL = <ServiceType.N8N_WITH_POSTGRESQL: 'n8n-with-postgresql'>
NEXT_IMAGE_TRANSFORMATION = <ServiceType.NEXT_IMAGE_TRANSFORMATION: 'next-image-transformation'>
NEXTCLOUD = <ServiceType.NEXTCLOUD: 'nextcloud'>
NOCODB = <ServiceType.NOCODB: 'nocodb'>
ODOO = <ServiceType.ODOO: 'odoo'>
OPENBLOCKS = <ServiceType.OPENBLOCKS: 'openblocks'>
PAIRDROP = <ServiceType.PAIRDROP: 'pairdrop'>
PENPOT = <ServiceType.PENPOT: 'penpot'>
PHPMYADMIN = <ServiceType.PHPMYADMIN: 'phpmyadmin'>
POCKETBASE = <ServiceType.POCKETBASE: 'pocketbase'>
POSTHOG = <ServiceType.POSTHOG: 'posthog'>
REACTIVE_RESUME = <ServiceType.REACTIVE_RESUME: 'reactive-resume'>
ROCKETCHAT = <ServiceType.ROCKETCHAT: 'rocketchat'>
SLASH = <ServiceType.SLASH: 'slash'>
SNAPDROP = <ServiceType.SNAPDROP: 'snapdrop'>
STATUSNOOK = <ServiceType.STATUSNOOK: 'statusnook'>
STIRLING_PDF = <ServiceType.STIRLING_PDF: 'stirling-pdf'>
SUPABASE = <ServiceType.SUPABASE: 'supabase'>
SYNCTHING = <ServiceType.SYNCTHING: 'syncthing'>
TOLGEE = <ServiceType.TOLGEE: 'tolgee'>
TRIGGER = <ServiceType.TRIGGER: 'trigger'>
TRIGGER_WITH_EXTERNAL_DATABASE = <ServiceType.TRIGGER_WITH_EXTERNAL_DATABASE: 'trigger-with-external-database'>
TWENTY = <ServiceType.TWENTY: 'twenty'>
UMAMI = <ServiceType.UMAMI: 'umami'>
UNLEASH_WITH_POSTGRESQL = <ServiceType.UNLEASH_WITH_POSTGRESQL: 'unleash-with-postgresql'>
UNLEASH_WITHOUT_DATABASE = <ServiceType.UNLEASH_WITHOUT_DATABASE: 'unleash-without-database'>
UPTIME_KUMA = <ServiceType.UPTIME_KUMA: 'uptime-kuma'>
VAULTWARDEN = <ServiceType.VAULTWARDEN: 'vaultwarden'>
VIKUNJA = <ServiceType.VIKUNJA: 'vikunja'>
WEBLATE = <ServiceType.WEBLATE: 'weblate'>
WHOOGLE = <ServiceType.WHOOGLE: 'whoogle'>
WORDPRESS_WITH_MARIADB = <ServiceType.WORDPRESS_WITH_MARIADB: 'wordpress-with-mariadb'>
WORDPRESS_WITH_MYSQL = <ServiceType.WORDPRESS_WITH_MYSQL: 'wordpress-with-mysql'>
WORDPRESS_WITHOUT_DATABASE = <ServiceType.WORDPRESS_WITHOUT_DATABASE: 'wordpress-without-database'>