openapi: 3.1.0 info: title: JFrog Artifactory Query Language (AQL) AQL Search Artifactory Extensions API description: Advanced search API using Artifactory Query Language (AQL), a SQL-like query language for finding and filtering artifacts, builds, and entries in JFrog Artifactory. AQL provides powerful querying capabilities including domain queries, field filtering, sorting, limiting, and inclusion of related entities. version: 7.x contact: name: JFrog Support url: https://jfrog.com/support/ email: support@jfrog.com license: name: Proprietary url: https://jfrog.com/terms-of-service/ termsOfService: https://jfrog.com/terms-of-service/ servers: - url: https://{server}/artifactory description: JFrog Artifactory Server variables: server: default: myserver.jfrog.io description: Your JFrog Platform deployment URL security: - BearerAuth: [] - ApiKeyAuth: [] - BasicAuth: [] tags: - name: Artifactory Extensions description: Artifactory-specific Docker API extensions paths: /api/docker/{repoKey}/v2/promote: post: operationId: promoteDockerImage summary: JFrog Artifactory Promote Docker Image description: Artifactory-specific extension to promote a Docker image from one repository to another. This is useful for promoting images through staging environments (e.g., dev to staging to production). tags: - Artifactory Extensions parameters: - name: repoKey in: path required: true description: Source repository key schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/DockerPromoteRequest' responses: '200': description: Image promoted successfully '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '401': $ref: '#/components/responses/Unauthorized' '403': description: Insufficient permissions content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '404': $ref: '#/components/responses/NotFound' components: schemas: ErrorResponse: type: object properties: errors: type: array items: type: object properties: code: type: string description: Error code message: type: string description: Error message detail: type: string description: Additional error details DockerPromoteRequest: type: object required: - targetRepo - dockerRepository properties: targetRepo: type: string description: Target repository key to promote to example: docker-prod-local dockerRepository: type: string description: Docker repository name (image path) example: myproject/myimage targetDockerRepository: type: string description: Target Docker repository name. If not specified, uses the same name as the source. example: myproject/myimage tag: type: string description: Tag to promote. If not specified, all tags are promoted. example: 1.0.0 targetTag: type: string description: Target tag name. If not specified, uses the same tag. example: latest copy: type: boolean description: If true, copies instead of moves. Default is false (move). default: false responses: NotFound: description: Resource not found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' Unauthorized: description: Authentication required content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' securitySchemes: BearerAuth: type: http scheme: bearer description: Access token authentication ApiKeyAuth: type: apiKey in: header name: X-JFrog-Art-Api description: API key authentication via header BasicAuth: type: http scheme: basic description: HTTP Basic authentication externalDocs: description: Artifactory Query Language Documentation url: https://jfrog.com/help/r/jfrog-artifactory-documentation/artifactory-query-language