{
  "name": "koyeb",
  "displayName": "Koyeb",
  "version": "0.1.11",
  "description": "A Pulumi package for creating and managing koyeb cloud resources.",
  "keywords": [
    "koyeb",
    "category/cloud"
  ],
  "homepage": "https://www.koyeb.com",
  "license": "Apache-2.0",
  "attribution": "This Pulumi package is based on the [`koyeb` Terraform Provider](https://github.com/koyeb/terraform-provider-koyeb).",
  "repository": "https://github.com/koyeb/pulumi-koyeb",
  "publisher": "Koyeb",
  "meta": {
    "moduleFormat": "(.*)(?:/[^/]*)"
  },
  "language": {
    "csharp": {
      "packageReferences": {
        "Pulumi": "3.*"
      },
      "compatibility": "tfbridge20",
      "respectSchemaVersion": true
    },
    "go": {
      "importBasePath": "github.com/koyeb/pulumi-koyeb/sdk/go/koyeb",
      "generateResourceContainerTypes": true,
      "generateExtraInputTypes": true,
      "respectSchemaVersion": true
    },
    "nodejs": {
      "packageName": "@koyeb/pulumi-koyeb",
      "packageDescription": "A Pulumi package for creating and managing koyeb cloud resources.",
      "readme": "> This provider is a derived work of the [Terraform Provider](https://github.com/koyeb/terraform-provider-koyeb)\n> distributed under [MPL 2.0](https://www.mozilla.org/en-US/MPL/2.0/). If you encounter a bug or missing feature,\n> first check the [`pulumi-koyeb` repo](https://github.com/koyeb/pulumi-koyeb/issues); however, if that doesn't turn up anything,\n> please consult the source [`terraform-provider-koyeb` repo](https://github.com/koyeb/terraform-provider-koyeb/issues).",
      "compatibility": "tfbridge20",
      "disableUnionOutputTypes": true,
      "respectSchemaVersion": true
    },
    "python": {
      "readme": "> This provider is a derived work of the [Terraform Provider](https://github.com/koyeb/terraform-provider-koyeb)\n> distributed under [MPL 2.0](https://www.mozilla.org/en-US/MPL/2.0/). If you encounter a bug or missing feature,\n> first check the [`pulumi-koyeb` repo](https://github.com/koyeb/pulumi-koyeb/issues); however, if that doesn't turn up anything,\n> please consult the source [`terraform-provider-koyeb` repo](https://github.com/koyeb/terraform-provider-koyeb/issues).",
      "compatibility": "tfbridge20",
      "respectSchemaVersion": true,
      "pyproject": {
        "enabled": true
      }
    }
  },
  "config": {},
  "types": {
    "koyeb:index/AppDomain:AppDomain": {
      "properties": {
        "appName": {
          "type": "string",
          "description": "The app name the domain is assigned to\n"
        },
        "createdAt": {
          "type": "string",
          "description": "The date and time of when the domain was created\n"
        },
        "deploymentGroup": {
          "type": "string",
          "description": "The deployment group assigned to the domain\n"
        },
        "id": {
          "type": "string",
          "description": "The domain ID\n"
        },
        "intendedCname": {
          "type": "string",
          "description": "The CNAME record to point the domain to\n"
        },
        "messages": {
          "type": "string",
          "description": "The status messages of the domain\n"
        },
        "name": {
          "type": "string",
          "description": "The domain name\n",
          "willReplaceOnChanges": true
        },
        "organizationId": {
          "type": "string",
          "description": "The organization ID owning the domain\n"
        },
        "status": {
          "type": "string",
          "description": "The status of the domain\n"
        },
        "type": {
          "type": "string",
          "description": "The domain type\n"
        },
        "updatedAt": {
          "type": "string",
          "description": "The date and time of when the domain was last updated\n"
        },
        "verifiedAt": {
          "type": "string",
          "description": "The date and time of when the domain was last verified\n"
        },
        "version": {
          "type": "string",
          "description": "The version of the domain\n"
        }
      },
      "type": "object",
      "required": [
        "name"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "createdAt",
            "deploymentGroup",
            "id",
            "intendedCname",
            "messages",
            "name",
            "organizationId",
            "status",
            "type",
            "updatedAt",
            "verifiedAt",
            "version"
          ]
        }
      }
    },
    "koyeb:index/SecretAzureContainerRegistry:SecretAzureContainerRegistry": {
      "properties": {
        "password": {
          "type": "string",
          "description": "The registry password\n",
          "secret": true
        },
        "registryName": {
          "type": "string",
          "description": "The registry name\n"
        },
        "username": {
          "type": "string",
          "description": "The registry username\n"
        }
      },
      "type": "object",
      "required": [
        "password",
        "registryName",
        "username"
      ]
    },
    "koyeb:index/SecretDigitalOceanContainerRegistry:SecretDigitalOceanContainerRegistry": {
      "properties": {
        "password": {
          "type": "string",
          "description": "The registry password\n",
          "secret": true
        },
        "username": {
          "type": "string",
          "description": "The registry username\n"
        }
      },
      "type": "object",
      "required": [
        "password",
        "username"
      ]
    },
    "koyeb:index/SecretDockerHubRegistry:SecretDockerHubRegistry": {
      "properties": {
        "password": {
          "type": "string",
          "description": "The registry password\n",
          "secret": true
        },
        "username": {
          "type": "string",
          "description": "The registry username\n"
        }
      },
      "type": "object",
      "required": [
        "password",
        "username"
      ]
    },
    "koyeb:index/SecretGithubRegistry:SecretGithubRegistry": {
      "properties": {
        "password": {
          "type": "string",
          "description": "The registry password\n",
          "secret": true
        },
        "username": {
          "type": "string",
          "description": "The registry username\n"
        }
      },
      "type": "object",
      "required": [
        "password",
        "username"
      ]
    },
    "koyeb:index/SecretGitlabRegistry:SecretGitlabRegistry": {
      "properties": {
        "password": {
          "type": "string",
          "description": "The registry password\n",
          "secret": true
        },
        "username": {
          "type": "string",
          "description": "The registry username\n"
        }
      },
      "type": "object",
      "required": [
        "password",
        "username"
      ]
    },
    "koyeb:index/SecretPrivateRegistry:SecretPrivateRegistry": {
      "properties": {
        "password": {
          "type": "string",
          "description": "The registry password\n",
          "secret": true
        },
        "url": {
          "type": "string",
          "description": "The registry URL\n"
        },
        "username": {
          "type": "string",
          "description": "The registry username\n"
        }
      },
      "type": "object",
      "required": [
        "password",
        "url",
        "username"
      ]
    },
    "koyeb:index/ServiceDefinition:ServiceDefinition": {
      "properties": {
        "docker": {
          "$ref": "#/types/koyeb:index%2FServiceDefinitionDocker:ServiceDefinitionDocker"
        },
        "envs": {
          "type": "array",
          "items": {
            "$ref": "#/types/koyeb:index%2FServiceDefinitionEnv:ServiceDefinitionEnv"
          }
        },
        "git": {
          "$ref": "#/types/koyeb:index%2FServiceDefinitionGit:ServiceDefinitionGit"
        },
        "healthChecks": {
          "type": "array",
          "items": {
            "$ref": "#/types/koyeb:index%2FServiceDefinitionHealthCheck:ServiceDefinitionHealthCheck"
          }
        },
        "instanceTypes": {
          "type": "array",
          "items": {
            "$ref": "#/types/koyeb:index%2FServiceDefinitionInstanceType:ServiceDefinitionInstanceType"
          }
        },
        "name": {
          "type": "string",
          "description": "The service name\n",
          "willReplaceOnChanges": true
        },
        "ports": {
          "type": "array",
          "items": {
            "$ref": "#/types/koyeb:index%2FServiceDefinitionPort:ServiceDefinitionPort"
          }
        },
        "regions": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "The service deployment regions to deploy to\n"
        },
        "routes": {
          "type": "array",
          "items": {
            "$ref": "#/types/koyeb:index%2FServiceDefinitionRoute:ServiceDefinitionRoute"
          }
        },
        "scalings": {
          "type": "array",
          "items": {
            "$ref": "#/types/koyeb:index%2FServiceDefinitionScaling:ServiceDefinitionScaling"
          }
        },
        "skipCache": {
          "type": "boolean",
          "description": "If set to true, the service will be deployed without using the cache\n"
        },
        "type": {
          "type": "string",
          "description": "The service type, either WEB or WORKER (default WEB)\n"
        },
        "volumes": {
          "type": "array",
          "items": {
            "$ref": "#/types/koyeb:index%2FServiceDefinitionVolume:ServiceDefinitionVolume"
          },
          "description": "The volumes to attach and mount to the service\n"
        }
      },
      "type": "object",
      "required": [
        "instanceTypes",
        "name",
        "regions",
        "scalings"
      ]
    },
    "koyeb:index/ServiceDefinitionDocker:ServiceDefinitionDocker": {
      "properties": {
        "args": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "The Docker args to use\n"
        },
        "command": {
          "type": "string",
          "description": "The Docker command to use\n"
        },
        "entrypoints": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "The Docker entrypoint to use\n"
        },
        "image": {
          "type": "string",
          "description": "The Docker image to use to support your service\n"
        },
        "imageRegistrySecret": {
          "type": "string",
          "description": "The Koyeb secret containing the container registry credentials\n"
        },
        "privileged": {
          "type": "boolean",
          "description": "When enabled, the service container will run in privileged mode. This advanced feature is useful to get advanced system privileges.\n"
        }
      },
      "type": "object",
      "required": [
        "image"
      ]
    },
    "koyeb:index/ServiceDefinitionEnv:ServiceDefinitionEnv": {
      "properties": {
        "key": {
          "type": "string",
          "description": "The name of the environment variable\n"
        },
        "scopes": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "The regions the environment variable needs to be exposed\n"
        },
        "secret": {
          "type": "string",
          "description": "The secret name to use as the value of the environment variable\n",
          "secret": true
        },
        "value": {
          "type": "string",
          "description": "The value of the environment variable\n"
        }
      },
      "type": "object",
      "required": [
        "key"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "key",
            "scopes"
          ]
        }
      }
    },
    "koyeb:index/ServiceDefinitionGit:ServiceDefinitionGit": {
      "properties": {
        "branch": {
          "type": "string",
          "description": "The GitHub branch to deploy\n"
        },
        "buildpack": {
          "$ref": "#/types/koyeb:index%2FServiceDefinitionGitBuildpack:ServiceDefinitionGitBuildpack"
        },
        "dockerfile": {
          "$ref": "#/types/koyeb:index%2FServiceDefinitionGitDockerfile:ServiceDefinitionGitDockerfile"
        },
        "noDeployOnPush": {
          "type": "boolean",
          "description": "If set to true, no Koyeb deployments will be triggered when changes are pushed to the GitHub repository branch\n"
        },
        "repository": {
          "type": "string",
          "description": "The GitHub repository to deploy\n"
        },
        "workdir": {
          "type": "string",
          "description": "The directory where your source code is located. If not set, the work directory defaults to the root of the repository.\n"
        }
      },
      "type": "object",
      "required": [
        "branch",
        "repository"
      ]
    },
    "koyeb:index/ServiceDefinitionGitBuildpack:ServiceDefinitionGitBuildpack": {
      "properties": {
        "buildCommand": {
          "type": "string",
          "description": "The command to build your application during the build phase. If your application does not require a build command, leave this field empty\n"
        },
        "privileged": {
          "type": "boolean",
          "description": "When enabled, the service container will run in privileged mode. This advanced feature is useful to get advanced system privileges.\n"
        },
        "runCommand": {
          "type": "string",
          "description": "The command to run your application once the built is completed\n"
        }
      },
      "type": "object"
    },
    "koyeb:index/ServiceDefinitionGitDockerfile:ServiceDefinitionGitDockerfile": {
      "properties": {
        "args": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "The arguments to pass to the Docker command\n"
        },
        "command": {
          "type": "string",
          "description": "Override the command to execute on the container\n"
        },
        "dockerfile": {
          "type": "string",
          "description": "The location of your Dockerfile relative to the work directory. If not set, the work directory defaults to the root of the repository.\n"
        },
        "entrypoints": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Override the default entrypoint to execute on the container\n"
        },
        "privileged": {
          "type": "boolean",
          "description": "When enabled, the service container will run in privileged mode. This advanced feature is useful to get advanced system privileges.\n"
        },
        "target": {
          "type": "string",
          "description": "Target build stage: If your Dockerfile contains multi-stage builds, you can choose the target stage to build and deploy by entering its name\n"
        }
      },
      "type": "object"
    },
    "koyeb:index/ServiceDefinitionHealthCheck:ServiceDefinitionHealthCheck": {
      "properties": {
        "gracePeriod": {
          "type": "integer",
          "description": "The period in seconds to wait for the instance to become healthy, default is 5s\n"
        },
        "http": {
          "$ref": "#/types/koyeb:index%2FServiceDefinitionHealthCheckHttp:ServiceDefinitionHealthCheckHttp"
        },
        "interval": {
          "type": "integer",
          "description": "The period in seconds between two health checks, default is 60s\n"
        },
        "restartLimit": {
          "type": "integer",
          "description": "The number of consecutive failures before attempting to restart the service, default is 3\n"
        },
        "tcp": {
          "$ref": "#/types/koyeb:index%2FServiceDefinitionHealthCheckTcp:ServiceDefinitionHealthCheckTcp"
        },
        "timeout": {
          "type": "integer",
          "description": "The maximum time to wait in seconds before considering the check as a failure, default is 5s\n"
        }
      },
      "type": "object"
    },
    "koyeb:index/ServiceDefinitionHealthCheckHttp:ServiceDefinitionHealthCheckHttp": {
      "properties": {
        "headers": {
          "type": "array",
          "items": {
            "$ref": "#/types/koyeb:index%2FServiceDefinitionHealthCheckHttpHeader:ServiceDefinitionHealthCheckHttpHeader"
          }
        },
        "method": {
          "type": "string",
          "description": "An optional HTTP method to use to perform the health check, default is GET\n"
        },
        "path": {
          "type": "string",
          "description": "The path to use to perform the HTTP health check\n"
        },
        "port": {
          "type": "integer",
          "description": "The port to use to perform the health check\n"
        }
      },
      "type": "object",
      "required": [
        "path",
        "port"
      ]
    },
    "koyeb:index/ServiceDefinitionHealthCheckHttpHeader:ServiceDefinitionHealthCheckHttpHeader": {
      "properties": {
        "key": {
          "type": "string",
          "description": "The name of the header\n"
        },
        "value": {
          "type": "string",
          "description": "The value of the header\n"
        }
      },
      "type": "object",
      "required": [
        "key"
      ]
    },
    "koyeb:index/ServiceDefinitionHealthCheckTcp:ServiceDefinitionHealthCheckTcp": {
      "properties": {
        "port": {
          "type": "integer",
          "description": "The port to use to perform the health check\n"
        }
      },
      "type": "object",
      "required": [
        "port"
      ]
    },
    "koyeb:index/ServiceDefinitionInstanceType:ServiceDefinitionInstanceType": {
      "properties": {
        "scopes": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "The regions to use the instance type\n"
        },
        "type": {
          "type": "string",
          "description": "The instance type to use to support your service\n"
        }
      },
      "type": "object",
      "required": [
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "scopes",
            "type"
          ]
        }
      }
    },
    "koyeb:index/ServiceDefinitionPort:ServiceDefinitionPort": {
      "properties": {
        "port": {
          "type": "integer",
          "description": "The internal port on which this service's run command will listen\n"
        },
        "protocol": {
          "type": "string",
          "description": "The protocol used by your service\n"
        }
      },
      "type": "object",
      "required": [
        "port",
        "protocol"
      ]
    },
    "koyeb:index/ServiceDefinitionRoute:ServiceDefinitionRoute": {
      "properties": {
        "path": {
          "type": "string",
          "description": "Path specifies a route by HTTP path prefix. Paths must start with / and must be unique within the app\n"
        },
        "port": {
          "type": "integer",
          "description": "The internal port on which this service's run command will listen\n"
        }
      },
      "type": "object",
      "required": [
        "path",
        "port"
      ]
    },
    "koyeb:index/ServiceDefinitionScaling:ServiceDefinitionScaling": {
      "properties": {
        "max": {
          "type": "integer",
          "description": "The maximum number of instance to use to support your service\n"
        },
        "min": {
          "type": "integer",
          "description": "The minimal number of instances to use to support your service\n"
        },
        "scopes": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "The regions to apply the scaling configuration\n"
        },
        "targets": {
          "type": "array",
          "items": {
            "$ref": "#/types/koyeb:index%2FServiceDefinitionScalingTarget:ServiceDefinitionScalingTarget"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "scopes"
          ]
        }
      }
    },
    "koyeb:index/ServiceDefinitionScalingTarget:ServiceDefinitionScalingTarget": {
      "properties": {
        "averageCpus": {
          "type": "array",
          "items": {
            "$ref": "#/types/koyeb:index%2FServiceDefinitionScalingTargetAverageCpus:ServiceDefinitionScalingTargetAverageCpus"
          },
          "description": "The CPU usage (expressed as a percentage) across all Instances of your Service within a region\n"
        },
        "averageMems": {
          "type": "array",
          "items": {
            "$ref": "#/types/koyeb:index%2FServiceDefinitionScalingTargetAverageMem:ServiceDefinitionScalingTargetAverageMem"
          },
          "description": "The memory usage (expressed as a percentage) across all Instances of your Service within a region\n"
        },
        "concurrentRequests": {
          "type": "array",
          "items": {
            "$ref": "#/types/koyeb:index%2FServiceDefinitionScalingTargetConcurrentRequest:ServiceDefinitionScalingTargetConcurrentRequest"
          },
          "description": "The number of concurrent requests across all Instances of your Service within a region\n"
        },
        "requestResponseTimes": {
          "type": "array",
          "items": {
            "$ref": "#/types/koyeb:index%2FServiceDefinitionScalingTargetRequestResponseTime:ServiceDefinitionScalingTargetRequestResponseTime"
          },
          "description": "The average response time of requests across all Instances of your Service within a region\n"
        },
        "requestsPerSeconds": {
          "type": "array",
          "items": {
            "$ref": "#/types/koyeb:index%2FServiceDefinitionScalingTargetRequestsPerSecond:ServiceDefinitionScalingTargetRequestsPerSecond"
          },
          "description": "The number of concurrent requests per second across all Instances of your Service within a region\n"
        }
      },
      "type": "object"
    },
    "koyeb:index/ServiceDefinitionScalingTargetAverageCpus:ServiceDefinitionScalingTargetAverageCpus": {
      "properties": {
        "value": {
          "type": "integer",
          "description": "The target value of the autoscaling target\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "koyeb:index/ServiceDefinitionScalingTargetAverageMem:ServiceDefinitionScalingTargetAverageMem": {
      "properties": {
        "value": {
          "type": "integer",
          "description": "The target value of the autoscaling target\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "koyeb:index/ServiceDefinitionScalingTargetConcurrentRequest:ServiceDefinitionScalingTargetConcurrentRequest": {
      "properties": {
        "value": {
          "type": "integer",
          "description": "The target value of the autoscaling target\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "koyeb:index/ServiceDefinitionScalingTargetRequestResponseTime:ServiceDefinitionScalingTargetRequestResponseTime": {
      "properties": {
        "value": {
          "type": "integer",
          "description": "The target value of the autoscaling target\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "koyeb:index/ServiceDefinitionScalingTargetRequestsPerSecond:ServiceDefinitionScalingTargetRequestsPerSecond": {
      "properties": {
        "value": {
          "type": "integer",
          "description": "The target value of the autoscaling target\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "koyeb:index/ServiceDefinitionVolume:ServiceDefinitionVolume": {
      "properties": {
        "id": {
          "type": "string",
          "description": "The volume ID to mount to the service\n"
        },
        "path": {
          "type": "string",
          "description": "The path where to mount the volume\n"
        },
        "replicaIndex": {
          "type": "integer",
          "description": "Explicitly specify the replica index to mount the volume to\n"
        },
        "scopes": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "The regions to apply the scaling configuration\n"
        }
      },
      "type": "object",
      "required": [
        "id",
        "path"
      ]
    },
    "koyeb:index/getAppDomain:getAppDomain": {
      "properties": {
        "appName": {
          "type": "string",
          "description": "The app name the domain is assigned to\n"
        },
        "createdAt": {
          "type": "string",
          "description": "The date and time of when the domain was created\n"
        },
        "deploymentGroup": {
          "type": "string",
          "description": "The deployment group assigned to the domain\n"
        },
        "id": {
          "type": "string",
          "description": "The domain ID\n"
        },
        "intendedCname": {
          "type": "string",
          "description": "The CNAME record to point the domain to\n"
        },
        "messages": {
          "type": "string",
          "description": "The status messages of the domain\n"
        },
        "name": {
          "type": "string",
          "description": "The domain name\n"
        },
        "organizationId": {
          "type": "string",
          "description": "The organization ID owning the domain\n"
        },
        "status": {
          "type": "string",
          "description": "The status of the domain\n"
        },
        "type": {
          "type": "string",
          "description": "The domain type\n"
        },
        "updatedAt": {
          "type": "string",
          "description": "The date and time of when the domain was last updated\n"
        },
        "verifiedAt": {
          "type": "string",
          "description": "The date and time of when the domain was last verified\n"
        },
        "version": {
          "type": "string",
          "description": "The version of the domain\n"
        }
      },
      "type": "object",
      "required": [
        "createdAt",
        "deploymentGroup",
        "id",
        "intendedCname",
        "messages",
        "name",
        "organizationId",
        "status",
        "type",
        "updatedAt",
        "verifiedAt",
        "version"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "koyeb:index/getSecretAzureContainerRegistry:getSecretAzureContainerRegistry": {
      "properties": {
        "password": {
          "type": "string",
          "description": "The registry password\n",
          "secret": true
        },
        "registryName": {
          "type": "string",
          "description": "The registry name\n"
        },
        "username": {
          "type": "string",
          "description": "The registry username\n"
        }
      },
      "type": "object",
      "required": [
        "password",
        "registryName",
        "username"
      ]
    },
    "koyeb:index/getSecretDigitalOceanContainerRegistry:getSecretDigitalOceanContainerRegistry": {
      "properties": {
        "password": {
          "type": "string",
          "description": "The registry password\n",
          "secret": true
        },
        "username": {
          "type": "string",
          "description": "The registry username\n"
        }
      },
      "type": "object",
      "required": [
        "password",
        "username"
      ]
    },
    "koyeb:index/getSecretDockerHubRegistry:getSecretDockerHubRegistry": {
      "properties": {
        "password": {
          "type": "string",
          "description": "The registry password\n",
          "secret": true
        },
        "username": {
          "type": "string",
          "description": "The registry username\n"
        }
      },
      "type": "object",
      "required": [
        "password",
        "username"
      ]
    },
    "koyeb:index/getSecretGithubRegistry:getSecretGithubRegistry": {
      "properties": {
        "password": {
          "type": "string",
          "description": "The registry password\n",
          "secret": true
        },
        "username": {
          "type": "string",
          "description": "The registry username\n"
        }
      },
      "type": "object",
      "required": [
        "password",
        "username"
      ]
    },
    "koyeb:index/getSecretGitlabRegistry:getSecretGitlabRegistry": {
      "properties": {
        "password": {
          "type": "string",
          "description": "The registry password\n",
          "secret": true
        },
        "username": {
          "type": "string",
          "description": "The registry username\n"
        }
      },
      "type": "object",
      "required": [
        "password",
        "username"
      ]
    },
    "koyeb:index/getSecretPrivateRegistry:getSecretPrivateRegistry": {
      "properties": {
        "password": {
          "type": "string",
          "description": "The registry password\n",
          "secret": true
        },
        "url": {
          "type": "string",
          "description": "The registry URL\n"
        },
        "username": {
          "type": "string",
          "description": "The registry username\n"
        }
      },
      "type": "object",
      "required": [
        "password",
        "url",
        "username"
      ]
    },
    "koyeb:index/getServiceDefinition:getServiceDefinition": {
      "properties": {
        "docker": {
          "$ref": "#/types/koyeb:index%2FgetServiceDefinitionDocker:getServiceDefinitionDocker"
        },
        "envs": {
          "type": "array",
          "items": {
            "$ref": "#/types/koyeb:index%2FgetServiceDefinitionEnv:getServiceDefinitionEnv"
          }
        },
        "git": {
          "$ref": "#/types/koyeb:index%2FgetServiceDefinitionGit:getServiceDefinitionGit"
        },
        "healthChecks": {
          "type": "array",
          "items": {
            "$ref": "#/types/koyeb:index%2FgetServiceDefinitionHealthCheck:getServiceDefinitionHealthCheck"
          }
        },
        "instanceTypes": {
          "type": "array",
          "items": {
            "$ref": "#/types/koyeb:index%2FgetServiceDefinitionInstanceType:getServiceDefinitionInstanceType"
          }
        },
        "name": {
          "type": "string",
          "description": "The service name\n"
        },
        "ports": {
          "type": "array",
          "items": {
            "$ref": "#/types/koyeb:index%2FgetServiceDefinitionPort:getServiceDefinitionPort"
          }
        },
        "regions": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "The service deployment regions to deploy to\n"
        },
        "routes": {
          "type": "array",
          "items": {
            "$ref": "#/types/koyeb:index%2FgetServiceDefinitionRoute:getServiceDefinitionRoute"
          }
        },
        "scalings": {
          "type": "array",
          "items": {
            "$ref": "#/types/koyeb:index%2FgetServiceDefinitionScaling:getServiceDefinitionScaling"
          }
        },
        "skipCache": {
          "type": "boolean",
          "description": "If set to true, the service will be deployed without using the cache\n"
        },
        "type": {
          "type": "string",
          "description": "The service type, either WEB or WORKER (default WEB)\n"
        },
        "volumes": {
          "type": "array",
          "items": {
            "$ref": "#/types/koyeb:index%2FgetServiceDefinitionVolume:getServiceDefinitionVolume"
          },
          "description": "The volumes to attach and mount to the service\n"
        }
      },
      "type": "object",
      "required": [
        "instanceTypes",
        "name",
        "regions",
        "scalings"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "koyeb:index/getServiceDefinitionDocker:getServiceDefinitionDocker": {
      "properties": {
        "args": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "The Docker args to use\n"
        },
        "command": {
          "type": "string",
          "description": "The Docker command to use\n"
        },
        "entrypoints": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "The Docker entrypoint to use\n"
        },
        "image": {
          "type": "string",
          "description": "The Docker image to use to support your service\n"
        },
        "imageRegistrySecret": {
          "type": "string",
          "description": "The Koyeb secret containing the container registry credentials\n"
        },
        "privileged": {
          "type": "boolean",
          "description": "When enabled, the service container will run in privileged mode. This advanced feature is useful to get advanced system privileges.\n"
        }
      },
      "type": "object",
      "required": [
        "image"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "koyeb:index/getServiceDefinitionEnv:getServiceDefinitionEnv": {
      "properties": {
        "key": {
          "type": "string",
          "description": "The name of the environment variable\n"
        },
        "scopes": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "The regions the environment variable needs to be exposed\n"
        },
        "secret": {
          "type": "string",
          "description": "The secret name to use as the value of the environment variable\n",
          "secret": true
        },
        "value": {
          "type": "string",
          "description": "The value of the environment variable\n"
        }
      },
      "type": "object",
      "required": [
        "key",
        "scopes"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "koyeb:index/getServiceDefinitionGit:getServiceDefinitionGit": {
      "properties": {
        "branch": {
          "type": "string",
          "description": "The GitHub branch to deploy\n"
        },
        "buildpack": {
          "$ref": "#/types/koyeb:index%2FgetServiceDefinitionGitBuildpack:getServiceDefinitionGitBuildpack"
        },
        "dockerfile": {
          "$ref": "#/types/koyeb:index%2FgetServiceDefinitionGitDockerfile:getServiceDefinitionGitDockerfile"
        },
        "noDeployOnPush": {
          "type": "boolean",
          "description": "If set to true, no Koyeb deployments will be triggered when changes are pushed to the GitHub repository branch\n"
        },
        "repository": {
          "type": "string",
          "description": "The GitHub repository to deploy\n"
        },
        "workdir": {
          "type": "string",
          "description": "The directory where your source code is located. If not set, the work directory defaults to the root of the repository.\n"
        }
      },
      "type": "object",
      "required": [
        "branch",
        "repository"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "koyeb:index/getServiceDefinitionGitBuildpack:getServiceDefinitionGitBuildpack": {
      "properties": {
        "buildCommand": {
          "type": "string",
          "description": "The command to build your application during the build phase. If your application does not require a build command, leave this field empty\n"
        },
        "privileged": {
          "type": "boolean",
          "description": "When enabled, the service container will run in privileged mode. This advanced feature is useful to get advanced system privileges.\n"
        },
        "runCommand": {
          "type": "string",
          "description": "The command to run your application once the built is completed\n"
        }
      },
      "type": "object"
    },
    "koyeb:index/getServiceDefinitionGitDockerfile:getServiceDefinitionGitDockerfile": {
      "properties": {
        "args": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "The arguments to pass to the Docker command\n"
        },
        "command": {
          "type": "string",
          "description": "Override the command to execute on the container\n"
        },
        "dockerfile": {
          "type": "string",
          "description": "The location of your Dockerfile relative to the work directory. If not set, the work directory defaults to the root of the repository.\n"
        },
        "entrypoints": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Override the default entrypoint to execute on the container\n"
        },
        "privileged": {
          "type": "boolean",
          "description": "When enabled, the service container will run in privileged mode. This advanced feature is useful to get advanced system privileges.\n"
        },
        "target": {
          "type": "string",
          "description": "Target build stage: If your Dockerfile contains multi-stage builds, you can choose the target stage to build and deploy by entering its name\n"
        }
      },
      "type": "object"
    },
    "koyeb:index/getServiceDefinitionHealthCheck:getServiceDefinitionHealthCheck": {
      "properties": {
        "gracePeriod": {
          "type": "integer",
          "description": "The period in seconds to wait for the instance to become healthy, default is 5s\n"
        },
        "http": {
          "$ref": "#/types/koyeb:index%2FgetServiceDefinitionHealthCheckHttp:getServiceDefinitionHealthCheckHttp"
        },
        "interval": {
          "type": "integer",
          "description": "The period in seconds between two health checks, default is 60s\n"
        },
        "restartLimit": {
          "type": "integer",
          "description": "The number of consecutive failures before attempting to restart the service, default is 3\n"
        },
        "tcp": {
          "$ref": "#/types/koyeb:index%2FgetServiceDefinitionHealthCheckTcp:getServiceDefinitionHealthCheckTcp"
        },
        "timeout": {
          "type": "integer",
          "description": "The maximum time to wait in seconds before considering the check as a failure, default is 5s\n"
        }
      },
      "type": "object"
    },
    "koyeb:index/getServiceDefinitionHealthCheckHttp:getServiceDefinitionHealthCheckHttp": {
      "properties": {
        "headers": {
          "type": "array",
          "items": {
            "$ref": "#/types/koyeb:index%2FgetServiceDefinitionHealthCheckHttpHeader:getServiceDefinitionHealthCheckHttpHeader"
          }
        },
        "method": {
          "type": "string",
          "description": "An optional HTTP method to use to perform the health check, default is GET\n"
        },
        "path": {
          "type": "string",
          "description": "The path to use to perform the HTTP health check\n"
        },
        "port": {
          "type": "integer",
          "description": "The port to use to perform the health check\n"
        }
      },
      "type": "object",
      "required": [
        "path",
        "port"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "koyeb:index/getServiceDefinitionHealthCheckHttpHeader:getServiceDefinitionHealthCheckHttpHeader": {
      "properties": {
        "key": {
          "type": "string",
          "description": "The name of the header\n"
        },
        "value": {
          "type": "string",
          "description": "The value of the header\n"
        }
      },
      "type": "object",
      "required": [
        "key"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "koyeb:index/getServiceDefinitionHealthCheckTcp:getServiceDefinitionHealthCheckTcp": {
      "properties": {
        "port": {
          "type": "integer",
          "description": "The port to use to perform the health check\n"
        }
      },
      "type": "object",
      "required": [
        "port"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "koyeb:index/getServiceDefinitionInstanceType:getServiceDefinitionInstanceType": {
      "properties": {
        "scopes": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "The regions to use the instance type\n"
        },
        "type": {
          "type": "string",
          "description": "The instance type to use to support your service\n"
        }
      },
      "type": "object",
      "required": [
        "scopes",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "koyeb:index/getServiceDefinitionPort:getServiceDefinitionPort": {
      "properties": {
        "port": {
          "type": "integer",
          "description": "The internal port on which this service's run command will listen\n"
        },
        "protocol": {
          "type": "string",
          "description": "The protocol used by your service\n"
        }
      },
      "type": "object",
      "required": [
        "port",
        "protocol"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "koyeb:index/getServiceDefinitionRoute:getServiceDefinitionRoute": {
      "properties": {
        "path": {
          "type": "string",
          "description": "Path specifies a route by HTTP path prefix. Paths must start with / and must be unique within the app\n"
        },
        "port": {
          "type": "integer",
          "description": "The internal port on which this service's run command will listen\n"
        }
      },
      "type": "object",
      "required": [
        "path",
        "port"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "koyeb:index/getServiceDefinitionScaling:getServiceDefinitionScaling": {
      "properties": {
        "max": {
          "type": "integer",
          "description": "The maximum number of instance to use to support your service\n"
        },
        "min": {
          "type": "integer",
          "description": "The minimal number of instances to use to support your service\n"
        },
        "scopes": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "The regions to apply the scaling configuration\n"
        },
        "targets": {
          "type": "array",
          "items": {
            "$ref": "#/types/koyeb:index%2FgetServiceDefinitionScalingTarget:getServiceDefinitionScalingTarget"
          }
        }
      },
      "type": "object",
      "required": [
        "scopes"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "koyeb:index/getServiceDefinitionScalingTarget:getServiceDefinitionScalingTarget": {
      "properties": {
        "averageCpus": {
          "type": "array",
          "items": {
            "$ref": "#/types/koyeb:index%2FgetServiceDefinitionScalingTargetAverageCpus:getServiceDefinitionScalingTargetAverageCpus"
          },
          "description": "The CPU usage (expressed as a percentage) across all Instances of your Service within a region\n"
        },
        "averageMems": {
          "type": "array",
          "items": {
            "$ref": "#/types/koyeb:index%2FgetServiceDefinitionScalingTargetAverageMem:getServiceDefinitionScalingTargetAverageMem"
          },
          "description": "The memory usage (expressed as a percentage) across all Instances of your Service within a region\n"
        },
        "concurrentRequests": {
          "type": "array",
          "items": {
            "$ref": "#/types/koyeb:index%2FgetServiceDefinitionScalingTargetConcurrentRequest:getServiceDefinitionScalingTargetConcurrentRequest"
          },
          "description": "The number of concurrent requests across all Instances of your Service within a region\n"
        },
        "requestResponseTimes": {
          "type": "array",
          "items": {
            "$ref": "#/types/koyeb:index%2FgetServiceDefinitionScalingTargetRequestResponseTime:getServiceDefinitionScalingTargetRequestResponseTime"
          },
          "description": "The average response time of requests across all Instances of your Service within a region\n"
        },
        "requestsPerSeconds": {
          "type": "array",
          "items": {
            "$ref": "#/types/koyeb:index%2FgetServiceDefinitionScalingTargetRequestsPerSecond:getServiceDefinitionScalingTargetRequestsPerSecond"
          },
          "description": "The number of concurrent requests per second across all Instances of your Service within a region\n"
        }
      },
      "type": "object"
    },
    "koyeb:index/getServiceDefinitionScalingTargetAverageCpus:getServiceDefinitionScalingTargetAverageCpus": {
      "properties": {
        "value": {
          "type": "integer",
          "description": "The target value of the autoscaling target\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "koyeb:index/getServiceDefinitionScalingTargetAverageMem:getServiceDefinitionScalingTargetAverageMem": {
      "properties": {
        "value": {
          "type": "integer",
          "description": "The target value of the autoscaling target\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "koyeb:index/getServiceDefinitionScalingTargetConcurrentRequest:getServiceDefinitionScalingTargetConcurrentRequest": {
      "properties": {
        "value": {
          "type": "integer",
          "description": "The target value of the autoscaling target\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "koyeb:index/getServiceDefinitionScalingTargetRequestResponseTime:getServiceDefinitionScalingTargetRequestResponseTime": {
      "properties": {
        "value": {
          "type": "integer",
          "description": "The target value of the autoscaling target\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "koyeb:index/getServiceDefinitionScalingTargetRequestsPerSecond:getServiceDefinitionScalingTargetRequestsPerSecond": {
      "properties": {
        "value": {
          "type": "integer",
          "description": "The target value of the autoscaling target\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "koyeb:index/getServiceDefinitionVolume:getServiceDefinitionVolume": {
      "properties": {
        "id": {
          "type": "string",
          "description": "The volume ID to mount to the service\n"
        },
        "path": {
          "type": "string",
          "description": "The path where to mount the volume\n"
        },
        "replicaIndex": {
          "type": "integer",
          "description": "Explicitly specify the replica index to mount the volume to\n"
        },
        "scopes": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "The regions to apply the scaling configuration\n"
        }
      },
      "type": "object",
      "required": [
        "id",
        "path"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    }
  },
  "provider": {
    "description": "The provider type for the koyeb package. By default, resources use package-wide configuration\nsettings, however an explicit `Provider` instance may be created and passed during resource\nconstruction to achieve fine-grained programmatic control over provider settings. See the\n[documentation](https://www.pulumi.com/docs/reference/programming-model/#providers) for more information.\n",
    "type": "object"
  },
  "resources": {
    "koyeb:index/app:App": {
      "description": "## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as koyeb from \"@koyeb/pulumi-koyeb\";\n\nconst my_app = new koyeb.App(\"my-app\", {name: \"my-app\"});\n```\n```python\nimport pulumi\nimport pulumi_koyeb as koyeb\n\nmy_app = koyeb.App(\"my-app\", name=\"my-app\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Koyeb = Pulumi.Koyeb;\n\nreturn await Deployment.RunAsync(() => \n{\n    var my_app = new Koyeb.App(\"my-app\", new()\n    {\n        Name = \"my-app\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/koyeb/pulumi-koyeb/sdk/go/koyeb\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := koyeb.NewApp(ctx, \"my-app\", &koyeb.AppArgs{\n\t\t\tName: pulumi.String(\"my-app\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.koyeb.App;\nimport com.pulumi.koyeb.AppArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var my_app = new App(\"my-app\", AppArgs.builder()\n            .name(\"my-app\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  my-app:\n    type: koyeb:App\n    properties:\n      name: my-app\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "createdAt": {
          "type": "string",
          "description": "The date and time of when the app was created\n"
        },
        "domains": {
          "type": "array",
          "items": {
            "$ref": "#/types/koyeb:index%2FAppDomain:AppDomain"
          },
          "description": "The app domains\n"
        },
        "name": {
          "type": "string",
          "description": "The app name\n"
        },
        "organizationId": {
          "type": "string",
          "description": "The organization ID owning the app\n"
        },
        "updatedAt": {
          "type": "string",
          "description": "The date and time of when the app was last updated\n"
        }
      },
      "type": "object",
      "required": [
        "createdAt",
        "domains",
        "name",
        "organizationId",
        "updatedAt"
      ],
      "inputProperties": {
        "name": {
          "type": "string",
          "description": "The app name\n",
          "willReplaceOnChanges": true
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering App resources.\n",
        "properties": {
          "createdAt": {
            "type": "string",
            "description": "The date and time of when the app was created\n"
          },
          "domains": {
            "type": "array",
            "items": {
              "$ref": "#/types/koyeb:index%2FAppDomain:AppDomain"
            },
            "description": "The app domains\n"
          },
          "name": {
            "type": "string",
            "description": "The app name\n",
            "willReplaceOnChanges": true
          },
          "organizationId": {
            "type": "string",
            "description": "The organization ID owning the app\n"
          },
          "updatedAt": {
            "type": "string",
            "description": "The date and time of when the app was last updated\n"
          }
        },
        "type": "object"
      }
    },
    "koyeb:index/domain:Domain": {
      "description": "## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as koyeb from \"@koyeb/pulumi-koyeb\";\n\nconst my_domain = new koyeb.Domain(\"my-domain\", {name: \"www.example.tld\"});\n```\n```python\nimport pulumi\nimport pulumi_koyeb as koyeb\n\nmy_domain = koyeb.Domain(\"my-domain\", name=\"www.example.tld\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Koyeb = Pulumi.Koyeb;\n\nreturn await Deployment.RunAsync(() => \n{\n    var my_domain = new Koyeb.Domain(\"my-domain\", new()\n    {\n        Name = \"www.example.tld\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/koyeb/pulumi-koyeb/sdk/go/koyeb\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := koyeb.NewDomain(ctx, \"my-domain\", &koyeb.DomainArgs{\n\t\t\tName: pulumi.String(\"www.example.tld\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.koyeb.Domain;\nimport com.pulumi.koyeb.DomainArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var my_domain = new Domain(\"my-domain\", DomainArgs.builder()\n            .name(\"www.example.tld\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  my-domain:\n    type: koyeb:Domain\n    properties:\n      name: www.example.tld\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "appName": {
          "type": "string",
          "description": "The app name the domain is assigned to\n"
        },
        "createdAt": {
          "type": "string",
          "description": "The date and time of when the domain was created\n"
        },
        "deploymentGroup": {
          "type": "string",
          "description": "The deployment group assigned to the domain\n"
        },
        "intendedCname": {
          "type": "string",
          "description": "The CNAME record to point the domain to\n"
        },
        "messages": {
          "type": "string",
          "description": "The status messages of the domain\n"
        },
        "name": {
          "type": "string",
          "description": "The domain name\n"
        },
        "organizationId": {
          "type": "string",
          "description": "The organization ID owning the domain\n"
        },
        "status": {
          "type": "string",
          "description": "The status of the domain\n"
        },
        "type": {
          "type": "string",
          "description": "The domain type\n"
        },
        "updatedAt": {
          "type": "string",
          "description": "The date and time of when the domain was last updated\n"
        },
        "verifiedAt": {
          "type": "string",
          "description": "The date and time of when the domain was last verified\n"
        },
        "version": {
          "type": "string",
          "description": "The version of the domain\n"
        }
      },
      "type": "object",
      "required": [
        "createdAt",
        "deploymentGroup",
        "intendedCname",
        "messages",
        "name",
        "organizationId",
        "status",
        "type",
        "updatedAt",
        "verifiedAt",
        "version"
      ],
      "inputProperties": {
        "appName": {
          "type": "string",
          "description": "The app name the domain is assigned to\n"
        },
        "deploymentGroup": {
          "type": "string",
          "description": "The deployment group assigned to the domain\n"
        },
        "intendedCname": {
          "type": "string",
          "description": "The CNAME record to point the domain to\n"
        },
        "messages": {
          "type": "string",
          "description": "The status messages of the domain\n"
        },
        "name": {
          "type": "string",
          "description": "The domain name\n",
          "willReplaceOnChanges": true
        },
        "verifiedAt": {
          "type": "string",
          "description": "The date and time of when the domain was last verified\n"
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering Domain resources.\n",
        "properties": {
          "appName": {
            "type": "string",
            "description": "The app name the domain is assigned to\n"
          },
          "createdAt": {
            "type": "string",
            "description": "The date and time of when the domain was created\n"
          },
          "deploymentGroup": {
            "type": "string",
            "description": "The deployment group assigned to the domain\n"
          },
          "intendedCname": {
            "type": "string",
            "description": "The CNAME record to point the domain to\n"
          },
          "messages": {
            "type": "string",
            "description": "The status messages of the domain\n"
          },
          "name": {
            "type": "string",
            "description": "The domain name\n",
            "willReplaceOnChanges": true
          },
          "organizationId": {
            "type": "string",
            "description": "The organization ID owning the domain\n"
          },
          "status": {
            "type": "string",
            "description": "The status of the domain\n"
          },
          "type": {
            "type": "string",
            "description": "The domain type\n"
          },
          "updatedAt": {
            "type": "string",
            "description": "The date and time of when the domain was last updated\n"
          },
          "verifiedAt": {
            "type": "string",
            "description": "The date and time of when the domain was last verified\n"
          },
          "version": {
            "type": "string",
            "description": "The version of the domain\n"
          }
        },
        "type": "object"
      }
    },
    "koyeb:index/secret:Secret": {
      "description": "## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as koyeb from \"@koyeb/pulumi-koyeb\";\n\nconst simple_secret = new koyeb.Secret(\"simple-secret\", {\n    name: \"secret-name\",\n    value: \"secret-value\",\n});\n```\n```python\nimport pulumi\nimport pulumi_koyeb as koyeb\n\nsimple_secret = koyeb.Secret(\"simple-secret\",\n    name=\"secret-name\",\n    value=\"secret-value\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Koyeb = Pulumi.Koyeb;\n\nreturn await Deployment.RunAsync(() => \n{\n    var simple_secret = new Koyeb.Secret(\"simple-secret\", new()\n    {\n        Name = \"secret-name\",\n        Value = \"secret-value\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/koyeb/pulumi-koyeb/sdk/go/koyeb\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := koyeb.NewSecret(ctx, \"simple-secret\", &koyeb.SecretArgs{\n\t\t\tName:  pulumi.String(\"secret-name\"),\n\t\t\tValue: pulumi.String(\"secret-value\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.koyeb.Secret;\nimport com.pulumi.koyeb.SecretArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var simple_secret = new Secret(\"simple-secret\", SecretArgs.builder()\n            .name(\"secret-name\")\n            .value(\"secret-value\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  simple-secret:\n    type: koyeb:Secret\n    properties:\n      name: secret-name\n      value: secret-value\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "azureContainerRegistry": {
          "$ref": "#/types/koyeb:index%2FSecretAzureContainerRegistry:SecretAzureContainerRegistry",
          "description": "The azure*container*registry configuration to use\n"
        },
        "createdAt": {
          "type": "string",
          "description": "The date and time of when the secret was created\n"
        },
        "digitalOceanContainerRegistry": {
          "$ref": "#/types/koyeb:index%2FSecretDigitalOceanContainerRegistry:SecretDigitalOceanContainerRegistry",
          "description": "The digital*ocean*container*registry configuration to use\n"
        },
        "dockerHubRegistry": {
          "$ref": "#/types/koyeb:index%2FSecretDockerHubRegistry:SecretDockerHubRegistry",
          "description": "The docker*hub*registry configuration to use\n"
        },
        "githubRegistry": {
          "$ref": "#/types/koyeb:index%2FSecretGithubRegistry:SecretGithubRegistry",
          "description": "The github*registry configuration to use\n"
        },
        "gitlabRegistry": {
          "$ref": "#/types/koyeb:index%2FSecretGitlabRegistry:SecretGitlabRegistry",
          "description": "The gitlab*registry configuration to use\n"
        },
        "name": {
          "type": "string",
          "description": "The secret name\n"
        },
        "organizationId": {
          "type": "string",
          "description": "The organization ID owning the secret\n"
        },
        "privateRegistry": {
          "$ref": "#/types/koyeb:index%2FSecretPrivateRegistry:SecretPrivateRegistry",
          "description": "The private*registry configuration to use\n"
        },
        "type": {
          "type": "string",
          "description": "The secret type\n"
        },
        "updatedAt": {
          "type": "string",
          "description": "The date and time of when the secret was last updated\n"
        },
        "value": {
          "type": "string",
          "description": "The secret value\n",
          "secret": true
        }
      },
      "type": "object",
      "required": [
        "createdAt",
        "name",
        "organizationId",
        "updatedAt"
      ],
      "inputProperties": {
        "azureContainerRegistry": {
          "$ref": "#/types/koyeb:index%2FSecretAzureContainerRegistry:SecretAzureContainerRegistry",
          "description": "The azure*container*registry configuration to use\n"
        },
        "digitalOceanContainerRegistry": {
          "$ref": "#/types/koyeb:index%2FSecretDigitalOceanContainerRegistry:SecretDigitalOceanContainerRegistry",
          "description": "The digital*ocean*container*registry configuration to use\n"
        },
        "dockerHubRegistry": {
          "$ref": "#/types/koyeb:index%2FSecretDockerHubRegistry:SecretDockerHubRegistry",
          "description": "The docker*hub*registry configuration to use\n"
        },
        "githubRegistry": {
          "$ref": "#/types/koyeb:index%2FSecretGithubRegistry:SecretGithubRegistry",
          "description": "The github*registry configuration to use\n"
        },
        "gitlabRegistry": {
          "$ref": "#/types/koyeb:index%2FSecretGitlabRegistry:SecretGitlabRegistry",
          "description": "The gitlab*registry configuration to use\n"
        },
        "name": {
          "type": "string",
          "description": "The secret name\n",
          "willReplaceOnChanges": true
        },
        "privateRegistry": {
          "$ref": "#/types/koyeb:index%2FSecretPrivateRegistry:SecretPrivateRegistry",
          "description": "The private*registry configuration to use\n"
        },
        "type": {
          "type": "string",
          "description": "The secret type\n",
          "willReplaceOnChanges": true
        },
        "value": {
          "type": "string",
          "description": "The secret value\n",
          "secret": true
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering Secret resources.\n",
        "properties": {
          "azureContainerRegistry": {
            "$ref": "#/types/koyeb:index%2FSecretAzureContainerRegistry:SecretAzureContainerRegistry",
            "description": "The azure*container*registry configuration to use\n"
          },
          "createdAt": {
            "type": "string",
            "description": "The date and time of when the secret was created\n"
          },
          "digitalOceanContainerRegistry": {
            "$ref": "#/types/koyeb:index%2FSecretDigitalOceanContainerRegistry:SecretDigitalOceanContainerRegistry",
            "description": "The digital*ocean*container*registry configuration to use\n"
          },
          "dockerHubRegistry": {
            "$ref": "#/types/koyeb:index%2FSecretDockerHubRegistry:SecretDockerHubRegistry",
            "description": "The docker*hub*registry configuration to use\n"
          },
          "githubRegistry": {
            "$ref": "#/types/koyeb:index%2FSecretGithubRegistry:SecretGithubRegistry",
            "description": "The github*registry configuration to use\n"
          },
          "gitlabRegistry": {
            "$ref": "#/types/koyeb:index%2FSecretGitlabRegistry:SecretGitlabRegistry",
            "description": "The gitlab*registry configuration to use\n"
          },
          "name": {
            "type": "string",
            "description": "The secret name\n",
            "willReplaceOnChanges": true
          },
          "organizationId": {
            "type": "string",
            "description": "The organization ID owning the secret\n"
          },
          "privateRegistry": {
            "$ref": "#/types/koyeb:index%2FSecretPrivateRegistry:SecretPrivateRegistry",
            "description": "The private*registry configuration to use\n"
          },
          "type": {
            "type": "string",
            "description": "The secret type\n",
            "willReplaceOnChanges": true
          },
          "updatedAt": {
            "type": "string",
            "description": "The date and time of when the secret was last updated\n"
          },
          "value": {
            "type": "string",
            "description": "The secret value\n",
            "secret": true
          }
        },
        "type": "object"
      }
    },
    "koyeb:index/service:Service": {
      "description": "## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as koyeb from \"@koyeb/pulumi-koyeb\";\n\nconst my_service = new koyeb.Service(\"my-service\", {\n    appName: myApp.name,\n    definition: {\n        name: \"my-service\",\n        instanceTypes: [{\n            type: \"micro\",\n        }],\n        ports: [{\n            port: 3000,\n            protocol: \"http\",\n        }],\n        scalings: [{\n            min: 1,\n            max: 1,\n        }],\n        envs: [\n            {\n                key: \"FOO\",\n                value: \"BAR\",\n            },\n            {\n                key: \"PORT\",\n                value: \"3000\",\n            },\n        ],\n        routes: [{\n            path: \"/\",\n            port: 3000,\n        }],\n        regions: [\"fra\"],\n        docker: {\n            image: \"koyeb/demo\",\n        },\n    },\n}, {\n    dependsOn: [my_app],\n});\n```\n```python\nimport pulumi\nimport pulumi_koyeb as koyeb\n\nmy_service = koyeb.Service(\"my-service\",\n    app_name=my_app[\"name\"],\n    definition={\n        \"name\": \"my-service\",\n        \"instance_types\": [{\n            \"type\": \"micro\",\n        }],\n        \"ports\": [{\n            \"port\": 3000,\n            \"protocol\": \"http\",\n        }],\n        \"scalings\": [{\n            \"min\": 1,\n            \"max\": 1,\n        }],\n        \"envs\": [\n            {\n                \"key\": \"FOO\",\n                \"value\": \"BAR\",\n            },\n            {\n                \"key\": \"PORT\",\n                \"value\": \"3000\",\n            },\n        ],\n        \"routes\": [{\n            \"path\": \"/\",\n            \"port\": 3000,\n        }],\n        \"regions\": [\"fra\"],\n        \"docker\": {\n            \"image\": \"koyeb/demo\",\n        },\n    },\n    opts = pulumi.ResourceOptions(depends_on=[my_app]))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Koyeb = Pulumi.Koyeb;\n\nreturn await Deployment.RunAsync(() => \n{\n    var my_service = new Koyeb.Service(\"my-service\", new()\n    {\n        AppName = myApp.Name,\n        Definition = new Koyeb.Inputs.ServiceDefinitionArgs\n        {\n            Name = \"my-service\",\n            InstanceTypes = new[]\n            {\n                new Koyeb.Inputs.ServiceDefinitionInstanceTypeArgs\n                {\n                    Type = \"micro\",\n                },\n            },\n            Ports = new[]\n            {\n                new Koyeb.Inputs.ServiceDefinitionPortArgs\n                {\n                    Port = 3000,\n                    Protocol = \"http\",\n                },\n            },\n            Scalings = new[]\n            {\n                new Koyeb.Inputs.ServiceDefinitionScalingArgs\n                {\n                    Min = 1,\n                    Max = 1,\n                },\n            },\n            Envs = new[]\n            {\n                new Koyeb.Inputs.ServiceDefinitionEnvArgs\n                {\n                    Key = \"FOO\",\n                    Value = \"BAR\",\n                },\n                new Koyeb.Inputs.ServiceDefinitionEnvArgs\n                {\n                    Key = \"PORT\",\n                    Value = \"3000\",\n                },\n            },\n            Routes = new[]\n            {\n                new Koyeb.Inputs.ServiceDefinitionRouteArgs\n                {\n                    Path = \"/\",\n                    Port = 3000,\n                },\n            },\n            Regions = new[]\n            {\n                \"fra\",\n            },\n            Docker = new Koyeb.Inputs.ServiceDefinitionDockerArgs\n            {\n                Image = \"koyeb/demo\",\n            },\n        },\n    }, new CustomResourceOptions\n    {\n        DependsOn =\n        {\n            my_app,\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/koyeb/pulumi-koyeb/sdk/go/koyeb\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := koyeb.NewService(ctx, \"my-service\", &koyeb.ServiceArgs{\n\t\t\tAppName: pulumi.Any(myApp.Name),\n\t\t\tDefinition: &koyeb.ServiceDefinitionArgs{\n\t\t\t\tName: pulumi.String(\"my-service\"),\n\t\t\t\tInstanceTypes: koyeb.ServiceDefinitionInstanceTypeArray{\n\t\t\t\t\t&koyeb.ServiceDefinitionInstanceTypeArgs{\n\t\t\t\t\t\tType: pulumi.String(\"micro\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tPorts: koyeb.ServiceDefinitionPortArray{\n\t\t\t\t\t&koyeb.ServiceDefinitionPortArgs{\n\t\t\t\t\t\tPort:     pulumi.Int(3000),\n\t\t\t\t\t\tProtocol: pulumi.String(\"http\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tScalings: koyeb.ServiceDefinitionScalingArray{\n\t\t\t\t\t&koyeb.ServiceDefinitionScalingArgs{\n\t\t\t\t\t\tMin: pulumi.Int(1),\n\t\t\t\t\t\tMax: pulumi.Int(1),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tEnvs: koyeb.ServiceDefinitionEnvArray{\n\t\t\t\t\t&koyeb.ServiceDefinitionEnvArgs{\n\t\t\t\t\t\tKey:   pulumi.String(\"FOO\"),\n\t\t\t\t\t\tValue: pulumi.String(\"BAR\"),\n\t\t\t\t\t},\n\t\t\t\t\t&koyeb.ServiceDefinitionEnvArgs{\n\t\t\t\t\t\tKey:   pulumi.String(\"PORT\"),\n\t\t\t\t\t\tValue: pulumi.String(\"3000\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tRoutes: koyeb.ServiceDefinitionRouteArray{\n\t\t\t\t\t&koyeb.ServiceDefinitionRouteArgs{\n\t\t\t\t\t\tPath: pulumi.String(\"/\"),\n\t\t\t\t\t\tPort: pulumi.Int(3000),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tRegions: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"fra\"),\n\t\t\t\t},\n\t\t\t\tDocker: &koyeb.ServiceDefinitionDockerArgs{\n\t\t\t\t\tImage: pulumi.String(\"koyeb/demo\"),\n\t\t\t\t},\n\t\t\t},\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\tmy_app,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.koyeb.Service;\nimport com.pulumi.koyeb.ServiceArgs;\nimport com.pulumi.koyeb.inputs.ServiceDefinitionArgs;\nimport com.pulumi.koyeb.inputs.ServiceDefinitionDockerArgs;\nimport com.pulumi.resources.CustomResourceOptions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var my_service = new Service(\"my-service\", ServiceArgs.builder()\n            .appName(myApp.name())\n            .definition(ServiceDefinitionArgs.builder()\n                .name(\"my-service\")\n                .instanceTypes(ServiceDefinitionInstanceTypeArgs.builder()\n                    .type(\"micro\")\n                    .build())\n                .ports(ServiceDefinitionPortArgs.builder()\n                    .port(3000)\n                    .protocol(\"http\")\n                    .build())\n                .scalings(ServiceDefinitionScalingArgs.builder()\n                    .min(1)\n                    .max(1)\n                    .build())\n                .envs(                \n                    ServiceDefinitionEnvArgs.builder()\n                        .key(\"FOO\")\n                        .value(\"BAR\")\n                        .build(),\n                    ServiceDefinitionEnvArgs.builder()\n                        .key(\"PORT\")\n                        .value(\"3000\")\n                        .build())\n                .routes(ServiceDefinitionRouteArgs.builder()\n                    .path(\"/\")\n                    .port(3000)\n                    .build())\n                .regions(\"fra\")\n                .docker(ServiceDefinitionDockerArgs.builder()\n                    .image(\"koyeb/demo\")\n                    .build())\n                .build())\n            .build(), CustomResourceOptions.builder()\n                .dependsOn(my_app)\n                .build());\n\n    }\n}\n```\n```yaml\nresources:\n  my-service:\n    type: koyeb:Service\n    properties:\n      appName: ${myApp.name}\n      definition:\n        name: my-service\n        instanceTypes:\n          - type: micro\n        ports:\n          - port: 3000\n            protocol: http\n        scalings:\n          - min: 1\n            max: 1\n        envs:\n          - key: FOO\n            value: BAR\n          - key: PORT\n            value: '3000'\n        routes:\n          - path: /\n            port: 3000\n        regions:\n          - fra\n        docker:\n          image: koyeb/demo\n    options:\n      dependson:\n        - ${[\"my-app\"]}\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "activeDeployment": {
          "type": "string",
          "description": "The service active deployment ID\n"
        },
        "appId": {
          "type": "string",
          "description": "The app id the service is assigned to\n"
        },
        "appName": {
          "type": "string",
          "description": "The app name the service is assigned to\n"
        },
        "createdAt": {
          "type": "string",
          "description": "The date and time of when the service was created\n"
        },
        "definition": {
          "$ref": "#/types/koyeb:index%2FServiceDefinition:ServiceDefinition",
          "description": "The service deployment definition\n"
        },
        "latestDeployment": {
          "type": "string",
          "description": "The service latest deployment ID\n"
        },
        "messages": {
          "type": "string",
          "description": "The status messages of the service\n"
        },
        "name": {
          "type": "string",
          "description": "The service name\n"
        },
        "organizationId": {
          "type": "string",
          "description": "The organization ID owning the service\n"
        },
        "pausedAt": {
          "type": "string",
          "description": "The date and time of when the service was last updated\n"
        },
        "resumedAt": {
          "type": "string",
          "description": "The date and time of when the service was last updated\n"
        },
        "status": {
          "type": "string",
          "description": "The status of the service\n"
        },
        "terminatedAt": {
          "type": "string",
          "description": "The date and time of when the service was last updated\n"
        },
        "updatedAt": {
          "type": "string",
          "description": "The date and time of when the service was last updated\n"
        },
        "version": {
          "type": "string",
          "description": "The version of the service\n"
        }
      },
      "type": "object",
      "required": [
        "activeDeployment",
        "appId",
        "appName",
        "createdAt",
        "definition",
        "latestDeployment",
        "messages",
        "name",
        "organizationId",
        "pausedAt",
        "resumedAt",
        "status",
        "terminatedAt",
        "updatedAt",
        "version"
      ],
      "inputProperties": {
        "appName": {
          "type": "string",
          "description": "The app name the service is assigned to\n",
          "willReplaceOnChanges": true
        },
        "definition": {
          "$ref": "#/types/koyeb:index%2FServiceDefinition:ServiceDefinition",
          "description": "The service deployment definition\n"
        },
        "messages": {
          "type": "string",
          "description": "The status messages of the service\n"
        }
      },
      "requiredInputs": [
        "appName",
        "definition"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering Service resources.\n",
        "properties": {
          "activeDeployment": {
            "type": "string",
            "description": "The service active deployment ID\n"
          },
          "appId": {
            "type": "string",
            "description": "The app id the service is assigned to\n"
          },
          "appName": {
            "type": "string",
            "description": "The app name the service is assigned to\n",
            "willReplaceOnChanges": true
          },
          "createdAt": {
            "type": "string",
            "description": "The date and time of when the service was created\n"
          },
          "definition": {
            "$ref": "#/types/koyeb:index%2FServiceDefinition:ServiceDefinition",
            "description": "The service deployment definition\n"
          },
          "latestDeployment": {
            "type": "string",
            "description": "The service latest deployment ID\n"
          },
          "messages": {
            "type": "string",
            "description": "The status messages of the service\n"
          },
          "name": {
            "type": "string",
            "description": "The service name\n"
          },
          "organizationId": {
            "type": "string",
            "description": "The organization ID owning the service\n"
          },
          "pausedAt": {
            "type": "string",
            "description": "The date and time of when the service was last updated\n"
          },
          "resumedAt": {
            "type": "string",
            "description": "The date and time of when the service was last updated\n"
          },
          "status": {
            "type": "string",
            "description": "The status of the service\n"
          },
          "terminatedAt": {
            "type": "string",
            "description": "The date and time of when the service was last updated\n"
          },
          "updatedAt": {
            "type": "string",
            "description": "The date and time of when the service was last updated\n"
          },
          "version": {
            "type": "string",
            "description": "The version of the service\n"
          }
        },
        "type": "object"
      }
    },
    "koyeb:index/volume:Volume": {
      "properties": {
        "backingStore": {
          "type": "string",
          "description": "The backing store of the volume\n"
        },
        "createdAt": {
          "type": "string",
          "description": "The date and time of when the volume was created\n"
        },
        "curSize": {
          "type": "integer",
          "description": "The current size of the volume in GB\n"
        },
        "maxSize": {
          "type": "integer",
          "description": "The maximum size of the volume in GB\n"
        },
        "name": {
          "type": "string",
          "description": "The volume name\n"
        },
        "organizationId": {
          "type": "string",
          "description": "The organization ID owning the volume\n"
        },
        "readOnly": {
          "type": "boolean",
          "description": "If set to true, the volume will be mounted in read-only\n"
        },
        "region": {
          "type": "string",
          "description": "The region where the volume is located\n"
        },
        "serviceId": {
          "type": "string",
          "description": "The service ID the volume is attached to\n"
        },
        "snapshotId": {
          "type": "string",
          "description": "The snapshot ID the volume was created from\n"
        },
        "status": {
          "type": "string",
          "description": "The status of the volume\n"
        },
        "updatedAt": {
          "type": "string",
          "description": "The date and time of when the volume was last updated\n"
        },
        "volumeType": {
          "type": "string",
          "description": "The volume type\n"
        }
      },
      "type": "object",
      "required": [
        "backingStore",
        "createdAt",
        "curSize",
        "maxSize",
        "name",
        "organizationId",
        "region",
        "serviceId",
        "snapshotId",
        "status",
        "updatedAt"
      ],
      "inputProperties": {
        "maxSize": {
          "type": "integer",
          "description": "The maximum size of the volume in GB\n",
          "willReplaceOnChanges": true
        },
        "name": {
          "type": "string",
          "description": "The volume name\n"
        },
        "readOnly": {
          "type": "boolean",
          "description": "If set to true, the volume will be mounted in read-only\n"
        },
        "region": {
          "type": "string",
          "description": "The region where the volume is located\n",
          "willReplaceOnChanges": true
        },
        "volumeType": {
          "type": "string",
          "description": "The volume type\n"
        }
      },
      "requiredInputs": [
        "maxSize",
        "region"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering Volume resources.\n",
        "properties": {
          "backingStore": {
            "type": "string",
            "description": "The backing store of the volume\n"
          },
          "createdAt": {
            "type": "string",
            "description": "The date and time of when the volume was created\n"
          },
          "curSize": {
            "type": "integer",
            "description": "The current size of the volume in GB\n"
          },
          "maxSize": {
            "type": "integer",
            "description": "The maximum size of the volume in GB\n",
            "willReplaceOnChanges": true
          },
          "name": {
            "type": "string",
            "description": "The volume name\n"
          },
          "organizationId": {
            "type": "string",
            "description": "The organization ID owning the volume\n"
          },
          "readOnly": {
            "type": "boolean",
            "description": "If set to true, the volume will be mounted in read-only\n"
          },
          "region": {
            "type": "string",
            "description": "The region where the volume is located\n",
            "willReplaceOnChanges": true
          },
          "serviceId": {
            "type": "string",
            "description": "The service ID the volume is attached to\n"
          },
          "snapshotId": {
            "type": "string",
            "description": "The snapshot ID the volume was created from\n"
          },
          "status": {
            "type": "string",
            "description": "The status of the volume\n"
          },
          "updatedAt": {
            "type": "string",
            "description": "The date and time of when the volume was last updated\n"
          },
          "volumeType": {
            "type": "string",
            "description": "The volume type\n"
          }
        },
        "type": "object"
      }
    }
  },
  "functions": {
    "koyeb:index/getApp:getApp": {
      "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as koyeb from \"@pulumi/koyeb\";\n\nconst my-app = koyeb.getApp({\n    name: \"my-app\",\n});\n```\n```python\nimport pulumi\nimport pulumi_koyeb as koyeb\n\nmy_app = koyeb.get_app(name=\"my-app\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Koyeb = Pulumi.Koyeb;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var my_app = Koyeb.GetApp.Invoke(new()\n    {\n        Name = \"my-app\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/koyeb/pulumi-koyeb/sdk/go/koyeb\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := koyeb.LookupApp(ctx, \u0026koyeb.LookupAppArgs{\n\t\t\tName: \"my-app\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.koyeb.KoyebFunctions;\nimport com.pulumi.koyeb.inputs.GetAppArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var my-app = KoyebFunctions.getApp(GetAppArgs.builder()\n            .name(\"my-app\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  my-app:\n    fn::invoke:\n      Function: koyeb:getApp\n      Arguments:\n        name: my-app\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getApp.\n",
        "properties": {
          "name": {
            "type": "string",
            "description": "The app name\n",
            "willReplaceOnChanges": true
          }
        },
        "type": "object",
        "required": [
          "name"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getApp.\n",
        "properties": {
          "createdAt": {
            "description": "The date and time of when the app was created\n",
            "type": "string"
          },
          "domains": {
            "description": "The app domains\n",
            "items": {
              "$ref": "#/types/koyeb:index%2FgetAppDomain:getAppDomain"
            },
            "type": "array"
          },
          "id": {
            "description": "The app ID\n",
            "type": "string"
          },
          "name": {
            "description": "The app name\n",
            "type": "string"
          },
          "organizationId": {
            "description": "The organization ID owning the app\n",
            "type": "string"
          },
          "updatedAt": {
            "description": "The date and time of when the app was last updated\n",
            "type": "string"
          }
        },
        "required": [
          "createdAt",
          "domains",
          "id",
          "name",
          "organizationId",
          "updatedAt"
        ],
        "type": "object"
      }
    },
    "koyeb:index/getDomain:getDomain": {
      "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as koyeb from \"@pulumi/koyeb\";\n\nconst my-domain = koyeb.getDomain({\n    name: \"www.exampled.tld\",\n});\n```\n```python\nimport pulumi\nimport pulumi_koyeb as koyeb\n\nmy_domain = koyeb.get_domain(name=\"www.exampled.tld\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Koyeb = Pulumi.Koyeb;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var my_domain = Koyeb.GetDomain.Invoke(new()\n    {\n        Name = \"www.exampled.tld\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/koyeb/pulumi-koyeb/sdk/go/koyeb\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := koyeb.LookupDomain(ctx, \u0026koyeb.LookupDomainArgs{\n\t\t\tName: \"www.exampled.tld\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.koyeb.KoyebFunctions;\nimport com.pulumi.koyeb.inputs.GetDomainArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var my-domain = KoyebFunctions.getDomain(GetDomainArgs.builder()\n            .name(\"www.exampled.tld\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  my-domain:\n    fn::invoke:\n      Function: koyeb:getDomain\n      Arguments:\n        name: www.exampled.tld\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getDomain.\n",
        "properties": {
          "appName": {
            "type": "string",
            "description": "The app name the domain is assigned to\n"
          },
          "deploymentGroup": {
            "type": "string",
            "description": "The deployment group assigned to the domain\n"
          },
          "intendedCname": {
            "type": "string",
            "description": "The CNAME record to point the domain to\n"
          },
          "messages": {
            "type": "string",
            "description": "The status messages of the domain\n"
          },
          "name": {
            "type": "string",
            "description": "The domain name\n",
            "willReplaceOnChanges": true
          },
          "verifiedAt": {
            "type": "string",
            "description": "The date and time of when the domain was last verified\n"
          }
        },
        "type": "object",
        "required": [
          "name"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getDomain.\n",
        "properties": {
          "appName": {
            "description": "The app name the domain is assigned to\n",
            "type": "string"
          },
          "createdAt": {
            "description": "The date and time of when the domain was created\n",
            "type": "string"
          },
          "deploymentGroup": {
            "description": "The deployment group assigned to the domain\n",
            "type": "string"
          },
          "id": {
            "description": "The domain ID\n",
            "type": "string"
          },
          "intendedCname": {
            "description": "The CNAME record to point the domain to\n",
            "type": "string"
          },
          "messages": {
            "description": "The status messages of the domain\n",
            "type": "string"
          },
          "name": {
            "description": "The domain name\n",
            "type": "string"
          },
          "organizationId": {
            "description": "The organization ID owning the domain\n",
            "type": "string"
          },
          "status": {
            "description": "The status of the domain\n",
            "type": "string"
          },
          "type": {
            "description": "The domain type\n",
            "type": "string"
          },
          "updatedAt": {
            "description": "The date and time of when the domain was last updated\n",
            "type": "string"
          },
          "verifiedAt": {
            "description": "The date and time of when the domain was last verified\n",
            "type": "string"
          },
          "version": {
            "description": "The version of the domain\n",
            "type": "string"
          }
        },
        "required": [
          "createdAt",
          "deploymentGroup",
          "id",
          "intendedCname",
          "messages",
          "name",
          "organizationId",
          "status",
          "type",
          "updatedAt",
          "verifiedAt",
          "version"
        ],
        "type": "object"
      }
    },
    "koyeb:index/getSecret:getSecret": {
      "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as koyeb from \"@pulumi/koyeb\";\n\nconst my-secret = koyeb.getSecret({\n    name: \"my-secret\",\n});\n```\n```python\nimport pulumi\nimport pulumi_koyeb as koyeb\n\nmy_secret = koyeb.get_secret(name=\"my-secret\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Koyeb = Pulumi.Koyeb;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var my_secret = Koyeb.GetSecret.Invoke(new()\n    {\n        Name = \"my-secret\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/koyeb/pulumi-koyeb/sdk/go/koyeb\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := koyeb.LookupSecret(ctx, \u0026koyeb.LookupSecretArgs{\n\t\t\tName: \"my-secret\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.koyeb.KoyebFunctions;\nimport com.pulumi.koyeb.inputs.GetSecretArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var my-secret = KoyebFunctions.getSecret(GetSecretArgs.builder()\n            .name(\"my-secret\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  my-secret:\n    fn::invoke:\n      Function: koyeb:getSecret\n      Arguments:\n        name: my-secret\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getSecret.\n",
        "properties": {
          "azureContainerRegistry": {
            "$ref": "#/types/koyeb:index%2FgetSecretAzureContainerRegistry:getSecretAzureContainerRegistry",
            "description": "The azure*container*registry configuration to use\n"
          },
          "digitalOceanContainerRegistry": {
            "$ref": "#/types/koyeb:index%2FgetSecretDigitalOceanContainerRegistry:getSecretDigitalOceanContainerRegistry",
            "description": "The digital*ocean*container*registry configuration to use\n"
          },
          "dockerHubRegistry": {
            "$ref": "#/types/koyeb:index%2FgetSecretDockerHubRegistry:getSecretDockerHubRegistry",
            "description": "The docker*hub*registry configuration to use\n"
          },
          "githubRegistry": {
            "$ref": "#/types/koyeb:index%2FgetSecretGithubRegistry:getSecretGithubRegistry",
            "description": "The github*registry configuration to use\n"
          },
          "gitlabRegistry": {
            "$ref": "#/types/koyeb:index%2FgetSecretGitlabRegistry:getSecretGitlabRegistry",
            "description": "The gitlab*registry configuration to use\n"
          },
          "name": {
            "type": "string",
            "description": "The secret name\n",
            "willReplaceOnChanges": true
          },
          "privateRegistry": {
            "$ref": "#/types/koyeb:index%2FgetSecretPrivateRegistry:getSecretPrivateRegistry",
            "description": "The private*registry configuration to use\n"
          },
          "type": {
            "type": "string",
            "description": "The secret type\n",
            "willReplaceOnChanges": true
          },
          "value": {
            "type": "string",
            "description": "The secret value\n",
            "secret": true
          }
        },
        "type": "object",
        "required": [
          "name"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getSecret.\n",
        "properties": {
          "azureContainerRegistry": {
            "$ref": "#/types/koyeb:index%2FgetSecretAzureContainerRegistry:getSecretAzureContainerRegistry",
            "description": "The azure*container*registry configuration to use\n"
          },
          "createdAt": {
            "description": "The date and time of when the secret was created\n",
            "type": "string"
          },
          "digitalOceanContainerRegistry": {
            "$ref": "#/types/koyeb:index%2FgetSecretDigitalOceanContainerRegistry:getSecretDigitalOceanContainerRegistry",
            "description": "The digital*ocean*container*registry configuration to use\n"
          },
          "dockerHubRegistry": {
            "$ref": "#/types/koyeb:index%2FgetSecretDockerHubRegistry:getSecretDockerHubRegistry",
            "description": "The docker*hub*registry configuration to use\n"
          },
          "githubRegistry": {
            "$ref": "#/types/koyeb:index%2FgetSecretGithubRegistry:getSecretGithubRegistry",
            "description": "The github*registry configuration to use\n"
          },
          "gitlabRegistry": {
            "$ref": "#/types/koyeb:index%2FgetSecretGitlabRegistry:getSecretGitlabRegistry",
            "description": "The gitlab*registry configuration to use\n"
          },
          "id": {
            "description": "The secret ID\n",
            "type": "string"
          },
          "name": {
            "description": "The secret name\n",
            "type": "string"
          },
          "organizationId": {
            "description": "The organization ID owning the secret\n",
            "type": "string"
          },
          "privateRegistry": {
            "$ref": "#/types/koyeb:index%2FgetSecretPrivateRegistry:getSecretPrivateRegistry",
            "description": "The private*registry configuration to use\n"
          },
          "type": {
            "description": "The secret type\n",
            "type": "string"
          },
          "updatedAt": {
            "description": "The date and time of when the secret was last updated\n",
            "type": "string"
          },
          "value": {
            "description": "The secret value\n",
            "secret": true,
            "type": "string"
          }
        },
        "required": [
          "createdAt",
          "id",
          "name",
          "organizationId",
          "updatedAt"
        ],
        "type": "object"
      }
    },
    "koyeb:index/getService:getService": {
      "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as koyeb from \"@pulumi/koyeb\";\n\nconst my-service = koyeb.getService({\n    slug: \"my-app/my-service\",\n});\n```\n```python\nimport pulumi\nimport pulumi_koyeb as koyeb\n\nmy_service = koyeb.get_service(slug=\"my-app/my-service\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Koyeb = Pulumi.Koyeb;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var my_service = Koyeb.GetService.Invoke(new()\n    {\n        Slug = \"my-app/my-service\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/koyeb/pulumi-koyeb/sdk/go/koyeb\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := koyeb.LookupService(ctx, \u0026koyeb.LookupServiceArgs{\n\t\t\tSlug: \"my-app/my-service\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.koyeb.KoyebFunctions;\nimport com.pulumi.koyeb.inputs.GetServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var my-service = KoyebFunctions.getService(GetServiceArgs.builder()\n            .slug(\"my-app/my-service\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  my-service:\n    fn::invoke:\n      Function: koyeb:getService\n      Arguments:\n        slug: my-app/my-service\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getService.\n",
        "properties": {
          "messages": {
            "type": "string",
            "description": "The status messages of the service\n"
          },
          "slug": {
            "type": "string",
            "description": "The service slug composed of the app and service name, for instance my-app/my-service\n"
          }
        },
        "type": "object",
        "required": [
          "slug"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getService.\n",
        "properties": {
          "activeDeployment": {
            "description": "The service active deployment id\n",
            "type": "string"
          },
          "appId": {
            "description": "The app id the service is assigned\n",
            "type": "string"
          },
          "createdAt": {
            "description": "The date and time of when the service was created\n",
            "type": "string"
          },
          "definitions": {
            "description": "The service deployment definition\n",
            "items": {
              "$ref": "#/types/koyeb:index%2FgetServiceDefinition:getServiceDefinition"
            },
            "type": "array"
          },
          "id": {
            "description": "The id of the service\n",
            "type": "string"
          },
          "latestDeployment": {
            "description": "The service latest deployment id\n",
            "type": "string"
          },
          "messages": {
            "description": "The status messages of the service\n",
            "type": "string"
          },
          "name": {
            "description": "The name of the service\n",
            "type": "string"
          },
          "organizationId": {
            "description": "The organization id owning the service\n",
            "type": "string"
          },
          "pausedAt": {
            "description": "The date and time of when the service was last updated\n",
            "type": "string"
          },
          "resumedAt": {
            "description": "The date and time of when the service was last updated\n",
            "type": "string"
          },
          "slug": {
            "description": "The service slug composed of the app and service name, for instance my-app/my-service\n",
            "type": "string"
          },
          "status": {
            "description": "The status of the service\n",
            "type": "string"
          },
          "terminatedAt": {
            "description": "The date and time of when the service was last updated\n",
            "type": "string"
          },
          "updatedAt": {
            "description": "The date and time of when the service was last updated\n",
            "type": "string"
          },
          "version": {
            "description": "The version of the service\n",
            "type": "string"
          }
        },
        "required": [
          "activeDeployment",
          "appId",
          "createdAt",
          "definitions",
          "id",
          "latestDeployment",
          "messages",
          "name",
          "organizationId",
          "pausedAt",
          "resumedAt",
          "slug",
          "status",
          "terminatedAt",
          "updatedAt",
          "version"
        ],
        "type": "object"
      }
    }
  }
}
