Azure Container Apps Container Apps API

Manage container apps

OpenAPI Specification

azure-container-apps-container-apps-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Azure Authentication Container Apps API
  description: Azure Container Apps allows you to run microservices and containerized applications on a serverless platform. The API provides operations for managing container apps, managed environments, revisions, jobs, and related resources through Azure Resource Manager.
  version: '2023-05-01'
  contact:
    name: Microsoft Azure
    url: https://azure.microsoft.com/en-us/products/container-apps
servers:
- url: https://management.azure.com
  description: Azure Resource Manager endpoint
security:
- azure_auth:
  - user_impersonation
tags:
- name: Container Apps
  description: Manage container apps
paths:
  /subscriptions/{subscriptionId}/providers/Microsoft.App/containerApps:
    get:
      operationId: ContainerApps_ListBySubscription
      summary: Azure Container Apps List Container Apps by Subscription
      description: Get the Container Apps in a given subscription.
      tags:
      - Container Apps
      parameters:
      - $ref: '#/components/parameters/SubscriptionId'
      - $ref: '#/components/parameters/ApiVersion'
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ContainerAppCollection'
              examples:
                ContainerApps_ListBySubscription200Example:
                  summary: Default ContainerApps_ListBySubscription 200 response
                  x-microcks-default: true
                  value:
                    id: /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/my-resource-group/providers/Microsoft.App/containerApps/my-container-app
                    name: my-container-app
                    type: Microsoft.App/containerApps
                    location: eastus
                    properties:
                      provisioningState: Succeeded
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps:
    get:
      operationId: ContainerApps_ListByResourceGroup
      summary: Azure Container Apps List Container Apps by Resource Group
      description: Get the Container Apps in a given resource group.
      tags:
      - Container Apps
      parameters:
      - $ref: '#/components/parameters/SubscriptionId'
      - $ref: '#/components/parameters/ResourceGroupName'
      - $ref: '#/components/parameters/ApiVersion'
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ContainerAppCollection'
              examples:
                ContainerApps_ListByResourceGroup200Example:
                  summary: Default ContainerApps_ListByResourceGroup 200 response
                  x-microcks-default: true
                  value:
                    id: /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/my-resource-group/providers/Microsoft.App/containerApps/my-container-app
                    name: my-container-app
                    type: Microsoft.App/containerApps
                    location: eastus
                    properties:
                      provisioningState: Succeeded
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  ? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}
  : get:
      operationId: ContainerApps_Get
      summary: Azure Container Apps Get a Container App
      description: Get the properties of a Container App.
      tags:
      - Container Apps
      parameters:
      - $ref: '#/components/parameters/SubscriptionId'
      - $ref: '#/components/parameters/ResourceGroupName'
      - name: containerAppName
        in: path
        required: true
        schema:
          type: string
        example: my-container-app
      - $ref: '#/components/parameters/ApiVersion'
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ContainerApp'
              examples:
                ContainerApps_Get200Example:
                  summary: Default ContainerApps_Get 200 response
                  x-microcks-default: true
                  value:
                    id: /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/my-resource-group/providers/Microsoft.App/containerApps/my-container-app
                    name: my-container-app
                    type: Microsoft.App/containerApps
                    location: eastus
                    properties:
                      provisioningState: Succeeded
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    put:
      operationId: ContainerApps_CreateOrUpdate
      summary: Azure Container Apps Create or Update a Container App
      description: Create or update a Container App.
      tags:
      - Container Apps
      parameters:
      - $ref: '#/components/parameters/SubscriptionId'
      - $ref: '#/components/parameters/ResourceGroupName'
      - name: containerAppName
        in: path
        required: true
        schema:
          type: string
        example: my-container-app
      - $ref: '#/components/parameters/ApiVersion'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ContainerApp'
      responses:
        '200':
          description: Container app updated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ContainerApp'
              examples:
                ContainerApps_CreateOrUpdate200Example:
                  summary: Default ContainerApps_CreateOrUpdate 200 response
                  x-microcks-default: true
                  value:
                    id: /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/my-resource-group/providers/Microsoft.App/containerApps/my-container-app
                    name: my-container-app
                    type: Microsoft.App/containerApps
                    location: eastus
                    properties:
                      provisioningState: Succeeded
        '201':
          description: Container app created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ContainerApp'
              examples:
                ContainerApps_CreateOrUpdate201Example:
                  summary: Default ContainerApps_CreateOrUpdate 201 response
                  x-microcks-default: true
                  value:
                    id: /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/my-resource-group/providers/Microsoft.App/containerApps/my-container-app
                    name: my-container-app
                    type: Microsoft.App/containerApps
                    location: eastus
                    properties:
                      provisioningState: Succeeded
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    patch:
      operationId: ContainerApps_Update
      summary: Azure Container Apps Update a Container App
      description: Patches a Container App using JSON merge patch.
      tags:
      - Container Apps
      parameters:
      - $ref: '#/components/parameters/SubscriptionId'
      - $ref: '#/components/parameters/ResourceGroupName'
      - name: containerAppName
        in: path
        required: true
        schema:
          type: string
        example: my-container-app
      - $ref: '#/components/parameters/ApiVersion'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ContainerApp'
      responses:
        '200':
          description: Container app updated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ContainerApp'
              examples:
                ContainerApps_Update200Example:
                  summary: Default ContainerApps_Update 200 response
                  x-microcks-default: true
                  value:
                    id: /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/my-resource-group/providers/Microsoft.App/containerApps/my-container-app
                    name: my-container-app
                    type: Microsoft.App/containerApps
                    location: eastus
                    properties:
                      provisioningState: Succeeded
        '202':
          description: Patch request accepted
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    delete:
      operationId: ContainerApps_Delete
      summary: Azure Container Apps Delete a Container App
      description: Delete a Container App.
      tags:
      - Container Apps
      parameters:
      - $ref: '#/components/parameters/SubscriptionId'
      - $ref: '#/components/parameters/ResourceGroupName'
      - name: containerAppName
        in: path
        required: true
        schema:
          type: string
        example: my-container-app
      - $ref: '#/components/parameters/ApiVersion'
      responses:
        '200':
          description: Container app deleted
        '202':
          description: Delete request accepted
        '204':
          description: Container app does not exist
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  ? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/listSecrets
  : post:
      operationId: ContainerApps_ListSecrets
      summary: Azure Container Apps List Secrets
      description: List secrets for a container app.
      tags:
      - Container Apps
      parameters:
      - $ref: '#/components/parameters/SubscriptionId'
      - $ref: '#/components/parameters/ResourceGroupName'
      - name: containerAppName
        in: path
        required: true
        schema:
          type: string
        example: my-container-app
      - $ref: '#/components/parameters/ApiVersion'
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  value:
                    type: array
                    items:
                      $ref: '#/components/schemas/ContainerAppSecret'
              examples:
                ContainerApps_ListSecrets200Example:
                  summary: Default ContainerApps_ListSecrets 200 response
                  x-microcks-default: true
                  value:
                    id: /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/my-resource-group/providers/Microsoft.App/containerApps/my-container-app
                    name: my-container-app
                    type: Microsoft.App/containerApps
                    location: eastus
                    properties:
                      provisioningState: Succeeded
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
components:
  schemas:
    ContainerAppCollection:
      type: object
      properties:
        value:
          type: array
          items:
            $ref: '#/components/schemas/ContainerApp'
        nextLink:
          type: string
          readOnly: true
    Template:
      type: object
      description: Container App versioned application definition.
      properties:
        revisionSuffix:
          type: string
        terminationGracePeriodSeconds:
          type: integer
          format: int64
        initContainers:
          type: array
          items:
            $ref: '#/components/schemas/Container'
        containers:
          type: array
          items:
            $ref: '#/components/schemas/Container'
        scale:
          type: object
          properties:
            minReplicas:
              type: integer
            maxReplicas:
              type: integer
            rules:
              type: array
              items:
                type: object
                properties:
                  name:
                    type: string
                  azureQueue:
                    type: object
                    properties:
                      queueName:
                        type: string
                      queueLength:
                        type: integer
                      auth:
                        type: array
                        items:
                          type: object
                          properties:
                            secretRef:
                              type: string
                            triggerParameter:
                              type: string
                  custom:
                    type: object
                    properties:
                      type:
                        type: string
                      metadata:
                        type: object
                        additionalProperties:
                          type: string
                      auth:
                        type: array
                        items:
                          type: object
                          properties:
                            secretRef:
                              type: string
                            triggerParameter:
                              type: string
                  http:
                    type: object
                    properties:
                      metadata:
                        type: object
                        additionalProperties:
                          type: string
                      auth:
                        type: array
                        items:
                          type: object
                          properties:
                            secretRef:
                              type: string
                            triggerParameter:
                              type: string
                  tcp:
                    type: object
                    properties:
                      metadata:
                        type: object
                        additionalProperties:
                          type: string
                      auth:
                        type: array
                        items:
                          type: object
                          properties:
                            secretRef:
                              type: string
                            triggerParameter:
                              type: string
        volumes:
          type: array
          items:
            type: object
            properties:
              name:
                type: string
              storageType:
                type: string
                enum:
                - AzureFile
                - EmptyDir
                - Secret
              storageName:
                type: string
              secrets:
                type: array
                items:
                  type: object
                  properties:
                    secretRef:
                      type: string
                    path:
                      type: string
              mountOptions:
                type: string
        serviceBinds:
          type: array
          items:
            type: object
            properties:
              serviceId:
                type: string
              name:
                type: string
    ContainerAppSecret:
      type: object
      properties:
        name:
          type: string
          readOnly: true
        value:
          type: string
          readOnly: true
    Container:
      type: object
      properties:
        image:
          type: string
        name:
          type: string
        command:
          type: array
          items:
            type: string
        args:
          type: array
          items:
            type: string
        env:
          type: array
          items:
            type: object
            properties:
              name:
                type: string
              value:
                type: string
              secretRef:
                type: string
        resources:
          type: object
          properties:
            cpu:
              type: number
            memory:
              type: string
            ephemeralStorage:
              type: string
              readOnly: true
        volumeMounts:
          type: array
          items:
            type: object
            properties:
              volumeName:
                type: string
              mountPath:
                type: string
              subPath:
                type: string
        probes:
          type: array
          items:
            type: object
            properties:
              failureThreshold:
                type: integer
              httpGet:
                type: object
                properties:
                  host:
                    type: string
                  httpHeaders:
                    type: array
                    items:
                      type: object
                      properties:
                        name:
                          type: string
                        value:
                          type: string
                  path:
                    type: string
                  port:
                    type: integer
                  scheme:
                    type: string
                    enum:
                    - HTTP
                    - HTTPS
              initialDelaySeconds:
                type: integer
              periodSeconds:
                type: integer
              successThreshold:
                type: integer
              tcpSocket:
                type: object
                properties:
                  host:
                    type: string
                  port:
                    type: integer
              terminationGracePeriodSeconds:
                type: integer
                format: int64
              timeoutSeconds:
                type: integer
              type:
                type: string
                enum:
                - Liveness
                - Readiness
                - Startup
    Secret:
      type: object
      properties:
        name:
          type: string
        value:
          type: string
        identity:
          type: string
        keyVaultUrl:
          type: string
    ContainerApp:
      type: object
      properties:
        id:
          type: string
          readOnly: true
        name:
          type: string
          readOnly: true
        type:
          type: string
          readOnly: true
        location:
          type: string
        tags:
          type: object
          additionalProperties:
            type: string
        identity:
          type: object
          properties:
            type:
              type: string
              enum:
              - None
              - SystemAssigned
              - UserAssigned
              - SystemAssigned,UserAssigned
            principalId:
              type: string
              readOnly: true
            tenantId:
              type: string
              readOnly: true
            userAssignedIdentities:
              type: object
              additionalProperties:
                type: object
                properties:
                  principalId:
                    type: string
                    readOnly: true
                  clientId:
                    type: string
                    readOnly: true
        properties:
          type: object
          properties:
            provisioningState:
              type: string
              readOnly: true
              enum:
              - InProgress
              - Succeeded
              - Failed
              - Canceled
              - Deleting
            managedEnvironmentId:
              type: string
              description: Resource ID of the Container App's environment.
            environmentId:
              type: string
              description: Resource ID of the environment.
            workloadProfileName:
              type: string
            latestRevisionName:
              type: string
              readOnly: true
            latestReadyRevisionName:
              type: string
              readOnly: true
            latestRevisionFqdn:
              type: string
              readOnly: true
            customDomainVerificationId:
              type: string
              readOnly: true
            outboundIpAddresses:
              type: array
              readOnly: true
              items:
                type: string
            eventStreamEndpoint:
              type: string
              readOnly: true
            configuration:
              $ref: '#/components/schemas/Configuration'
            template:
              $ref: '#/components/schemas/Template'
    Configuration:
      type: object
      description: Non-versioned Container App configuration properties.
      properties:
        secrets:
          type: array
          items:
            $ref: '#/components/schemas/Secret'
        activeRevisionsMode:
          type: string
          enum:
          - Multiple
          - Single
        ingress:
          type: object
          properties:
            fqdn:
              type: string
              readOnly: true
            external:
              type: boolean
              default: false
            targetPort:
              type: integer
            exposedPort:
              type: integer
            transport:
              type: string
              enum:
              - auto
              - http
              - http2
              - tcp
              default: auto
            traffic:
              type: array
              items:
                type: object
                properties:
                  revisionName:
                    type: string
                  weight:
                    type: integer
                  latestRevision:
                    type: boolean
                  label:
                    type: string
            customDomains:
              type: array
              items:
                type: object
                properties:
                  name:
                    type: string
                  bindingType:
                    type: string
                    enum:
                    - Disabled
                    - SniEnabled
                  certificateId:
                    type: string
            allowInsecure:
              type: boolean
              default: false
            ipSecurityRestrictions:
              type: array
              items:
                type: object
                properties:
                  name:
                    type: string
                  description:
                    type: string
                  ipAddressRange:
                    type: string
                  action:
                    type: string
                    enum:
                    - Allow
                    - Deny
            stickySessions:
              type: object
              properties:
                affinity:
                  type: string
                  enum:
                  - sticky
                  - none
            clientCertificateMode:
              type: string
              enum:
              - accept
              - require
              - ignore
            corsPolicy:
              type: object
              properties:
                allowedOrigins:
                  type: array
                  items:
                    type: string
                allowedMethods:
                  type: array
                  items:
                    type: string
                allowedHeaders:
                  type: array
                  items:
                    type: string
                exposeHeaders:
                  type: array
                  items:
                    type: string
                maxAge:
                  type: integer
                allowCredentials:
                  type: boolean
        registries:
          type: array
          items:
            type: object
            properties:
              server:
                type: string
              username:
                type: string
              passwordSecretRef:
                type: string
              identity:
                type: string
        dapr:
          type: object
          properties:
            enabled:
              type: boolean
            appId:
              type: string
            appProtocol:
              type: string
              enum:
              - http
              - grpc
            appPort:
              type: integer
            httpReadBufferSize:
              type: integer
            httpMaxRequestSize:
              type: integer
            logLevel:
              type: string
              enum:
              - info
              - debug
              - warn
              - error
            enableApiLogging:
              type: boolean
        maxInactiveRevisions:
          type: integer
  parameters:
    ResourceGroupName:
      name: resourceGroupName
      in: path
      required: true
      description: The name of the resource group.
      schema:
        type: string
    ApiVersion:
      name: api-version
      in: query
      required: true
      description: Client API version.
      schema:
        type: string
        default: '2023-05-01'
    SubscriptionId:
      name: subscriptionId
      in: path
      required: true
      description: The Azure subscription ID.
      schema:
        type: string
  securitySchemes:
    azure_auth:
      type: oauth2
      flows:
        implicit:
          authorizationUrl: https://login.microsoftonline.com/common/oauth2/authorize
          scopes:
            user_impersonation: Impersonate your user account