検索

Red Hat Quay API ガイド

download PDF
Red Hat Quay 3

Red Hat Quay API ガイド

Red Hat OpenShift Documentation Team

概要

Red Hat Quay API の使用

はじめに

Red Hat Quay アプリケーションプログラミングインターフェイス (API) は、Red Hat Quay 機能を追加、表示、変更、および削除するための一連のエンドポイントで設定される OAuth 2 RESTful API です。

Red Hat Quay は Semantic Versioning (SemVer) 仕様 に準拠しています。次の条件は、メジャー、マイナー、およびパッチリリースごとに満たされます。

  • Red Hat Quay のメジャーバージョンには、互換性のない API の変更が含まれている場合があります。たとえば、Red Hat Quay 2.0 の API は Red Hat Quay 3.0 とは異なります。
  • Red Hat Quay のマイナーバージョン (3.y など) は、下位互換性のある方法で機能を追加します。
  • Red Hat Quay のパッチバージョン (3.y.z など) には、下位互換性のあるバグ修正が導入されています。

現在、Red Hat Quay は 3.y.z リリースに api/v1 エンドポイントを使用しています。

このガイドでは、api/v1 エンドポイントと、それらのエンドポイントにアクセスするためのブラウザーベースの例について説明します。

第1章 Red Hat Quay API の使用

Red Hat Quay は完全な OAuth 2、RESTful API を提供します。[OAuth 2] RESTful API には次の利点があります。

  • これは、Red Hat Quay ホストのエンドポイント /api/v1 から利用できます。たとえば、https://<quay-server.example.com>/api/v1 です。
  • Swagger UI を有効にすると、ユーザーがブラウザー経由でエンドポイントに接続し、Red Hat Quay の設定を GETPOSTDELETEPUT できるようになります。
  • API 呼び出しを実行して OAuth トークンを使用するアプリケーションからアクセスできます。
  • データを JSON 形式で送受信します。

次のセクションでは、Red Hat Quay API にアクセスしてデプロイメントで使用できるようにする方法について説明します。

1.1. Quay.io からの Quay API へのアクセス

独自の Red Hat Quay クラスターがまだ実行されていない場合に、Web ブラウザーから Quay.io で利用可能な Red Hat Quay API を確認できます。

https://docs.quay.io/api/swagger/

表示される API Explorer には Quay.io API エンドポイントが表示されます。Quay.io で有効でない Red Hat Quay 機能のスーパーユーザー API エンドポイントまたはエンドポイント (リポジトリーミラーリングなど) は表示されません。

API Explorer から、以下に関する情報を取得し、変更できます。

  • 請求、サブスクリプション、およびプラン
  • リポジトリービルドおよびビルドトリガー
  • エラーメッセージおよびグローバルメッセージ
  • リポジトリーイメージ、マニフェスト、パーミッション、通知、脆弱性、およびイメージの署名
  • 使用状況に関するログ
  • 組織、メンバー、および OAuth アプリケーション
  • ユーザーとロボットアカウント
  • その他

エンドポイントを選択して開き、エンドポイントの各部分のモデルスキーマを表示します。エンドポイントを開き、必要なパラメーター (リポジトリー名またはイメージなど) を入力し、Try it out! ボタンを選択して Quay.io エンドポイントに関連する設定を照会するか、変更します。

1.2. v1 OAuth アクセストークンの作成

OAuth アクセストークンは、保護されたリソースへのセキュアなアクセスを可能にする認証情報です。Red Hat Quay では、組織の API エンドポイントにアクセスする前に、OAuth アクセストークンを作成する必要があります。

OAuth アクセストークンを作成するには、次の手順を実行します。

前提条件

  • Red Hat Quay に管理者としてログインしている。

手順

  1. メインページで、Organization を選択します。
  2. ナビゲーションペインで、Applications を選択します。
  3. Create New Application をクリックし、新しいアプリケーション名を入力して、Enter を押します。
  4. OAuth Applications ページで、アプリケーションの名前を選択します。
  5. オプション: 以下の情報を入力します。

    1. Application Name
    2. Homepage URL
    3. Description
    4. Avatar E-mail
    5. Redirect/Callback URL prefix
  6. ナビゲーションペインで、Generate Token を選択します。
  7. 次のオプションのチェックボックスをオンにします。

    1. Administer Organization
    2. Administer Repositories
    3. Create Repositories
    4. View all visible repositories
    5. Read/Write to any accessible repositories
    6. Super User Access
    7. Administer User
    8. Read User Information
  8. Generate Access Token をクリックします。新しいページにリダイレクトされます。
  9. 許可する権限を確認し、Authorize Application をクリックします。Authorize Application をクリックして決定した内容を確定します。
  10. Access Token ページにリダイレクトされます。アクセストークンをコピーして保存します。

    重要

    これは、アクセストークンをコピーして保存する唯一の機会です。このページを離れると再取得できません。

1.3. OCI リファラー OAuth アクセストークンの作成

場合によっては、OCI リファラー OAuth アクセストークンを作成することを推奨します。このトークンは、リポジトリー配下にあるマニフェストの OCI リファラーをリスト表示するために使用します。

手順

  1. config.yaml ファイルを更新して、FEATURE_REFERRERS_API: true フィールドを含めます。以下に例を示します。

    # ...
    FEATURE_REFERRERS_API: true
    # ...
  2. 次のコマンドを入力し、認証情報を Base64 でエンコードします。

    $ echo -n '<username>:<password>' | base64

    出力例

    abcdeWFkbWluOjE5ODlraWROZXQxIQ==

  3. 次のコマンドを入力して、base64 でエンコードされた文字列を使用し、URL エンドポイントを Red Hat Quay サーバーに変更します。

    $ curl --location '<quay-server.example.com>/v2/auth?service=<quay-server.example.com>&scope=repository:quay/listocireferrs:pull,push' --header 'Authorization: Basic <base64_username:password_encode_token>' -k | jq

    出力例

    {
      "token": "eyJhbGciOiJSUzI1NiIsImtpZCI6Ijl5RWNtWmdiZ0l6czBBZW16emhTMHM1R0g2RDJnV2JGUTdUNGZYand4MlUiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheS1zZXJ2ZXIuZXhhbXBsZS5jb20iLCJuYmYiOjE3MjEzMzAzNDYsImlhdCI6MTcyMTMzMDM0NiwiZXhwIjoxNzIxMzMzOTQ2LCJzdWIiOiJxdWF5YWRtaW4iLCJhY2Nlc3MiOlt7InR5cGUiOiJyZXBvc2l0b3J5IiwibmFtZSI6InF1YXkvbGlzdG9jaXJlZmVycnMiLCJhY3Rpb25zIjpbXX1dLCJjb250ZXh0Ijp7InZlcnNpb24iOjIsImVudGl0eV9raW5kIjoidXNlciIsImVudGl0eV9yZWZlcmVuY2UiOiJkZjI1M2QyNC0zZWUwLTRkODItOTcxYi1hZGYxMWYyNzBlM2IiLCJraW5kIjoidXNlciIsInVzZXIiOiJxdWF5YWRtaW4iLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InF1YXkvbGlzdG9jaXJlZmVycnMiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.sBR765ea-E41b2SfiIS36qoOmIZ6DEn9hvsCq3cszn6umlnKiBkc1jq6O1KlxtIhPdf8m8-xtLMJakxkKST4mJg5CHR5WG2AVExuT6nCHg9KuzOZTkafMJeUzC4lxRsrdgKXyGUaYONOALf6bW_IebSIOOVt55m83-KVz5NMHSov9VmQlPCfGnWS3pq3bG-nUaLhGRuSKc1EoGgnKlULNr9gAgzwBmB7-MGioP7NL5_IQtrbjFyBdckQuJcpcwNK78gb8MQIwI-e6WMvBT94pQkdD6bibo6zpFayFKSc6PsoO4Z4PjiON6vnD4kqEpX6rw5Yj7unv4RKjA_iHG-BoQ"
    }

1.4. OAuth アクセストークンの再割り当て

組織管理者は、特定の権限を持つ他のユーザーによって作成されるように OAuth API トークンを割り当てることができます。これにより、OAuth API トークンを作成する組織管理者権限を持たないユーザーがトークンを使用した場合でも、監査ログが正確に反映されるようになります。

注記

次の手順は、現在の Red Hat Quay UI でのみ機能します。現在、Red Hat Quay v2 UI には実装されていません。

前提条件

  • 組織管理者権限を持つユーザーとしてログインしており、OAuth API トークンを割り当てることができる。

    注記

    OAuth API トークンは、認可ではなく認証に使用されます。たとえば、OAuth トークンを割り当てるユーザーは、管理 API エンドポイントを使用するために Admin チームロールを持っている必要があります。詳細は、リポジトリーへのアクセスの管理 を参照してください。

手順

  1. オプション: まだ更新していない場合は、Red Hat Quay config.yaml ファイルを更新して、FEATURE_ASSIGN_OAUTH_TOKEN: true フィールドを含めます。

    # ...
    FEATURE_ASSIGN_OAUTH_TOKEN: true
    # ...
  2. オプション: Red Hat Quay レジストリーを再起動します。
  3. 組織管理者として Red Hat Quay レジストリーにログインします。
  4. OAuth トークンを作成した組織の名前をクリックします。
  5. ナビゲーションペインで、Applications をクリックします。
  6. 適切なアプリケーション名をクリックします。
  7. ナビゲーションペインで、Applications をクリックします。
  8. Assign another user をクリックし、OAuth トークンを引き継ぐユーザーの名前を入力します。
  9. 新しいユーザーに付与する必要な権限のボックスをオンにします。たとえば、新しいユーザーにリポジトリーの作成のみを許可する場合は、Create Repositories クリックします。

    重要

    権限の制御は、組織内のチームロールによって定義され、ここで選択したオプションに関係なく設定する必要があります。たとえば、OAuth トークンを割り当てるユーザーは、管理 API エンドポイントを使用するために Admin チームロールを持っている必要があります。

    Super User Access ボックスをオンにしただけでは、この権限がユーザーに実際に付与されるわけではありません。config.yaml ファイルでスーパーユーザーを設定する必要があり、かつ ここでボックスをオンにする必要があります。

  10. Assign token をクリックします。ポップアップボックスに、認可を確認する次のメッセージと、承認される権限が表示されます。

    This will prompt user <username> to generate a token with the following permissions:
    repo:create
  11. ポップアップボックスで Assign token をクリックします。新しいページにリダイレクトされ、次のメッセージが表示されます。

    Token assigned successfully

検証

  1. OAuth トークンを再割り当てした後、割り当てられたユーザーがトークンを受け入れて、API エンドポイントの使用に必要なベアラートークンを受け取る必要があります。割り当てられたユーザーに、Red Hat Quay レジストリーにログインするよう依頼します。
  2. ユーザーは、ログインしたら、Users and Organizations の下にある自分のユーザー名をクリックする必要があります。
  3. ナビゲーションペインで、External Logins And Applications をクリックする必要があります。
  4. Authorized Applications の下で、Authorize Application をクリックしてアプリケーションを確認する必要があります。新しいページに移動し、Authorize Application をクリックして再確認する必要があります。
  5. ユーザーは、ベアラートークンが表示される新しいページにリダイレクトされます。このベアラートークンは再度表示することはできないため、保存する必要があります。

1.5. Web ブラウザーからの Quay API へのアクセス

Swagger を有効にし、Web ブラウザーを使用して独自の Red Hat Quay インスタンスの API にアクセスできます。この URL は、Red Hat Quay API を UI および以下の URL 経由で公開します。

https://<yourquayhost>/api/v1/discovery.

この方法で API にアクセスしても、Red Hat Quay インストールで利用可能なスーパーユーザーエンドポイントにはアクセスできません。以下は、swagger-ui コンテナーイメージを実行してローカルシステムで実行されている Red Hat Quay API インターフェイスにアクセスする例です。

# export SERVER_HOSTNAME=<yourhostname>
# sudo podman run -p 8888:8080 -e API_URL=https://$SERVER_HOSTNAME:8443/api/v1/discovery docker.io/swaggerapi/swagger-ui

Swagger-ui コンテナーが実行された状態で、Web ブラウザーを localhost ポート 8888 で開き、swagger-ui コンテナー経由で API エンドポイントを表示します。

API calls must be invoked with an X-Requested-With header if called from a browser などのエラーを回避するには、以下の行をクラスター内の全ノードの config.yaml に追加し、Red Hat Quay を再起動します。

BROWSER_API_CALLS_XHR_ONLY: false

1.6. コマンドラインでの Red Hat Quay API へのアクセス

curl コマンドを使用して、Red Hat Quay クラスターの API を使用して GET、PUT、POST、または DELETE 操作を実行できます。<token> は、以下の例の設定を取得または変更するために作成した OAuth アクセストークンに置き換えます。

第2章 Red Hat Quay アプリケーションプログラミングインターフェイス (API)

この API を使用すると、Red Hat Quay リポジトリー、ユーザー、および組織の使用に必要な多くの操作を実行できます。

2.1. 承認

oauth2_implicit

スコープ

以下のスコープは、API エンドポイントへのアクセスを制御するのに使用されます。

スコープDescription

repo:read

このアプリケーションは、付与ユーザーまたはロボットアカウントに表示されるすべてのリポジトリーを表示し、プルできます。

repo:write

このアプリケーションは、付与ユーザーまたはロボットアカウントに書き込みのアクセス権が割り当てられているリポジトリーをすべて表示、プッシュ、およびプルできます。

repo:admin

このアプリケーションには、付与ユーザーまたはロボットアカウントがアクセスできるすべてのリポジトリーに管理者権限が割り当てられます。

repo:create

このアプリケーションは、付与ユーザーまたはロボットアカウントがリポジトリーを作成できる namespace にリポジトリーを作成できます。

user:read

このアプリケーションは、ユーザー名やメールアドレスなどのユーザー情報を読み取ることができます。

org:admin

このアプリケーションは、ロボットの作成、チームの作成、チームのメンバーシップの調整、請求設定の変更など、組織の管理を行うことができます。このパーミッションを付与する前に、要求元アプリケーションに絶対の信頼が必要です。

super:user

このアプリケーションは、ユーザーの管理、スーパーユーザーパネルにある組織およびその他の機能の管理など、インストールを管理できます。このパーミッションを付与する前に、要求元アプリケーションに絶対の信頼が必要です。

user:admin

このアプリケーションは、ロボットの作成、リポジトリーへのパーミッションを付与するなど、アカウントを管理できます。このパーミッションを付与する前に、要求元アプリケーションに絶対の信頼が必要です。

2.2. appspecifictokens

現在のユーザーのアプリケーション固有のトークンを管理します。

2.2.1. createAppToken

ユーザー向けに新規アプリケーション固有のトークンを作成します。

POST /api/v1/user/apptoken

承認: oauth2_implicit(user:admin)

要求の body スキーマ (application/json)

新しいトークンの説明。

名前Descriptionスキーマ

タイトル
必須

トークンの特定に役立つ分かりやすい名前

string

レスポンス
HTTP コードDescriptionスキーマ

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.2.2. listAppTokens

ユーザーのアプリケーション固有のトークンをリスト表示します。

GET /api/v1/user/apptoken

承認: oauth2_implicit(user:admin)

クエリーパラメーター
タイプ名前説明スキーマ

query

expiring
任意

true の場合には、まもなく有効期限が切れるトークンのみを返します。

boolean

応答
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.2.3. getAppToken

ユーザーの特定のアプリケーショントークンを返します。

GET /api/v1/user/apptoken/{token_uuid}

承認: oauth2_implicit(user:admin)

パスパラメーター
タイプ名前説明スキーマ

path

token_uuid
必須

アプリケーション固有のトークンの uuid

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.2.4. revokeAppToken

ユーザーの特定のアプリケーショントークンを取り消します。

DELETE /api/v1/user/apptoken/{token_uuid}

承認: oauth2_implicit(user:admin)

パスパラメーター
タイプ名前説明スキーマ

path

token_uuid
必須

アプリケーション固有のトークンの uuid

string

レスポンス
HTTP コードDescriptionスキーマ

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.3. build

リポジトリービルドの作成、リスト表示、キャンセル、およびステータス/ログの取得

2.3.1. getRepoBuildStatus

ビルドの uuid で指定したビルドのステータスを返します。

GET /api/v1/repository/{repository}/build/{build_uuid}/status

承認: oauth2_implicit(repo:read)

パスパラメーター
タイプ名前説明スキーマ

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

path

build_uuid
必須

ビルドの UUID

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.3.2. getRepoBuildLogs

ビルド uuid で指定したビルドのビルドログを返します。

GET /api/v1/repository/{repository}/build/{build_uuid}/logs

承認: oauth2_implicit(repo:read)

パスパラメーター
タイプ名前説明スキーマ

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

path

build_uuid
必須

ビルドの UUID

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.3.3. getRepoBuild

ビルドに関する情報を返します。

GET /api/v1/repository/{repository}/build/{build_uuid}

承認: oauth2_implicit(repo:read)

パスパラメーター
タイプ名前説明スキーマ

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

path

build_uuid
必須

ビルドの UUID

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.3.4. cancelRepoBuild

リポジトリービルドをキャンセルします。

DELETE /api/v1/repository/{repository}/build/{build_uuid}

承認: oauth2_implicit(repo:admin)

パスパラメーター
タイプ名前説明スキーマ

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

path

build_uuid
必須

ビルドの UUID

string

レスポンス
HTTP コードDescriptionスキーマ

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.3.5. requestRepoBuild

指定の入力からリポジトリーをビルドし、プッシュすることを要求します。

POST /api/v1/repository/{repository}/build/

承認: oauth2_implicit (repo:write)

パスパラメーター
タイプ名前説明スキーマ

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

要求の body スキーマ (application/json)

新規リポジトリービルドの説明。

名前説明スキーマ

file_id
任意

ビルド仕様のアップロード時に生成されたファイル ID

string

archive_url
任意

ビルドする .tar.gz の URL。http または https で開始する必要があります。

string

subdirectory
任意

Dockerfile があるサブディレクトリー。このサブディレクトリーまたは dockerfile_path のみを指定できます。

string

dockerfile_path
任意

docker ファイルへのパス。このパスまたはサブディレクトリーのみを指定できます。

string

context
任意

dockerfile のコンテキストを指定します。これは任意です。

string

pull_robot
任意

プル認証情報として使用する Quay ロボットアカウントのユーザー名

string

タグ
任意

ビルドイメージがプッシュされるタグ。指定のない場合は、latest が使用されます。

string の配列
non-empty unique

レスポンス
HTTP コードDescriptionスキーマ

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.3.6. getRepoBuilds

リポジトリービルドのリストを取得します。

GET /api/v1/repository/{repository}/build/

承認: oauth2_implicit(repo:read)

パスパラメーター
タイプ名前説明スキーマ

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

クエリーパラメーター
タイプ名前説明スキーマ

query

since
任意

指定の unix タイムコード以降の全ビルドを返します。

integer

query

limit
任意

返すビルドの最大数

integer

応答
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.4. discovery

API 検出情報。

2.4.1. discovery

Swagger API 形式で利用可能なすべての API エンドポイントをリスト表示します。

GET /api/v1/discovery

承認: 

クエリーパラメーター
タイプ名前説明スキーマ

query

internal
任意

内部 API を含めるかどうか。

boolean

応答
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.5. error

エラー詳細 API。

2.5.1. getErrorDescription

エラーの詳細情報を取得します。

GET /api/v1/error/{error_type}

承認: 

パスパラメーター
タイプ名前説明スキーマ

path

error_type
必須

エラーのタイプを特定するエラーコード。

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

ApiErrorDescription

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.6. globalmessages

メッセージ API。

2.6.1. createGlobalMessage

メッセージを作成します。

POST /api/v1/messages

承認: oauth2_implicit(super:user)

要求の body スキーマ (application/json)

新規メッセージの作成

名前Descriptionスキーマ

message
必須

単一メッセージ

object

応答
HTTP コードDescriptionスキーマ

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.6.2. getGlobalMessages

スーパーユーザーのメッセージを返します。

GET /api/v1/messages

承認: 

応答
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.6.3. deleteGlobalMessage

メッセージを削除します。

DELETE /api/v1/message/{uuid}

承認: oauth2_implicit(super:user)

パスパラメーター
タイプ名前説明スキーマ

path

uuid
必須

 

string

レスポンス
HTTP コードDescriptionスキーマ

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.7. logs

組織またはリポジトリーの使用状況ログにアクセスします。

2.7.1. getAggregateUserLogs

現在のユーザーの集計ログを返します。

GET /api/v1/user/aggregatelogs

承認: oauth2_implicit(user:admin)

クエリーパラメーター
タイプ名前説明スキーマ

query

performer
任意

ログをフィルターするユーザー名。

string

query

endtime
任意

ログの最新時間。形式: "%m/%d/%Y"(UTC)

string

query

starttime
任意

ログの最初の時間。形式: "%m/%d/%Y"(UTC)

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.7.2. exportUserLogs

現在のユーザーの集計ログを返します。

POST /api/v1/user/exportlogs

承認: oauth2_implicit(user:admin)

クエリーパラメーター
タイプ名前説明スキーマ

query

endtime
任意

ログの最新時間。形式: "%m/%d/%Y"(UTC)

string

query

starttime
任意

ログの最初の時間。形式: "%m/%d/%Y"(UTC)

string

要求の body スキーマ (application/json)

エクスポートログ操作の設定

名前Descriptionスキーマ

callback_url
任意

エクスポートされたログに対するリンクで呼び出すコールバック URL

string

callback_email
任意

エクスポートされたログに対するリンクをメールで送信するメールアドレス

string

レスポンス
HTTP コードDescriptionスキーマ

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.7.3. listUserLogs

現在のユーザーのログをリスト表示します。

GET /api/v1/user/logs

承認: oauth2_implicit(user:admin)

クエリーパラメーター
タイプ名前説明スキーマ

query

next_page
任意

次のページのページトークン

string

query

performer
任意

ログをフィルターするユーザー名。

string

query

endtime
任意

ログの最新時間。形式: "%m/%d/%Y"(UTC)

string

query

starttime
任意

ログの最初の時間。形式: "%m/%d/%Y"(UTC)

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.7.4. getAggregateOrgLogs

指定した組織の集計ログを取得します。

GET /api/v1/organization/{orgname}/aggregatelogs

承認: oauth2_implicit(org:admin)

パスパラメーター
タイプ名前説明スキーマ

path

orgname
必須

組織の名前

string

クエリーパラメーター
タイプ名前説明スキーマ

query

performer
任意

ログをフィルターするユーザー名。

string

query

endtime
任意

ログの最新時間。形式: "%m/%d/%Y"(UTC)

string

query

starttime
任意

ログの最初の時間。形式: "%m/%d/%Y"(UTC)

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.7.5. exportOrgLogs

指定した組織のログをエクスポートします。

POST /api/v1/organization/{orgname}/exportlogs

承認: oauth2_implicit(org:admin)

パスパラメーター
タイプ名前説明スキーマ

path

orgname
必須

組織の名前

string

クエリーパラメーター
タイプ名前説明スキーマ

query

endtime
任意

ログの最新時間。形式: "%m/%d/%Y"(UTC)

string

query

starttime
任意

ログの最初の時間。形式: "%m/%d/%Y"(UTC)

string

要求の body スキーマ (application/json)

エクスポートログ操作の設定

名前Descriptionスキーマ

callback_url
任意

エクスポートされたログに対するリンクで呼び出すコールバック URL

string

callback_email
任意

エクスポートされたログに対するリンクをメールで送信するメールアドレス

string

レスポンス
HTTP コードDescriptionスキーマ

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.7.6. listOrgLogs

指定した組織のログをリスト表示します。

GET /api/v1/organization/{orgname}/logs

承認: oauth2_implicit(org:admin)

パスパラメーター
タイプ名前説明スキーマ

path

orgname
必須

組織の名前

string

クエリーパラメーター
タイプ名前説明スキーマ

query

next_page
任意

次のページのページトークン

string

query

performer
任意

ログをフィルターするユーザー名。

string

query

endtime
任意

ログの最新時間。形式: "%m/%d/%Y"(UTC)

string

query

starttime
任意

ログの最初の時間。形式: "%m/%d/%Y"(UTC)

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.7.7. getAggregateRepoLogs

指定したリポジトリーの集計ログを返します。

GET /api/v1/repository/{repository}/aggregatelogs

承認: oauth2_implicit(repo:admin)

パスパラメーター
タイプ名前説明スキーマ

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

クエリーパラメーター
タイプ名前説明スキーマ

query

endtime
任意

ログの最新時間。形式: "%m/%d/%Y"(UTC)

string

query

starttime
任意

ログの最初の時間。形式: "%m/%d/%Y"(UTC)

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.7.8. exportRepoLogs

指定したリポジトリーのログのエクスポートをキューに入れます。

POST /api/v1/repository/{repository}/exportlogs

承認: oauth2_implicit(repo:admin)

パスパラメーター
タイプ名前説明スキーマ

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

クエリーパラメーター
タイプ名前説明スキーマ

query

endtime
任意

ログの最新時間。形式: "%m/%d/%Y"(UTC)

string

query

starttime
任意

ログの最初の時間。形式: "%m/%d/%Y"(UTC)

string

要求の body スキーマ (application/json)

エクスポートログ操作の設定

名前Descriptionスキーマ

callback_url
任意

エクスポートされたログに対するリンクで呼び出すコールバック URL

string

callback_email
任意

エクスポートされたログに対するリンクをメールで送信するメールアドレス

string

レスポンス
HTTP コードDescriptionスキーマ

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.7.9. listRepoLogs

指定したリポジトリーのログをリスト表示します。

GET /api/v1/repository/{repository}/logs

承認: oauth2_implicit(repo:admin)

パスパラメーター
タイプ名前説明スキーマ

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

クエリーパラメーター
タイプ名前説明スキーマ

query

next_page
任意

次のページのページトークン

string

query

endtime
任意

ログの最新時間。形式: "%m/%d/%Y"(UTC)

string

query

starttime
任意

ログの最初の時間。形式: "%m/%d/%Y"(UTC)

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.8. manifest

リポジトリーのマニフェストを管理します。

2.8.1. getManifestLabel

マニフェストで特定の ID のラベルを取得します。

GET /api/v1/repository/{repository}/manifest/{manifestref}/labels/{labelid}

承認: oauth2_implicit(repo:read)

パスパラメーター
タイプ名前説明スキーマ

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

path

manifestref
必須

マニフェストのダイジェスト

string

path

labelid
必須

ラベルの ID

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.8.2. deleteManifestLabel

マニフェストから既存のラベルを削除します。

DELETE /api/v1/repository/{repository}/manifest/{manifestref}/labels/{labelid}

承認: oauth2_implicit (repo:write)

パスパラメーター
タイプ名前説明スキーマ

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

path

manifestref
必須

マニフェストのダイジェスト

string

path

labelid
必須

ラベルの ID

string

レスポンス
HTTP コードDescriptionスキーマ

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.8.3. addManifestLabel

タグマニフェストに新規ラベルを追加します。

POST /api/v1/repository/{repository}/manifest/{manifestref}/labels

承認: oauth2_implicit (repo:write)

パスパラメーター
タイプ名前説明スキーマ

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

path

manifestref
必須

マニフェストのダイジェスト

string

要求の body スキーマ (application/json)

マニフェストにラベルを追加します。

名前Descriptionスキーマ

key
必須

ラベルのキー

string

value
必須

ラベルの値

string

media_type
required

このラベルのメディアタイプ

 
応答
HTTP コードDescriptionスキーマ

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.8.4. listManifestLabels

GET /api/v1/repository/{repository}/manifest/{manifestref}/labels

承認: oauth2_implicit(repo:read)

パスパラメーター
タイプ名前説明スキーマ

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

path

manifestref
必須

マニフェストのダイジェスト

string

クエリーパラメーター
タイプ名前説明スキーマ

query

filter
必須

これが指定されている場合には、指定の接頭辞に一致するラベルのみが返されます。

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.8.5. getRepoManifest

GET /api/v1/repository/{repository}/manifest/{manifestref}

承認: oauth2_implicit(repo:read)

パスパラメーター
タイプ名前説明スキーマ

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

path

manifestref
必須

マニフェストのダイジェスト

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.9. mirror

2.9.1. syncCancel

指定したリポジトリーのミラーリング設定の sync_status を更新します。

POST /api/v1/repository/{repository}/mirror/sync-cancel

承認: oauth2_implicit(repo:admin)

パスパラメーター
タイプ名前説明スキーマ

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

レスポンス
HTTP コードDescriptionスキーマ

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.9.2. syncNow

指定したリポジトリーのミラーリング設定の sync_status を更新します。

POST /api/v1/repository/{repository}/mirror/sync-now

承認: oauth2_implicit(repo:admin)

パスパラメーター
タイプ名前説明スキーマ

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

レスポンス
HTTP コードDescriptionスキーマ

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.9.3. getRepoMirrorConfig

指定したリポジトリーのミラーリング設定を返します。

GET /api/v1/repository/{repository}/mirror

承認: oauth2_implicit(repo:admin)

パスパラメーター
タイプ名前説明スキーマ

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

ViewMirrorConfig

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.9.4. changeRepoMirrorConfig

ユーザーがリポジトリーのミラーリング設定を変更できるようにします。

PUT /api/v1/repository/{repository}/mirror

承認: oauth2_implicit(repo:admin)

パスパラメーター
タイプ名前説明スキーマ

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

要求の body スキーマ (application/json)

リポジトリーミラーリング設定を更新します。

名前説明スキーマ

is_enabled
任意

同期を有効または無効にするために使用されます。

boolean

external_reference
任意

外部リポジトリーの場所。

string

external_registry_username
任意

外部レジストリーでの認証に使用されるユーザー名。

 

external_registry_password
任意

外部レジストリーでの認証に使用されるパスワード。

 

sync_start_date
任意

このリポジトリーの次の同期時間を決定します。

string

sync_interval
任意

next_start_date が同期を開始するまでの秒数。

integer

robot_username
任意

イメージのプッシュに使用されるロボットのユーザー名。

string

root_rule
任意

同期する必要のあるタグの判別に使用する glob パターンのリスト。

object

external_registry_config
任意

 

object

応答
HTTP コードDescriptionスキーマ

201

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.9.5. createRepoMirrorConfig

特定のリポジトリーの RepoMirrorConfig を作成します。

POST /api/v1/repository/{repository}/mirror

承認: oauth2_implicit(repo:admin)

パスパラメーター
タイプ名前説明スキーマ

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

要求の body スキーマ (application/json)

リポジトリーのミラーリング設定を作成します。

名前説明スキーマ

is_enabled
任意

同期を有効または無効にするために使用されます。

boolean

external_reference
必須

外部リポジトリーの場所。

string

external_registry_username
任意

外部レジストリーでの認証に使用されるユーザー名。

 

external_registry_password
任意

外部レジストリーでの認証に使用されるパスワード。

 

sync_start_date
required

このリポジトリーの次の同期時間を決定します。

string

sync_interval
required

next_start_date が同期を開始するまでの秒数。

integer

robot_username
required

イメージのプッシュに使用されるロボットのユーザー名。

string

root_rule
required

同期する必要のあるタグの判別に使用する glob パターンのリスト。

object

external_registry_config
任意

 

object

応答
HTTP コードDescriptionスキーマ

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.10. namespacequota

2.10.1. listUserQuota

GET /api/v1/user/quota

承認: oauth2_implicit(user:admin)

応答
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.10.2. getOrganizationQuotaLimit

GET /api/v1/organization/{orgname}/quota/{quota_id}/limit/{limit_id}

承認: 

パスパラメーター
タイプ名前説明スキーマ

path

quota_id
必須

 

string

path

limit_id
必須

 

string

path

orgname
必須

 

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.10.3. changeOrganizationQuotaLimit

PUT /api/v1/organization/{orgname}/quota/{quota_id}/limit/{limit_id}

承認: oauth2_implicit(super:user)

パスパラメーター
タイプ名前説明スキーマ

path

quota_id
必須

 

string

path

limit_id
必須

 

string

path

orgname
必須

 

string

要求の body スキーマ (application/json)

変更する組織のクォータ制限の説明

名前Descriptionスキーマ

type
任意

割り当て制限のタイプ: 警告または拒否

string

threshold_percent
必須

クォータのしきい値 (クォータのパーセント単位)

integer

応答
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.10.4. deleteOrganizationQuotaLimit

DELETE /api/v1/organization/{orgname}/quota/{quota_id}/limit/{limit_id}

承認: oauth2_implicit(super:user)

パスパラメーター
タイプ名前説明スキーマ

path

quota_id
必須

 

string

path

limit_id
必須

 

string

path

orgname
必須

 

string

レスポンス
HTTP コードDescriptionスキーマ

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.10.5. createOrganizationQuotaLimit

POST /api/v1/organization/{orgname}/quota/{quota_id}/limit

承認: oauth2_implicit(super:user)

パスパラメーター
タイプ名前説明スキーマ

path

quota_id
必須

 

string

path

orgname
必須

 

string

要求の body スキーマ (application/json)

新しい組織のクォータ制限の説明

名前Descriptionスキーマ

type
必須

割り当て制限のタイプ: 警告または拒否

string

threshold_percent
必須

クォータのしきい値 (クォータのパーセント単位)

integer

応答
HTTP コードDescriptionスキーマ

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.10.6. listOrganizationQuotaLimit

GET /api/v1/organization/{orgname}/quota/{quota_id}/limit

承認: 

パスパラメーター
タイプ名前説明スキーマ

path

quota_id
必須

 

string

path

orgname
必須

 

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.10.7. getUserQuotaLimit

GET /api/v1/user/quota/{quota_id}/limit/{limit_id}

承認: oauth2_implicit(user:admin)

パスパラメーター
タイプ名前説明スキーマ

path

quota_id
必須

 

string

path

limit_id
必須

 

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.10.8. listUserQuotaLimit

GET /api/v1/user/quota/{quota_id}/limit

承認: oauth2_implicit(user:admin)

パスパラメーター
タイプ名前説明スキーマ

path

quota_id
必須

 

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.10.9. getOrganizationQuota

GET /api/v1/organization/{orgname}/quota/{quota_id}

承認: 

パスパラメーター
タイプ名前説明スキーマ

path

quota_id
必須

 

string

path

orgname
必須

 

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.10.10. changeOrganizationQuota

PUT /api/v1/organization/{orgname}/quota/{quota_id}

承認: oauth2_implicit(super:user)

パスパラメーター
タイプ名前説明スキーマ

path

quota_id
必須

 

string

path

orgname
必須

 

string

要求の body スキーマ (application/json)

新しい組織の割り当ての説明

名前Descriptionスキーマ

limit_bytes
任意

組織で許可されているバイト数

integer

limits
任意

人間が判読可能な組織のストレージ容量。Mi、Gi、Ti などの SI 単位だけでなく、GB や MB などの非標準単位も受け入れます。limit_bytes と相互に排他的である必要があります。

string

応答
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.10.11. deleteOrganizationQuota

DELETE /api/v1/organization/{orgname}/quota/{quota_id}

承認: oauth2_implicit(super:user)

パスパラメーター
タイプ名前説明スキーマ

path

quota_id
必須

 

string

path

orgname
必須

 

string

レスポンス
HTTP コードDescriptionスキーマ

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.10.12. createOrganizationQuota

新しい組織のクォータを作成します。

POST /api/v1/organization/{orgname}/quota

承認: oauth2_implicit(super:user)

パスパラメーター
タイプ名前説明スキーマ

path

orgname
必須

 

string

要求の body スキーマ (application/json)

新しい組織の割り当ての説明

名前Descriptionスキーマ

limit_bytes
required

組織で許可されているバイト数

integer

limits
任意

人間が判読可能な組織のストレージ容量。Mi、Gi、Ti などの SI 単位だけでなく、GB や MB などの非標準単位も受け入れます。limit_bytes と相互に排他的である必要があります。

string

応答
HTTP コードDescriptionスキーマ

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.10.13. listOrganizationQuota

GET /api/v1/organization/{orgname}/quota

承認: 

パスパラメーター
タイプ名前説明スキーマ

path

orgname
必須

 

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.10.14. getUserQuota

GET /api/v1/user/quota/{quota_id}

承認: oauth2_implicit(user:admin)

パスパラメーター
タイプ名前説明スキーマ

path

quota_id
必須

 

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.11. 組織

組織、メンバーおよび OAuth アプリケーションを管理します。

2.11.1. createOrganization

新しい組織を作成します。

POST /api/v1/organization/

承認: oauth2_implicit(user:admin)

要求の body スキーマ (application/json)

新しい組織の説明。

名前Descriptionスキーマ

name
必須

組織のユーザー名

string

email
任意

組織の連絡先メール

string

recaptcha_response
任意

検証用の recaptcha 応答コード (無効となっている場合もある)。

string

レスポンス
HTTP コードDescriptionスキーマ

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

コマンドの例
$ curl -X POST   -H "Authorization: Bearer <bearer_token>" -H "Content-Type: application/json"   -d '{
    "name": "<new_organization_name>"
  }'   "https://<quay-server.example.com>/api/v1/organization/"

2.11.2. validateProxyCacheConfig

POST /api/v1/organization/{orgname}/validateproxycache

承認: 

パスパラメーター
タイプ名前説明スキーマ

path

orgname
必須

 

string

要求の body スキーマ (application/json)

組織のプロキシーキャッシュ設定

名前Descriptionスキーマ

upstream_registry
必須

キャッシュされるアップストリームレジストリーの名前

string

レスポンス
HTTP コードDescriptionスキーマ

202

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.11.3. getOrganizationCollaborators

指定した組織の外部コラボレーターをリスト表示します。

GET /api/v1/organization/{orgname}/collaborators

承認: oauth2_implicit(org:admin)

パスパラメーター
タイプ名前説明スキーマ

path

orgname
必須

組織の名前

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.11.4. getOrganizationApplication

指定の組織、指定の client_id のアプリケーションを取得します。

GET /api/v1/organization/{orgname}/applications/{client_id}

承認: oauth2_implicit(org:admin)

パスパラメーター
タイプ名前説明スキーマ

path

client_id
必須

OAuth クライアント ID

string

path

orgname
必須

組織の名前

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.11.5. updateOrganizationApplication

この組織のアプリケーションを更新します。

PUT /api/v1/organization/{orgname}/applications/{client_id}

承認: oauth2_implicit(org:admin)

パスパラメーター
タイプ名前説明スキーマ

path

client_id
必須

OAuth クライアント ID

string

path

orgname
必須

組織の名前

string

要求の body スキーマ (application/json)

更新アプリケーションの説明。

名前Descriptionスキーマ

name
必須

アプリケーションの名前

string

redirect_uri
必須

アプリケーションの OAuth リダイレクトの URI

string

application_uri
必須

アプリケーションのホームページの URI

string

description
任意

アプリケーションの人間が判読できる説明

string

avatar_email
任意

アプリケーションに使用するアバターのメールアドレス

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.11.6. deleteOrganizationApplication

この組織のアプリケーションを削除します。

DELETE /api/v1/organization/{orgname}/applications/{client_id}

承認: oauth2_implicit(org:admin)

パスパラメーター
タイプ名前説明スキーマ

path

client_id
必須

OAuth クライアント ID

string

path

orgname
必須

組織の名前

string

レスポンス
HTTP コードDescriptionスキーマ

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.11.7. createOrganizationApplication

この組織に新しいアプリケーションを作成します。

POST /api/v1/organization/{orgname}/applications

承認: oauth2_implicit(org:admin)

パスパラメーター
タイプ名前説明スキーマ

path

orgname
必須

組織の名前

string

要求の body スキーマ (application/json)

新しい組織アプリケーションを説明します。

名前Descriptionスキーマ

name
必須

アプリケーションの名前

string

redirect_uri
任意

アプリケーションの OAuth リダイレクトの URI

string

application_uri
任意

アプリケーションのホームページの URI

string

description
任意

アプリケーションの人間が判読できる説明

string

avatar_email
任意

アプリケーションに使用するアバターのメールアドレス

string

レスポンス
HTTP コードDescriptionスキーマ

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.11.8. getOrganizationApplications

指定した組織のアプリケーションをリスト表示します。

GET /api/v1/organization/{orgname}/applications

承認: oauth2_implicit(org:admin)

パスパラメーター
タイプ名前説明スキーマ

path

orgname
必須

組織の名前

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.11.9. getProxyCacheConfig

組織のプロキシーキャッシュ設定を取得します。

GET /api/v1/organization/{orgname}/proxycache

承認: 

パスパラメーター
タイプ名前説明スキーマ

path

orgname
必須

組織の名前

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.11.10. deleteProxyCacheConfig

組織のプロキシーキャッシュ設定を削除します。

DELETE /api/v1/organization/{orgname}/proxycache

承認: 

パスパラメーター
タイプ名前説明スキーマ

path

orgname
必須

組織の名前

string

レスポンス
HTTP コードDescriptionスキーマ

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.11.11. createProxyCacheConfig

組織のプロキシーキャッシュ設定を作成します。

POST /api/v1/organization/{orgname}/proxycache

承認: 

パスパラメーター
タイプ名前説明スキーマ

path

orgname
必須

組織の名前

string

要求の body スキーマ (application/json)

組織のプロキシーキャッシュ設定

名前Descriptionスキーマ

upstream_registry
必須

キャッシュされるアップストリームレジストリーの名前

string

レスポンス
HTTP コードDescriptionスキーマ

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.11.12. getOrganizationMember

組織のメンバーの詳細を取得します。

GET /api/v1/organization/{orgname}/members/{membername}

承認: oauth2_implicit(org:admin)

パスパラメーター
タイプ名前説明スキーマ

path

membername
必須

組織メンバーのユーザー名

string

path

orgname
必須

組織の名前

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.11.13. removeOrganizationMember

組織からメンバーを削除し、そのリポジトリーの特権をすべて破棄して組織の全チームから削除します。

DELETE /api/v1/organization/{orgname}/members/{membername}

承認: oauth2_implicit(org:admin)

パスパラメーター
タイプ名前説明スキーマ

path

membername
必須

組織メンバーのユーザー名

string

path

orgname
必須

組織の名前

string

レスポンス
HTTP コードDescriptionスキーマ

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.11.14. getOrganizationMembers

指定した組織のメンバー (人間) をリスト表示します。

GET /api/v1/organization/{orgname}/members

承認: oauth2_implicit(org:admin)

パスパラメーター
タイプ名前説明スキーマ

path

orgname
必須

組織の名前

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.11.15. getOrganization

指定した組織の詳細を取得します。

GET /api/v1/organization/{orgname}

承認: 

パスパラメーター
タイプ名前説明スキーマ

path

orgname
必須

組織の名前

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

コマンドの例
$ curl -X GET \
  -H "Authorization: Bearer lfV4lVf9qRsyoFnrgEno1umIOrsdp8lPyMnfUDYY" \
  "<quay-server.example.com>/api/v1/organization/<organization_name>"

2.11.16. changeOrganizationDetails

指定した組織の詳細を変更します。

PUT /api/v1/organization/{orgname}

承認: oauth2_implicit(org:admin)

パスパラメーター
タイプ名前説明スキーマ

path

orgname
必須

組織の名前

string

要求の body スキーマ (application/json)

既存組織の更新の説明

名前Descriptionスキーマ

email
任意

組織の連絡先メール

string

invoice_email
任意

組織が請求書のメールを受信する必要があるかどうか

boolean

invoice_email_address
任意

請求書を受信するメールアドレス

 

tag_expiration_s
任意

タグの有効期限 (秒)

integer

応答
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.11.17. deleteAdminedOrganization

指定した組織を削除します。

DELETE /api/v1/organization/{orgname}

承認: oauth2_implicit(org:admin)

パスパラメーター
タイプ名前説明スキーマ

path

orgname
必須

組織の名前

string

レスポンス
HTTP コードDescriptionスキーマ

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.11.18. getApplicationInformation

指定したアプリケーションに関する情報を取得します。

GET /api/v1/app/{client_id}

承認: 

パスパラメーター
タイプ名前説明スキーマ

path

client_id
必須

OAuth クライアント ID

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.12. パーミッション

リポジトリーのパーミッションを管理します。

2.12.1. getUserTransitivePermission

指定したユーザーのパーミッションを取得します。

GET /api/v1/repository/{repository}/permissions/user/{username}/transitive

承認: oauth2_implicit(repo:admin)

パスパラメーター
タイプ名前説明スキーマ

path

username
必須

パーミッションが適用されるユーザー名

string

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.12.2. getUserPermissions

指定したユーザーのパーミッションを取得します。

GET /api/v1/repository/{repository}/permissions/user/{username}

承認: oauth2_implicit(repo:admin)

パスパラメーター
タイプ名前説明スキーマ

path

username
必須

パーミッションが適用されるユーザーのユーザー名

string

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.12.3. changeUserPermissions

既存リポジトリーのパーミッションを更新します。

PUT /api/v1/repository/{repository}/permissions/user/{username}

承認: oauth2_implicit(repo:admin)

パスパラメーター
タイプ名前説明スキーマ

path

username
必須

パーミッションが適用されるユーザーのユーザー名

string

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

要求の body スキーマ (application/json)

ユーザーパーミッションの説明。

名前Descriptionスキーマ

ロール
必須

ユーザーに使用するロール

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.12.4. deleteUserPermissions

ユーザーのパーミッションを削除します。

DELETE /api/v1/repository/{repository}/permissions/user/{username}

承認: oauth2_implicit(repo:admin)

パスパラメーター
タイプ名前説明スキーマ

path

username
必須

パーミッションが適用されるユーザーのユーザー名

string

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

レスポンス
HTTP コードDescriptionスキーマ

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.12.5. getTeamPermissions

指定したチームのパーミッションをフェッチします。

GET /api/v1/repository/{repository}/permissions/team/{teamname}

承認: oauth2_implicit(repo:admin)

パスパラメーター
タイプ名前説明スキーマ

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

path

teamname
必須

パーミッションが適用されるチームの名前

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.12.6. changeTeamPermissions

既存のチームパーミッションを更新します。

PUT /api/v1/repository/{repository}/permissions/team/{teamname}

承認: oauth2_implicit(repo:admin)

パスパラメーター
タイプ名前説明スキーマ

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

path

teamname
必須

パーミッションが適用されるチームの名前

string

要求の body スキーマ (application/json)

チームパーミッションの説明。

名前Descriptionスキーマ

ロール
必須

チームに使用するロール

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.12.7. deleteTeamPermissions

指定したチームのパーミッションを削除します。

DELETE /api/v1/repository/{repository}/permissions/team/{teamname}

承認: oauth2_implicit(repo:admin)

パスパラメーター
タイプ名前説明スキーマ

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

path

teamname
必須

パーミッションが適用されるチームの名前

string

レスポンス
HTTP コードDescriptionスキーマ

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.12.8. listRepoTeamPermissions

すべてのチームパーミッションをリスト表示します。

GET /api/v1/repository/{repository}/permissions/team/

承認: oauth2_implicit(repo:admin)

パスパラメーター
タイプ名前説明スキーマ

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.12.9. listRepoUserPermissions

全ユーザーパーミッションをリスト表示します。

GET /api/v1/repository/{repository}/permissions/user/

承認: oauth2_implicit(repo:admin)

パスパラメーター
タイプ名前説明スキーマ

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.13. policy

2.13.1. createOrganizationAutoPrunePolicy

組織の自動プルーニングポリシーを作成します。

POST /api/v1/organization/{orgname}/autoprunepolicy/

承認: oauth2_implicit(org:admin)

パスパラメーター
タイプ名前説明スキーマ

path

orgname
必須

組織の名前

string

要求の body スキーマ (application/json)

ユーザーの namespace に適用されるポリシー設定

名前説明スキーマ

メソッド
必須

タグのプルーニングに使用するメソッド (number_of_tags、creation_date)

string

value
必須

プルーニング方法に使用する値 (タグの数 (例: 10)、時間デルタ (例: 7d (7 日)))

 
レスポンス
HTTP コード説明スキーマ

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.13.2. listOrganizationAutoPrunePolicies

組織の自動プルーニングポリシーを一覧表示します。

GET /api/v1/organization/{orgname}/autoprunepolicy/

承認: oauth2_implicit(org:admin)

パスパラメーター
タイプ名前説明スキーマ

path

orgname
必須

組織の名前

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.13.3. getOrganizationAutoPrunePolicy

組織の自動プルーニングポリシーを取得します。

GET /api/v1/organization/{orgname}/autoprunepolicy/{policy_uuid}

承認: oauth2_implicit(org:admin)

パスパラメーター
タイプ名前説明スキーマ

path

policy_uuid
required

ポリシーの一意の ID

string

path

orgname
必須

組織の名前

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.13.4. deleteOrganizationAutoPrunePolicy

組織の自動プルーニングポリシーを削除します。

DELETE /api/v1/organization/{orgname}/autoprunepolicy/{policy_uuid}

承認: oauth2_implicit(org:admin)

パスパラメーター
タイプ名前説明スキーマ

path

policy_uuid
required

ポリシーの一意の ID

string

path

orgname
必須

組織の名前

string

レスポンス
HTTP コードDescriptionスキーマ

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.13.5. updateOrganizationAutoPrunePolicy

組織の自動プルーニングポリシーを更新します。

PUT /api/v1/organization/{orgname}/autoprunepolicy/{policy_uuid}

承認: oauth2_implicit(org:admin)

パスパラメーター
タイプ名前説明スキーマ

path

orgname
必須

組織の名前

string

path

policy_uuid
required

ポリシーの一意の ID

string

要求の body スキーマ (application/json)

ユーザーの namespace に適用されるポリシー設定

名前Descriptionスキーマ

メソッド
必須

タグのプルーニングに使用するメソッド (number_of_tags、creation_date)

string

value
必須

プルーニング方法に使用する値 (タグの数 (例: 10)、時間デルタ (例: 7d (7 日)))

 
レスポンス
HTTP コードDescriptionスキーマ

204

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.13.6. createRepositoryAutoPrunePolicy

リポジトリーの自動プルーニングポリシーを作成します。

POST /api/v1/repository/{repository}/autoprunepolicy/

承認: oauth2_implicit(repo:admin)

パスパラメーター
タイプ名前Descriptionスキーマ

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

要求の body スキーマ (application/json)

ユーザーの namespace に適用されるポリシー設定

名前説明スキーマ

method
任意

タグのプルーニングに使用するメソッド (number_of_tags、creation_date)

string

value
任意

プルーニング方法に使用する値 (タグの数 (例: 10)、時間デルタ (例: 7d (7 日)))

 
レスポンス
HTTP コード説明スキーマ

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.13.7. listRepositoryAutoPrunePolicies

リポジトリーの自動プルーニングポリシーをリスト表示します。

GET /api/v1/repository/{repository}/autoprunepolicy/

承認: oauth2_implicit(repo:admin)

パスパラメーター
タイプ名前Descriptionスキーマ

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

レスポンス
HTTP コード説明スキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.13.8. getRepositoryAutoPrunePolicy

リポジトリーの自動プルーニングポリシーを取得します。

GET /api/v1/repository/{repository}/autoprunepolicy/{policy_uuid}

承認: oauth2_implicit(repo:admin)

パスパラメーター
タイプ名前Descriptionスキーマ

path

policy_uuid
required

ポリシーの一意の ID

string

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

レスポンス
HTTP コード説明スキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.13.9. deleteRepositoryAutoPrunePolicy

リポジトリーの自動プルーニングポリシーを削除します。

DELETE /api/v1/repository/{repository}/autoprunepolicy/{policy_uuid}

承認: oauth2_implicit(repo:admin)

パスパラメーター
タイプ名前Descriptionスキーマ

path

policy_uuid
required

ポリシーの一意の ID

string

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

レスポンス
HTTP コード説明スキーマ

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.13.10. updateRepositoryAutoPrunePolicy

リポジトリーの自動プルーニングポリシーを更新します。

PUT /api/v1/repository/{repository}/autoprunepolicy/{policy_uuid}

承認: oauth2_implicit(repo:admin)

パスパラメーター
タイプ名前Descriptionスキーマ

path

policy_uuid
required

ポリシーの一意の ID

string

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

要求の body スキーマ (application/json)

ユーザーの namespace に適用されるポリシー設定

名前説明スキーマ

method
任意

タグのプルーニングに使用するメソッド (number_of_tags、creation_date)

string

value
任意

プルーニング方法に使用する値 (タグの数 (例: 10)、時間デルタ (例: 7d (7 日)))

 
レスポンス
HTTP コード説明スキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.13.11. createUserAutoPrunePolicy

現在ログインしているユーザーの自動プルーニングポリシーを作成します。

POST /api/v1/user/autoprunepolicy/

承認: oauth2_implicit(user:admin)

要求の body スキーマ (application/json)

ユーザーの namespace に適用されるポリシー設定

名前Descriptionスキーマ

メソッド
必須

タグのプルーニングに使用するメソッド (number_of_tags、creation_date)

string

value
必須

プルーニング方法に使用する値 (タグの数 (例: 10)、時間デルタ (例: 7d (7 日)))

 
レスポンス
HTTP コードDescriptionスキーマ

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.13.12. listUserAutoPrunePolicies

現在ログインしているユーザーの自動プルーニングポリシーをリスト表示します。

GET /api/v1/user/autoprunepolicy/

承認: oauth2_implicit(user:admin)

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.13.13. getUserAutoPrunePolicy

現在ログインしているユーザーの自動プルーニングポリシーを取得します。

GET /api/v1/user/autoprunepolicy/{policy_uuid}

承認: oauth2_implicit(user:admin)

パスパラメーター
タイプ名前説明スキーマ

path

policy_uuid
required

ポリシーの一意の ID

string

応答
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.13.14. deleteUserAutoPrunePolicy

現在ログインしているユーザーの自動プルーニングポリシーを削除します。

DELETE /api/v1/user/autoprunepolicy/{policy_uuid}

承認: oauth2_implicit(user:admin)

パスパラメーター
タイプ名前説明スキーマ

path

policy_uuid
required

ポリシーの一意の ID

string

レスポンス
HTTP コードDescriptionスキーマ

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.13.15. updateUserAutoPrunePolicy

現在ログインしているユーザーの自動プルーニングポリシーを更新します。

PUT /api/v1/user/autoprunepolicy/{policy_uuid}

承認: oauth2_implicit(user:admin)

パスパラメーター
タイプ名前説明スキーマ

path

policy_uuid
required

ポリシーの一意の ID

string

要求の body スキーマ (application/json)

ユーザーの namespace に適用されるポリシー設定

名前Descriptionスキーマ

メソッド
必須

タグのプルーニングに使用するメソッド (number_of_tags、creation_date)

string

value
必須

プルーニング方法に使用する値 (タグの数 (例: 10)、時間デルタ (例: 7d (7 日)))

 
応答
HTTP コードDescriptionスキーマ

204

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.14. prototype

リポジトリーに追加されたデフォルトのパーミッションを管理します。

2.14.1. updateOrganizationPrototypePermission

既存のパーミッションプロトタイプのロールを更新します。

PUT /api/v1/organization/{orgname}/prototypes/{prototypeid}

承認: oauth2_implicit(org:admin)

パスパラメーター
タイプ名前説明スキーマ

path

prototypeid
必須

プロトタイプの ID

string

path

orgname
必須

組織の名前

string

要求の body スキーマ (application/json)

新しいプロトタイプロールの説明

名前Descriptionスキーマ

role
任意

パーミッションに適用する必要のあるロール

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.14.2. deleteOrganizationPrototypePermission

既存のパーミッションのプロトタイプを削除します。

DELETE /api/v1/organization/{orgname}/prototypes/{prototypeid}

承認: oauth2_implicit(org:admin)

パスパラメーター
タイプ名前説明スキーマ

path

prototypeid
必須

プロトタイプの ID

string

path

orgname
必須

組織の名前

string

レスポンス
HTTP コードDescriptionスキーマ

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.14.3. createOrganizationPrototypePermission

新規パーミッションのプロトタイプを作成します。

POST /api/v1/organization/{orgname}/prototypes

承認: oauth2_implicit(org:admin)

パスパラメーター
タイプ名前説明スキーマ

path

orgname
必須

組織の名前

string

要求の body スキーマ (application/json)

新しいプロトタイプの説明

名前Descriptionスキーマ

ロール
必須

委譲に適用する必要のあるロール

string

activating_user
任意

ルールが適用されるユーザーを作成するリポジトリー

object

委譲
必須

ルールでアクセス権を付与するユーザーまたはチームに関する情報

object

レスポンス
HTTP コードDescriptionスキーマ

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.14.4. getOrganizationPrototypePermissions

この組織の既存のプロトタイプをリスト表示します。

GET /api/v1/organization/{orgname}/prototypes

承認: oauth2_implicit(org:admin)

パスパラメーター
タイプ名前説明スキーマ

path

orgname
必須

組織の名前

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.15. referrers

v2 API リファラーのリストを示します。

2.15.1. getReferrers

イメージダイジェストの v2 API リファラーのリストを示します。

GET /v2/{organization_name}/{repository_name}/referrers/{digest}
要求の body スキーマ (application/json)

イメージダイジェストのリファラー。

タイプ

名前

Description

スキーマ

path

orgname
必須

組織の名前

string

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

path

referrers
必須

リポジトリー配下にあるマニフェストの OCI リファラーを検索します。

string

2.16. repository

リポジトリーをリスト表示、作成、管理します。

2.16.1. createRepo

新規リポジトリーを作成します。

POST /api/v1/repository

承認: oauth2_implicit(repo:create)

要求の body スキーマ (application/json)

新規リポジトリーの説明

名前Descriptionスキーマ

repository
必須

リポジトリー名

string

visibility
必須

リポジトリーの初期の表示内容

string

namespace
任意

リポジトリーを作成する namespace。省略すると、呼び出し元のユーザー名が使用されます。

string

description
必須

リポジトリーの Markdown でエンコードされた説明

string

repo_kind
任意

リポジトリーの種類

 
応答
HTTP コードDescriptionスキーマ

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

コマンドの例
$ curl -X POST \
  -H "Authorization: Bearer <bearer_token>" \
  -H "Content-Type: application/json" \
  -d '{
    "repository": "<new_repository_name>",
    "visibility": "<public>",
    "description": "<This is a description of the new repository>."
  }' \
  "https://quay-server.example.com/api/v1/repository"

2.16.2. listRepos

さまざまな状況で現在のユーザーに表示されるリポジトリーのリストを取得します。

GET /api/v1/repository

承認: oauth2_implicit(repo:read)

クエリーパラメーター
タイプ名前説明スキーマ

query

next_page
任意

次のページのページトークン

string

query

repo_kind
任意

返すリポジトリーの種類

string

query

popularity
任意

リポジトリーの人気指標を含めるかどうか。

boolean

query

last_modified
任意

リポジトリーの最終変更時を含めるかどうか。

boolean

query

public
任意

公開されているリポジトリーをユーザーに表示するように追加します。

boolean

query

starred
任意

ユーザーがスターをつけたリポジトリーを返すようにフィルタリングします。

boolean

query

namespace
任意

この namespace に返されたリポジトリーをフィルターします。

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.16.3. changeRepoVisibility

リポジトリーの可視性を変更します。

POST /api/v1/repository/{repository}/changevisibility

承認: oauth2_implicit(repo:admin)

パスパラメーター
タイプ名前説明スキーマ

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

要求の body スキーマ (application/json)

リポジトリーの可視性を変更します。

名前Descriptionスキーマ

visibility
必須

リポジトリーの初期の表示内容

string

レスポンス
HTTP コードDescriptionスキーマ

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.16.4. changeRepoState

リポジトリーの状態を変更します。

PUT /api/v1/repository/{repository}/changestate

承認: oauth2_implicit(repo:admin)

パスパラメーター
タイプ名前説明スキーマ

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

要求の body スキーマ (application/json)

リポジトリーの状態を変更します。

名前Descriptionスキーマ

状態
必須

プッシュが許可されるかどうかを決定します。

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.16.5. getRepo

指定したリポジトリーを取得します。

GET /api/v1/repository/{repository}

承認: oauth2_implicit(repo:read)

パスパラメーター
タイプ名前説明スキーマ

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

クエリーパラメーター
タイプ名前説明スキーマ

query

includeTags
任意

リポジトリータグを含めるかどうか

boolean

query

includeStats
任意

アクション統計を含めるかどうか。

boolean

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.16.6. updateRepo

指定したリポジトリーにある説明を更新します。

PUT /api/v1/repository/{repository}

承認: oauth2_implicit (repo:write)

パスパラメーター
タイプ名前説明スキーマ

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

要求の body スキーマ (application/json)

リポジトリーで更新できるフィールド。

名前Descriptionスキーマ

description
必須

リポジトリーの Markdown でエンコードされた説明

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.16.7. deleteRepository

リポジトリーを削除します。

DELETE /api/v1/repository/{repository}

承認: oauth2_implicit(repo:admin)

パスパラメーター
タイプ名前説明スキーマ

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

レスポンス
HTTP コードDescriptionスキーマ

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.17. repositorynotification

リポジトリーイベント/通知をリスト表示、作成、管理します。

2.17.1. testRepoNotification

このリポジトリーのテスト通知をキューに入れます。

POST /api/v1/repository/{repository}/notification/{uuid}/test

承認: oauth2_implicit(repo:admin)

パスパラメーター
タイプ名前説明スキーマ

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

path

uuid
必須

通知の UUID

string

レスポンス
HTTP コードDescriptionスキーマ

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.17.2. getRepoNotification

指定した通知の情報を取得します。

GET /api/v1/repository/{repository}/notification/{uuid}

承認: oauth2_implicit(repo:admin)

パスパラメーター
タイプ名前説明スキーマ

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

path

uuid
必須

通知の UUID

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.17.3. deleteRepoNotification

指定した通知を削除します。

DELETE /api/v1/repository/{repository}/notification/{uuid}

承認: oauth2_implicit(repo:admin)

パスパラメーター
タイプ名前説明スキーマ

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

path

uuid
必須

通知の UUID

string

レスポンス
HTTP コードDescriptionスキーマ

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.17.4. resetRepositoryNotificationFailures

リポジトリーの失敗通知を 0 件にリセットします。

POST /api/v1/repository/{repository}/notification/{uuid}

承認: oauth2_implicit(repo:admin)

パスパラメーター
タイプ名前説明スキーマ

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

path

uuid
必須

通知の UUID

string

レスポンス
HTTP コードDescriptionスキーマ

204

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.17.5. createRepoNotification

POST /api/v1/repository/{repository}/notification/

承認: oauth2_implicit(repo:admin)

パスパラメーター
タイプ名前説明スキーマ

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

要求の body スキーマ (application/json)

リポジトリーでの通知作成に関する情報

名前Descriptionスキーマ

イベント
必須

通知が応答するイベント

string

メソッド
必須

通知の方法 (メールや Web コールバックなど)

string

設定
必須

特定の通知メソッドに関する JSON 設定情報

object

eventConfig
required

特定の通知イベントに関する JSON 設定情報

object

title
任意

人間が判読できる通知のタイトル

string

レスポンス
HTTP コードDescriptionスキーマ

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.17.6. listRepoNotifications

指定したリポジトリーの通知をリスト表示します。

GET /api/v1/repository/{repository}/notification/

承認: oauth2_implicit(repo:admin)

パスパラメーター
タイプ名前説明スキーマ

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.18. robot

ユーザーおよび組織のロボットアカウントを管理します。

2.18.1. getUserRobots

ユーザーが利用可能なロボットをリスト表示します。

GET /api/v1/user/robots

承認: oauth2_implicit(user:admin)

クエリーパラメーター
タイプ名前説明スキーマ

query

limit
任意

これが指定されている場合には、返すべきロボットの数。

integer

query

token
任意

False の場合には、ロボットのトークンは返されません。

boolean

query

permissions
任意

ロボットのパーミッションがあるリポジトリーおよびチームを含めるかどうか。

boolean

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.18.2. getOrgRobotPermissions

組織のロボットのリポジトリーパーミッションリストを返します。

GET /api/v1/organization/{orgname}/robots/{robot_shortname}/permissions

承認: oauth2_implicit(user:admin)

パスパラメーター
タイプ名前説明スキーマ

path

robot_shortname
必須

ユーザーまたは組織の接頭辞を含まない、ロボットの省略名

string

path

orgname
必須

組織の名前

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.18.3. regenerateOrgRobotToken

組織のロボットのトークンを再生成します。

POST /api/v1/organization/{orgname}/robots/{robot_shortname}/regenerate

承認: oauth2_implicit(org:admin)

パスパラメーター
タイプ名前説明スキーマ

path

robot_shortname
必須

ユーザーまたは組織の接頭辞を含まない、ロボットの省略名

string

path

orgname
必須

組織の名前

string

レスポンス
HTTP コードDescriptionスキーマ

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.18.4. getUserRobotPermissions

ユーザーのロボットのリポジトリーパーミッションリストを返します。

GET /api/v1/user/robots/{robot_shortname}/permissions

承認: oauth2_implicit(user:admin)

パスパラメーター
タイプ名前説明スキーマ

path

robot_shortname
必須

ユーザーまたは組織の接頭辞を含まない、ロボットの省略名

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.18.5. regenerateUserRobotToken

ユーザーのロボットのトークンを再生成します。

POST /api/v1/user/robots/{robot_shortname}/regenerate

承認: oauth2_implicit(user:admin)

パスパラメーター
タイプ名前説明スキーマ

path

robot_shortname
必須

ユーザーまたは組織の接頭辞を含まない、ロボットの省略名

string

レスポンス
HTTP コードDescriptionスキーマ

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.18.6. getOrgRobot

指定された名前の組織のロボットを返します。

GET /api/v1/organization/{orgname}/robots/{robot_shortname}

承認: oauth2_implicit(org:admin)

パスパラメーター
タイプ名前説明スキーマ

path

robot_shortname
必須

ユーザーまたは組織の接頭辞を含まない、ロボットの省略名

string

path

orgname
必須

組織の名前

string

応答
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.18.7. createOrgRobot

組織に新しいロボットを作成します。

PUT /api/v1/organization/{orgname}/robots/{robot_shortname}

承認: oauth2_implicit(org:admin)

パスパラメーター
タイプ名前説明スキーマ

path

robot_shortname
必須

ユーザーまたは組織の接頭辞を含まない、ロボットの省略名

string

path

orgname
必須

組織の名前

string

要求の body スキーマ (application/json)

ロボット作成のデータ (任意)

名前Descriptionスキーマ

description
任意

ロボットのテキスト形式の説明 (任意)

string

unstructured_metadata
任意

ロボットの非構造化メタデータ (任意)

object

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.18.8. deleteOrgRobot

既存の組織ロボットを削除します。

DELETE /api/v1/organization/{orgname}/robots/{robot_shortname}

承認: oauth2_implicit(org:admin)

パスパラメーター
タイプ名前説明スキーマ

path

robot_shortname
必須

ユーザーまたは組織の接頭辞を含まない、ロボットの省略名

string

path

orgname
必須

組織の名前

string

応答
HTTP コードDescriptionスキーマ

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.18.9. getOrgRobots

組織のロボットをリスト表示します。

GET /api/v1/organization/{orgname}/robots

承認: oauth2_implicit(org:admin)

パスパラメーター
タイプ名前説明スキーマ

path

orgname
必須

組織の名前

string

クエリーパラメーター
タイプ名前説明スキーマ

query

limit
任意

これが指定されている場合には、返すべきロボットの数。

integer

query

token
任意

False の場合には、ロボットのトークンは返されません。

boolean

query

permissions
任意

ロボットのパーミッションがあるリポジトリーおよびチームを含めるかどうか。

boolean

応答
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.18.10. getUserRobot

指定の名前のユーザーのロボットを返します。

GET /api/v1/user/robots/{robot_shortname}

承認: oauth2_implicit(user:admin)

パスパラメーター
タイプ名前説明スキーマ

path

robot_shortname
必須

ユーザーまたは組織の接頭辞を含まない、ロボットの省略名

string

応答
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.18.11. createUserRobot

指定の名前で新たなユーザーロボットを作成します。

PUT /api/v1/user/robots/{robot_shortname}

承認: oauth2_implicit(user:admin)

パスパラメーター
タイプ名前説明スキーマ

path

robot_shortname
必須

ユーザーまたは組織の接頭辞を含まない、ロボットの省略名

string

要求の body スキーマ (application/json)

ロボット作成のデータ (任意)

名前Descriptionスキーマ

description
任意

ロボットのテキスト形式の説明 (任意)

string

unstructured_metadata
任意

ロボットの非構造化メタデータ (任意)

object

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.18.12. deleteUserRobot

既存のロボットを削除します。

DELETE /api/v1/user/robots/{robot_shortname}

承認: oauth2_implicit(user:admin)

パスパラメーター
タイプ名前説明スキーマ

path

robot_shortname
必須

ユーザーまたは組織の接頭辞を含まない、ロボットの省略名

string

レスポンス
HTTP コードDescriptionスキーマ

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.20. secscan

リポジトリーの脆弱性およびその他のセキュリティー情報をリスト表示および管理します。

2.20.1. getRepoManifestSecurity

GET /api/v1/repository/{repository}/manifest/{manifestref}/security

承認: oauth2_implicit(repo:read)

パスパラメーター
タイプ名前説明スキーマ

path

repository
必須

リポジトリーの完全パス (例: namespace/name)

string

path

manifestref
必須

マニフェストのダイジェスト

string

クエリーパラメーター
タイプ名前説明スキーマ

query

vulnerabilities
任意

脆弱性情報を含めます

boolean

応答
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.21. スーパーユーザー

スーパーユーザー API。

2.21.1. createInstallUser

新しいユーザーを作成します。

POST /api/v1/superuser/users/

承認: oauth2_implicit(super:user)

要求の body スキーマ (application/json)

ユーザー作成のデータ

名前Descriptionスキーマ

username
必須

作成されるユーザーの名前

string

email
任意

作成中のユーザーのメールアドレス

string

応答
HTTP コードDescriptionスキーマ

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

コマンドの例
$ curl -X POST -H "Authorization: Bearer <bearer_token>" -H "Content-Type: application/json" -d '{
  "username": "newuser",
  "email": "newuser@example.com"
}' "https://<quay-server.example.com>/api/v1/superuser/users/"

2.21.2. deleteInstallUser

ユーザーを削除します。

DELETE /api/v1/superuser/users/{username}

承認: oauth2_implicit(super:user)

要求の body スキーマ (application/json)

ユーザーを削除するためのデータ

名前説明スキーマ

username
必須

削除するユーザーのユーザー名

string

応答
HTTP コード説明スキーマ

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

コマンドの例
$ curl -X DELETE -H "Authorization: Bearer <bearer_token>" "https://<quay-server.example.com>/api/v1/superuser/users/{username}"

2.21.3. listAllUsers

システム内の全ユーザーリストを返します。

GET /api/v1/superuser/users/

承認: oauth2_implicit(super:user)

クエリーパラメーター
タイプ名前説明スキーマ

query

next_page
任意

次のページのページトークン

string

query

limit
任意

ページごとに返す結果の数を制限します。最大 100 です。

integer

query

disabled
任意

false の場合には、有効なユーザーのみが返されます。

boolean

応答
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

コマンドの例
$ curl -X GET -H "Authorization: Bearer <bearer_token>" "https://<quay-server.example.com>/api/v1/superuser/users/"

2.21.4. listAllLogs

現在のシステムの使用状況ログをリスト表示します。

GET /api/v1/superuser/logs

承認: oauth2_implicit(super:user)

クエリーパラメーター
タイプ名前説明スキーマ

query

next_page
任意

次のページのページトークン

string

query

page
任意

ログのページ番号

integer

query

endtime
任意

最後にログを取得した時間 (%m/%d/%Y %Z)

string

query

starttime
任意

最初にログを取得する時間 (%m/%d/%Y %Z)

string

応答
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.21.5. createServiceKey

POST /api/v1/superuser/keys

承認: oauth2_implicit(super:user)

要求の body スキーマ (application/json)

サービスキーの作成の説明

名前Descriptionスキーマ

サービス
必須

このキーで認証されるサービス

string

name
任意

サービスキーの判別しやすい名前

string

metadata
任意

このキーのメタデータのキー/値のペア

object

notes
任意

指定すると、キーにメモを追加で指定できます。

string

有効期限
必須

unix タイムスタンプとしての有効期限

 
応答
HTTP コードDescriptionスキーマ

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.21.6. listServiceKeys

GET /api/v1/superuser/keys

承認: oauth2_implicit(super:user)

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.21.7. changeUserQuotaSuperUser

PUT /api/v1/superuser/organization/{namespace}/quota/{quota_id}

承認: oauth2_implicit(super:user)

パスパラメーター
タイプ名前説明スキーマ

path

namespace
必須

 

string

path

quota_id
必須

 

string

要求の body スキーマ (application/json)

新しい組織の割り当ての説明

名前Descriptionスキーマ

limit_bytes
任意

組織で許可されているバイト数

integer

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.21.8. deleteUserQuotaSuperUser

DELETE /api/v1/superuser/organization/{namespace}/quota/{quota_id}

承認: oauth2_implicit(super:user)

パスパラメーター
タイプ名前説明スキーマ

path

namespace
必須

 

string

path

quota_id
必須

 

string

応答
HTTP コードDescriptionスキーマ

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.21.9. createUserQuotaSuperUser

POST /api/v1/superuser/organization/{namespace}/quota

承認: oauth2_implicit(super:user)

パスパラメーター
タイプ名前説明スキーマ

path

namespace
必須

 

string

要求の body スキーマ (application/json)

新しい組織の割り当ての説明

名前Descriptionスキーマ

limit_bytes
required

組織で許可されているバイト数

integer

応答
HTTP コードDescriptionスキーマ

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.21.10. listUserQuotaSuperUser

GET /api/v1/superuser/organization/{namespace}/quota

承認: oauth2_implicit(super:user)

パスパラメーター
タイプ名前説明スキーマ

path

namespace
必須

 

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.21.11. changeOrganizationQuotaSuperUser

PUT /api/v1/superuser/users/{namespace}/quota/{quota_id}

承認: oauth2_implicit(super:user)

パスパラメーター
タイプ名前説明スキーマ

path

namespace
必須

 

string

path

quota_id
必須

 

string

要求の body スキーマ (application/json)

新しい組織の割り当ての説明

名前Descriptionスキーマ

limit_bytes
任意

組織で許可されているバイト数

integer

応答
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.21.12. deleteOrganizationQuotaSuperUser

DELETE /api/v1/superuser/users/{namespace}/quota/{quota_id}

承認: oauth2_implicit(super:user)

パスパラメーター
タイプ名前説明スキーマ

path

namespace
必須

 

string

path

quota_id
必須

 

string

レスポンス
HTTP コードDescriptionスキーマ

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.21.13. createOrganizationQuotaSuperUser

POST /api/v1/superuser/users/{namespace}/quota

承認: oauth2_implicit(super:user)

パスパラメーター
タイプ名前説明スキーマ

path

namespace
必須

 

string

要求の body スキーマ (application/json)

新しい組織の割り当ての説明

名前Descriptionスキーマ

limit_bytes
任意

組織で許可されているバイト数

integer

応答
HTTP コードDescriptionスキーマ

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.21.14. listOrganizationQuotaSuperUser

GET /api/v1/superuser/users/{namespace}/quota

承認: oauth2_implicit(super:user)

パスパラメーター
タイプ名前説明スキーマ

path

namespace
必須

 

string

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.21.15. changeOrganization

指定したユーザーの情報を更新します。

PUT /api/v1/superuser/organizations/{name}

承認: oauth2_implicit(super:user)

パスパラメーター
タイプ名前説明スキーマ

path

name
必須

管理する組織の名前

string

要求の body スキーマ (application/json)

既存組織の更新の説明

名前Descriptionスキーマ

email
任意

組織の連絡先メール

string

invoice_email
任意

組織が請求書のメールを受信する必要があるかどうか

boolean

invoice_email_address
任意

請求書を受信するメールアドレス

 

tag_expiration_s
任意

タグの有効期限 (秒)

integer

レスポンス
HTTP コードDescriptionスキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.21.16. deleteOrganization

指定した組織を削除します。

DELETE /api/v1/superuser/organizations/{name}

承認: oauth2_implicit(super:user)

パスパラメーター
タイプ名前説明スキーマ

path

name
必須

管理する組織の名前

string

レスポンス
HTTP コードDescriptionスキーマ

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.21.17. approveServiceKey

POST /api/v1/superuser/approvedkeys/{kid}

承認: oauth2_implicit(super:user)

パスパラメーター
タイプ名前説明スキーマ

path

kid
必須

サービスキーの一意識別子

string

要求の body スキーマ (application/json)

サービスキーの承認に関する情報

名前Descriptionスキーマ

notes
任意

オプションの承認に関する注意事項

string

応答
HTTP コードDescriptionスキーマ

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

結果が見つからない

ApiError

2.21.18. deleteServiceKey

DELETE /api/v1/superuser/keys/{kid}

承認: oauth2_implicit(super:user)

パスパラメーター
タイプ名前説明スキーマ

path

kid
必須

サービスキーの一意識別子

string

レスポンス
HTTP コードDescriptionスキーマ

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError