openapi: 3.1.0 info: title: Microsoft Azure Azure Container Registry API description: >- Azure Container Registry (ACR) is a managed Docker registry service based on the open-source Docker Registry 2.0. The REST API provides operations for managing repositories, tags, manifests, and registry operations, enabling automated container image builds, vulnerability scanning, and geo-replication for enterprise container deployments. ACR supports OCI artifacts and Helm charts in addition to Docker container images. version: '2023-07-01' contact: name: Microsoft Azure Support url: https://azure.microsoft.com/en-us/support/ email: azuresupport@microsoft.com license: name: Microsoft API License url: https://learn.microsoft.com/en-us/legal/ x-logo: url: https://azure.microsoft.com/svghandler/azure-logo.png servers: - url: https://{registryName}.azurecr.io description: Azure Container Registry data plane endpoint variables: registryName: default: myregistry description: The name of the Azure Container Registry. security: - oauth2: [] - basicAuth: [] tags: - name: Catalog description: Operations for listing the registry catalog - name: Manifests description: Operations for managing image manifests - name: Repositories description: Operations for managing repositories paths: /acr/v1/_catalog: get: operationId: Catalog_List summary: Microsoft Azure List Repositories description: List repositories in the registry. tags: - Catalog parameters: - name: last in: query description: Query parameter for the last item in the previous call. schema: type: string example: example_value - name: 'n' in: query description: Number of repositories to return. schema: type: integer example: 10 responses: '200': description: Successfully returned the list of repositories. content: application/json: schema: $ref: '#/components/schemas/Repositories' examples: CatalogList200Example: summary: Default Catalog_List 200 response x-microcks-default: true value: repositories: - example_value default: description: ACR error response. content: application/json: schema: $ref: '#/components/schemas/AcrErrors' examples: CatalogListdefaultExample: summary: Default Catalog_List default response x-microcks-default: true value: errors: - code: example_value message: example_value detail: example_value x-microcks-operation: delay: 0 dispatcher: FALLBACK /acr/v1/{name}: get: operationId: Repository_GetAttributes summary: Microsoft Azure Get Repository Attributes description: Get repository attributes. tags: - Repositories parameters: - $ref: '#/components/parameters/RepositoryNameParameter' responses: '200': description: Successfully returned repository attributes. content: application/json: schema: $ref: '#/components/schemas/RepositoryAttributes' examples: RepositoryGetattributes200Example: summary: Default Repository_GetAttributes 200 response x-microcks-default: true value: registry: example_value imageName: example_value createdTime: '2026-01-15T10:30:00Z' lastUpdateTime: '2026-01-15T10:30:00Z' manifestCount: 10 tagCount: 10 changeableAttributes: deleteEnabled: true writeEnabled: true listEnabled: true readEnabled: true teleportEnabled: true default: description: ACR error response. content: application/json: schema: $ref: '#/components/schemas/AcrErrors' examples: RepositoryGetattributesdefaultExample: summary: Default Repository_GetAttributes default response x-microcks-default: true value: errors: - code: example_value message: example_value detail: example_value x-microcks-operation: delay: 0 dispatcher: FALLBACK delete: operationId: Repository_Delete summary: Microsoft Azure Delete a Repository description: Delete the repository identified by name. tags: - Repositories parameters: - $ref: '#/components/parameters/RepositoryNameParameter' responses: '202': description: The repository was accepted for deletion. content: application/json: schema: $ref: '#/components/schemas/DeletedRepository' examples: RepositoryDelete202Example: summary: Default Repository_Delete 202 response x-microcks-default: true value: manifestsDeleted: - example_value tagsDeleted: - example_value default: description: ACR error response. content: application/json: schema: $ref: '#/components/schemas/AcrErrors' examples: RepositoryDeletedefaultExample: summary: Default Repository_Delete default response x-microcks-default: true value: errors: - code: example_value message: example_value detail: example_value x-microcks-operation: delay: 0 dispatcher: FALLBACK patch: operationId: Repository_UpdateAttributes summary: Microsoft Azure Update Repository Attributes description: Update the attribute identified by name where reference is the tag or digest. tags: - Repositories parameters: - $ref: '#/components/parameters/RepositoryNameParameter' requestBody: content: application/json: schema: $ref: '#/components/schemas/RepositoryChangeableAttributes' examples: RepositoryUpdateattributesRequestExample: summary: Default Repository_UpdateAttributes request x-microcks-default: true value: deleteEnabled: true writeEnabled: true listEnabled: true readEnabled: true teleportEnabled: true responses: '200': description: Successfully updated repository attributes. default: description: ACR error response. content: application/json: schema: $ref: '#/components/schemas/AcrErrors' examples: RepositoryUpdateattributesdefaultExample: summary: Default Repository_UpdateAttributes default response x-microcks-default: true value: errors: - code: example_value message: example_value detail: example_value x-microcks-operation: delay: 0 dispatcher: FALLBACK /acr/v1/{name}/_tags: get: operationId: Tag_List summary: Microsoft Azure List Tags description: List tags of a repository. tags: [] parameters: - $ref: '#/components/parameters/RepositoryNameParameter' - name: last in: query description: Query parameter for the last item in previous call. schema: type: string example: example_value - name: 'n' in: query description: Number of tags to return. schema: type: integer example: 10 - name: orderby in: query description: Orderby query parameter. schema: type: string enum: - timedesc - timeasc example: timedesc - name: digest in: query description: Filter by digest. schema: type: string example: example_value responses: '200': description: Successfully returned the list of tags. content: application/json: schema: $ref: '#/components/schemas/TagList' examples: TagList200Example: summary: Default Tag_List 200 response x-microcks-default: true value: registry: example_value imageName: example_value tags: - name: Example Title digest: example_value createdTime: '2026-01-15T10:30:00Z' lastUpdateTime: '2026-01-15T10:30:00Z' signed: true default: description: ACR error response. content: application/json: schema: $ref: '#/components/schemas/AcrErrors' examples: TagListdefaultExample: summary: Default Tag_List default response x-microcks-default: true value: errors: - code: example_value message: example_value detail: example_value x-microcks-operation: delay: 0 dispatcher: FALLBACK /acr/v1/{name}/_tags/{reference}: get: operationId: Tag_GetAttributes summary: Microsoft Azure Get Tag Attributes description: Get tag attributes by tag. tags: [] parameters: - $ref: '#/components/parameters/RepositoryNameParameter' - name: reference in: path required: true description: Tag name. schema: type: string example: example_value responses: '200': description: Successfully returned tag attributes. content: application/json: schema: $ref: '#/components/schemas/TagAttributes' examples: TagGetattributes200Example: summary: Default Tag_GetAttributes 200 response x-microcks-default: true value: registry: example_value imageName: example_value tag: name: Example Title digest: example_value createdTime: '2026-01-15T10:30:00Z' lastUpdateTime: '2026-01-15T10:30:00Z' signed: true default: description: ACR error response. content: application/json: schema: $ref: '#/components/schemas/AcrErrors' examples: TagGetattributesdefaultExample: summary: Default Tag_GetAttributes default response x-microcks-default: true value: errors: - code: example_value message: example_value detail: example_value x-microcks-operation: delay: 0 dispatcher: FALLBACK delete: operationId: Tag_Delete summary: Microsoft Azure Delete a Tag description: Delete tag by name. tags: [] parameters: - $ref: '#/components/parameters/RepositoryNameParameter' - name: reference in: path required: true description: Tag name. schema: type: string example: example_value responses: '202': description: The tag was accepted for deletion. default: description: ACR error response. content: application/json: schema: $ref: '#/components/schemas/AcrErrors' examples: TagDeletedefaultExample: summary: Default Tag_Delete default response x-microcks-default: true value: errors: - code: example_value message: example_value detail: example_value x-microcks-operation: delay: 0 dispatcher: FALLBACK /acr/v1/{name}/_manifests: get: operationId: Manifests_List summary: Microsoft Azure List Manifests description: List manifests of a repository. tags: - Manifests parameters: - $ref: '#/components/parameters/RepositoryNameParameter' - name: last in: query description: Query parameter for the last item in previous call. schema: type: string example: example_value - name: 'n' in: query description: Number of manifests to return. schema: type: integer example: 10 - name: orderby in: query description: Orderby query parameter. schema: type: string enum: - timedesc - timeasc example: timedesc responses: '200': description: Successfully returned the list of manifests. content: application/json: schema: $ref: '#/components/schemas/ManifestList' examples: ManifestsList200Example: summary: Default Manifests_List 200 response x-microcks-default: true value: registry: example_value imageName: example_value manifests: - digest: example_value imageSize: 10 createdTime: '2026-01-15T10:30:00Z' lastUpdateTime: '2026-01-15T10:30:00Z' architecture: example_value os: example_value mediaType: example_value configMediaType: example_value tags: {} default: description: ACR error response. content: application/json: schema: $ref: '#/components/schemas/AcrErrors' examples: ManifestsListdefaultExample: summary: Default Manifests_List default response x-microcks-default: true value: errors: - code: example_value message: example_value detail: example_value x-microcks-operation: delay: 0 dispatcher: FALLBACK /v2/{name}/manifests/{reference}: get: operationId: Manifests_Get summary: Microsoft Azure Get a Manifest description: Get the manifest identified by name and reference. tags: - Manifests parameters: - $ref: '#/components/parameters/RepositoryNameParameter' - name: reference in: path required: true description: A tag or a digest, pointing to a specific image. schema: type: string example: example_value - name: Accept in: header description: Accept header string delimited by comma. schema: type: string example: example_value responses: '200': description: Successfully returned the manifest. content: application/vnd.docker.distribution.manifest.v2+json: schema: $ref: '#/components/schemas/ManifestWrapper' examples: ManifestsGet200Example: summary: Default Manifests_Get 200 response x-microcks-default: true value: annotations: example_value application/vnd.oci.image.manifest.v1+json: schema: $ref: '#/components/schemas/ManifestWrapper' examples: ManifestsGet200Example: summary: Default Manifests_Get 200 response x-microcks-default: true value: annotations: example_value default: description: ACR error response. content: application/json: schema: $ref: '#/components/schemas/AcrErrors' examples: ManifestsGetdefaultExample: summary: Default Manifests_Get default response x-microcks-default: true value: errors: - code: example_value message: example_value detail: example_value x-microcks-operation: delay: 0 dispatcher: FALLBACK put: operationId: Manifests_Create summary: Microsoft Azure Put a Manifest description: Put the manifest identified by name and reference. tags: - Manifests parameters: - $ref: '#/components/parameters/RepositoryNameParameter' - name: reference in: path required: true description: A tag or a digest, pointing to a specific image. schema: type: string example: example_value requestBody: required: true content: application/vnd.docker.distribution.manifest.v2+json: schema: $ref: '#/components/schemas/Manifest' examples: ManifestsCreateRequestExample: summary: Default Manifests_Create request x-microcks-default: true value: schemaVersion: 2 mediaType: example_value config: mediaType: example_value size: 10 digest: example_value urls: - {} annotations: example_value layers: - mediaType: example_value size: 10 digest: example_value urls: {} annotations: example_value responses: '201': description: The manifest was put successfully. headers: Docker-Content-Digest: schema: type: string description: Identifies the docker upload UUID for the current request. default: description: ACR error response. content: application/json: schema: $ref: '#/components/schemas/AcrErrors' examples: ManifestsCreatedefaultExample: summary: Default Manifests_Create default response x-microcks-default: true value: errors: - code: example_value message: example_value detail: example_value x-microcks-operation: delay: 0 dispatcher: FALLBACK delete: operationId: Manifests_Delete summary: Microsoft Azure Delete a Manifest description: Delete the manifest identified by name and reference. tags: - Manifests parameters: - $ref: '#/components/parameters/RepositoryNameParameter' - name: reference in: path required: true description: Digest of a manifest. schema: type: string example: example_value responses: '202': description: The manifest was accepted for deletion. default: description: ACR error response. content: application/json: schema: $ref: '#/components/schemas/AcrErrors' examples: ManifestsDeletedefaultExample: summary: Default Manifests_Delete default response x-microcks-default: true value: errors: - code: example_value message: example_value detail: example_value x-microcks-operation: delay: 0 dispatcher: FALLBACK components: securitySchemes: oauth2: type: oauth2 flows: implicit: authorizationUrl: https://login.microsoftonline.com/common/oauth2/authorize scopes: {} description: Azure Active Directory OAuth2 Flow basicAuth: type: http scheme: basic description: Basic authentication using registry credentials. parameters: RepositoryNameParameter: name: name in: path required: true description: Name of the image (including the namespace). schema: type: string schemas: Repositories: type: object description: List of repositories. properties: repositories: type: array items: type: string description: List of repository names. example: [] RepositoryAttributes: type: object description: Repository attributes. properties: registry: type: string description: Registry name. example: example_value imageName: type: string description: Image name. example: example_value createdTime: type: string format: date-time description: Image created time. example: '2026-01-15T10:30:00Z' lastUpdateTime: type: string format: date-time description: Image last update time. example: '2026-01-15T10:30:00Z' manifestCount: type: integer description: Number of manifests. example: 10 tagCount: type: integer description: Number of tags. example: 10 changeableAttributes: $ref: '#/components/schemas/RepositoryChangeableAttributes' RepositoryChangeableAttributes: type: object description: Changeable attributes for a repository. properties: deleteEnabled: type: boolean description: Whether delete is enabled. example: true writeEnabled: type: boolean description: Whether write is enabled. example: true listEnabled: type: boolean description: Whether list is enabled. example: true readEnabled: type: boolean description: Whether read is enabled. example: true teleportEnabled: type: boolean description: Whether teleport is enabled. example: true DeletedRepository: type: object description: Deleted repository result. properties: manifestsDeleted: type: array items: type: string description: Digests of manifests deleted. example: [] tagsDeleted: type: array items: type: string description: Tags deleted. example: [] TagList: type: object description: Tag list result. properties: registry: type: string description: Registry name. example: example_value imageName: type: string description: Image name. example: example_value tags: type: array items: $ref: '#/components/schemas/TagAttributesBase' description: List of tag attributes. example: [] TagAttributes: type: object description: Tag attributes result. properties: registry: type: string example: example_value imageName: type: string example: example_value tag: $ref: '#/components/schemas/TagAttributesBase' TagAttributesBase: type: object description: Tag attribute details. properties: name: type: string description: Tag name. example: Example Title digest: type: string description: Tag digest. example: example_value createdTime: type: string format: date-time example: '2026-01-15T10:30:00Z' lastUpdateTime: type: string format: date-time example: '2026-01-15T10:30:00Z' signed: type: boolean description: Whether the tag is signed. example: true changeableAttributes: $ref: '#/components/schemas/RepositoryChangeableAttributes' ManifestList: type: object description: List of manifests. properties: registry: type: string example: example_value imageName: type: string example: example_value manifests: type: array items: $ref: '#/components/schemas/ManifestAttributesBase' example: [] ManifestAttributesBase: type: object description: Manifest attribute details. properties: digest: type: string description: Manifest digest. example: example_value imageSize: type: integer format: int64 description: Image size. example: 10 createdTime: type: string format: date-time example: '2026-01-15T10:30:00Z' lastUpdateTime: type: string format: date-time example: '2026-01-15T10:30:00Z' architecture: type: string description: CPU architecture. example: example_value os: type: string description: Operating system. example: example_value mediaType: type: string description: Media type. example: example_value configMediaType: type: string description: Config media type. example: example_value tags: type: array items: type: string description: List of tags. example: [] changeableAttributes: $ref: '#/components/schemas/RepositoryChangeableAttributes' Manifest: type: object description: Docker V2 manifest. properties: schemaVersion: type: integer description: Schema version. enum: - 2 example: 2 mediaType: type: string description: Media type. example: example_value config: $ref: '#/components/schemas/Descriptor' layers: type: array items: $ref: '#/components/schemas/Descriptor' description: List of layer descriptors. example: [] ManifestWrapper: type: object description: Manifest wrapper. allOf: - $ref: '#/components/schemas/Manifest' properties: annotations: type: object additionalProperties: type: string description: Additional information about the manifest. example: example_value Descriptor: type: object description: Docker V2 image layer descriptor. properties: mediaType: type: string description: Layer media type. example: example_value size: type: integer format: int64 description: Layer size. example: 10 digest: type: string description: Layer digest. example: example_value urls: type: array items: type: string format: uri description: Specifies a list of URLs from which this object may be downloaded. example: https://www.example.com annotations: type: object additionalProperties: type: string description: Additional information about the descriptor. example: example_value AcrErrors: type: object description: ACR error response. properties: errors: type: array items: $ref: '#/components/schemas/AcrErrorInfo' description: Array of detailed error information. example: [] AcrErrorInfo: type: object description: Error information. properties: code: type: string description: Error code. example: example_value message: type: string description: Error message. example: example_value detail: type: object description: Error details. example: example_value