Qovery Containers API

The Containers API from Qovery — 7 operation(s) for containers.

Operations 8

GET /organization/{organizationId}/containerRegistry/{containerRegistryId}/container/status List all container registry container statuses #
GET /environment/{environmentId}/container List containers #
POST /environment/{environmentId}/container Create a container #
GET /environment/{environmentId}/container/status List all environment container statuses #
POST /organization/{organizationId}/container/deploy Auto deploy containers #
POST /organization/{organizationId}/container/preview Preview container environments #
GET /defaultContainerAdvancedSettings List default container advanced settings #
POST /container/{containerId}/clone Clone container #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/qovery-containers-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

qovery-containers-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: 1.0.4
  title: Qovery Account Info Containers API
  description: '- Qovery is the fastest way to deploy your full-stack apps on any Cloud provider.

    - ℹ️ The API is stable and still in development.

    '
  contact:
    name: Qovery Product Team
    url: https://www.qovery.com
    email: support+api+documentation@qovery.com
  x-logo:
    url: https://console.qovery.com/assets/logos/logo-white.svg
    altText: Qovery
servers:
- url: https://api.qovery.com
security:
- bearerAuth: []
- ApiKeyAuth: []
tags:
- name: Containers
paths:
  /organization/{organizationId}/containerRegistry/{containerRegistryId}/container/status:
    get:
      summary: List all container registry container statuses
      description: Returns a list of containers with only their id and status.
      operationId: getContainerRegistryContainerStatus
      parameters:
      - $ref: '#/components/parameters/organizationId'
      - $ref: '#/components/parameters/containerRegistryId'
      tags:
      - Containers
      responses:
        '200':
          description: Get status
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ReferenceObjectStatusResponseList'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
  /environment/{environmentId}/container:
    get:
      summary: List containers
      operationId: listContainer
      parameters:
      - $ref: '#/components/parameters/environmentId'
      tags:
      - Containers
      responses:
        '200':
          description: List containers
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ContainerResponseList'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
    post:
      summary: Create a container
      operationId: createContainer
      parameters:
      - $ref: '#/components/parameters/environmentId'
      tags:
      - Containers
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ContainerRequest'
      responses:
        '201':
          description: Create container
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ContainerResponse'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '409':
          description: Container name within the environment is already taken
  /environment/{environmentId}/container/status:
    get:
      summary: List all environment container statuses
      description: Returns a list of containers with only their id and status.
      operationId: getEnvironmentContainerStatus
      parameters:
      - $ref: '#/components/parameters/environmentId'
      tags:
      - Containers
      responses:
        '200':
          description: Get status
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ReferenceObjectStatusResponseList'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
  /organization/{organizationId}/container/deploy:
    post:
      summary: Auto deploy containers
      description: 'Triggers a new container deploy in each environment matching the following conditions

        - environment should have the auto-deploy enabled

        - the container should have the same image name and a different tag

        '
      operationId: autoDeployContainerEnvironments
      parameters:
      - $ref: '#/components/parameters/organizationId'
      tags:
      - Containers
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OrganizationContainerAutoDeployRequest'
      responses:
        '202':
          description: Deployed containers
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '409':
          description: Operation is in progress
  /organization/{organizationId}/container/preview:
    post:
      summary: Preview container environments
      description: 'Triggers a new container preview for each environment matching the following conditions

        - preview environment feature should be enabled for the container

        - the container should have the same image name and a different tag

        '
      operationId: previewContainerEnvironments
      parameters:
      - $ref: '#/components/parameters/organizationId'
      tags:
      - Containers
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OrganizationContainerPreviewRequest'
      responses:
        '202':
          description: Preview environments processing
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '409':
          description: Operation is in progress
  /defaultContainerAdvancedSettings:
    get:
      summary: List default container advanced settings
      description: Default values for each setting are available in [our documentation](https://hub.qovery.com/docs/using-qovery/configuration/advanced-settings/)
      operationId: getDefaultContainerAdvancedSettings
      tags:
      - Containers
      responses:
        '200':
          description: Default container advanced settings
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ContainerAdvancedSettings'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
  /container/{containerId}/clone:
    post:
      summary: Clone container
      description: This will create a new container with the same configuration on the targeted environment Id.
      operationId: cloneContainer
      parameters:
      - $ref: '#/components/parameters/containerId'
      tags:
      - Containers
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CloneServiceRequest'
      responses:
        '202':
          description: Container clone has been requested
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ContainerResponse'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '409':
          description: Operation is in progress
components:
  schemas:
    ContainerResponseList:
      type: object
      properties:
        results:
          type: array
          items:
            $ref: '#/components/schemas/ContainerResponse'
    ContainerAdvancedSettings:
      type: object
      properties:
        deployment.custom_domain_check_enabled:
          type: boolean
          description: disable custom domain check when deploying an application
        deployment.termination_grace_period_seconds:
          type: integer
          description: define how long in seconds an application is supposed to be stopped gracefully
        deployment.affinity.node.required:
          type: object
          description: Set pod placement on specific Kubernetes nodes labels
          additionalProperties:
            type: string
        deployment.antiaffinity.pod:
          type: string
          enum:
          - Preferred
          - Requirred
          description: 'Define how you want pods affinity to behave:

            * `Preferred` allows, but does not require, pods of a given service are not co-located (or co-hosted) on a single node

            * `Requirred` ensures that the pods of a given service are not co-located (or co-hosted) on a single node (safer in term of availability but can be expensive depending on the number of replicas)

            '
        deployment.topology_spread.zone:
          type: string
          enum:
          - Disabled
          - ScheduleAnyway
          - DoNotSchedule
          description: 'Define how you want pods to be spread across availability zones:

            * `Disabled` no topology spread constraints are applied

            * `ScheduleAnyway` pods are spread across zones on a best-effort basis (soft constraint)

            * `DoNotSchedule` pods must be evenly spread across zones with a maxSkew of 1 (hard constraint)

            '
        deployment.update_strategy.type:
          type: string
          enum:
          - RollingUpdate
          - Recreate
          description: '* `RollingUpdate` gracefully rollout new versions, and automatically rollback if the new version fails to start

            * `Recreate` stop all current versions and create new ones once all old ones have been shutdown

            '
        deployment.update_strategy.rolling_update.max_unavailable_percent:
          type: integer
          description: Define the percentage of a maximum number of pods that can be unavailable during the update process
        deployment.update_strategy.rolling_update.max_surge_percent:
          type: integer
          description: Define the percentage of the maximum number of pods that can be created over the desired number of pods
        network.ingress.proxy_body_size_mb:
          type: integer
        network.ingress.force_ssl_redirect:
          type: boolean
          x-stoplight:
            id: xrdjy3znm8mpg
          description: When using SSL offloading outside of cluster, you can enforce a redirect to HTTPS even when there is no TLS certificate available
        network.ingress.enable_cors:
          type: boolean
        network.ingress.cors_allow_origin:
          type: string
        network.ingress.cors_allow_methods:
          type: string
        network.ingress.cors_allow_headers:
          type: string
        network.ingress.proxy_buffer_size_kb:
          type: integer
          description: header buffer size used while reading response header from upstream
        network.ingress.keepalive_time_seconds:
          type: integer
          description: Limits the maximum time (in seconds) during which requests can be processed through one keepalive connection
        network.ingress.keepalive_timeout_seconds:
          type: integer
          description: Sets a timeout (in seconds) during which an idle keepalive connection to an upstream server will stay open.
        network.ingress.send_timeout_seconds:
          type: integer
          description: Sets a timeout (in seconds) for transmitting a response to the client
        network.ingress.proxy_connect_timeout_seconds:
          type: integer
          description: Sets a timeout (in seconds) for establishing a connection to a proxied server
        network.ingress.proxy_send_timeout_seconds:
          type: integer
          description: Sets a timeout (in seconds) for transmitting a request to the proxied server
        network.ingress.proxy_read_timeout_seconds:
          type: integer
          description: Sets a timeout (in seconds) for reading a response from the proxied server
        network.ingress.proxy_buffering:
          type: string
          description: Allows to enable or disable nginx `proxy-buffering`
        network.ingress.proxy_request_buffering:
          type: string
          description: Allows to enable or disable nginx `proxy-request-buffering`
        network.ingress.grpc_send_timeout_seconds:
          type: integer
          description: Sets a timeout (in seconds) for transmitting a request to the grpc server
        network.ingress.grpc_read_timeout_seconds:
          type: integer
          description: Sets a timeout (in seconds) for transmitting a request to the grpc server
        network.ingress.whitelist_source_range:
          type: string
          description: "list of source ranges to allow access to ingress proxy. \nThis property can be used to whitelist source IP ranges for ingress proxy.\nThe value is a comma separated list of CIDRs, e.g. 10.0.0.0/24,172.10.0.1\nTo allow all source ranges, set 0.0.0.0/0.\n"
        network.ingress.denylist_source_range:
          type: string
          description: "list of source ranges to deny access to ingress proxy. \nThis property can be used to blacklist source IP ranges for ingress proxy.\nThe value is a comma separated list of CIDRs, e.g. 10.0.0.0/24,172.10.0.1\n"
        network.ingress.extra_headers:
          type: string
          description: Allows to define response headers
          example: '{"X-Frame-Options":"DENY ","X-Content-Type-Options":"nosniff"}'
        network.gateway_api.http_request_timeout_seconds:
          type:
          - integer
          - 'null'
          minimum: 0
          description: Sets a timeout (in seconds) for requests proxied through the Gateway API route.
        network.gateway_api.http_connection_idle_timeout_seconds:
          type:
          - integer
          - 'null'
          minimum: 0
          description: Sets the idle timeout (in seconds) for HTTP connections proxied through the Gateway API route.
        network.ingress.basic_auth_env_var:
          type: string
          description: 'Set the name of an environment variable to use as a basic authentication (`login:crypted_password`) from `htpasswd` command. You can add multiples comma separated values.

            '
        network.ingress.enable_sticky_session:
          type: boolean
          description: 'Enable the load balancer to bind a user''s session to a specific target.

            This ensures that all requests from the user during the session are sent to the same target

            '
        security.service_account_name:
          type: string
          description: 'Allows you to set an existing Kubernetes service account name

            '
        hpa.cpu.average_utilization_percent:
          type: integer
          description: Percentage value of cpu usage at which point pods should scale up.
        hpa.memory.average_utilization_percent:
          type:
          - integer
          - 'null'
          description: Percentage value of memory usage at which point pods should scale up.
        security.automount_service_account_token:
          type: boolean
          description: 'Automount Kubernetes service account token to have access to Kubernetes API from pods

            '
        security.read_only_root_filesystem:
          type: boolean
          description: 'Mounts the container''s root filesystem as read-only

            '
    ReferenceObject:
      type: object
      required:
      - id
      properties:
        id:
          type: string
          format: uuid
          readOnly: true
    ServiceLabelsRequestList:
      type: array
      items:
        $ref: '#/components/schemas/ServiceLabelRequest'
    OrganizationAnnotationsGroupScopeEnum:
      type: string
      description: Annotations Group Scope
      enum:
      - DEPLOYMENTS
      - STATEFUL_SETS
      - SERVICES
      - INGRESS
      - GATEWAY_API_ROUTES
      - HPA
      - PODS
      - SECRETS
      - JOBS
      - CRON_JOBS
    ContainerRequest:
      allOf:
      - $ref: '#/components/schemas/ServiceStorageRequest'
      - $ref: '#/components/schemas/ServicePortRequest'
      - type: object
        required:
        - name
        - registry_id
        - image_name
        - tag
        - healthchecks
        properties:
          name:
            type: string
            description: name is case insensitive
          description:
            type: string
            description: give a description to this container
          registry_id:
            type: string
            description: id of the linked registry
          image_name:
            type: string
            description: "The image name pattern differs according to chosen container registry provider:  \n* `ECR`: `repository`\n* `SCALEWAY_CR`: `namespace/image`\n* `DOCKER_HUB`: `image` or `repository/image`\n* `PUBLIC_ECR`: `registry_alias/repository`\n"
          tag:
            type: string
            description: tag of the image container
          arguments:
            type: array
            items:
              type: string
          entrypoint:
            type: string
            description: optional entrypoint when launching container
          cpu:
            type: integer
            description: unit is millicores (m). 1000m = 1 cpu
            default: 500
            example: 1250
          memory:
            type: integer
            description: unit is MB. 1024 MB = 1GB
            default: 512
            example: 1024
          gpu:
            type: integer
            x-stoplight:
              id: j1i1u2mlnlgfm
            minimum: 0
            default: 0
            example: 1
          min_running_instances:
            type: integer
            minimum: 0
            description: 'Minimum number of instances running. This resource auto-scale based on the CPU and Memory consumption.

              Note: 0 means that there is no container running.

              '
            default: 1
          max_running_instances:
            type: integer
            description: 'Maximum number of instances running. This resource auto-scale based on the CPU and Memory consumption.

              Note: -1 means that there is no limit.

              '
            default: 1
          healthchecks:
            $ref: '#/components/schemas/Healthcheck'
          auto_preview:
            type: boolean
            description: "Indicates if the 'environment preview option' is enabled for this container.  \nIf enabled, a preview environment will be automatically cloned when `/preview` endpoint is called.  \nIf not specified, it takes the value of the `auto_preview` property from the associated environment.\n"
          auto_deploy:
            type:
            - boolean
            - 'null'
            description: "Specify if the container will be automatically updated after receiving a new image tag. \nThe new image tag shall be communicated via the \"Auto Deploy container\" endpoint https://api-doc.qovery.com/#tag/Containers/operation/autoDeployContainerEnvironments\n"
          annotations_groups:
            $ref: '#/components/schemas/ServiceAnnotationsRequestList'
          labels_groups:
            $ref: '#/components/schemas/ServiceLabelsRequestList'
          icon_uri:
            type: string
            format: uri
            description: Icon URI representing the container.
            x-stoplight:
              id: jiypvl6nd63dm
          autoscaling:
            $ref: '#/components/schemas/AutoscalingPolicyRequest'
    ContainerRegistryProviderDetailsResponse:
      type: object
      required:
      - id
      - name
      - url
      - kind
      properties:
        id:
          type: string
          format: uuid
        name:
          type: string
        url:
          type: string
          description: URL of the container registry
        kind:
          $ref: '#/components/schemas/ContainerRegistryKindEnum'
    KedaAutoscalingResponse:
      title: KedaAutoscalingResponse
      x-stoplight:
        id: dgcb902szizvv
      allOf:
      - $ref: '#/components/schemas/Base'
      - type: object
        x-stoplight:
          id: zjlwqohiiyuwf
        required:
        - service_id
        - mode
        - polling_interval_seconds
        - cooldown_period_seconds
        - scalers
        properties:
          service_id:
            type: string
            x-stoplight:
              id: j9bxhtiyyl0iv
            format: uuid
          mode:
            $ref: '#/components/schemas/AutoscalingMode'
          polling_interval_seconds:
            type: integer
            x-stoplight:
              id: uone6zr48amok
            format: int32
          cooldown_period_seconds:
            type: integer
            x-stoplight:
              id: j2dapmjjjiafj
            format: int32
          scalers:
            type: array
            x-stoplight:
              id: oyhxgvwg36ixz
            minItems: 1
            items:
              $ref: '#/components/schemas/KedaScalerResponse'
      description: ''
    ServiceTypeEnum:
      type: string
      x-stoplight:
        id: d66063cd29913
      description: type of the service (application, database, job, ...)
      enum:
      - APPLICATION
      - DATABASE
      - CONTAINER
      - JOB
      - HELM
      - TERRAFORM
      - ARGOCD_APP
    OrganizationContainerPreviewRequest:
      type: object
      properties:
        image_name:
          type: string
          description: the container image name to trigger preview environment
        tag:
          type: string
          description: the tag to be used in the preview environment
    ContainerResponse:
      allOf:
      - $ref: '#/components/schemas/Base'
      - $ref: '#/components/schemas/ServiceStorage'
      - $ref: '#/components/schemas/ContainerSource'
      - type: object
        required:
        - environment
        - maximum_cpu
        - maximum_memory
        - maximum_gpu
        - name
        - cpu
        - memory
        - gpu
        - min_running_instances
        - max_running_instances
        - healthchecks
        - auto_preview
        - icon_uri
        - service_type
        properties:
          environment:
            $ref: '#/components/schemas/ReferenceObject'
          maximum_cpu:
            type: integer
            description: Maximum cpu that can be allocated to the container based on organization cluster configuration. unit is millicores (m). 1000m = 1 cpu
            example: 16000
          maximum_memory:
            type: integer
            description: Maximum memory that can be allocated to the container based on organization cluster configuration. unit is MB. 1024 MB = 1GB
            example: 16384
          maximum_gpu:
            type: integer
            description: Maximum memory that can be allocated to the container based on organization cluster configuration. unit is MB. 1024 MB = 1GB
            x-stoplight:
              id: zdw9ry7s5s0e8
            minimum: 0
            default: 0
            example: 2
          name:
            type: string
            description: name is case insensitive
          description:
            type: string
            description: give a description to this container
          arguments:
            type: array
            items:
              type: string
          entrypoint:
            type: string
            description: optional entrypoint when launching container
          cpu:
            type: integer
            description: unit is millicores (m). 1000m = 1 cpu
            example: 1250
          memory:
            type: integer
            description: unit is MB. 1024 MB = 1GB
            example: 1024
          gpu:
            type: integer
            x-stoplight:
              id: qthonnmak3re3
            default: 0
            minimum: 0
            example: 1
          min_running_instances:
            type: integer
            minimum: 0
            description: 'Minimum number of instances running. This resource auto-scale based on the CPU and Memory consumption.

              Note: 0 means that there is no container running.

              '
            default: 1
          max_running_instances:
            type: integer
            description: 'Maximum number of instances running. This resource auto-scale based on the CPU and Memory consumption.

              Note: -1 means that there is no limit.

              '
            default: 1
          healthchecks:
            $ref: '#/components/schemas/Healthcheck'
          auto_preview:
            type: boolean
            description: "Indicates if the 'environment preview option' is enabled for this container.  \nIf enabled, a preview environment will be automatically cloned when `/preview` endpoint is called.  \nIf not specified, it takes the value of the `auto_preview` property from the associated environment.\n"
          ports:
            $ref: '#/components/schemas/ServicePortResponseList'
          auto_deploy:
            type: boolean
            description: "Specify if the container will be automatically updated after receiving a new image tag. \nThe new image tag shall be communicated via the \"Auto Deploy container\" endpoint https://api-doc.qovery.com/#tag/Containers/operation/autoDeployContainerEnvironments\n"
          annotations_groups:
            $ref: '#/components/schemas/OrganizationAnnotationsGroupResponseList'
          labels_groups:
            $ref: '#/components/schemas/OrganizationLabelsGroupResponseList'
          icon_uri:
            type: string
            format: uri
            description: Icon URI representing the container.
            x-stoplight:
              id: o2bdci7ak3bmz
          service_type:
            $ref: '#/components/schemas/ServiceTypeEnum'
          autoscaling:
            $ref: '#/components/schemas/AutoscalingPolicyResponse'
    ContainerRegistryKindEnum:
      type: string
      enum:
      - ECR
      - SCALEWAY_CR
      - DOCKER_HUB
      - GITHUB_CR
      - GITHUB_ENTERPRISE_CR
      - GITLAB_CR
      - PUBLIC_ECR
      - DOCR
      - GENERIC_CR
      - GCP_ARTIFACT_REGISTRY
      - AZURE_CR
      description: The type of your container registry
    OrganizationLabelsGroupResponseList:
      type: array
      items:
        $ref: '#/components/schemas/OrganizationLabelsGroupResponse'
      title: ''
    Healthcheck:
      type: object
      properties:
        readiness_probe:
          $ref: '#/components/schemas/Probe'
        liveness_probe:
          $ref: '#/components/schemas/Probe'
    Base:
      type: object
      required:
      - id
      - created_at
      properties:
        id:
          type: string
          format: uuid
          readOnly: true
        created_at:
          type: string
          readOnly: true
          format: date-time
        updated_at:
          type: string
          readOnly: true
          format: date-time
    KedaTriggerAuthenticationRequest:
      title: KedaTriggerAuthenticationRequest
      x-stoplight:
        id: wp51tmturog3b
      type: object
      required:
      - name
      properties:
        name:
          type: string
          x-stoplight:
            id: ka4ltf1usuola
        config_yaml:
          type: string
          x-stoplight:
            id: 65znz6jclbew5
          description: Optional raw KEDA TriggerAuthentication YAML configuration.
    Probe:
      type:
      - object
      - 'null'
      properties:
        type:
          type: object
          properties:
            tcp:
              type:
              - object
              - 'null'
              properties:
                port:
                  type: integer
                host:
                  type:
                  - string
                  - 'null'
                  default: null
            http:
              type:
              - object
              - 'null'
              properties:
                path:
                  type: string
                  default: /
                scheme:
                  type: string
                  default: HTTP
                port:
                  type: integer
            exec:
              type:
              - object
              - 'null'
              description: Execute a command inside the container. The probe succeeds if the command exits with status code 0.
              properties:
                command:
                  type: array
                  description: 'Command to execute inside the container, specified as an array of strings. The first element is the executable, followed by its arguments. Example: ["sh", "-c", "test -f /tmp/healthy"]'
                  example:
                  - sh
                  - -c
                  - test -f /tmp/healthy
                  items:
                    type: string
                  minItems: 1
            grpc:
              type:
              - object
              - 'null'
              properties:
                service:
                  type:
                  - string
                  - 'null'
                  default: null
                port:
                  type: integer
        initial_delay_seconds:
          type: integer
          default: 30
        period_seconds:
          type: integer
          default: 10
        timeout_seconds:
          type: integer
          default: 5
        success_threshold:
          type: integer
          default: 1
        failure_threshold:
          type: integer
          default: 9
    ServicePortRequest:
      type: object
      properties:
        ports:
          type: array
          items:
            type: object
            required:
            - internal_port
            - publicly_accessible
            properties:
              id:
                type: string
                format: uuid
              name:
                type: string
              internal_port:
                type: integer
                example: 8080
                description: The listening port of your service.
              external_port:
                type: integer
                example: 8080
                description: The exposed port for your service. This is optional. If not set a default port will be used.
              publicly_accessible:
                type: boolean
                description: Expose the port to the world
              is_default:
                type: boolean
                description: is the default port to use for domain
              protocol:
                $ref: '#/components/schemas/PortProtocolEnum'
              public_path:
                type: string
                description: "Indicate the path or regex that must match for traffic to be accepted on your service\ni.e: /api/ will only accept http calls that start with /api/ \nOnly valid for publicly_accessible HTTP or GRPC ports."
              public_path_rewrite:
                type: string
                description: "Indicate the new path that will be used to reach your service after replacement\ni.e: public_path -> /(.*)  public_path_rewrite -> /api/$1 will append /api/ on all externaly requested url when reaching the service \nexternal/use url -> example.com/foobar  -> url seen by the service -> example.com/api/foobar\nOnly valid for publicly_accessible HTTP or GRPC ports."
    Label:
      type: object
      required:
      - key
      - value
      - propagate_to_cloud_provider
      properties:
        key:
          type: string
        value:
          type: string
        propagate_to_cloud_provider:
          type: boolean
    KedaScalerResponse:
      title: KedaScalerResponse
      x-stoplight:
        id: gaaqg32ivl48h
      allOf:
      - $ref: '#/components/schemas/Base'
      - type: object
        x-stoplight:
          id: 74tt3hgf95nfe
        required:
        - scaler_type
        - enabled
        - role
        properties:
          scaler_type:
            type: string
            x-stoplight:
              id: 1ckp76ziimkg4
          enabled:
            type: boolean
            x-stoplight:
              id: 0dnjwnlkuj3kp
          role:
            $ref: '#/components/schemas/KedaScalerRole'
          config_json:
            type:
            - object
            - 'null'
          config_yaml:
            type:
            - string
            - 'null'
          trigger_authentication:
            $ref: '#/components/schemas/Ked

# --- truncated at 32 KB (50 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/qovery/refs/heads/main/openapi/qovery-containers-api-openapi.yml