Red Hat Quay API リファレンス


Red Hat Quay 3.14

Red Hat Quay API リファレンス

Red Hat OpenShift Documentation Team

概要

Red Hat Quay API リファレンス

はじめに

Red Hat Quay アプリケーションプログラミングインターフェイス (API) は、Red Hat Quay 内でタスクを管理および自動化するための包括的な RESTful インターフェイスを提供します。OAuth 2.0 プロトコル に基づいて設計されたこの API は、Red Hat Quay リソースへの安全できめ細かいアクセスを可能にし、管理者とユーザーがリポジトリーの作成、イメージの管理、権限の設定などのアクションを実行できるようにします。

Red Hat Quay はセマンティックバージョニング (SemVer) の原則に従っており、次のようなリリース間で予測可能な API の安定性を確保しています。

  • メジャーリリース: 新しい機能を導入します。API 互換性に対する重大な変更が含まれる可能性があります。たとえば、Red Hat Quay 2.0 の API は Red Hat Quay 3.0 とは異なります。
  • マイナーリリース: 下位互換性を保ちながら新しい機能を追加します。たとえば、3.y リリースではバージョン 3. リリースに機能が追加されます。
  • パッチリリース: 3.y.z などのマイナーリリースとの下位互換性を維持しながら、バグ修正と改善を提供します。

次のガイドでは、Red Hat Quay API をさらに詳しく説明し、以下のトピックの詳細を示します。

  • サポートされている HTTP メソッドを含む API エンドポイント構造
  • 各エンドポイントのリクエストとレスポンスのスキーマ
  • 必須および任意のパラメーター
  • 認証と認可の要件
  • 一般的なエラーコードとトラブルシューティング情報

トークンの概要、管理ストラテジー、API エンドポイントの理解など、さらなるガイド付きのアプローチは、Red Hat Quay API ガイド を参照してください。

第1章 認可

oauth2_implicit

スコープ

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

スコープ説明

repo:read

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

repo:write

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

repo:admin

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

repo:create

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

user:read

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

org:admin

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

super:user

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

user:admin

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

第2章 appspecifictokens

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

2.1. createAppToken

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

POST /api/v1/user/apptoken

認可: oauth2_implicit (user:admin)

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

新しいトークンの説明。

名前説明スキーマ

title
必須

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

string

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

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
 $ curl -X POST \
  -H "Authorization: Bearer <access_token>" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "MyAppToken"
  }' \
  "http://quay-server.example.com/api/v1/user/apptoken"
Copy to Clipboard

2.2. listAppTokens

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

GET /api/v1/user/apptoken

認可: oauth2_implicit (user:admin)

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

query

expiring
任意

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

boolean

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET \
  -H "Authorization: Bearer <access_token>" \
  "http://quay-server.example.com/api/v1/user/apptoken"
Copy to Clipboard

2.3. getAppToken

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

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

認可: oauth2_implicit (user:admin)

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

path

token_uuid
必須

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

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET \
  -H "Authorization: Bearer <access_token>" \
  "http://quay-server.example.com/api/v1/user/apptoken/<token_uuid>"
Copy to Clipboard

2.4. revokeAppToken

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

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

認可: oauth2_implicit (user:admin)

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

path

token_uuid
必須

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

string

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

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X DELETE \
  -H "Authorization: Bearer <access_token>" \
  "http://quay-server.example.com/api/v1/user/apptoken/<token_uuid>"
Copy to Clipboard

第3章 build

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

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 コード説明スキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

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 コード説明スキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

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 コード説明スキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

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 コード説明スキーマ

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

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

tags
任意

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

string の配列
non-empty unique

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

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

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 コード説明スキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

第4章 discovery

API 検出情報。

4.1. discovery

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

GET /api/v1/discovery

認可: 

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

query

internal
任意

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

boolean

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET "https://<quay-server.example.com>/api/v1/discovery?query=true" \
    -H "Authorization: Bearer <access_token>"
Copy to Clipboard

第5章 error

エラー詳細 API。

5.1. getErrorDescription

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

GET /api/v1/error/{error_type}

認可: 

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

path

error_type
必須

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

string

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

200

正常な呼び出し

ApiErrorDescription

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET "https://<quay-server.example.com>/api/v1/error/<error_type>" \
    -H "Authorization: Bearer <access_token>"
Copy to Clipboard

第6章 globalmessages

メッセージ API。

6.1. createGlobalMessage

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

POST /api/v1/messages

認可: oauth2_implicit (super:user)

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

新規メッセージの作成

名前説明スキーマ

message
必須

単一メッセージ

object

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

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X POST "https://<quay-server.example.com>/api/v1/messages" \
    -H "Authorization: Bearer <access_token>" \
    -H "Content-Type: application/json" \
    -d '{
        "message": {
            "content": "Hi",
            "media_type": "text/plain",
            "severity": "info"
        }
    }'
Copy to Clipboard

6.2. getGlobalMessages

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

GET /api/v1/messages

認可: 

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET "https://<quay-server.example.com>/api/v1/messages" \
    -H "Authorization: Bearer <access_token>"
Copy to Clipboard

6.3. deleteGlobalMessage

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

DELETE /api/v1/message/{uuid}

認可: oauth2_implicit (super:user)

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

path

uuid
必須

 

string

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

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X DELETE "https://<quay-server.example.com>/api/v1/message/<uuid>" \
    -H "Authorization: Bearer <access_token>"
Copy to Clipboard

第7章 logs

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

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 コード説明スキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET \
  -H "Authorization: Bearer <bearer_token>" \
  -H "Accept: application/json" \
  "<quay-server.example.com>/api/v1/user/aggregatelogs?performer=<username>&starttime=<MM/DD/YYYY>&endtime=<MM/DD/YYYY>"
Copy to Clipboard

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)

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

名前説明スキーマ

callback_url
任意

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

string

callback_email
任意

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

string

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

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X POST \
  -H "Authorization: Bearer <bearer_token>" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -d '{
        "starttime": "<MM/DD/YYYY>",
        "endtime": "<MM/DD/YYYY>",
        "callback_email": "your.email@example.com"
      }' \
  "http://<quay-server.example.com>/api/v1/user/exportlogs"
Copy to Clipboard

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 コード説明スキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET   -H "Authorization: Bearer <bearer_token>"   -H "Accept: application/json"   "<quay-server.example.com>/api/v1/user/logs"
Copy to Clipboard

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 コード説明スキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET \
  -H "Authorization: Bearer <bearer_token>" \
  -H "Accept: application/json" \
  "<quay-server.example.com>/api/v1/organization/{orgname}/aggregatelogs"
Copy to Clipboard

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)

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

名前説明スキーマ

callback_url
任意

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

string

callback_email
任意

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

string

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

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X POST \
  -H "Authorization: Bearer <bearer_token>" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -d '{
        "starttime": "<MM/DD/YYYY>",
        "endtime": "<MM/DD/YYYY>",
        "callback_email": "org.logs@example.com"
      }' \
  "http://<quay-server.example.com>/api/v1/organization/{orgname}/exportlogs"
Copy to Clipboard

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 コード説明スキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET \
  -H "Authorization: Bearer <bearer_token>" \
  -H "Accept: application/json" \
  "http://<quay-server.example.com>/api/v1/organization/{orgname}/logs"
Copy to Clipboard

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 コード説明スキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET \
  -H "Authorization: Bearer <bearer_token>" \
  -H "Accept: application/json" \
  "<quay-server.example.com>/api/v1/repository/<repository_name>/<namespace>/aggregatelogs?starttime=2024-01-01&endtime=2024-06-18""
Copy to Clipboard

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)

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

名前説明スキーマ

callback_url
任意

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

string

callback_email
任意

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

string

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

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X POST \
  -H "Authorization: Bearer <bearer_token>" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -d '{
        "starttime": "2024-01-01",
        "endtime": "2024-06-18",
        "callback_url": "http://your-callback-url.example.com"
      }' \
  "http://<quay-server.example.com>/api/v1/repository/{repository}/exportlogs"
Copy to Clipboard

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 コード説明スキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET \
  -H "Authorization: Bearer <bearer_token>" \
  -H "Accept: application/json" \
  "http://<quay-server.example.com>/api/v1/repository/{repository}/logs"
Copy to Clipboard

第8章 マニフェスト

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

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 コード説明スキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET \
  -H "Authorization: Bearer <bearer_token>" \
  -H "Accept: application/json" \
  https://<quay-server.example.com>/api/v1/repository/<repository>/manifest/<manifestref>/labels/<label_id>
Copy to Clipboard

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 コード説明スキーマ

204

削除済み

 

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/repository/<repository>/manifest/<manifestref>/labels/<labelid>
Copy to Clipboard

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)

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

名前説明スキーマ

key
必須

ラベルのキー

string

value
必須

ラベルの値

string

media_type
必須

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

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

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X POST \
  -H "Authorization: Bearer <bearer_token>" \
  -H "Content-Type: application/json" \
  --data '{
    "key": "<key>",
    "value": "<value>",
    "media_type": "<media_type>"
  }' \
  https://<quay-server.example.com>/api/v1/repository/<repository>/manifest/<manifestref>/labels
Copy to Clipboard

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 コード説明スキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET \
  -H "Authorization: Bearer <bearer_token>" \
  -H "Accept: application/json" \
  https://<quay-server.example.com>/api/v1/repository/<repository>/manifest/<manifestref>/labels
Copy to Clipboard

8.5. getRepoManifest

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

認可: oauth2_implicit (repo:read)

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

path

repository
必須

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

string

path

manifestref
必須

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

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET \
  -H "Authorization: Bearer <bearer_token>" \
  -H "Accept: application/json" \
  https://<quay-server.example.com>/api/v1/repository/<repository>/manifest/<manifestref>
Copy to Clipboard

第9章 mirror

9.1. syncCancel

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

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

認可: oauth2_implicit (repo:admin)

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

path

repository
必須

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

string

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

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X POST "https://<quay-server.example.com>/api/v1/repository/<namespace>/<repo>/mirror/sync-cancel" \
Copy to Clipboard

9.2. syncNow

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

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

認可: oauth2_implicit (repo:admin)

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

path

repository
必須

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

string

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

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X POST "https://<quay-server.example.com>/api/v1/repository/<namespace>/<repo>/mirror/sync-now" \
     -H "Authorization: Bearer <access_token>"
Copy to Clipboard

9.3. getRepoMirrorConfig

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

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

認可: oauth2_implicit (repo:admin)

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

path

repository
必須

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

string

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

200

正常な呼び出し

ViewMirrorConfig

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET "https://<quay-server.example.com>/api/v1/repository/<namespace>/<repo>/mirror" \
     -H "Authorization: Bearer <access_token>"
Copy to Clipboard

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 コード説明スキーマ

201

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X PUT "https://<quay-server.example.com>/api/v1/repository/<namespace>/<repo>/mirror" \
    -H "Authorization: Bearer <access_token>" \
    -H "Content-Type: application/json" \
    -d '{
        "is_enabled": <false>, 
1

        "external_reference": "<external_reference>",
        "external_registry_username": "<external_registry_username>",
        "external_registry_password": "<external_registry_password>",
        "sync_start_date": "<sync_start_date>",
        "sync_interval": <sync_interval>,
        "robot_username": "<robot_username>",
        "root_rule": {
            "rule": "<rule>",
            "rule_type": "<rule_type>"
        }
    }'
Copy to Clipboard
1
自動同期を無効にします。

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
必須

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

string

sync_interval
必須

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

integer

robot_username
必須

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

string

root_rule
必須

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

object

external_registry_config
任意

 

object

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

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X POST "https://<quay-server.example.com>/api/v1/repository/<namespace>/<repo>/mirror" \
    -H "Authorization: Bearer <access_token>" \
    -H "Content-Type: application/json" \
    -d '{
        "is_enabled": <is_enabled>,
        "external_reference": "<external_reference>",
        "external_registry_username": "<external_registry_username>",
        "external_registry_password": "<external_registry_password>",
        "sync_start_date": "<sync_start_date>",
        "sync_interval": <sync_interval>,
        "robot_username": "<robot_username>",
        "root_rule": {
            "rule": "<rule>",
            "rule_type": "<rule_type>"
        }
    }'
Copy to Clipboard

第10章 namespacequota

10.1. listUserQuota

GET /api/v1/user/quota

認可: oauth2_implicit (user:admin)

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET "https://<quay-server.example.com>/api/v1/user/quota" \
  -H "Authorization: Bearer <access_token>"
Copy to Clipboard

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 コード説明スキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET "https://<quay-server.example.com>/api/v1/organization/<orgname>/quota/<quota_id>/limit/<limit_id>" \
     -H "Authorization: Bearer <access_token>"
Copy to Clipboard

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)

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

名前説明スキーマ

type
任意

割り当て制限のタイプ: "Warning" または "Reject"

string

threshold_percent
任意

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

integer

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X PUT "https://<quay-server.example.com>/api/v1/organization/<orgname>/quota/<quota_id>/limit/<limit_id>" \
     -H "Authorization: Bearer <access_token>" \
     -H "Content-Type: application/json" \
     -d '{
           "type": "<type>",
           "threshold_percent": <threshold_percent>
         }'
Copy to Clipboard

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 コード説明スキーマ

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X DELETE "https://<quay-server.example.com>/api/v1/organization/<orgname>/quota/<quota_id>/limit/<limit_id>" \
     -H "Authorization: Bearer <access_token>"
Copy to Clipboard

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)

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

名前説明スキーマ

type
必須

割り当て制限のタイプ: "Warning" または "Reject"

string

threshold_percent
必須

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

integer

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

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X POST "https://<quay-server.example.com>/api/v1/organization/<orgname>/quota/<quota_id>/limit" \
     -H "Authorization: Bearer <access_token>" \
     -H "Content-Type: application/json" \
     -d '{
           "limit_bytes": 21474836480,
           "type": "Reject", 
1

           "threshold_percent": 90 
2

         }'
Copy to Clipboard

10.6. listOrganizationQuotaLimit

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

認可: 

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

path

quota_id
必須

 

string

path

orgname
必須

 

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET "https://<quay-server.example.com>/api/v1/organization/<orgname>/quota/<quota_id>/limit" \
     -H "Authorization: Bearer <access_token>"
Copy to Clipboard

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 コード説明スキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET "https://<quay-server.example.com>/api/v1/user/quota/{quota_id}/limit/{limit_id}" \
  -H "Authorization: Bearer <access_token>"
Copy to Clipboard

10.8. listUserQuotaLimit

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

認可: oauth2_implicit (user:admin)

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

path

quota_id
必須

 

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET "https://<quay-server.example.com>/api/v1/user/quota/{quota_id}/limit" \
  -H "Authorization: Bearer <access_token>"
Copy to Clipboard

10.9. getOrganizationQuota

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

認可: 

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

path

quota_id
必須

 

string

path

orgname
必須

 

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET "https://<quay-server.example.com>/api/v1/organization/<orgname>/quota/<quota_id>" \
     -H "Authorization: Bearer <access_token>"S
Copy to Clipboard

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)

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

名前説明スキーマ

limit_bytes
任意

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

integer

limits
任意

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

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X PUT "https://<quay-server.example.com>/api/v1/organization/<orgname>/quota/<quota_id>" \
     -H "Authorization: Bearer <access_token>" \
     -H "Content-Type: application/json" \
     -d '{
         "limit_bytes": <limit_in_bytes>
     }'
Copy to Clipboard

10.11. deleteOrganizationQuota

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

認可: oauth2_implicit (super:user)

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

path

quota_id
必須

 

string

path

orgname
必須

 

string

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

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X DELETE "https://<quay-server.example.com>/api/v1/organization/<orgname>/quota/<quota_id>" \
     -H "Authorization: Bearer <access_token>"
Copy to Clipboard

10.12. createOrganizationQuota

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

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

認可: oauth2_implicit (super:user)

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

path

orgname
必須

 

string

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

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

名前説明スキーマ

limit_bytes
必須

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

integer

limits
任意

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

string

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

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X POST "https://<quay-server.example.com>/api/v1/organization/<orgname>/quota" \
     -H "Authorization: Bearer <access_token>" \
     -H "Content-Type: application/json" \
     -d '{
         "limit_bytes": 10737418240,
         "limits": "10 Gi"
     }'
Copy to Clipboard

10.13. listOrganizationQuota

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

認可: 

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

path

orgname
必須

 

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -k -X GET -H "Authorization: Bearer <token>" -H 'Content-Type: application/json'  https://<quay-server.example.com>/api/v1/organization/<organization_name>/quota
Copy to Clipboard

10.14. getUserQuota

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

認可: oauth2_implicit (user:admin)

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

path

quota_id
必須

 

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET "https://<quay-server.example.com>/api/v1/user/quota/{quota_id}" \
  -H "Authorization: Bearer <access_token>"
Copy to Clipboard

第11章 organization

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

11.1. createOrganization

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

POST /api/v1/organization/

認可: oauth2_implicit (user:admin)

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

新しい組織の説明。

名前説明スキーマ

name
必須

組織のユーザー名

string

email
任意

組織の連絡先メール

string

recaptcha_response
任意

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

string

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

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/"
Copy to Clipboard

11.2. validateProxyCacheConfig

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

認可: 

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

path

orgname
必須

 

string

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

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

名前説明スキーマ

upstream_registry
必須

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

string

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

202

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X POST "https://<quay-server.example.com>/api/v1/organization/{orgname}/validateproxycache" \
  -H "Authorization: Bearer <access_token>" \
  -H "Content-Type: application/json" \
  -d '{
        "upstream_registry": "<upstream_registry>"
      }'
Copy to Clipboard

11.3. getOrganizationCollaborators

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

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

認可: oauth2_implicit (org:admin)

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

path

orgname
必須

組織の名前

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET "https://<quay-server.example.com>/api/v1/organization/{orgname}/collaborators" \
  -H "Authorization: Bearer <access_token>"
Copy to Clipboard

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 コード説明スキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET "https://<quay-server.example.com>/api/v1/organization/<orgname>/applications/<client_id>" \
  -H "Authorization: Bearer <access_token>"
Copy to Clipboard

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)

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

名前説明スキーマ

name
必須

アプリケーションの名前

string

redirect_uri
必須

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

string

application_uri
必須

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

string

description
任意

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

string

avatar_email
任意

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

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X PUT "https://quay-server.example.com/api/v1/organization/test/applications/12345" \
  -H "Authorization: Bearer <access_token>" \
  -H "Content-Type: application/json" \
  -d '{
        "name": "Updated Application Name",
        "redirect_uri": "https://example.com/oauth/callback",
        "application_uri": "https://example.com",
        "description": "Updated description for the application",
        "avatar_email": "avatar@example.com"
      }'
Copy to Clipboard

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 コード説明スキーマ

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X DELETE "https://<quay-server.example.com>/api/v1/organization/{orgname}/applications/{client_id}" \
  -H "Authorization: Bearer <access_token>"
Copy to Clipboard

11.7. createOrganizationApplication

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

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

認可: oauth2_implicit (org:admin)

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

path

orgname
必須

組織の名前

string

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

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

名前説明スキーマ

name
必須

アプリケーションの名前

string

redirect_uri
任意

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

string

application_uri
任意

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

string

description
任意

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

string

avatar_email
任意

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

string

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

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X POST "https://<quay-server.example.com>/api/v1/organization/<orgname>/applications" \
  -H "Authorization: Bearer <access_token>" \
  -H "Content-Type: application/json" \
  -d '{
        "name": "<app_name>",
        "redirect_uri": "<redirect_uri>",
        "application_uri": "<application_uri>",
        "description": "<app_description>",
        "avatar_email": "<avatar_email>"
      }'
Copy to Clipboard

11.8. getOrganizationApplications

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

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

認可: oauth2_implicit (org:admin)

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

path

orgname
必須

組織の名前

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET "https://<quay-server.example.com>/api/v1/organization/<orgname>/applications" \
  -H "Authorization: Bearer <access_token>"
Copy to Clipboard

11.9. getProxyCacheConfig

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

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

認可: 

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

path

orgname
必須

組織の名前

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET "https://<quay-server.example.com>/api/v1/organization/{orgname}/proxycache" \
  -H "Authorization: Bearer <access_token>"
Copy to Clipboard

11.10. deleteProxyCacheConfig

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

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

認可: 

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

path

orgname
必須

組織の名前

string

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

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X DELETE "https://<quay-server.example.com>/api/v1/organization/{orgname}/proxycache" \
  -H "Authorization: Bearer <access_token>"
Copy to Clipboard

11.11. createProxyCacheConfig

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

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

認可: 

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

path

orgname
必須

組織の名前

string

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

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

名前説明スキーマ

upstream_registry
必須

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

string

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

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X POST "https://<quay-server.example.com>/api/v1/organization/<orgname>/proxycache" \
  -H "Authorization: Bearer <access_token>" \
  -H "Content-Type: application/json" \
  -d '{
        "upstream_registry": "<upstream_registry>"
      }'
Copy to Clipboard

11.12. getOrganizationMember

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

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

認可: oauth2_implicit (org:admin)

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

path

membername
必須

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

string

path

orgname
必須

組織の名前

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET "https://<quay-server.example.com>/api/v1/organization/<orgname>/members/<membername>" \
  -H "Authorization: Bearer <access_token>"
Copy to Clipboard

11.13. removeOrganizationMember

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

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

認可: oauth2_implicit (org:admin)

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

path

membername
必須

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

string

path

orgname
必須

組織の名前

string

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

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X DELETE "https://<quay-server.example.com>/api/v1/organization/<orgname>/members/<membername>" \
  -H "Authorization: Bearer <access_token>"
Copy to Clipboard

11.14. getOrganizationMembers

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

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

認可: oauth2_implicit (org:admin)

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

path

orgname
必須

組織の名前

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET "https://<quay-server.example.com>/api/v1/organization/<orgname>/members" \
  -H "Authorization: Bearer <access_token>"
Copy to Clipboard

11.15. getOrganization

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

GET /api/v1/organization/{orgname}

認可: 

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

path

orgname
必須

組織の名前

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

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

11.16. changeOrganizationDetails

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

PUT /api/v1/organization/{orgname}

認可: oauth2_implicit (org:admin)

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

path

orgname
必須

組織の名前

string

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

既存組織の更新の説明

名前説明スキーマ

email
任意

組織の連絡先メール

string

invoice_email
任意

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

boolean

invoice_email_address
任意

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

 

tag_expiration_s
任意

タグの有効期限 (秒)

integer

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

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

11.17. deleteAdminedOrganization

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

DELETE /api/v1/organization/{orgname}

認可: oauth2_implicit (org:admin)

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

path

orgname
必須

組織の名前

string

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

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

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

11.18. getApplicationInformation

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

GET /api/v1/app/{client_id}

認可: 

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

path

client_id
必須

OAuth クライアント ID

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET "https://<quay-server.example.com>/api/v1/app/<client_id>" \
  -H "Authorization: Bearer <access_token>"
Copy to Clipboard

第12章 permission

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

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 コード説明スキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET \
  -H "Authorization: Bearer <access_token>" \
  "https://quay-server.example.com/api/v1/repository/<repository_path>/permissions/user/<username>/transitive"
Copy to Clipboard

12.2. getUserPermissions

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

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

認可: oauth2_implicit (repo:admin)

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

path

username
必須

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

string

path

repository
必須

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

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET \
  -H "Authorization: Bearer <access_token>" \
  "https://quay-server.example.com/api/v1/repository/<repository_path>/permissions/user/<username>"
Copy to Clipboard

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)

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

名前説明スキーマ

role
必須

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

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X PUT \
  -H "Authorization: Bearer <bearer_token>" \
  -H "Content-Type: application/json" \
  -d '{"role": "admin"}' \
  https://<quay-server.example.com>/api/v1/repository/<namespace>/<repository>/permissions/user/<username>
Copy to Clipboard

12.4. deleteUserPermissions

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

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

認可: oauth2_implicit (repo:admin)

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

path

username
必須

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

string

path

repository
必須

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

string

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

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X DELETE \
  -H "Authorization: Bearer <bearer_token>" \
  -H "Accept: application/json" \
  https://<quay-server.example.com>/api/v1/repository/<namespace>/<repository>/permissions/user/<username>
Copy to Clipboard

12.5. getTeamPermissions

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

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

認可: oauth2_implicit (repo:admin)

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

path

repository
必須

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

string

path

teamname
必須

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

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET \
  -H "Authorization: Bearer <access_token>" \
  "https://quay-server.example.com/api/v1/repository/<namespace>/<repository>/permissions/team/<teamname>"
Copy to Clipboard

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)

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

名前説明スキーマ

role
必須

チームに使用するロール

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

$ curl -X PUT \
  -H "Authorization: Bearer <access_token>" \
  -H "Content-Type: application/json" \
  -d '{"role": "<role>"}' \
  "https://quay-server.example.com/api/v1/repository/<namespace>/<repository>/permissions/team/<teamname>"
Copy to Clipboard

12.7. deleteTeamPermissions

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

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

認可: oauth2_implicit (repo:admin)

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

path

repository
必須

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

string

path

teamname
必須

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

string

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

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X DELETE \
  -H "Authorization: Bearer <access_token>" \
  "https://quay-server.example.com/api/v1/repository/<namespace>/<repository>/permissions/team/<teamname>"
Copy to Clipboard

12.8. listRepoTeamPermissions

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

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

認可: oauth2_implicit (repo:admin)

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

path

repository
必須

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

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET \
  -H "Authorization: Bearer <access_token>" \
  "https://quay-server.example.com/api/v1/repository/<namespace>/<repository>/permissions/team/"
Copy to Clipboard

12.9. listRepoUserPermissions

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

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

認可: oauth2_implicit (repo:admin)

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

path

repository
必須

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

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET \
  -H "Authorization: Bearer <bearer_token>" \
  -H "Accept: application/json" \
  https://<quay-server.example.com>/api/v1/repository/<namespace>/<repository>/permissions/user/<username>/
Copy to Clipboard

第13章 policy

13.1. createOrganizationAutoPrunePolicy

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

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

認可: oauth2_implicit (org:admin)

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

path

orgname
必須

組織の名前

string

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

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

名前説明スキーマ

method
必須

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

string

value
必須

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

 

tagPattern
optional

このパターンに一致するタグのみがプルーニングされます

string

tagPatternMatches
optional

プルーニングされたタグが tagPattern と一致するかどうかを決定する

boolean

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

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X POST -H "Authorization: Bearer <access_token>" -H "Content-Type: application/json" -d '{"method": "number_of_tags", "value": 10}' http://<quay-server.example.com>/api/v1/organization/<organization_name>/autoprunepolicy/
Copy to Clipboard

13.2. listOrganizationAutoPrunePolicies

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

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

認可: oauth2_implicit (org:admin)

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

path

orgname
必須

組織の名前

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET "https://quay-server.example.com/api/v1/organization/example_org/autoprunepolicy/" \
  -H "Authorization: Bearer <your_access_token>"
Copy to Clipboard

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 コード説明スキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET -H "Authorization: Bearer <access_token>" http://<quay-server.example.com>/api/v1/organization/<organization_name>/autoprunepolicy/<policy_uuid>
Copy to Clipboard

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 コード説明スキーマ

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X DELETE "https://quay-server.example.com/api/v1/organization/example_org/autoprunepolicy/example_policy_uuid" \
  -H "Authorization: Bearer <your_access_token>"
Copy to Clipboard

13.5. updateOrganizationAutoPrunePolicy

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

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

認可: oauth2_implicit (org:admin)

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

path

policy_uuid
required

ポリシーの一意の ID

string

path

orgname
必須

組織の名前

string

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

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

名前説明スキーマ

method
必須

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

string

value
必須

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

 

tagPattern
optional

このパターンに一致するタグのみがプルーニングされます

string

tagPatternMatches
optional

プルーニングされたタグが tagPattern と一致するかどうかを決定する

boolean

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

204

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X PUT   -H "Authorization: Bearer <bearer_token>"   -H "Content-Type: application/json"   -d '{
    "method": "creation_date",
    "value": "4d",
    "tagPattern": "^v*",
    "tagPatternMatches": true
  }'   "<quay-server.example.com>/api/v1/organization/<organization_name>/autoprunepolicy/<uuid>"
Copy to Clipboard

13.6. createRepositoryAutoPrunePolicy

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

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

認可: oauth2_implicit (repo:admin)

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

path

repository
必須

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

string

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

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

名前説明スキーマ

method
必須

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

string

value
必須

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

 

tagPattern
optional

このパターンに一致するタグのみがプルーニングされます

string

tagPatternMatches
optional

プルーニングされたタグが tagPattern と一致するかどうかを決定する

boolean

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

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X POST -H "Authorization: Bearer <access_token>" -H "Content-Type: application/json" -d '{"method": "number_of_tags","value": 2}' http://<quay-server.example.com>/api/v1/repository/<organization_name>/<repository_name>/autoprunepolicy/
Copy to Clipboard

13.7. listRepositoryAutoPrunePolicies

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

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

認可: oauth2_implicit (repo:admin)

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

path

repository
必須

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

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET "https://quay-server.example.com/api/v1/repository/example_namespace/example_repo/autoprunepolicy/" \
  -H "Authorization: Bearer <your_access_token>"
Copy to Clipboard

13.8. getRepositoryAutoPrunePolicy

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

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

認可: oauth2_implicit (repo:admin)

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

path

policy_uuid
required

ポリシーの一意の ID

string

path

repository
必須

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

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET "https://quay-server.example.com/api/v1/repository/example_namespace/example_repo/autoprunepolicy/123e4567-e89b-12d3-a456-426614174000" \
  -H "Authorization: Bearer <your_access_token>"
Copy to Clipboard

13.9. deleteRepositoryAutoPrunePolicy

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

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

認可: oauth2_implicit (repo:admin)

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

path

policy_uuid
required

ポリシーの一意の ID

string

path

repository
必須

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

string

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

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X DELETE "https://quay-server.example.com/api/v1/repository/example_namespace/example_repo/autoprunepolicy/123e4567-e89b-12d3-a456-426614174000" \
  -H "Authorization: Bearer <your_access_token>"
Copy to Clipboard

13.10. updateRepositoryAutoPrunePolicy

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

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

認可: oauth2_implicit (repo:admin)

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

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 日)))

 

tagPattern
optional

このパターンに一致するタグのみがプルーニングされます

string

tagPatternMatches
optional

プルーニングされたタグが tagPattern と一致するかどうかを決定する

boolean

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X PUT \
  -H "Authorization: Bearer <bearer_token>" \
  -H "Content-Type: application/json" \
  -d '{
    "method": "number_of_tags",
    "value": "5",
    "tagPattern": "^test.*",
    "tagPatternMatches": true
  }' \
  "https://quay-server.example.com/api/v1/repository/<namespace>/<repo_name>/autoprunepolicy/<uuid>"
Copy to Clipboard

13.11. createUserAutoPrunePolicy

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

POST /api/v1/user/autoprunepolicy/

認可: oauth2_implicit (user:admin)

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

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

名前説明スキーマ

method
必須

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

string

value
必須

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

 

tagPattern
optional

このパターンに一致するタグのみがプルーニングされます

string

tagPatternMatches
optional

プルーニングされたタグが tagPattern と一致するかどうかを決定する

boolean

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

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X POST "https://quay-server.example.com/api/v1/user/autoprunepolicy/" \
  -H "Authorization: Bearer <your_access_token>" \
  -H "Content-Type: application/json" \
  -d '{
    "method": "number_of_tags",
    "value": 10,
    "tagPattern": "v*",
    "tagPatternMatches": true
  }'
Copy to Clipboard

13.12. listUserAutoPrunePolicies

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

GET /api/v1/user/autoprunepolicy/

認可: oauth2_implicit (user:admin)

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET "https://quay-server.example.com/api/v1/user/autoprunepolicy/" \
  -H "Authorization: Bearer <your_access_token>"
Copy to Clipboard

13.13. getUserAutoPrunePolicy

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

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

認可: oauth2_implicit (user:admin)

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

path

policy_uuid
required

ポリシーの一意の ID

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET "https://quay-server.example.com/api/v1/user/autoprunepolicy/{policy_uuid}" \
  -H "Authorization: Bearer <your_access_token>"
Copy to Clipboard

13.14. deleteUserAutoPrunePolicy

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

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

認可: oauth2_implicit (user:admin)

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

path

policy_uuid
required

ポリシーの一意の ID

string

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

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X DELETE "https://quay-server.example.com/api/v1/user/autoprunepolicy/<policy_uuid>" \
  -H "Authorization: Bearer <your_access_token>"
Copy to Clipboard

13.15. updateUserAutoPrunePolicy

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

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

認可: oauth2_implicit (user:admin)

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

path

policy_uuid
required

ポリシーの一意の ID

string

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

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

名前説明スキーマ

method
必須

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

string

value
必須

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

 

tagPattern
optional

このパターンに一致するタグのみがプルーニングされます

string

tagPatternMatches
optional

プルーニングされたタグが tagPattern と一致するかどうかを決定する

boolean

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

204

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X PUT "https://quay-server.example.com/api/v1/user/autoprunepolicy/<policy_uuid>" \
  -H "Authorization: Bearer <your_access_token>" \
  -H "Content-Type: application/json" \
  -d '{
    "method": "number_of_tags",
    "value": "10",
    "tagPattern": ".*-old",
    "tagPatternMatches": true
  }'
Copy to Clipboard

第14章 prototype

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

14.1. updateOrganizationPrototypePermission

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

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

認可: oauth2_implicit (org:admin)

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

path

prototypeid
必須

プロトタイプの ID

string

path

orgname
必須

組織の名前

string

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

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

名前説明スキーマ

role
任意

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

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X PUT \
  -H "Authorization: Bearer <bearer_token>" \
  -H "Content-Type: application/json" \
  --data '{
    "role": "write"
  }' \
  https://<quay-server.example.com>/api/v1/organization/<organization_name>/prototypes/<prototypeid>
Copy to Clipboard

14.2. deleteOrganizationPrototypePermission

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

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

認可: oauth2_implicit (org:admin)

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

path

prototypeid
必須

プロトタイプの ID

string

path

orgname
必須

組織の名前

string

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

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
curl -X DELETE \
  -H "Authorization: Bearer <bearer_token>" \
  -H "Accept: application/json" \
  https://<quay-server.example.com>/api/v1/organization/<organization_name>/prototypes/<prototype_id>
Copy to Clipboard

14.3. createOrganizationPrototypePermission

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

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

認可: oauth2_implicit (org:admin)

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

path

orgname
必須

組織の名前

string

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

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

名前説明スキーマ

role
必須

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

string

activating_user
任意

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

object

委譲
必須

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

object

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

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X POST   -H "Authorization: Bearer <bearer_token>"   -H "Content-Type: application/json"   --data '{
    "role": "<admin_read_or_write>",
    "delegate": {
      "name": "<username>",
      "kind": "user"
    },
    "activating_user": {
      "name": "<robot_name>"
    }
  }'   https://<quay-server.example.com>/api/v1/organization/<organization_name>/prototypes
Copy to Clipboard

14.4. getOrganizationPrototypePermissions

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

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

認可: oauth2_implicit (org:admin)

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

path

orgname
必須

組織の名前

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET \
  -H "Authorization: Bearer <bearer_token>" \
  -H "Accept: application/json" \
  https://<quay-server.example.com>/api/v1/organization/<organization_name>/prototypes
Copy to Clipboard

第15章 referrers

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

15.1. getReferrers

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

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

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

名前

説明

スキーマ

path

orgname
必須

組織の名前

string

path

repository
必須

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

string

path

referrers
必須

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

string

第16章 repository

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

16.1. createRepo

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

POST /api/v1/repository

認可: oauth2_implicit (repo:create)

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

新規リポジトリーの説明

名前説明スキーマ

repository
必須

Repository name

string

visibility
必須

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

string

namespace
任意

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

string

description
必須

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

string

repo_kind
任意

リポジトリーの種類

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

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"
Copy to Clipboard

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 コード説明スキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET \
  -H "Authorization: Bearer <ACCESS_TOKEN>" \
  "https://quay-server.example.com/api/v1/repository?public=true&starred=false&namespace=<NAMESPACE>"
Copy to Clipboard

16.3. changeRepoVisibility

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

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

認可: oauth2_implicit (repo:admin)

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

path

repository
必須

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

string

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

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

名前説明スキーマ

visibility
必須

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

string

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

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンド例
$ curl -X POST \
  -H "Authorization: Bearer <ACCESS_TOKEN>" \
  -H "Content-Type: application/json" \
  -d '{
        "visibility": "private"
      }' \
  "https://quay-server.example.com/api/v1/repository/<NAMESPACE>/<REPO_NAME>/changevisibility"
Copy to Clipboard

16.4. changeRepoState

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

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

認可: oauth2_implicit (repo:admin)

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

path

repository
必須

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

string

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

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

名前説明スキーマ

状態
必須

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

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例

16.5. getRepo

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

GET /api/v1/repository/{repository}

認可: oauth2_implicit (repo:read)

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

path

repository
必須

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

string

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

query

includeTags
任意

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

boolean

query

includeStats
任意

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

boolean

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET -H "Authorization: Bearer <bearer_token>" "<quay-server.example.com>/api/v1/repository/<namespace>/<repository_name>"
Copy to Clipboard

16.6. updateRepo

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

PUT /api/v1/repository/{repository}

認可: oauth2_implicit (repo:write)

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

path

repository
必須

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

string

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

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

名前説明スキーマ

description
必須

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

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X PUT \
  -H "Authorization: Bearer <bearer_token>" \
  -H "Content-Type: application/json" \
  -d '{
        "description": "This is an updated description for the repository."
      }' \
  "https://quay-server.example.com/api/v1/repository/<NAMESPACE>/<REPOSITORY>"
Copy to Clipboard

16.7. deleteRepository

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

DELETE /api/v1/repository/{repository}

認可: oauth2_implicit (repo:admin)

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

path

repository
必須

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

string

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

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X DELETE   -H "Authorization: Bearer <bearer_token>" "<quay-server.example.com>/api/v1/repository/<namespace>/<repository_name>"
Copy to Clipboard

第17章 repositorynotification

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

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 コード説明スキーマ

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X POST \
  -H "Authorization: Bearer <bearer_token>" \
  https://<quay-server.example.com>/api/v1/repository/<repository>/notification/<uuid>/test
Copy to Clipboard

17.2. getRepoNotification

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

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

認可: oauth2_implicit (repo:admin)

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

path

repository
必須

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

string

path

uuid
必須

通知の UUID

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X POST \
  -H "Authorization: Bearer <bearer_token>" \
  https://<quay-server.example.com>/api/v1/repository/<repository>/notification/<uuid>
Copy to Clipboard

17.3. deleteRepoNotification

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

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

認可: oauth2_implicit (repo:admin)

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

path

repository
必須

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

string

path

uuid
必須

通知の UUID

string

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

204

削除済み

 

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/repository/<namespace>/<repository_name>/notification/<uuid>
Copy to Clipboard

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 コード説明スキーマ

204

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X POST \
  -H "Authorization: Bearer <bearer_token>" \
  https://<quay-server.example.com>/api/v1/repository/<repository>/notification/<uuid>
Copy to Clipboard

17.5. createRepoNotification

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

認可: oauth2_implicit (repo:admin)

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

path

repository
必須

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

string

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

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

名前説明スキーマ

event
必須

通知が応答するイベント

string

method
必須

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

string

config
必須

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

object

eventConfig
必須

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

object

title
任意

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

string

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

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X POST \
  -H "Authorization: Bearer <bearer_token>" \
  -H "Content-Type: application/json" \
  --data '{
    "event": "<event>",
    "method": "<method>",
    "config": {
      "<config_key>": "<config_value>"
    },
    "eventConfig": {
      "<eventConfig_key>": "<eventConfig_value>"
    }
  }' \
  https://<quay-server.example.com>/api/v1/repository/<namespace>/<repository_name>/notification/
Copy to Clipboard

17.6. listRepoNotifications

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

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

認可: oauth2_implicit (repo:admin)

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

path

repository
必須

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

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET  -H "Authorization: Bearer <bearer_token>"   -H "Accept: application/json"  https://<quay-server.example.com>/api/v1/repository/<namespace>/<repository_name>/notification
Copy to Clipboard

第18章 robot

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

18.1. getUserRobots

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

GET /api/v1/user/robots

認可: oauth2_implicit (user:admin)

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

query

limit
任意

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

integer

query

token
任意

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

boolean

query

permissions
任意

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

boolean

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET "https://quay-server.example.com/api/v1/user/robots?limit=10&token=false&permissions=true" \
  -H "Authorization: Bearer <your_access_token>"
Copy to Clipboard

18.2. getOrgRobotPermissions

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

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

認可: oauth2_implicit (user:admin)

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

path

robot_shortname
必須

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

string

path

orgname
必須

組織の名前

string

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

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/organization/<ORGNAME>/robots/<ROBOT_SHORTNAME>/permissions"
Copy to Clipboard

18.3. regenerateOrgRobotToken

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

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

認可: oauth2_implicit (org:admin)

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

path

robot_shortname
必須

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

string

path

orgname
必須

組織の名前

string

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

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X POST \
  -H "Authorization: Bearer <bearer_token>" \
  "<quay-server.example.com>/api/v1/organization/<orgname>/robots/<robot_shortname>/regenerate"
Copy to Clipboard

18.4. getUserRobotPermissions

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

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

認可: oauth2_implicit (user:admin)

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

path

robot_shortname
必須

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

string

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

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/user/robots/<ROBOT_SHORTNAME>/permissions"
Copy to Clipboard

18.5. regenerateUserRobotToken

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

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

認可: oauth2_implicit (user:admin)

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

path

robot_shortname
必須

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

string

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

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X POST \
  -H "Authorization: Bearer <bearer_token>" \
  "<quay-server.example.com>/api/v1/user/robots/<robot_shortname>/regenerate"
Copy to Clipboard

18.6. getOrgRobot

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

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

認可: oauth2_implicit (org:admin)

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

path

robot_shortname
必須

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

string

path

orgname
必須

組織の名前

string

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

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/organization/<ORGNAME>/robots/<ROBOT_SHORTNAME>"
Copy to Clipboard

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
任意

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

string

unstructured_metadata
任意

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

object

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

201

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X PUT   -H "Authorization: Bearer <bearer_token>" "https://<quay-server.example.com>/api/v1/organization/<organization_name>/robots/<robot_name>"
Copy to Clipboard

18.8. deleteOrgRobot

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

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

認可: oauth2_implicit (org:admin)

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

path

robot_shortname
必須

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

string

path

orgname
必須

組織の名前

string

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

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
curl -X DELETE \
  -H "Authorization: Bearer <bearer_token>" \
  "<quay-server.example.com>/api/v1/organization/<organization_name>/robots/<robot_shortname>"
Copy to Clipboard

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 コード説明スキーマ

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/organization/<organization_name>/robots"
Copy to Clipboard

18.10. getUserRobot

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

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

認可: oauth2_implicit (user:admin)

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

path

robot_shortname
必須

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

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET \
  -H "Authorization: Bearer <bearer_token>" \
  "<quay-server.example.com>/api/v1/user/robots/<robot_shortname>"
Copy to Clipboard

18.11. createUserRobot

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

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

認可: oauth2_implicit (user:admin)

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

path

robot_shortname
必須

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

string

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

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

名前説明スキーマ

description
任意

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

string

unstructured_metadata
任意

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

object

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X PUT   -H "Authorization: Bearer <bearer_token>" "https://<quay-server.example.com>/api/v1/user/robots/<robot_name>"
Copy to Clipboard

18.12. deleteUserRobot

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

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

認可: oauth2_implicit (user:admin)

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

path

robot_shortname
必須

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

string

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

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X DELETE \
  -H "Authorization: Bearer <bearer_token>" \
  "<quay-server.example.com>/api/v1/user/robots/<robot_shortname>"
Copy to Clipboard

18.13. 認証フェデレーションロボットトークン

ロボットアイデンティティーフェデレーションメカニズムを使用して、期限切れのロボットトークンを返します。

oauth2/federation/robot/token の取得

認可: oauth2_implicit (robot:auth)

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

200

認証とトークン生成が成功しました

{ "token": "string" }

401

Unauthorized: 認証が欠落しているか無効です

{ "error": "string" }

リクエストボディー
名前説明スキーマ

body

auth_result
required

ロボットのアイデンティティーに関する情報を含む認証プロセスの結果。

{ "missing": "boolean", "error_message": "string", "context": { "robot": "RobotObject" } }

コマンドの例
$ curl -X GET "https://quay-server.example.com/oauth2/federation/robot/token" \
  -H "Authorization: Bearer <your_access_token>"
Copy to Clipboard

18.14. createOrgRobotFederation

指定された組織ロボットのフェデレーション設定を作成します。

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

指定された組織ロボットのフェデレーション設定を取得します。

認可: oauth2_implicit (user:admin)

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

path

orgname + robot_shortname 必須

組織名とロボットの短縮名 (ユーザー名や組織の接頭辞なし)

string

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

201

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

コマンドの例
$ curl -X POST "https://quay-server.example.com/api/v1/organization/{orgname}/robots/{robot_shortname}/federation" \
  -H "Authorization: Bearer <your_access_token>" \
  -H "Content-Type: application/json"
Copy to Clipboard

第20章 secscan

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

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 コード説明スキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET \
  -H "Authorization: Bearer <bearer_token>" \
  -H "Accept: application/json" \
  "https://quay-server.example.com/api/v1/repository/<namespace>/<repository>/manifest/<manifest_digest>/security?vulnerabilities=<true_or_false>"
Copy to Clipboard

第21章 superuser

スーパーユーザー API。

21.1. createInstallUser

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

POST /api/v1/superuser/users/

認可: oauth2_implicit (super:user)

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

ユーザー作成のデータ

名前説明スキーマ

username
必須

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

string

email
任意

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

string

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

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/"
Copy to Clipboard

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}"
Copy to Clipboard

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 コード説明スキーマ

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/"
Copy to Clipboard

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 コード説明スキーマ

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET \
  -H "Authorization: Bearer <bearer_token>" \
  "https://<quay_server>/api/v1/superuser/logs?starttime=<start_time>&endtime=<end_time>&page=<page_number>&next_page=<next_page_token>"
Copy to Clipboard

21.5. listAllOrganizations

現在のシステムの組織をリスト表示します。

GET /api/v1/superuser/organizations

認可: oauth2_implicit (super:user)

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

path

name
必須

管理対象の組織名

string

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

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/organizations/"
Copy to Clipboard

21.6. createServiceKey

POST /api/v1/superuser/keys

認可: oauth2_implicit (super:user)

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

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

名前説明スキーマ

サービス
必須

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

string

name
任意

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

string

metadata
任意

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

object

notes
任意

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

string

有効期限
必須

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

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

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 '{
        "service": "<service_name>",
        "expiration": <unix_timestamp>
      }' \
  "<quay_server>/api/v1/superuser/keys"
Copy to Clipboard

21.7. listServiceKeys

GET /api/v1/superuser/keys

認可: oauth2_implicit (super:user)

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET \
  -H "Authorization: Bearer <bearer_token>" \
  "https://<quay_server>/api/v1/superuser/keys"
Copy to Clipboard

21.8. changeUserQuotaSuperUser

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

認可: oauth2_implicit (super:user)

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

path

namespace
必須

 

string

path

quota_id
必須

 

string

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

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

名前説明スキーマ

limit_bytes
任意

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

integer

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X PUT "https://quay-server.example.com/api/v1/superuser/organization/<namespace>/quota/<quota_id>" \
  -H "Authorization: Bearer <ACCESS_TOKEN>" \
  -H "Content-Type: application/json" \
  -d '{
    "limit_bytes": <NEW_QUOTA_LIMIT>
  }'
Copy to Clipboard

21.9. deleteUserQuotaSuperUser

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

認可: oauth2_implicit (super:user)

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

path

namespace
必須

 

string

path

quota_id
必須

 

string

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

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X DELETE "https://quay-server.example.com/api/v1/superuser/organization/<namespace>/quota/<quota_id>" \
  -H "Authorization: Bearer <ACCESS_TOKEN>"
Copy to Clipboard

21.10. createUserQuotaSuperUser

POST /api/v1/superuser/organization/{namespace}/quota

認可: oauth2_implicit (super:user)

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

path

namespace
必須

 

string

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

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

名前説明スキーマ

limit_bytes
必須

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

integer

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

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X POST "https://quay-server.example.com/api/v1/superuser/organization/<namespace>/quota" \
  -H "Authorization: Bearer <ACCESS_TOKEN>" \
  -H "Content-Type: application/json" \
  -d '{
    "limit_bytes": 10737418240
  }'
Copy to Clipboard

21.11. listUserQuotaSuperUser

GET /api/v1/superuser/organization/{namespace}/quota

認可: oauth2_implicit (super:user)

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

path

namespace
必須

 

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET "https://quay-server.example.com/api/v1/superuser/organization/<namespace>/quota" \
  -H "Authorization: Bearer <ACCESS_TOKEN>"
Copy to Clipboard

21.12. changeOrganizationQuotaSuperUser

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

認可: oauth2_implicit (super:user)

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

path

namespace
必須

 

string

path

quota_id
必須

 

string

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

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

名前説明スキーマ

limit_bytes
任意

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

integer

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X PUT "https://quay-server.example.com/api/v1/superuser/users/<username>/quota/<quota_id>" \
  -H "Authorization: Bearer <ACCESS_TOKEN>" \
  -H "Content-Type: application/json" \
  -d '{
    "limit_bytes": <NEW_QUOTA_LIMIT>
  }'
Copy to Clipboard

21.13. deleteOrganizationQuotaSuperUser

DELETE /api/v1/superuser/users/{namespace}/quota/{quota_id}

認可: oauth2_implicit (super:user)

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

path

namespace
必須

 

string

path

quota_id
必須

 

string

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

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X DELETE "https://quay-server.example.com/api/v1/superuser/users/<username>/quota/<quota_id>" \
  -H "Authorization: Bearer <ACCESS_TOKEN>"
Copy to Clipboard

21.14. createOrganizationQuotaSuperUser

POST /api/v1/superuser/users/{namespace}/quota

認可: oauth2_implicit (super:user)

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

path

namespace
必須

 

string

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

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

名前説明スキーマ

limit_bytes
任意

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

integer

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

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X POST "https://quay-server.example.com/api/v1/superuser/users/<username>/quota" \
  -H "Authorization: Bearer <ACCESS_TOKEN>" \
  -H "Content-Type: application/json" \
  -d '{
        "limit_bytes": <QUOTA_LIMIT>
      }'
Copy to Clipboard

21.15. listOrganizationQuotaSuperUser

GET /api/v1/superuser/users/{namespace}/quota

認可: oauth2_implicit (super:user)

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

path

namespace
必須

 

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET "https://quay-server.example.com/api/v1/superuser/users/<username>/quota" \
  -H "Authorization: Bearer <ACCESS_TOKEN>"
Copy to Clipboard

21.16. changeOrganization

指定したユーザーの情報を更新します。

PUT /api/v1/superuser/organizations/{name}

認可: oauth2_implicit (super:user)

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

path

name
必須

管理する組織の名前

string

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

既存組織の更新の説明

名前説明スキーマ

email
任意

組織の連絡先メール

string

invoice_email
任意

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

boolean

invoice_email_address
任意

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

 

tag_expiration_s
任意

タグの有効期限 (秒)

integer

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X PUT \
  -H "Authorization: Bearer <bearer_token>" \
  -H "Content-Type: application/json" \
  -d '{
        "email": "<contact_email>",
        "invoice_email": <boolean_value>,
        "invoice_email_address": "<invoice_email_address>",
        "tag_expiration_s": <expiration_seconds>
      }' \
  "https://<quay_server>/api/v1/superuser/organizations/<organization_name>"
Copy to Clipboard

21.17. deleteOrganization

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

DELETE /api/v1/superuser/organizations/{name}

認可: oauth2_implicit (super:user)

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

path

name
必須

管理する組織の名前

string

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

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X DELETE \
  -H "Authorization: Bearer <bearer_token>" \
  "https://<quay_server>/api/v1/superuser/organizations/<organization_name>"
Copy to Clipboard

21.18. approveServiceKey

POST /api/v1/superuser/approvedkeys/{kid}

認可: oauth2_implicit (super:user)

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

path

kid
必須

サービスキーの一意識別子

string

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

サービスキーの承認に関する情報

名前説明スキーマ

notes
任意

オプションの承認に関する注意事項

string

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

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 '{
        "notes": "<approval_notes>"
      }' \
  "https://<quay_server>/api/v1/superuser/approvedkeys/<kid>"
Copy to Clipboard

21.19. deleteServiceKey

DELETE /api/v1/superuser/keys/{kid}

認可: oauth2_implicit (super:user)

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

path

kid
必須

サービスキーの一意識別子

string

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

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X DELETE \
  -H "Authorization: Bearer <bearer_token>" \
  "https://<quay_server>/api/v1/superuser/keys/<kid>"
Copy to Clipboard

21.20. updateServiceKey

PUT /api/v1/superuser/keys/{kid}

認可: oauth2_implicit (super:user)

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

path

kid
必須

サービスキーの一意識別子

string

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

サービスキーの更新の説明

名前説明スキーマ

name
任意

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

string

metadata
任意

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

object

expiration
任意

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

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X PUT \
  -H "Authorization: Bearer <bearer_token>" \
  -H "Content-Type: application/json" \
  -d '{
        "name": "<service_key_name>",
        "metadata": {"<key>": "<value>"},
        "expiration": <unix_timestamp>
      }' \
  "https://<quay_server>/api/v1/superuser/keys/<kid>"
Copy to Clipboard

21.21. getServiceKey

GET /api/v1/superuser/keys/{kid}

認可: oauth2_implicit (super:user)

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

path

kid
必須

サービスキーの一意識別子

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET \
  -H "Authorization: Bearer <bearer_token>" \
  "https://<quay_server>/api/v1/superuser/keys/<kid>"
Copy to Clipboard

21.22. getRepoBuildStatusSuperUser

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

GET /api/v1/superuser/{build_uuid}/status

認可: oauth2_implicit (super:user)

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

path

build_uuid
必須

ビルドの UUID

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET "https://quay-server.example.com/api/v1/superuser/<build_uuid>/status" \
  -H "Authorization: Bearer <ACCESS_TOKEN>"
Copy to Clipboard

21.23. getRepoBuildSuperUser

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

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

認可: oauth2_implicit (super:user)

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

path

build_uuid
必須

ビルドの UUID

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET "https://quay-server.example.com/api/v1/superuser/<build_uuid>/build" \
  -H "Authorization: Bearer <ACCESS_TOKEN>"
Copy to Clipboard

21.24. getRepoBuildLogsSuperUser

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

GET /api/v1/superuser/{build_uuid}/logs

認可: oauth2_implicit (super:user)

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

path

build_uuid
必須

ビルドの UUID

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET "https://quay-server.example.com/api/v1/superuser/<build_uuid>/logs" \
  -H "Authorization: Bearer <ACCESS_TOKEN>"
Copy to Clipboard

21.25. getRegistrySize

GET /api/v1/superuser/registrysize/

認可: oauth2_implicit (super:user)

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

path

namespace
必須

 

string

イメージレジストリーサイズの説明

名前説明スキーマ

size_bytes*
optional

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

integer

last_ran

 

integer

queued

 

boolean

running

 

boolean

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

200

CREATED

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET \
  -H "Authorization: Bearer <bearer_token>" \
  "https://<quay_server>/api/v1/superuser/registrysize/"
Copy to Clipboard

21.26. postRegistrySize

POST /api/v1/superuser/registrysize/

認可: oauth2_implicit (super:user)

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

path

namespace
必須

 

string

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

イメージレジストリーサイズの説明

名前説明スキーマ

last_ran

 

integer

queued

 

boolean

running

 

boolean

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

201

CREATED

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X POST "https://quay-server.example.com/api/v1/superuser/registrysize/" \
  -H "Authorization: Bearer <ACCESS_TOKEN>" \
  -H "Content-Type: application/json" \
  -d '{
    "namespace": "<namespace>",
    "last_ran": 1700000000,
    "queued": true,
    "running": false
  }'
Copy to Clipboard

第22章 tag

リポジトリーのタグを管理します。

22.1. restoreTag

リポジトリーの以前のイメージに、リポジトリータグを復元します。

POST /api/v1/repository/{repository}/tag/{tag}/restore

認可: oauth2_implicit (repo:write)

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

path

repository
必須

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

string

path

tag
必須

タグの名前

string

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

タグを特定のイメージに復元します。

名前説明スキーマ

manifest_digest
必須

指定されている場合には、使用する必要があるマニフェストダイジェスト。

string

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

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X POST \
  -H "Authorization: Bearer <bearer_token>" \
  -H "Content-Type: application/json" \
  --data '{
    "manifest_digest": <manifest_digest>
  }' \
  quay-server.example.com/api/v1/repository/quayadmin/busybox/tag/test/restore
Copy to Clipboard

22.2. changeTag

タグが参照するイメージを変更するか、新規タグを作成します。

PUT /api/v1/repository/{repository}/tag/{tag}

認可: oauth2_implicit (repo:write)

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

path

repository
必須

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

string

path

tag
必須

タグの名前

string

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

特定のタグを変更します。

名前説明スキーマ

manifest_digest
任意

(指定されている場合) タグが参照すべきマニフェストダイジェスト

 

expiration
任意

(指定されている場合) イメージの有効期限

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

201

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X PUT \
  -H "Authorization: Bearer <bearer_token>" \
  -H "Content-Type: application/json" \
  --data '{
    "manifest_digest": "<manifest_digest>"
  }' \
  https://<quay-server.example.com>/api/v1/repository/<namespace>/<repository_name>/tag/<tag>
Copy to Clipboard

22.3. deleteFullTag

指定したリポジトリータグを削除します。

DELETE /api/v1/repository/{repository}/tag/{tag}

認可: oauth2_implicit (repo:write)

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

path

repository
必須

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

string

path

tag
必須

タグの名前

string

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

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X DELETE "https://quay-server.example.com/api/v1/repository/<namespace>/<repo_name>/tag/<tag_name>" \
  -H "Authorization: Bearer <your_access_token>"
Copy to Clipboard

22.4. listRepoTags

GET /api/v1/repository/{repository}/tag/

認可: oauth2_implicit (repo:read)

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

path

repository
必須

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

string

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

query

onlyActiveTags
任意

アクティブなタグだけに絞り込みます。

boolean

query

page
任意

結果のページインデックス。デフォルトは 1 です。

integer

query

limit
任意

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

integer

query

filter_tag_name
任意

構文: <op>:<name> 操作に基づいてタグ名をフィルターします。<op> には 'like' または 'eq' を指定できます。

string

query

specificTag
任意

特定のタグだけに絞り込みます。

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET \
  -H "Authorization: Bearer <bearer_token>" \
  -H "Accept: application/json" \
  https://<quay-server.example.com>/api/v1/repository/<namespace>/<repository_name>/tag/
Copy to Clipboard

第23章 team

組織のチームを作成、リスト表示、および管理します。

23.1. getOrganizationTeamPermissions

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

GET /api/v1/organization/{orgname}/team/{teamname}/permissions

認可: 

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

path

teamname
必須

チームの名前

string

path

orgname
必須

組織の名前

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET \
  -H "Authorization: Bearer <your_access_token>" \
  "<quay-server.example.com>/api/v1/organization/<organization_name>/team/<team_name>/permissions"
Copy to Clipboard

23.2. updateOrganizationTeamMember

既存のチームにメンバーを追加または調整します。

PUT /api/v1/organization/{orgname}/team/{teamname}/members/{membername}

認可: oauth2_implicit (org:admin)

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

path

teamname
必須

チームの名前

string

path

membername
必須

チームメンバーのユーザー名

string

path

orgname
必須

組織の名前

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X PUT \
  -H "Authorization: Bearer <your_access_token>" \
  "<quay-server.example.com>/api/v1/organization/<organization_name>/team/<team_name>/members/<member_name>"
Copy to Clipboard

23.3. deleteOrganizationTeamMember

チームのメンバーを削除します。

If the user is merely invited to join the team, then the invite is removed instead.
Copy to Clipboard
DELETE /api/v1/organization/{orgname}/team/{teamname}/members/{membername}

認可: oauth2_implicit (org:admin)

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

path

teamname
必須

チームの名前

string

path

membername
必須

チームメンバーのユーザー名

string

path

orgname
必須

組織の名前

string

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

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X DELETE \
  -H "Authorization: Bearer <your_access_token>" \
  "<quay-server.example.com>/api/v1/organization/<organization_name>/team/<team_name>/members/<member_name>"
Copy to Clipboard

23.4. getOrganizationTeamMembers

指定したチームのメンバーのリストを取得します。

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

認可: oauth2_implicit (org:admin)

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

path

teamname
必須

チームの名前

string

path

orgname
必須

組織の名前

string

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

query

includePending
任意

保留中のメンバーを含めるかどうか。

boolean

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET \
  -H "Authorization: Bearer <your_access_token>" \
  "<quay-server.example.com>/api/v1/organization/<organization_name>/team/<team_name>/members"
Copy to Clipboard

23.5. inviteTeamMemberEmail

既存のチームに招待するメールアドレスを追加します。

PUT /api/v1/organization/{orgname}/team/{teamname}/invite/{email}

認可: oauth2_implicit (org:admin)

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

path

email
必須

 

string

path

teamname
必須

 

string

path

orgname
必須

 

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X PUT \
  -H "Authorization: Bearer <your_access_token>" \
  "<quay-server.example.com>/api/v1/organization/<organization_name>/team/<team_name>/invite/<email>"
Copy to Clipboard

23.6. deleteTeamMemberEmailInvite

チームへの参加を招待するメールアドレスを削除します。

DELETE /api/v1/organization/{orgname}/team/{teamname}/invite/{email}

認可: oauth2_implicit (org:admin)

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

path

email
必須

 

string

path

teamname
必須

 

string

path

orgname
必須

 

string

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

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例

+

$ curl -X DELETE \
  -H "Authorization: Bearer <your_access_token>" \
  "<quay-server.example.com>/api/v1/organization/<organization_name>/team/<team_name>/invite/<email>"
Copy to Clipboard

23.7. updateOrganizationTeam

指定したチームの組織全体のパーミッションを更新します。

注記

この API はチームの作成にも使用されます。

PUT /api/v1/organization/{orgname}/team/{teamname}

認可: oauth2_implicit (org:admin)

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

path

teamname
必須

チームの名前

string

path

orgname
必須

組織の名前

string

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

チームの説明

名前説明スキーマ

role
必須

チームに適用する必要のある組織全体のパーミッション

string

description
任意

チームの Markdown の説明

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -k -X PUT -H 'Accept: application/json' -H 'Content-Type: application/json' -H "Authorization: Bearer <bearer_token>"  --data '{"role": "creator"}' https://<quay-server.example.com>/api/v1/organization/<organization_name>/team/<team_name>
Copy to Clipboard

23.8. deleteOrganizationTeam

指定したチームを削除します。

DELETE /api/v1/organization/{orgname}/team/{teamname}

認可: oauth2_implicit (org:admin)

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

path

teamname
必須

チームの名前

string

path

orgname
必須

組織の名前

string

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

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X DELETE \
  -H "Authorization: Bearer <your_access_token>" \
  "<quay-server.example.com>/api/v1/organization/<organization_name>/team/<team_name>"
Copy to Clipboard

第24章 trigger

ビルドトリガーを作成、リスト表示、管理します。

24.1. activateBuildTrigger

指定したビルドトリガーをアクティブにします。

POST /api/v1/repository/{repository}/trigger/{trigger_uuid}/activate

認可: oauth2_implicit (repo:admin)

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

path

trigger_uuid
必須

ビルドトリガーの UUID

string

path

repository
必須

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

string

要求の body スキーマ (application/json)
名前説明スキーマ

config
必須

任意の json

object

pull_robot
任意

イメージのプルに使用するロボットの名前

string

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

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X POST "https://quay-server.example.com/api/v1/repository/example_namespace/example_repo/trigger/example-trigger-uuid/activate" \
  -H "Authorization: Bearer <your_access_token>" \
  -H "Content-Type: application/json" \
  -d '{
    "config": {
      "branch": "main"
    },
    "pull_robot": "example+robot"
  }'
Copy to Clipboard

24.2. listTriggerRecentBuilds

指定したトリガーで開始するビルドをリスト表示します。

GET /api/v1/repository/{repository}/trigger/{trigger_uuid}/builds

認可: oauth2_implicit (repo:admin)

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

path

trigger_uuid
必須

ビルドトリガーの UUID

string

path

repository
必須

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

string

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

query

limit
任意

返すビルドの最大数

integer

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET "https://quay-server.example.com/api/v1/repository/example_namespace/example_repo/trigger/example-trigger-uuid/builds?limit=10" \
  -H "Authorization: Bearer <your_access_token>"
Copy to Clipboard

24.3. manuallyStartBuildTrigger

指定したトリガーからビルドを手動で開始します。

POST /api/v1/repository/{repository}/trigger/{trigger_uuid}/start

認可: oauth2_implicit (repo:admin)

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

path

trigger_uuid
必須

ビルドトリガーの UUID

string

path

repository
必須

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

string

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

ビルドトリガーをアクティベートするための実行パラメーター (任意)

名前説明スキーマ

branch_name
任意

(SCM のみ) 指定した場合のビルドするブランチの名前。

string

commit_sha
任意

(カスタムのみ) 指定されている場合は、git リポジトリーのチェックアウトに使用する ref/SHA1。

string

refs
任意

(SCM のみ) 指定されている場合のビルドの ref。

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

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X POST "https://quay-server.example.com/api/v1/repository/example_namespace/example_repo/trigger/example-trigger-uuid/start" \
  -H "Authorization: Bearer <your_access_token>" \
  -H "Content-Type: application/json" \
  -d '{
    "branch_name": "main",
    "commit_sha": "abcdef1234567890",
    "refs": "refs/heads/main"
  }'
Copy to Clipboard

24.4. getBuildTrigger

指定したビルドトリガーの情報を取得します。

GET /api/v1/repository/{repository}/trigger/{trigger_uuid}

認可: oauth2_implicit (repo:admin)

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

path

trigger_uuid
必須

ビルドトリガーの UUID

string

path

repository
必須

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

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET "https://quay-server.example.com/api/v1/repository/example_namespace/example_repo/trigger/example-trigger-uuid" \
  -H "Authorization: Bearer <your_access_token>"
Copy to Clipboard

24.5. updateBuildTrigger

指定したビルドトリガーを更新します。

PUT /api/v1/repository/{repository}/trigger/{trigger_uuid}

認可: oauth2_implicit (repo:admin)

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

path

trigger_uuid
必須

ビルドトリガーの UUID

string

path

repository
必須

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

string

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

ビルドトリガーを更新するオプション

名前説明スキーマ

enabled
必須

ビルドトリガーが有効かどうか。

boolean

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X PUT "https://quay-server.example.com/api/v1/repository/example_namespace/example_repo/trigger/example-trigger-uuid" \
  -H "Authorization: Bearer <your_access_token>" \
  -H "Content-Type: application/json" \
  -d '{"enabled": true}'
Copy to Clipboard

24.6. deleteBuildTrigger

指定したビルドトリガーを削除します。

DELETE /api/v1/repository/{repository}/trigger/{trigger_uuid}

認可: oauth2_implicit (repo:admin)

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

path

trigger_uuid
必須

ビルドトリガーの UUID

string

path

repository
必須

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

string

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

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X DELETE "https://quay-server.example.com/api/v1/repository/example_namespace/example_repo/trigger/example-trigger-uuid" \
  -H "Authorization: Bearer <your_access_token>"
Copy to Clipboard

24.7. listBuildTriggers

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

GET /api/v1/repository/{repository}/trigger/

認可: oauth2_implicit (repo:admin)

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

path

repository
必須

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

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET "https://quay-server.example.com/api/v1/repository/example_namespace/example_repo/trigger/" \
  -H "Authorization: Bearer <your_access_token>"
Copy to Clipboard

第25章 user

現行ユーザーを管理します。

25.1. createStar

リポジトリーを表示します。

POST /api/v1/user/starred

認可: oauth2_implicit (repo:read)

要求の body スキーマ (application/json)
名前説明スキーマ

namespace
必須

リポジトリーが属する namespace

string

repository
必須

Repository name

string

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

201

作成に成功

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X POST "https://quay-server.example.com/api/v1/user/starred" \
  -H "Authorization: Bearer <your_access_token>" \
  -H "Content-Type: application/json" \
  -d '{
        "namespace": "<namespace>",
        "repository": "<repository_name>"
      }'
Copy to Clipboard

25.2. listStarredRepos

星付きのリポジトリーをすべてリスト表示します。

GET /api/v1/user/starred

認可: oauth2_implicit (user:admin)

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

query

next_page
任意

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

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET "https://quay-server.example.com/api/v1/user/starred?next_page=<next_page_token>" \
  -H "Authorization: Bearer <your_access_token>"
Copy to Clipboard

25.3. getLoggedInUser

認証ユーザーのユーザー情報を取得します。

GET /api/v1/user/

認可: oauth2_implicit (user:read)

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

200

正常な呼び出し

UserView

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET "https://quay-server.example.com/api/v1/user/" \
  -H "Authorization: Bearer <your_access_token>"
Copy to Clipboard

25.4. deleteStar

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

DELETE /api/v1/user/starred/{repository}

認可: oauth2_implicit (user:admin)

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

path

repository
必須

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

string

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

204

削除済み

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X DELETE "https://quay-server.example.com/api/v1/user/starred/namespace/repository-name" \
  -H "Authorization: Bearer <your_access_token>"
Copy to Clipboard

25.5. getUserInformation

指定したユーザーのユーザー情報を取得します。

GET /api/v1/users/{username}

認可: 

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

path

username
必須

 

string

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

200

正常な呼び出し

 

400

Bad Request (不適切な要求)

ApiError

401

セッションが必要

ApiError

403

不正アクセス

ApiError

404

見つからない

ApiError

コマンドの例
$ curl -X GET "https://quay-server.example.com/api/v1/users/example_user" \
  -H "Authorization: Bearer <your_access_token>"
Copy to Clipboard

第26章 定義

26.1. ApiError

名前説明スキーマ

status
任意

応答のステータスコード

integer

type
任意

エラーのタイプへの参照。

string

detail
任意

エラーの特定インスタンスの詳細。

string

title
任意

エラーのタイプを識別する一意のエラーコード。

string

error_message
任意

非推奨。

string

error_type
任意

非推奨。

string

26.2. UserView

名前説明スキーマ

verified
任意

ユーザーのメールアドレスが検証済みかどうか。

boolean

anonymous
任意

このユーザーデータがゲストユーザーを表す場合は True

boolean

email
任意

ユーザーのメールアドレス

string

avatar
任意

ユーザーのアイコンを表すアバターデータ

object

organizations
任意

ユーザーがメンバーとなっている組織に関する情報

object の配列。

logins
任意

ユーザーが認証された外部ログインプロバイダーのリスト

object の配列。

can_create_repo
任意

ユーザーにリポジトリー作成のパーミッションが割り当てられているかどうか。

boolean

preferred_namespace
任意

true の場合、ユーザーの namespace が表示されることが優先される namespace。

boolean

26.3. ViewMirrorConfig

名前説明スキーマ

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

26.4. ApiErrorDescription

名前説明スキーマ

type
任意

エラータイプリソースへの参照。

string

title
任意

エラーのタイトル。エラーの種類を一意に識別するために使用できます。

string

description
任意

問題の修正時に役立つ可能性のある詳細な説明。

string

法律上の通知

Copyright © 2025 Red Hat, Inc.
The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, the Red Hat logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat