Zot

Zot Zot API

The Zot API from Zot — 6 operation(s) for zot.

OpenAPI Specification

zot-zot-api-openapi.yml Raw ↑
swagger: '2.0'
info:
  contact: {}
  description: APIs for Open Container Initiative Distribution Specification
  license:
    name: Apache 2.0
    url: http://www.apache.org/licenses/LICENSE-2.0.html
  title: Open Container Initiative Distribution Specification Blobs Zot API
  version: v1.1.1
tags:
- name: Zot
paths:
  /v2/_zot/ext/cosign:
    post:
      consumes:
      - application/octet-stream
      description: Upload cosign public keys for verifying signatures
      parameters:
      - description: Public key content
        in: body
        name: requestBody
        required: true
        schema:
          type: string
      produces:
      - application/json
      responses:
        '200':
          description: ok
          schema:
            type: string
        '400':
          description: bad request
          schema:
            type: string
        '413':
          description: request entity too large
          schema:
            type: string
        '500':
          description: internal server error
          schema:
            type: string
      summary: Upload cosign public keys for verifying signatures
      tags:
      - Zot
  /v2/_zot/ext/mgmt:
    get:
      consumes:
      - application/json
      description: Get current server configuration
      parameters:
      - description: specify resource
        enum:
        - config
        in: query
        name: resource
        type: string
      produces:
      - application/json
      responses:
        '200':
          description: OK
          schema:
            $ref: '#/definitions/extensions.StrippedConfig'
        '500':
          description: internal server error
          schema:
            type: string
      summary: Get current server configuration
      tags:
      - Zot
  /v2/_zot/ext/notation:
    post:
      consumes:
      - application/octet-stream
      description: Upload notation certificates for verifying signatures
      parameters:
      - description: truststore type
        in: query
        name: truststoreType
        type: string
      - description: Certificate content
        in: body
        name: requestBody
        required: true
        schema:
          type: string
      produces:
      - application/json
      responses:
        '200':
          description: ok
          schema:
            type: string
        '400':
          description: bad request
          schema:
            type: string
        '413':
          description: request entity too large
          schema:
            type: string
        '500':
          description: internal server error
          schema:
            type: string
      summary: Upload notation certificates for verifying signatures
      tags:
      - Zot
  /v2/_zot/ext/userprefs:
    put:
      consumes:
      - application/json
      description: Add bookmarks/stars info
      parameters:
      - description: specify action
        enum:
        - toggleBookmark
        - toggleStar
        in: query
        name: action
        required: true
        type: string
      - description: repository name
        in: query
        name: repo
        required: true
        type: string
      produces:
      - application/json
      responses:
        '200':
          description: ok
          schema:
            type: string
        '400':
          description: bad request".
          schema:
            type: string
        '403':
          description: forbidden
          schema:
            type: string
        '404':
          description: not found
          schema:
            type: string
        '500':
          description: internal server error
          schema:
            type: string
      summary: Add bookmarks/stars info
      tags:
      - Zot
  /zot/auth/apikey:
    delete:
      consumes:
      - application/json
      description: Revokes one current user API key based on given key ID
      parameters:
      - description: api token id (UUID)
        in: query
        name: id
        required: true
        type: string
      produces:
      - application/json
      responses:
        '200':
          description: ok
          schema:
            type: string
        '400':
          description: bad request
          schema:
            type: string
        '401':
          description: unauthorized
          schema:
            type: string
        '500':
          description: internal server error
          schema:
            type: string
      summary: Revokes one current user API key
      tags:
      - Zot
    get:
      consumes:
      - application/json
      description: Get list of all API keys for a logged in user
      produces:
      - application/json
      responses:
        '200':
          description: ok
          schema:
            type: string
        '401':
          description: unauthorized
          schema:
            type: string
        '500':
          description: internal server error
          schema:
            type: string
      summary: Get list of API keys for the current user
      tags:
      - Zot
    post:
      consumes:
      - application/json
      description: Can create an api key for a logged in user, based on the provided label and scopes.
      parameters:
      - description: api token id (UUID)
        in: body
        name: id
        required: true
        schema:
          $ref: '#/definitions/api.APIKeyPayload'
      produces:
      - application/json
      responses:
        '201':
          description: created
          schema:
            type: string
        '400':
          description: bad request
          schema:
            type: string
        '401':
          description: unauthorized
          schema:
            type: string
        '413':
          description: request entity too large
          schema:
            type: string
        '500':
          description: internal server error
          schema:
            type: string
      summary: Create an API key for the current user
      tags:
      - Zot
  /zot/auth/logout:
    post:
      consumes:
      - application/json
      description: 'Logout by removing current session. For OIDC providers that advertise an

        `end_session_endpoint` in their discovery metadata (OpenID Connect

        RP-Initiated Logout 1.0), the response body contains an `endSessionUrl`

        the client should navigate to in order to terminate the session at the IdP.'
      produces:
      - application/json
      responses:
        '200':
          description: OK
          schema:
            $ref: '#/definitions/api.LogoutResponse'
        '500':
          description: internal server error
          schema:
            type: string
      summary: Logout by removing current session
      tags:
      - Zot
definitions:
  api.LogoutResponse:
    properties:
      endSessionUrl:
        type: string
    type: object
  api.APIKeyPayload:
    properties:
      expirationDate:
        type: string
      label:
        type: string
      scopes:
        items:
          type: string
        type: array
    type: object
  extensions.HTPasswd:
    properties:
      path:
        type: string
    type: object
  extensions.Auth:
    properties:
      apikey:
        type: boolean
      bearer:
        $ref: '#/definitions/extensions.BearerConfig'
      htpasswd:
        $ref: '#/definitions/extensions.HTPasswd'
      ldap:
        properties:
          address:
            type: string
        type: object
      openid:
        $ref: '#/definitions/extensions.OpenIDConfig'
    type: object
  extensions.OpenIDProviderConfig:
    properties:
      name:
        type: string
    type: object
  extensions.BearerConfig:
    properties:
      realm:
        type: string
      service:
        type: string
    type: object
  extensions.OpenIDConfig:
    properties:
      providers:
        additionalProperties:
          $ref: '#/definitions/extensions.OpenIDProviderConfig'
        type: object
    type: object
  extensions.StrippedConfig:
    properties:
      binaryType:
        type: string
      commit:
        type: string
      distSpecVersion:
        type: string
      http:
        properties:
          auth:
            $ref: '#/definitions/extensions.Auth'
        type: object
      releaseTag:
        type: string
    type: object