Skip to main content
POST
/
apps
/
{appId}
/
containers
Add Container Template
curl --request POST \
  --url https://api.bunny.net/mc/apps/{appId}/containers \
  --header 'AccessKey: <api-key>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "name": "<string>",
  "imageName": "<string>",
  "imageNamespace": "<string>",
  "imageTag": "<string>",
  "imageRegistryId": "<string>",
  "image": "<string>",
  "imageDigest": "<string>",
  "imagePullPolicy": "Always",
  "entryPoint": {
    "command": "<string>",
    "commandArray": [
      "<string>"
    ],
    "arguments": "<string>",
    "argumentsArray": [
      "<string>"
    ],
    "workingDirectory": "<string>"
  },
  "probes": {
    "startup": {
      "initialDelaySeconds": 10,
      "periodSeconds": 10,
      "timeoutSeconds": 7,
      "failureThreshold": 3,
      "successThreshold": 1,
      "httpGet": {
        "request": {
          "path": "<string>",
          "portNumber": 32768
        },
        "response": {
          "expectedStatusCode": "Continue"
        }
      },
      "tcpSocket": {
        "request": {
          "portNumber": 32768
        }
      },
      "grpc": {
        "request": {
          "portNumber": 32768,
          "serviceName": "<string>"
        }
      }
    },
    "readiness": {
      "initialDelaySeconds": 10,
      "periodSeconds": 10,
      "timeoutSeconds": 7,
      "failureThreshold": 3,
      "successThreshold": 1,
      "httpGet": {
        "request": {
          "path": "<string>",
          "portNumber": 32768
        },
        "response": {
          "expectedStatusCode": "Continue"
        }
      },
      "tcpSocket": {
        "request": {
          "portNumber": 32768
        }
      },
      "grpc": {
        "request": {
          "portNumber": 32768,
          "serviceName": "<string>"
        }
      }
    },
    "liveness": {
      "initialDelaySeconds": 10,
      "periodSeconds": 10,
      "timeoutSeconds": 7,
      "failureThreshold": 3,
      "successThreshold": 1,
      "httpGet": {
        "request": {
          "path": "<string>",
          "portNumber": 32768
        },
        "response": {
          "expectedStatusCode": "Continue"
        }
      },
      "tcpSocket": {
        "request": {
          "portNumber": 32768
        }
      },
      "grpc": {
        "request": {
          "portNumber": 32768,
          "serviceName": "<string>"
        }
      }
    }
  },
  "environmentVariables": [
    {
      "name": "<string>",
      "value": "<string>"
    }
  ],
  "endpoints": [
    {
      "displayName": "<string>",
      "cdn": {
        "isSslEnabled": true,
        "stickySessions": {
          "sessionHeaders": [
            "<string>"
          ],
          "enabled": true,
          "cookieName": "<string>"
        },
        "pullZoneId": 123,
        "portMappings": [
          {
            "containerPort": 32768,
            "exposedPort": 32768,
            "protocols": [
              "Tcp"
            ]
          }
        ]
      },
      "anycast": {
        "type": "IPv4",
        "portMappings": [
          {
            "containerPort": 32768,
            "exposedPort": 32768,
            "protocols": [
              "Tcp"
            ]
          }
        ]
      }
    }
  ],
  "volumeMounts": [
    {
      "name": "<string>",
      "mountPath": "<string>"
    }
  ]
}
'
{
  "id": "<string>",
  "name": "<string>",
  "packageId": "<string>",
  "image": "<string>",
  "imageName": "<string>",
  "imageNamespace": "<string>",
  "imageTag": "<string>",
  "imageRegistryId": "<string>",
  "imageDigest": "<string>",
  "imagePullPolicy": "Always",
  "entryPoint": {
    "command": "<string>",
    "commandArray": [
      "<string>"
    ],
    "arguments": "<string>",
    "argumentsArray": [
      "<string>"
    ],
    "workingDirectory": "<string>"
  },
  "probes": {
    "startup": {
      "initialDelaySeconds": 10,
      "periodSeconds": 10,
      "timeoutSeconds": 7,
      "failureThreshold": 3,
      "successThreshold": 1,
      "httpGet": {
        "request": {
          "path": "<string>",
          "portNumber": 32768
        },
        "response": {
          "expectedStatusCode": "Continue"
        }
      },
      "tcpSocket": {
        "request": {
          "portNumber": 32768
        }
      },
      "grpc": {
        "request": {
          "portNumber": 32768,
          "serviceName": "<string>"
        }
      }
    },
    "readiness": {
      "initialDelaySeconds": 10,
      "periodSeconds": 10,
      "timeoutSeconds": 7,
      "failureThreshold": 3,
      "successThreshold": 1,
      "httpGet": {
        "request": {
          "path": "<string>",
          "portNumber": 32768
        },
        "response": {
          "expectedStatusCode": "Continue"
        }
      },
      "tcpSocket": {
        "request": {
          "portNumber": 32768
        }
      },
      "grpc": {
        "request": {
          "portNumber": 32768,
          "serviceName": "<string>"
        }
      }
    },
    "liveness": {
      "initialDelaySeconds": 10,
      "periodSeconds": 10,
      "timeoutSeconds": 7,
      "failureThreshold": 3,
      "successThreshold": 1,
      "httpGet": {
        "request": {
          "path": "<string>",
          "portNumber": 32768
        },
        "response": {
          "expectedStatusCode": "Continue"
        }
      },
      "tcpSocket": {
        "request": {
          "portNumber": 32768
        }
      },
      "grpc": {
        "request": {
          "portNumber": 32768,
          "serviceName": "<string>"
        }
      }
    }
  },
  "environmentVariables": [
    {
      "name": "<string>",
      "value": "<string>"
    }
  ],
  "endpoints": [
    {
      "displayName": "<string>",
      "publicHost": "<string>",
      "type": "CDN",
      "isSslEnabled": true,
      "pullZoneId": "<string>",
      "portMappings": [
        {
          "containerPort": 123,
          "exposedPort": 123,
          "protocols": [
            "Tcp"
          ]
        }
      ],
      "stickySessions": {
        "enabled": true,
        "sessionHeaders": [
          "<string>"
        ],
        "cookieName": "<string>"
      },
      "internalIpAddresses": [
        {
          "address": "<string>",
          "region": "<string>"
        }
      ],
      "publicIpAddresses": [
        {
          "address": "<string>",
          "region": "<string>"
        }
      ]
    }
  ],
  "volumeMounts": [
    {
      "name": "<string>",
      "mountPath": "<string>"
    }
  ]
}

Authorizations

AccessKey
string
header
required

Please enter a valid personal API key.

Path Parameters

appId
string
required

The ID of the application

Body

The container template configuration

name
string
required
Required string length: 1 - 50
imageName
string
required
Minimum string length: 1
imageNamespace
string
required
Minimum string length: 1
imageTag
string
required
Minimum string length: 1
imageRegistryId
string
required
Minimum string length: 1
image
string | null
imageDigest
string | null
imagePullPolicy
enum<string>
Available options:
Always,
IfNotPresent
entryPoint
object
probes
object
environmentVariables
object[]
endpoints
object[]
volumeMounts
object[]

Response

Container template was successfully added.

Container template model

id
string
required
Minimum string length: 1
name
string
required
Minimum string length: 1
packageId
string
required
Minimum string length: 1
image
string
required
Minimum string length: 1
imageName
string
required
Minimum string length: 1
imageNamespace
string
required
Minimum string length: 1
imageTag
string
required
Minimum string length: 1
imageRegistryId
string
required
Minimum string length: 1
imageDigest
string
required
Minimum string length: 1
imagePullPolicy
enum<string>
required
Available options:
Always,
IfNotPresent
entryPoint
object
required
probes
object
required
environmentVariables
object[]
required
endpoints
object[]
required
volumeMounts
object[]
required