hub/docs/api/openapi.yaml

5107 lines
156 KiB
YAML

openapi: 3.0.3
info:
title: Artifact Hub
description: "Find, install and publish Kubernetes packages"
version: 1.12.0
contact:
name: Artifact Hub support
url: https://cloud-native.slack.com/channels/artifact-hub
servers:
- url: "/api/v1"
tags:
- name: Users
description: ""
- name: Organizations
description: ""
- name: Repositories
description: ""
- name: Packages
description: ""
- name: Subscriptions
description: ""
- name: Webhooks
description: ""
- name: Availability checks
description: ""
- name: Stats
description: ""
- name: Integrations
description: ""
paths:
/users:
post:
tags:
- Users
summary: Register a new user
description: Register a new user
operationId: registerUser
requestBody:
description: ""
required: true
content:
application/json:
schema:
type: object
required:
- alias
- email
- password
properties:
alias:
type: string
example: jdoe
first_name:
type: string
example: John
last_name:
type: string
example: Doe
email:
type: string
format: email
example: jdoe@email.com
password:
type: string
format: password
example: pass123
responses:
"201":
$ref: "#/components/responses/Created"
"400":
$ref: "#/components/responses/BadRequest"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
/users/verify-email:
post:
tags:
- Users
summary: Verify user's email address
description: Verify user's email address
operationId: verifyEmail
requestBody:
content:
application/json:
schema:
type: object
required:
- code
properties:
code:
type: string
format: uuid
responses:
"204":
$ref: "#/components/responses/NoContent"
"400":
$ref: "#/components/responses/BadRequest"
"401":
$ref: "#/components/responses/UnauthorizedError"
"410":
$ref: "#/components/responses/GoneError"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
/users/profile:
get:
tags:
- Users
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Get user's profile
description: Get user's profile
operationId: getUserProfile
responses:
"200":
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/User"
"401":
$ref: "#/components/responses/UnauthorizedError"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
put:
tags:
- Users
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Update user's profile
description: Update user's profile
operationId: updateUserProfile
requestBody:
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/User"
responses:
"204":
$ref: "#/components/responses/NoContent"
"400":
$ref: "#/components/responses/BadRequest"
"401":
$ref: "#/components/responses/UnauthorizedError"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
/users/password:
put:
tags:
- Users
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Update user's password
description: Update user's password
operationId: updateUserPassword
requestBody:
description: ""
content:
application/json:
schema:
type: object
required:
- old
- new
properties:
old:
type: string
format: password
new:
type: string
format: password
example:
old: oldPass
new: newPass
responses:
"204":
$ref: "#/components/responses/NoContent"
"400":
$ref: "#/components/responses/BadRequest"
"401":
$ref: "#/components/responses/UnauthorizedError"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
/users/password-reset-code:
post:
tags:
- Users
summary: Register a code to reset the password
description: Register a code to reset the password
operationId: resetPasswordCode
requestBody:
content:
application/json:
schema:
type: object
required:
- email
properties:
email:
type: string
responses:
"201":
$ref: "#/components/responses/Created"
"400":
$ref: "#/components/responses/BadRequest"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
/users/verify-password-reset-code:
post:
tags:
- Users
summary: Verify a reset password code
description: Verify a reset password code
operationId: verifyPasswordCode
requestBody:
content:
application/json:
schema:
type: object
required:
- code
properties:
code:
type: string
format: uuid
responses:
"200":
description: "The request has succeeded"
"400":
$ref: "#/components/responses/BadRequest"
"410":
$ref: "#/components/responses/GoneError"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
/users/reset-password:
put:
tags:
- Users
summary: Reset the user's password
description: Reset the user's password
operationId: resetPassword
requestBody:
content:
application/json:
schema:
type: object
required:
- code
- password
properties:
code:
type: string
format: uuid
password:
type: string
responses:
"204":
$ref: "#/components/responses/NoContent"
"400":
$ref: "#/components/responses/BadRequest"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
/orgs:
post:
tags:
- Organizations
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Register new organization
description: Register new organization
operationId: addOrganization
requestBody:
description: ""
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/OrganizationSummary"
responses:
"201":
$ref: "#/components/responses/Created"
"400":
$ref: "#/components/responses/BadRequest"
"401":
$ref: "#/components/responses/UnauthorizedError"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
/orgs/user:
get:
tags:
- Organizations
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Get organizations the user belongs to
description: Get organizations the user belongs to
operationId: getUserOrganizations
parameters:
- $ref: "#/components/parameters/OffsetParam"
- $ref: "#/components/parameters/LimitParam"
responses:
"200":
description: ""
headers:
Pagination-Total-Count:
schema:
type: string
description: Total number of organizations
content:
application/json:
schema:
type: array
items:
$ref: "#/components/schemas/Organization"
"401":
$ref: "#/components/responses/UnauthorizedError"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/orgs/{orgName}":
get:
tags:
- Organizations
summary: Get organization profile
description: Get organization profile
operationId: getOrganizationProfile
parameters:
- $ref: "#/components/parameters/OrgNameParam"
responses:
"200":
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/OrganizationSummary"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
put:
tags:
- Organizations
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Updates organization profile
description: Updates organization profile
operationId: updateOrganizationProfile
parameters:
- $ref: "#/components/parameters/OrgNameParam"
requestBody:
description: ""
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/OrganizationSummary"
responses:
"204":
$ref: "#/components/responses/NoContent"
"400":
$ref: "#/components/responses/BadRequest"
"401":
$ref: "#/components/responses/UnauthorizedError"
"403":
$ref: "#/components/responses/Forbidden"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
delete:
tags:
- Organizations
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Delete organization
description: Delete organization
operationId: deleteOrganization
parameters:
- $ref: "#/components/parameters/OrgNameParam"
responses:
"204":
$ref: "#/components/responses/NoContent"
"401":
$ref: "#/components/responses/UnauthorizedError"
"403":
$ref: "#/components/responses/Forbidden"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/orgs/{orgName}/authorization-policy":
get:
tags:
- Organizations
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Get organization's authorization policy
description: Get organization's authorization policy
operationId: getOrganizationAuthPolicy
parameters:
- $ref: "#/components/parameters/OrgNameParam"
responses:
"200":
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/AuthorizationPolicy"
"401":
$ref: "#/components/responses/UnauthorizedError"
"403":
$ref: "#/components/responses/Forbidden"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
put:
tags:
- Organizations
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Update organization's authorization policy
description: Update organization's authorization policy
operationId: updateOrganizationAuthPolicy
parameters:
- $ref: "#/components/parameters/OrgNameParam"
requestBody:
description: ""
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/AuthorizationPolicy"
responses:
"204":
$ref: "#/components/responses/NoContent"
"400":
$ref: "#/components/responses/BadRequest"
"401":
$ref: "#/components/responses/UnauthorizedError"
"403":
$ref: "#/components/responses/Forbidden"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/orgs/{orgName}/members":
get:
tags:
- Organizations
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Get organization members
description: Get organization members
operationId: getOrganizationMembers
parameters:
- $ref: "#/components/parameters/OrgNameParam"
responses:
"200":
description: ""
content:
application/json:
schema:
type: array
items:
$ref: "#/components/schemas/Member"
"401":
$ref: "#/components/responses/UnauthorizedError"
"403":
$ref: "#/components/responses/Forbidden"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/orgs/{orgName}/member/{userAlias}":
post:
tags:
- Organizations
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Add a new member to the organization
description: Add a new member to the organization
operationId: addOrganizationMember
parameters:
- $ref: "#/components/parameters/OrgNameParam"
- $ref: "#/components/parameters/UserAliasParam"
responses:
"201":
$ref: "#/components/responses/Created"
"401":
$ref: "#/components/responses/UnauthorizedError"
"403":
$ref: "#/components/responses/Forbidden"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
delete:
tags:
- Organizations
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Delete a member from the organization
description: Delete a member from the organization
operationId: deleteOrganizationMember
parameters:
- $ref: "#/components/parameters/OrgNameParam"
- $ref: "#/components/parameters/UserAliasParam"
responses:
"204":
$ref: "#/components/responses/NoContent"
"401":
$ref: "#/components/responses/UnauthorizedError"
"403":
$ref: "#/components/responses/Forbidden"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/orgs/{orgName}/accept-invitation":
get:
tags:
- Organizations
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Confirm user's membership to an organization
description: Confirm user's membership to an organization
operationId: acceptOrganizationInvitation
parameters:
- $ref: "#/components/parameters/OrgNameParam"
responses:
"204":
$ref: "#/components/responses/NoContent"
"401":
$ref: "#/components/responses/UnauthorizedError"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/orgs/{orgName}/user-allowed-actions":
get:
tags:
- Organizations
security:
- ApiKeyId: []
ApiKeySecret: []
summary: >-
Get actions which user is allowed to perform in the provided
organization
description: >-
Get actions which user is allowed to perform in the provided
organization
operationId: getAllowedActions
parameters:
- $ref: "#/components/parameters/OrgNameParam"
responses:
"200":
description: ""
content:
application/json:
schema:
type: array
items:
$ref: "#/components/schemas/AuthorizerAction"
"401":
$ref: "#/components/responses/UnauthorizedError"
"403":
$ref: "#/components/responses/Forbidden"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
/repositories/search:
get:
tags:
- Repositories
summary: Search repositories that meet the provided criteria
description: Search repositories that meet the provided criteria
operationId: searchRepositories
parameters:
- $ref: "#/components/parameters/OffsetParam"
- $ref: "#/components/parameters/LimitParam"
- $ref: "#/components/parameters/RepositoryKindsListParam"
- $ref: "#/components/parameters/UsersListParam"
- $ref: "#/components/parameters/OrgsListParam"
- $ref: "#/components/parameters/RepoNameQueryParam"
- $ref: "#/components/parameters/UrlQueryParam"
responses:
"200":
description: ""
headers:
Pagination-Total-Count:
schema:
type: string
description: Total number of repositories
content:
application/json:
schema:
type: array
items:
$ref: "#/components/schemas/Repository"
"401":
$ref: "#/components/responses/UnauthorizedError"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
/repositories/user:
post:
tags:
- Repositories
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Add user's repository
description: Add user's repository
operationId: addUserRepository
requestBody:
$ref: "#/components/requestBodies/RepositoryBody"
responses:
"201":
$ref: "#/components/responses/Created"
"400":
$ref: "#/components/responses/BadRequest"
"401":
$ref: "#/components/responses/UnauthorizedError"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/repositories/user/{repoName}":
put:
tags:
- Repositories
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Update user's repository
description: Update user's repository
operationId: updateUserRepository
parameters:
- $ref: "#/components/parameters/RepoNameParam"
requestBody:
$ref: "#/components/requestBodies/RepositoryBody"
responses:
"204":
$ref: "#/components/responses/NoContent"
"400":
$ref: "#/components/responses/BadRequest"
"401":
$ref: "#/components/responses/UnauthorizedError"
"403":
$ref: "#/components/responses/Forbidden"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
delete:
tags:
- Repositories
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Delete user's repository
description: Delete user's repository
operationId: deleteUserRepository
parameters:
- $ref: "#/components/parameters/RepoNameParam"
responses:
"204":
$ref: "#/components/responses/NoContent"
"401":
$ref: "#/components/responses/UnauthorizedError"
"403":
$ref: "#/components/responses/Forbidden"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/repositories/user/{repoName}/transfer":
put:
tags:
- Repositories
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Transfer user's repository ownership to an organization
description: Transfer user's repository ownership to an organization
operationId: transferRepositoryOwnershipToOrganization
parameters:
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/OrgNameToParam"
responses:
"204":
$ref: "#/components/responses/NoContent"
"401":
$ref: "#/components/responses/UnauthorizedError"
"403":
$ref: "#/components/responses/Forbidden"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/repositories/user/{repoName}/claim-ownership":
put:
tags:
- Repositories
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Claim the ownership of a given repository
description: Claim the ownership of a given repository
operationId: claimRepositoryOwnership
parameters:
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/OrgNameToParam"
responses:
"204":
$ref: "#/components/responses/NoContent"
"401":
$ref: "#/components/responses/UnauthorizedError"
"403":
$ref: "#/components/responses/Forbidden"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/repositories/org/{orgName}":
post:
tags:
- Repositories
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Add organization's repository
description: Add organization's repository
operationId: addOrganizationRepository
parameters:
- $ref: "#/components/parameters/OrgNameParam"
requestBody:
$ref: "#/components/requestBodies/RepositoryBody"
responses:
"201":
$ref: "#/components/responses/Created"
"400":
$ref: "#/components/responses/BadRequest"
"401":
$ref: "#/components/responses/UnauthorizedError"
"403":
$ref: "#/components/responses/Forbidden"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/repositories/org/{orgName}/{repoName}":
put:
tags:
- Repositories
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Update organization's repository
description: Update organization's repository
operationId: updateOrganizationRepository
parameters:
- $ref: "#/components/parameters/OrgNameParam"
- $ref: "#/components/parameters/RepoNameParam"
requestBody:
$ref: "#/components/requestBodies/RepositoryBody"
responses:
"204":
$ref: "#/components/responses/NoContent"
"400":
$ref: "#/components/responses/BadRequest"
"401":
$ref: "#/components/responses/UnauthorizedError"
"403":
$ref: "#/components/responses/Forbidden"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
delete:
tags:
- Repositories
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Delete organization's repository
description: Delete organization's repository
operationId: deleteOrganizationRepository
parameters:
- $ref: "#/components/parameters/OrgNameParam"
- $ref: "#/components/parameters/RepoNameParam"
responses:
"204":
$ref: "#/components/responses/NoContent"
"401":
$ref: "#/components/responses/UnauthorizedError"
"403":
$ref: "#/components/responses/Forbidden"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/repositories/org/{orgName}/{repoName}/transfer":
put:
tags:
- Repositories
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Transfer organization's repository to a different owner
description: Transfer organization's repository to a different owner
operationId: transferRepositoryOwnership
parameters:
- $ref: "#/components/parameters/OrgNameParam"
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/OrgNameToParam"
responses:
"204":
$ref: "#/components/responses/NoContent"
"401":
$ref: "#/components/responses/UnauthorizedError"
"403":
$ref: "#/components/responses/Forbidden"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/repositories/org/{orgName}/{repoName}/claim-ownership":
put:
tags:
- Repositories
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Claim the ownership of a given repository
description: Claim the ownership of a given repository
operationId: claimRepositoryOwnershipFromOrganization
parameters:
- $ref: "#/components/parameters/OrgNameParam"
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/OrgNameToParam"
responses:
"204":
$ref: "#/components/responses/NoContent"
"401":
$ref: "#/components/responses/UnauthorizedError"
"403":
$ref: "#/components/responses/Forbidden"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
/packages/stats:
get:
tags:
- Packages
summary: Get the number of packages and releases registered
description: Get the number of packages and releases registered
operationId: getPackageStats
responses:
"200":
description: ""
content:
application/json:
schema:
type: object
properties:
packages:
type: integer
nullable: false
releases:
type: integer
nullable: false
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
/packages/random:
get:
tags:
- Packages
summary: Get some random packages
description: Get some random packages
operationId: getRandomPackages
responses:
"200":
description: ""
content:
application/json:
schema:
type: array
items:
$ref: "#/components/schemas/PackageSummary"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
/packages/search:
get:
tags:
- Packages
summary: Search packages that meet the provided criteria
description: Search packages that meet the provided criteria
operationId: searchPackages
parameters:
- $ref: "#/components/parameters/OffsetParam"
- $ref: "#/components/parameters/LimitParam"
- $ref: "#/components/parameters/FacetsParam"
- $ref: "#/components/parameters/TSQueryWebParam"
- $ref: "#/components/parameters/TSQueryParam"
- $ref: "#/components/parameters/RepositoryKindsListParam"
- $ref: "#/components/parameters/UsersListParam"
- $ref: "#/components/parameters/OrgsListParam"
- $ref: "#/components/parameters/RepositoriesListParam"
- $ref: "#/components/parameters/LicensesListParam"
- $ref: "#/components/parameters/CapabilitiesListParam"
- $ref: "#/components/parameters/DeprecatedParam"
- $ref: "#/components/parameters/OperatorsParam"
- $ref: "#/components/parameters/VerifiedPublisherParam"
- $ref: "#/components/parameters/OfficialParam"
- $ref: "#/components/parameters/SortParam"
responses:
"200":
description: ""
headers:
Pagination-Total-Count:
schema:
type: string
description: Total number of packages for this search
content:
application/json:
schema:
type: object
properties:
packages:
type: array
nullable: false
items:
$ref: "#/components/schemas/PackageSummary"
facets:
type: array
nullable: false
items:
$ref: "#/components/schemas/Facets"
examples:
s1:
value:
packages:
- package_id: a9c77b9a-2cd1-4a8f-b9e8-6b8f94e13407
name: artifact-hub
normalized_name: artifact-hub
logo_image_id: 0f5488e2-da57-486b-a20f-bfe746ed3e23
stars: 2
description: >-
Artifact Hub is a web-based application that enables
finding, installing, and publishing Kubernetes
packages.
version: 0.1.0
app_version: 0.1.0
deprecated: false
ts: 1617098261617098268
repository:
url: "http://url.com"
kind: 0
name: artifact-hub
display_name: Artifact Hub
repository_id: a032a436-3568-4970-804a-2780f5e9d231
organization_name: artifacthub
organization_display_name: Artifact Hub
verified_publisher: true
official: true
scanner_disabled: false
- package_id: 3af7b6a1-adbd-41f1-ad96-e1eb3350b019
name: sentry-kubernetes
normalized_name: sentry-kubernetes
logo_image_id: 55f2ed75-015d-4edd-9990-11fb2ffcae9e
stars: 0
description: A Helm chart for sentry-kubernetes
version: 0.2.3
app_version: latest
deprecated: false
ts: 1617098268
repository:
url: "http://url.com"
kind: 0
name: incubator
display_name: Incubator
repository_id: dba459d0-6beb-451a-b15a-52d67cc93fa0
organization_name: helm
organization_display_name: Helm
verified_publisher: false
official: false
scanner_disabled: false
- package_id: 0d38123f-fb60-41f0-bd00-76fb331bf7ed
name: etcd-operator
normalized_name: etcd-operator
logo_image_id: 5gt2ed75-015d-40dd-9990-11fb2tgcae9e
stars: 0
description: CoreOS etcd-operator Helm chart for Kubernetes
version: 0.10.3
app_version: 0.9.4
deprecated: false
ts: 1617098268
repository:
url: "http://url.com"
kind: 0
name: stable
display_name: Stable
repository_id: 486f6d4c-9f66-11eb-a8b3-0242ac130003
organization_name: helm
organization_display_name: Helm
verified_publisher: false
official: false
scanner_disabled: false
facets:
- title: Organization
filter_key: org
options:
- id: helm
name: Helm
total: 53
- id: artifacthub
name: Artifact Hub
total: 1
- title: kind
filter_key: kind
options:
- id: "0"
name: Helm charts
total: 54
- title: Repository
filter_key: repo
options:
- id: stable
name: Stable
total: 16
- id: incubator
name: Incubator
total: 36
- id: artifact-hub
name: Artifact Hub
total: 1
"400":
$ref: "#/components/responses/BadRequest"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
/packages/starred:
get:
tags:
- Packages
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Get packages starred by user
description: Get packages starred by user
operationId: getStarredPackagesByUser
parameters:
- $ref: "#/components/parameters/OffsetParam"
- $ref: "#/components/parameters/LimitParam"
responses:
"200":
description: ""
headers:
Pagination-Total-Count:
schema:
type: string
description: Total number of starred packages
content:
application/json:
schema:
type: array
items:
$ref: "#/components/schemas/PackageSummary"
"401":
$ref: "#/components/responses/UnauthorizedError"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/backstage/{repoName}/{packageName}":
get:
tags:
- Packages
summary: Get package details
description: Get package details
operationId: getBackstagePluginsDetails
parameters:
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/PackageNameParam"
responses:
"200":
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/BackstagePlugin"
"404":
$ref: "#/components/responses/NotFoundResponse"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/container/{repoName}/{packageName}":
get:
tags:
- Packages
summary: Get container image details
description: Get container image details
operationId: getContainerImageDetails
parameters:
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/PackageNameParam"
responses:
"200":
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/ContainerImage"
"404":
$ref: "#/components/responses/NotFoundResponse"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/coredns/{repoName}/{packageName}":
get:
tags:
- Packages
summary: Get package details
description: Get package details
operationId: getCoreDNSPluginDetails
parameters:
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/PackageNameParam"
responses:
"200":
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/CoreDNSPackage"
"404":
$ref: "#/components/responses/NotFoundResponse"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/helm/{repoName}/{packageName}":
get:
tags:
- Packages
summary: Get package details
description: Get package details
operationId: getHelmPackageDetails
parameters:
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/PackageNameParam"
responses:
"200":
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/HelmPackage"
"404":
$ref: "#/components/responses/NotFoundResponse"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/helm-plugin/{repoName}/{packageName}":
get:
tags:
- Packages
summary: Get package details
description: Get package details
operationId: getHelmPluginDetails
parameters:
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/PackageNameParam"
responses:
"200":
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/HelmPluginPackage"
"404":
$ref: "#/components/responses/NotFoundResponse"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/falco/{repoName}/{packageName}":
get:
tags:
- Packages
summary: Get package details
description: Get package details
operationId: getFalcoRulesDetails
parameters:
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/PackageNameParam"
responses:
"200":
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/FalcoPackage"
"404":
$ref: "#/components/responses/NotFoundResponse"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/gatekeeper/{repoName}/{packageName}":
get:
tags:
- Packages
summary: Get package details
description: Get package details
operationId: getGatekeeperPoliciesDetails
parameters:
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/PackageNameParam"
responses:
"200":
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/GatekeeperPolicy"
"404":
$ref: "#/components/responses/NotFoundResponse"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/keda-scaler/{repoName}/{packageName}":
get:
tags:
- Packages
summary: Get package details
description: Get package details
operationId: getKedaScalerDetails
parameters:
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/PackageNameParam"
responses:
"200":
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/KedaScalerPackage"
"404":
$ref: "#/components/responses/NotFoundResponse"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/keptn/{repoName}/{packageName}":
get:
tags:
- Packages
summary: Get package details
description: Get package details
operationId: getKeptnIntegrationsDetails
parameters:
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/PackageNameParam"
responses:
"200":
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/KeptnIntegrationsPackage"
"404":
$ref: "#/components/responses/NotFoundResponse"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/knative-client-plugin/{repoName}/{packageName}":
get:
tags:
- Packages
summary: Get package details
description: Get package details
operationId: getKnativeClientPluginIntegrationsDetails
parameters:
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/PackageNameParam"
responses:
"200":
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/KnativeClientPluginsPackage"
"404":
$ref: "#/components/responses/NotFoundResponse"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/krew/{repoName}/{packageName}":
get:
tags:
- Packages
summary: Get package details
description: Get package details
operationId: getKubectlPluginDetails
parameters:
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/PackageNameParam"
responses:
"200":
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/KrewPluginsPackage"
"404":
$ref: "#/components/responses/NotFoundResponse"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/kubewarden/{repoName}/{packageName}":
get:
tags:
- Packages
summary: Get package details
description: Get package details
operationId: getKubewardenPoliciesDetails
parameters:
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/PackageNameParam"
responses:
"200":
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/KubewardenPoliciesPackage"
"404":
$ref: "#/components/responses/NotFoundResponse"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/kyverno/{repoName}/{packageName}":
get:
tags:
- Packages
summary: Get package details
description: Get package details
operationId: getKyvernoPoliciesDetails
parameters:
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/PackageNameParam"
responses:
"200":
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/KyvernoPolicy"
"404":
$ref: "#/components/responses/NotFoundResponse"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/opa/{repoName}/{packageName}":
get:
tags:
- Packages
summary: Get package details
description: Get package details
operationId: getOPAPoliciesDetails
parameters:
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/PackageNameParam"
responses:
"200":
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/OPAPackage"
"404":
$ref: "#/components/responses/NotFoundResponse"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/olm/{repoName}/{packageName}":
get:
tags:
- Packages
summary: Get package details
description: Get package details
operationId: getOLMOperatorDetails
parameters:
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/PackageNameParam"
responses:
"200":
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/OLMPackage"
"404":
$ref: "#/components/responses/NotFoundResponse"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/tbaction/{repoName}/{packageName}":
get:
tags:
- Packages
summary: Get package details
description: Get package details
operationId: getTinkerbellActionsDetails
parameters:
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/PackageNameParam"
responses:
"200":
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/TBActionPackage"
"404":
$ref: "#/components/responses/NotFoundResponse"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/tekton-pipeline/{repoName}/{packageName}":
get:
tags:
- Packages
summary: Get package details
description: Get package details
operationId: getTektonPipelineDetails
parameters:
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/PackageNameParam"
responses:
"200":
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/TektonPipelinePackage"
"404":
$ref: "#/components/responses/NotFoundResponse"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/tekton-task/{repoName}/{packageName}":
get:
tags:
- Packages
summary: Get package details
description: Get package details
operationId: getTektonTaskDetails
parameters:
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/PackageNameParam"
responses:
"200":
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/TektonTaskPackage"
"404":
$ref: "#/components/responses/NotFoundResponse"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/backstage/{repoName}/{packageName}/{version}":
get:
tags:
- Packages
summary: Get package version details
description: Get package version details
operationId: getBackstagePluginsVersionDetails
parameters:
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/PackageNameParam"
- $ref: "#/components/parameters/VersionParam"
responses:
"200":
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/BackstagePlugin"
"404":
$ref: "#/components/responses/NotFoundResponse"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/container/{repoName}/{packageName}/{version}":
get:
tags:
- Packages
summary: Get container image details
description: Get container image details
operationId: getContainerImageVersionDetails
parameters:
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/PackageNameParam"
- $ref: "#/components/parameters/VersionParam"
responses:
"200":
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/ContainerImage"
"404":
$ref: "#/components/responses/NotFoundResponse"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/coredns/{repoName}/{packageName}/{version}":
get:
tags:
- Packages
summary: Get package details
description: Get package details
operationId: getCoreDNSPluginVersionDetails
parameters:
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/PackageNameParam"
- $ref: "#/components/parameters/VersionParam"
responses:
"200":
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/CoreDNSPackage"
"404":
$ref: "#/components/responses/NotFoundResponse"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/falco/{repoName}/{packageName}/{version}":
get:
tags:
- Packages
summary: Get package version details
description: Get package version details
operationId: getFalcoRulesVersionDetails
parameters:
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/PackageNameParam"
- $ref: "#/components/parameters/VersionParam"
responses:
"200":
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/FalcoPackage"
"404":
$ref: "#/components/responses/NotFoundResponse"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/gatekeeper/{repoName}/{packageName}/{version}":
get:
tags:
- Packages
summary: Get package version details
description: Get package version details
operationId: getGatekeeperPoliciesVersionDetails
parameters:
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/PackageNameParam"
- $ref: "#/components/parameters/VersionParam"
responses:
"200":
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/GatekeeperPolicy"
"404":
$ref: "#/components/responses/NotFoundResponse"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/helm/{repoName}/{packageName}/{version}":
get:
tags:
- Packages
summary: Get package version details
description: Get package version details
operationId: getHelmPackageVersionDetails
parameters:
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/PackageNameParam"
- $ref: "#/components/parameters/VersionParam"
responses:
"200":
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/HelmPackage"
"404":
$ref: "#/components/responses/NotFoundResponse"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/helm-plugin/{repoName}/{packageName}/{version}":
get:
tags:
- Packages
summary: Get package version details
description: Get package version details
operationId: getHelmPluginVersionDetails
parameters:
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/PackageNameParam"
- $ref: "#/components/parameters/VersionParam"
responses:
"200":
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/HelmPluginPackage"
"404":
$ref: "#/components/responses/NotFoundResponse"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/keda-scaler/{repoName}/{packageName}/{version}":
get:
tags:
- Packages
summary: Get package version details
description: Get package version details
operationId: getKedaScalerVersionDetails
parameters:
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/PackageNameParam"
- $ref: "#/components/parameters/VersionParam"
responses:
"200":
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/KedaScalerPackage"
"404":
$ref: "#/components/responses/NotFoundResponse"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/keptn/{repoName}/{packageName}/{version}":
get:
tags:
- Packages
summary: Get package version details
description: Get package version details
operationId: getKeptnIntegrationsVersionDetails
parameters:
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/PackageNameParam"
- $ref: "#/components/parameters/VersionParam"
responses:
"200":
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/KeptnIntegrationsPackage"
"404":
$ref: "#/components/responses/NotFoundResponse"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/knative-client-plugin/{repoName}/{packageName}/{version}":
get:
tags:
- Packages
summary: Get package version details
description: Get package version details
operationId: getKnativeClientPluginsVersionDetails
parameters:
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/PackageNameParam"
- $ref: "#/components/parameters/VersionParam"
responses:
"200":
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/KnativeClientPluginsPackage"
"404":
$ref: "#/components/responses/NotFoundResponse"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/krew/{repoName}/{packageName}/{version}":
get:
tags:
- Packages
summary: Get package version details
description: Get package version details
operationId: getKubectlPluginVersionDetails
parameters:
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/PackageNameParam"
- $ref: "#/components/parameters/VersionParam"
responses:
"200":
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/KrewPluginsPackage"
"404":
$ref: "#/components/responses/NotFoundResponse"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/kubewarden/{repoName}/{packageName}/{version}":
get:
tags:
- Packages
summary: Get package version details
description: Get package version details
operationId: getKubewardenPoliciesVersionDetails
parameters:
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/PackageNameParam"
- $ref: "#/components/parameters/VersionParam"
responses:
"200":
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/KubewardenPoliciesPackage"
"404":
$ref: "#/components/responses/NotFoundResponse"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/kyverno/{repoName}/{packageName}/{version}":
get:
tags:
- Packages
summary: Get package version details
description: Get package version details
operationId: getKyvernoPoliciesVersionDetails
parameters:
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/PackageNameParam"
- $ref: "#/components/parameters/VersionParam"
responses:
"200":
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/KyvernoPolicy"
"404":
$ref: "#/components/responses/NotFoundResponse"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/opa/{repoName}/{packageName}/{version}":
get:
tags:
- Packages
summary: Get package version details
description: Get package version details
operationId: getOPAPoliciesVersionDetails
parameters:
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/PackageNameParam"
- $ref: "#/components/parameters/VersionParam"
responses:
"200":
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/OPAPackage"
"404":
$ref: "#/components/responses/NotFoundResponse"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/olm/{repoName}/{packageName}/{version}":
get:
tags:
- Packages
summary: Get package version details
description: Get package version details
operationId: getOLMOperatorVersionDetails
parameters:
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/PackageNameParam"
- $ref: "#/components/parameters/VersionParam"
responses:
"200":
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/OLMPackage"
"404":
$ref: "#/components/responses/NotFoundResponse"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/tbaction/{repoName}/{packageName}/{version}":
get:
tags:
- Packages
summary: Get package version details
description: Get package version details
operationId: getTinkerbellActionsVersionDetails
parameters:
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/PackageNameParam"
- $ref: "#/components/parameters/VersionParam"
responses:
"200":
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/TBActionPackage"
"404":
$ref: "#/components/responses/NotFoundResponse"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/tekton-pipeline/{repoName}/{packageName}/{version}":
get:
tags:
- Packages
summary: Get package version details
description: Get package version details
operationId: getTektonPipelineVersionDetails
parameters:
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/PackageNameParam"
- $ref: "#/components/parameters/VersionParam"
responses:
"200":
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/TektonPipelinePackage"
"404":
$ref: "#/components/responses/NotFoundResponse"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/tekton-task/{repoName}/{packageName}/{version}":
get:
tags:
- Packages
summary: Get package version details
description: Get package version details
operationId: getTektonTaskVersionDetails
parameters:
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/PackageNameParam"
- $ref: "#/components/parameters/VersionParam"
responses:
"200":
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/TektonTaskPackage"
"404":
$ref: "#/components/responses/NotFoundResponse"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/{repoKindParam}/{repoName}/{packageName}/changelog.md":
get:
tags:
- Packages
summary: Get package's changelog in markdown format
description: Get package's changelog in markdown format
operationId: generateChangelogMD
parameters:
- $ref: "#/components/parameters/RepoKindParam"
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/PackageNameParam"
responses:
"200":
description: ""
content:
text/markdown:
schema:
type: string
example: |
# Changelog
## 1.3.0 - 2021-10-06
### Added
- Support for Tekton pipelines
- Versions index to changelog modal
- Allow publishers to include screenshots in packages
- Repository metadata file is now supported in Helm OCI repositories
- Support for provenance files in Helm OCI repositories
- Changes annotation is now available for Krew plugins kind
- Option to show/hide stars in widget
- Link Helm charts dependencies to packages in the hub
- API endpoint for helm-exporter tool
### Changed
- Improve Helm OCI support (include HIP 6 changes)
- Improve packages search results facets
- Bump Trivy to 0.20.0
- Upgrade backend and frontend dependencies
### Fixed
- Some bugs and other improvements
"429":
$ref: "#/components/responses/TooManyRequests"
"404":
$ref: "#/components/responses/NotFoundResponse"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/{repoKindParam}/{repoName}/{packageName}/production-usage":
get:
tags:
- Packages
summary: Get a summary of which of the organizations the user belongs to are using the package in production
description: Get a summary of which of the organizations the user belongs to are using the package in production
operationId: getProductionUsage
parameters:
- $ref: "#/components/parameters/RepoKindParam"
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/PackageNameParam"
responses:
"200":
description: ""
content:
text/markdown:
schema:
type: array
items:
$ref: "#/components/schemas/ProductionUsageOrganization"
"429":
$ref: "#/components/responses/TooManyRequests"
"404":
$ref: "#/components/responses/NotFoundResponse"
"500":
$ref: "#/components/responses/InternalServerError"
? "/packages/{repoKindParam}/{repoName}/{packageName}/production-usage/${orgName}"
: post:
tags:
- Packages
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Add organization to package's production users list
description: Add organization to package's production users list
operationId: addProductionUsage
parameters:
- $ref: "#/components/parameters/RepoKindParam"
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/PackageNameParam"
- $ref: "#/components/parameters/OrgNameParam"
responses:
"204":
$ref: "#/components/responses/NoContent"
"400":
$ref: "#/components/responses/BadRequest"
"401":
$ref: "#/components/responses/UnauthorizedError"
"403":
$ref: "#/components/responses/Forbidden"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
delete:
tags:
- Packages
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Delete organization from package's production usage list
description: Delete organization from package's production usage list
operationId: deleteProductionUsage
parameters:
- $ref: "#/components/parameters/RepoKindParam"
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/PackageNameParam"
- $ref: "#/components/parameters/OrgNameParam"
responses:
"204":
$ref: "#/components/responses/NoContent"
"401":
$ref: "#/components/responses/UnauthorizedError"
"403":
$ref: "#/components/responses/Forbidden"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/{repoKindParam}/{repoName}/{packageName}/summary":
get:
tags:
- Packages
summary: Get package summary details
description: Get package summary details
operationId: getPackageSummary
parameters:
- $ref: "#/components/parameters/RepoKindParam"
- $ref: "#/components/parameters/RepoNameParam"
- $ref: "#/components/parameters/PackageNameParam"
responses:
"200":
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/PackageSummary"
"404":
$ref: "#/components/responses/NotFoundResponse"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/{packageID}/stars":
get:
tags:
- Packages
summary: Get package stars
description: Get package stars
operationId: getPackageStars
parameters:
- $ref: "#/components/parameters/PackageIDParam"
responses:
"200":
description: ""
content:
application/json:
schema:
type: object
properties:
stars:
type: integer
nullable: false
starred_by_user:
type: boolean
nullable: false
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
put:
tags:
- Packages
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Toggle package's star
description: Toggle package's star
operationId: togglePackageStar
parameters:
- $ref: "#/components/parameters/PackageIDParam"
responses:
"204":
$ref: "#/components/responses/NoContent"
"401":
$ref: "#/components/responses/UnauthorizedError"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/{packageID}/{version}/security-report":
get:
tags:
- Packages
summary: Get package security report
description: Get package security report
operationId: getPackageSecurityReport
parameters:
- $ref: "#/components/parameters/PackageIDParam"
- $ref: "#/components/parameters/VersionParam"
responses:
"200":
description: ""
content:
application/json:
schema:
type: object
additionalProperties: true
nullable: false
"404":
$ref: "#/components/responses/NotFoundResponse"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/{packageID}/{version}/values":
get:
tags:
- Packages
summary: Get chart values
description: Get chart values
operationId: getChartValues
parameters:
- $ref: "#/components/parameters/PackageIDParam"
- $ref: "#/components/parameters/VersionParam"
responses:
"200":
description: ""
content:
application/yaml:
schema:
type: string
nullable: false
example: |
# Values
global:
image: ""
"429":
$ref: "#/components/responses/TooManyRequests"
"404":
$ref: "#/components/responses/NotFoundResponse"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/{packageID}/{version}/values-schema":
get:
tags:
- Packages
summary: Get package values schema
description: Get package values schema
operationId: getPackageValuesSchema
parameters:
- $ref: "#/components/parameters/PackageIDParam"
- $ref: "#/components/parameters/VersionParam"
responses:
"200":
description: ""
content:
application/json:
schema:
type: object
additionalProperties: true
nullable: false
"429":
$ref: "#/components/responses/TooManyRequests"
"404":
$ref: "#/components/responses/NotFoundResponse"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/{packageID}/changelog":
get:
tags:
- Packages
summary: Get package changelogs
description: Get package changelogs
operationId: getPackageChangelog
parameters:
- $ref: "#/components/parameters/PackageIDParam"
responses:
"200":
description: ""
content:
application/json:
schema:
type: array
items:
type: object
required:
- version
- ts
- contains_security_updates
- prerelease
properties:
version:
type: string
nullable: false
ts:
type: integer
nullable: false
changes:
type: array
items:
type: object
required:
- description
properties:
description:
type: string
nullable: false
kind:
$ref: "#/components/schemas/ChangelogItemKind"
links:
type: array
items:
type: object
required:
- name
- url
properties:
name:
type: string
nullable: false
url:
type: string
format: uri
nullable: false
nullable: false
nullable: false
contains_security_updates:
type: boolean
nullable: false
prerelease:
type: boolean
nullable: false
"429":
$ref: "#/components/responses/TooManyRequests"
"404":
$ref: "#/components/responses/NotFoundResponse"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/{packageID}/{version}/templates":
get:
tags:
- Packages
summary: Get the templates for a Helm chart package
description: Get the templates for a Helm chart package
operationId: getHelmChartTemplates
parameters:
- $ref: "#/components/parameters/PackageIDParam"
- $ref: "#/components/parameters/VersionParam"
responses:
"200":
description: ""
content:
application/json:
schema:
type: object
required:
- templates
- values
properties:
templates:
type: array
items:
type: object
required:
- name
- data
properties:
name:
type: string
nullable: false
data:
type: string
format: byte
nullable: false
values:
type: object
nullable: false
additionalProperties: true
"400":
$ref: "#/components/responses/BadRequest"
"429":
$ref: "#/components/responses/TooManyRequests"
"404":
$ref: "#/components/responses/NotFoundResponse"
"500":
$ref: "#/components/responses/InternalServerError"
"/packages/{packageID}/views":
get:
tags:
- Packages
summary: Get the views of the package provided
description: Get the views of the package provided
operationId: getPackageViews
parameters:
- $ref: "#/components/parameters/PackageIDParam"
responses:
"200":
description: ""
content:
application/json:
schema:
type: object
nullable: false
additionalProperties: true
example:
"1.0.1":
"2021-12-09": 12
"2021-12-08": 30
"1.0.0":
"2021-12-09": 2
"2021-12-08": 5
"400":
$ref: "#/components/responses/BadRequest"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
/subscriptions:
get:
tags:
- Subscriptions
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Get user's subscriptions
description: Get user's subscriptions
operationId: getUserSubscriptions
parameters:
- $ref: "#/components/parameters/OffsetParam"
- $ref: "#/components/parameters/LimitParam"
responses:
"200":
description: ""
headers:
Pagination-Total-Count:
schema:
type: string
description: Total number of subscriptions
content:
application/json:
schema:
type: array
items:
type: object
required:
- package_id
- name
- normalized_name
- repository
- event_kinds
properties:
package_id:
type: string
format: uuid
nullable: false
name:
type: string
nullable: false
example: pkg1
normalized_name:
type: string
nullable: false
example: pkg1
logo_image_id:
type: string
nullable: false
example: 12345abcde
repository:
$ref: "#/components/schemas/RepositorySummary"
event_kinds:
type: array
items:
$ref: "#/components/schemas/EventKindId"
nullable: false
"401":
$ref: "#/components/responses/UnauthorizedError"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
post:
tags:
- Subscriptions
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Add subscription
description: Add subscription
operationId: addPackageSubscription
requestBody:
$ref: "#/components/requestBodies/SubscriptionBody"
responses:
"201":
$ref: "#/components/responses/Created"
"400":
$ref: "#/components/responses/BadRequest"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
delete:
tags:
- Subscriptions
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Delete subscription
description: Delete subscription
operationId: deletePackageSubscription
parameters:
- $ref: "#/components/parameters/PackageIDQueryParam"
- $ref: "#/components/parameters/EventKindParam"
responses:
"204":
$ref: "#/components/responses/NoContent"
"400":
$ref: "#/components/responses/BadRequest"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/subscriptions/{packageID}":
get:
tags:
- Subscriptions
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Get user's subscriptions for the given package
description: Get user's subscriptions for the given package
operationId: getPackageUserSubscriptions
parameters:
- $ref: "#/components/parameters/PackageIDParam"
responses:
"200":
description: ""
content:
application/json:
schema:
type: array
items:
type: object
required:
- event_kind
properties:
event_kind:
$ref: "#/components/schemas/EventKindId"
"401":
$ref: "#/components/responses/UnauthorizedError"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
/subscriptions/opt-out:
get:
tags:
- Subscriptions
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Get user's opt-out entries
description: Get user's opt-out entries
operationId: getUserOptOutEntries
parameters:
- $ref: "#/components/parameters/OffsetParam"
- $ref: "#/components/parameters/LimitParam"
responses:
"200":
description: ""
headers:
Pagination-Total-Count:
schema:
type: string
description: Total number of user's opt-out entries
content:
application/json:
schema:
type: array
items:
type: object
required:
- opt_out_id
- repository
- event_kind
properties:
opt_out_id:
type: string
format: uuid
nullable: false
repository:
$ref: "#/components/schemas/RepositorySummary"
event_kind:
$ref: "#/components/schemas/EventKindId"
"401":
$ref: "#/components/responses/UnauthorizedError"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
post:
tags:
- Subscriptions
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Add opt-out entry
description: Add opt-out entry
operationId: addOptOutEntry
requestBody:
$ref: "#/components/requestBodies/OptOutBody"
responses:
"201":
$ref: "#/components/responses/Created"
"400":
$ref: "#/components/responses/BadRequest"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/subscriptions/opt-out/{optOutID}":
delete:
tags:
- Subscriptions
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Delete opt-out entry
description: Delete opt-out entry
operationId: deleteOptOutEntry
parameters:
- $ref: "#/components/parameters/OptOutIDParam"
responses:
"204":
$ref: "#/components/responses/NoContent"
"400":
$ref: "#/components/responses/BadRequest"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
/webhooks/user:
get:
tags:
- Webhooks
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Get user's webhooks
description: Get user's webhooks
operationId: getUserWebhooks
responses:
"200":
description: ""
headers:
Pagination-Total-Count:
schema:
type: string
description: Total number of user's webhooks
content:
application/json:
schema:
type: array
items:
$ref: "#/components/schemas/Webhook"
"401":
$ref: "#/components/responses/UnauthorizedError"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
post:
tags:
- Webhooks
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Add user's webhook
description: Add user's webhook
operationId: addUserWebhook
requestBody:
$ref: "#/components/requestBodies/WebhookBody"
responses:
"201":
$ref: "#/components/responses/Created"
"400":
$ref: "#/components/responses/BadRequest"
"401":
$ref: "#/components/responses/UnauthorizedError"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/webhooks/user/{webhookID}":
get:
tags:
- Webhooks
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Get user's webhook
description: Get user's webhook
operationId: getUserWebhookDetail
parameters:
- $ref: "#/components/parameters/WebhookIDParam"
responses:
"200":
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/Webhook"
"401":
$ref: "#/components/responses/UnauthorizedError"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
put:
tags:
- Webhooks
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Update user's webhook
description: Update user's webhook
operationId: updateUserWebhook
parameters:
- $ref: "#/components/parameters/WebhookIDParam"
requestBody:
$ref: "#/components/requestBodies/WebhookBody"
responses:
"204":
$ref: "#/components/responses/NoContent"
"400":
$ref: "#/components/responses/BadRequest"
"401":
$ref: "#/components/responses/UnauthorizedError"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
delete:
tags:
- Webhooks
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Delete user's webhook
description: Delete user's webhook
operationId: deleteUserWebhook
parameters:
- $ref: "#/components/parameters/WebhookIDParam"
responses:
"204":
$ref: "#/components/responses/NoContent"
"401":
$ref: "#/components/responses/UnauthorizedError"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/webhooks/org/{orgName}":
get:
tags:
- Webhooks
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Get organization's webhooks
description: Get organization's webhooks
operationId: getOrganizationWebhooks
parameters:
- $ref: "#/components/parameters/OrgNameParam"
responses:
"200":
description: ""
headers:
Pagination-Total-Count:
schema:
type: string
description: Total number of organization's webhooks
content:
application/json:
schema:
type: array
items:
$ref: "#/components/schemas/Webhook"
"401":
$ref: "#/components/responses/UnauthorizedError"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
post:
tags:
- Webhooks
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Add organization's webhook
description: Add organization's webhook
operationId: addOrganizationWebhook
parameters:
- $ref: "#/components/parameters/OrgNameParam"
requestBody:
$ref: "#/components/requestBodies/WebhookBody"
responses:
"201":
$ref: "#/components/responses/Created"
"400":
$ref: "#/components/responses/BadRequest"
"401":
$ref: "#/components/responses/UnauthorizedError"
"403":
$ref: "#/components/responses/Forbidden"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/webhooks/org/{orgName}/{webhookID}":
get:
tags:
- Webhooks
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Get organization's webhook
description: Get organization's webhook
operationId: getOrganizationWebhookDetails
parameters:
- $ref: "#/components/parameters/OrgNameParam"
- $ref: "#/components/parameters/WebhookIDParam"
responses:
"200":
description: ""
content:
application/json:
schema:
$ref: "#/components/schemas/Webhook"
"401":
$ref: "#/components/responses/UnauthorizedError"
"403":
$ref: "#/components/responses/Forbidden"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
put:
tags:
- Webhooks
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Update organization's webhook
description: Update organization's webhook
operationId: updateOrganizationWebhook
parameters:
- $ref: "#/components/parameters/OrgNameParam"
- $ref: "#/components/parameters/WebhookIDParam"
requestBody:
$ref: "#/components/requestBodies/WebhookBody"
responses:
"204":
$ref: "#/components/responses/NoContent"
"400":
$ref: "#/components/responses/BadRequest"
"401":
$ref: "#/components/responses/UnauthorizedError"
"403":
$ref: "#/components/responses/Forbidden"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
delete:
tags:
- Webhooks
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Delete organization's webhook
description: Delete organization's webhook
operationId: deleteOrganizationWebhook
parameters:
- $ref: "#/components/parameters/OrgNameParam"
- $ref: "#/components/parameters/WebhookIDParam"
responses:
"204":
$ref: "#/components/responses/NoContent"
"401":
$ref: "#/components/responses/UnauthorizedError"
"403":
$ref: "#/components/responses/Forbidden"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
/webhooks/test:
post:
tags:
- Webhooks
security:
- ApiKeyId: []
ApiKeySecret: []
summary: Trigger webhook test
description: Trigger webhook test
operationId: triggerWebhookTest
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/WebhookTest"
responses:
"204":
$ref: "#/components/responses/NoContent"
"400":
$ref: "#/components/responses/BadRequest"
"401":
$ref: "#/components/responses/UnauthorizedError"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
"/check-availability/{resourceKind}":
head:
tags:
- Availability checks
summary: Check the availability of a given value for the provided resource kind
description: Check the availability of a given value for the provided resource kind
operationId: checkAvailability
parameters:
- $ref: "#/components/parameters/ResourceKindNameParam"
- in: query
name: v
schema:
type: string
required: true
description: Value to check
responses:
"204":
description: "Found, the value exists, and is not free to use"
"404":
description: "Not found, the value does not exist, and is free to use"
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
/stats:
get:
tags:
- Stats
summary: Get Artifact Hub stats
description: Get Artifact Hub stats
operationId: getArtifactHubStats
responses:
"200":
description: ""
content:
application/json:
schema:
type: object
required:
- generated_at
- packages
- snapshots
- repositories
- organizations
- users
properties:
generated_at:
type: integer
nullable: false
packages:
type: object
required:
- total
properties:
total:
type: integer
nullable: false
running_total:
type: array
items:
type: array
items:
type: integer
nullable: false
created_monthly:
type: array
items:
type: array
items:
type: integer
nullable: false
views_daily:
type: array
items:
type: array
items:
type: integer
nullable: false
repositories:
type: object
required:
- total
properties:
total:
type: integer
nullable: false
running_total:
type: array
items:
type: array
items:
type: integer
nullable: false
created_monthly:
type: array
items:
type: array
items:
type: integer
nullable: false
snapshots:
type: object
required:
- total
properties:
total:
type: integer
nullable: false
running_total:
type: array
items:
type: array
items:
type: integer
nullable: false
created_monthly:
type: array
items:
type: array
items:
type: integer
nullable: false
organizations:
type: object
required:
- total
properties:
total:
type: integer
nullable: false
running_total:
type: array
items:
type: array
items:
type: integer
nullable: false
users:
type: object
required:
- total
properties:
total:
type: integer
nullable: false
running_total:
type: array
items:
type: array
items:
type: integer
nullable: false
example:
generated_at: 1615980004171
packages:
total: 969
running_total:
- - 1585612800000
- 917
- - 1585872000000
- 918
- - 1586736000000
- 937
- - 1586908800000
- 938
- - 1586995200000
- 949
- - 1587340800000
- 953
- - 1587427200000
- 955
- - 1587513600000
- 969
created_monthly:
- - 1583020800000
- 917
- - 1585699200000
- 52
views_daily:
- - 1639731010000
- 800
- - 1639644610000
- 820
snapshots:
total: 3998
running_total:
- - 1585612800000
- 3906
- - 1585699200000
- 3922
- - 1585785600000
- 3935
- - 1585872000000
- 3948
- - 1586044800000
- 3951
- - 1586131200000
- 3959
- - 1586217600000
- 3981
- - 1586304000000
- 3998
created_monthly:
- - 1583020800000
- 3906
- - 1585699200000
- 92
repositories:
total: 181
running_total:
- - 1585612800000
- 172
- - 1585872000000
- 173
- - 1586736000000
- 176
- - 1586908800000
- 177
- - 1586995200000
- 181
organizations:
total: 8
running_total:
- - 1585612800000
- 3
- - 1585785600000
- 6
- - 1585872000000
- 7
- - 1586217600000
- 8
users:
total: 9
running_total:
- - 1584403200000
- 3
- - 1584489600000
- 5
- - 1584576000000
- 6
- - 1584662400000
- 8
- - 1584921600000
- 9
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
/harbor-replication:
get:
tags:
- Integrations
summary: Get Harbor replication dump
description: Get Harbor replication dump
operationId: getHarborReplicationDump
responses:
"200":
description: ""
content:
application/json:
schema:
type: array
items:
type: object
required:
- repository
- package
- version
- url
properties:
repository:
type: string
nullable: false
package:
type: string
nullable: false
version:
type: string
nullable: false
url:
type: string
format: uri
nullable: false
example:
- repository: bitnami
package: nginx-ingress-controller
version: 5.6.10
url: https://charts.bitnami.com/bitnami/nginx-ingress-controller-5.6.10.tgz
- repository: bitnami
package: mediawiki
version: 6.3.6
url: https://charts.bitnami.com/bitnami/mediawiki-6.3.6.tgz
- repository: crossplane
package: crossplane
version: 0.0.0-793.c9c71f8
url: https://charts.crossplane.io/master/crossplane-0.0.0-793.c9c71f8.tgz
- repository: choerodon
package: devops-service
version: 0.22.0
url: https://openchart.choerodon.com.cn/choerodon/c7n/charts/devops-service-0.22.0.tgz
- repository: t3n
package: snipeit
version: 2.4.0
url: https://storage.googleapis.com/t3n-helm-charts/snipeit-2.4.0.tgz
- repository: bitnami
package: osclass
version: 7.0.10
url: https://charts.bitnami.com/bitnami/osclass-7.0.10.tgz
- repository: choerodon
package: asgard-service
version: 0.13.0
url: https://openchart.choerodon.com.cn/choerodon/c7n/charts/asgard-service-0.13.0.tgz
- repository: bitnami
package: osclass
version: 3.2.0
url: https://charts.bitnami.com/bitnami/osclass-3.2.0.tgz
- repository: cronce
package: torrentor
version: 0.3.0
url: https://charts.cronce.io/charts/torrentor-0.3.0.tgz
- repository: banzaicloud-stable
package: kafka-operator
version: 0.0.12
url: https://kubernetes-charts.banzaicloud.com/charts/kafka-operator-0.0.12.tgz
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
/helm-exporter:
get:
tags:
- Integrations
summary: Get Helm exporter dump
description: Get the latest version available of all charts listed in Artifact Hub.
operationId: getHelmExporterDump
responses:
"200":
description: ""
content:
application/json:
schema:
type: array
items:
type: object
required:
- name
- version
- repository
properties:
name:
type: string
nullable: false
version:
type: string
nullable: false
repository:
type: object
nullable: false
required:
- name
- url
properties:
name:
type: string
nullable: false
url:
type: string
format: uri
nullable: false
example:
- name: artifact-hub
version: 1.2.0
repository:
name: artifact-hub
url: https://artifacthub.github.io/helm-charts/
- name: kube-prometheus-stack
version: 18.0.6
repository:
url: https://prometheus-community.github.io/helm-charts
name: prometheus-community
- name: rabbitmq
version: 8.22.0
repository:
url: https://charts.bitnami.com/bitnami
name: bitnami
"429":
$ref: "#/components/responses/TooManyRequests"
"500":
$ref: "#/components/responses/InternalServerError"
components:
securitySchemes:
ApiKeyId:
type: apiKey
in: header
name: X-API-KEY-ID
ApiKeySecret:
type: apiKey
in: header
name: X-API-KEY-SECRET
schemas:
AuthorizerAction:
type: string
enum:
- all
- addOrganizationMember
- addOrganizationRepository
- deleteOrganization
- deleteOrganizationMember
- deleteOrganizationRepository
- getAuthorizationPolicy
- transferOrganizationRepository
- updateAuthorizationPolicy
- updateOrganization
- updateOrganizationRepository
description: >
Authorization policy action:
* `all` - All actions
* `addOrganizationMember` - Add member to organization
* `addOrganizationRepository` - Add repository to organization
* `deleteOrganization` - Delete organization
* `deleteOrganizationMember` - Delete member from organization
* `deleteOrganizationRepository` - Delete repository from organization
* `getAuthorizationPolicy` - Get authorization policy
* `transferOrganizationRepository` - Transfer repository from
organization
* `updateAuthorizationPolicy` - Update authorization policy
* `updateOrganization` - Update organization
* `updateOrganizationRepository` - Update repository from organization
AuthorizationPolicy:
type: object
required:
- authorization_enabled
properties:
authorization_enabled:
type: boolean
nullable: false
predefined_policy:
type: string
nullable: false
example: rbac.v1
custom_policy:
type: string
nullable: false
example: |
package artifacthub.authz
# By default, deny requests
default allow = false
# Allow the action if the user is allowed to perform it
allow {
# If user's role is owner
data.roles.owner.users[_] == input.user
}
allow {
# If user's role is allowed to perform this action
allowed_actions[_] == input.action
}
# Get user allowed actions
allowed_actions[action] {
user_roles[_] == "owner"
action := "all"
}
allowed_actions[action] {
action := data.roles[role].allowed_actions[_]
user_roles[_] == role
}
# Get user roles
user_roles[role] {
data.roles[role].users[_] == input.user
}
policy_data:
type: object
nullable: false
additionalProperties: true
example:
roles:
owner:
users:
- user1
customRole1:
users:
- member1
- member2
allowed_actions:
- addOrganizationMember
- addOrganizationRepository
ChangelogItemKind:
type: string
enum:
- added
- changed
- deprecated
- removed
- fixed
- security
nullable: false
description: |
Types of changes:
* `added` - New features
* `changed` - Changes in existing functionality
* `deprecated` - Soon-to-be removed features
* `removed` - Removed features
* `fixed` - Any bug fixed
* `security` - In case of vulnerabilities
Error:
type: object
properties:
message:
type: string
example: error details
EventKindId:
type: integer
enum:
- 0
- 1
- 2
- 4
nullable: false
description: |
Event kind:
* `0` - New package release
* `1` - Security alerts
* `2` - Repository tracking errors
* `4` - Repository scanning errors
Facets:
type: object
required:
- filter_key
- title
- options
properties:
filter_key:
type: string
nullable: false
title:
type: string
nullable: false
options:
type: array
nullable: false
items:
type: object
required:
- id
- name
- total
properties:
id:
type: string
nullable: false
name:
type: string
nullable: false
total:
type: integer
nullable: false
filter_key:
type: string
nullable: false
example:
title: Publisher
filter_key: publisher
options:
- id: f41e7480-8d5c-40d3-9ba6-65ac0da8fc9c
name: Helm
total: 292
filter_key: org
- id: b771c9a8-0076-444c-ad5e-927abe14173d
name: Artifact Hub
total: 1
filter_key: org
- id: a70u69a8-0326-324c-fd3e-0iu87e14173d
name: user1
total: 3
filter_key: user
BackstagePlugin:
$ref: "#/components/schemas/Package"
ContainerImage:
allOf:
- $ref: "#/components/schemas/Package"
- type: object
properties:
data:
type: object
nullable: false
properties:
platforms:
type: array
items:
type: string
nullable: false
example: darwin/amd64
alternative_locations:
type: array
items:
type: string
nullable: false
example: public.ecr.aws/artifacthub/ah
CoreDNSPackage:
$ref: "#/components/schemas/Package"
FalcoPackage:
allOf:
- $ref: "#/components/schemas/Package"
- type: object
properties:
data:
type: object
nullable: false
properties:
rules:
oneOf:
- type: array
items:
type: object
nullable: false
properties:
Name:
type: string
Raw:
type: string
example: |
- macro: text
condition: (evt.num < 0)
- type: object
nullable: false
additionalProperties: true
GatekeeperPolicy:
allOf:
- $ref: "#/components/schemas/Package"
- type: object
properties:
relative_path:
type: string
nullable: false
example: /general/allowedrepos
data:
type: object
nullable: false
properties:
template:
type: string
nullable: false
example: >-
apiVersion: templates.gatekeeper.sh/v1
kind: ConstraintTemplate
metadata:
name: k8sallowedrepos
annotations:
metadata.gatekeeper.sh/title: "Kubernetes Allowed Repositories"
description: >-
Requires container images to begin with a string from the specified list.
examples:
type: array
nullable: false
items:
type: object
nullable: false
properties:
name:
type: string
nullable: false
cases:
type: array
nullable: false
items:
type: object
nullable: false
properties:
name:
type: string
nullable: false
path:
type: string
nullable: false
content:
type: string
nullable: false
example:
- name: memory-ratio-only
cases:
- name: constraint
path: samples/container-must-meet-ratio/constraint.yaml
content: >-
apiVersion: constraints.gatekeeper.sh/v1beta1
HelmPackage:
allOf:
- $ref: "#/components/schemas/Package"
- type: object
properties:
sign_key:
type: object
nullable: false
properties:
fingerprint:
type: string
nullable: false
example: "0011223344"
url:
type: string
format: uri
example: https://key.url
crds:
type: array
nullable: false
items:
type: object
required:
- kind
- name
- version
- description
- displayName
properties:
kind:
type: string
nullable: false
name:
type: string
nullable: false
version:
type: string
nullable: false
description:
type: string
nullable: false
displayName:
type: string
nullable: false
crds_examples:
type: array
nullable: false
items:
type: object
additionalProperties: true
data:
type: object
nullable: false
properties:
apiVersion:
type: string
example: v2
nullable: false
type:
type: string
example: application
nullable: false
kubeVersion:
type: string
example: ">=1.16.0-0"
nullable: false
dependencies:
type: object
nullable: false
required:
- name
- version
- repository
properties:
name:
type: string
nullable: false
example: mysql
version:
type: string
nullable: false
example: 1.6.4
repository:
type: string
nullable: false
example: "http://repo.url"
HelmPluginPackage:
$ref: "#/components/schemas/Package"
KedaScalerPackage:
$ref: "#/components/schemas/Package"
KeptnIntegrationsPackage:
allOf:
- $ref: "#/components/schemas/Package"
- type: object
properties:
data:
type: object
nullable: false
properties:
keptn/version:
type: string
example: "0.1.0"
keptn/kind:
type: string
example: "service,sli-provider"
KnativeClientPluginsPackage:
$ref: "#/components/schemas/Package"
KrewPluginsPackage:
allOf:
- $ref: "#/components/schemas/Package"
- type: object
properties:
data:
type: object
nullable: false
properties:
platforms:
type: array
items:
type: string
nullable: false
example: darwin/amd64
manifestRaw:
type: string
additionalProperties:
type: string
example: "apiVersion: krew.googlecontainertools.github.com/v1alpha2"
KubewardenPoliciesPackage:
allOf:
- $ref: "#/components/schemas/Package"
- type: object
properties:
data:
type: object
nullable: false
properties:
kubewarden/resources:
type: string
example: "Pod"
kubewarden/mutation:
type: string
example: "true"
KyvernoPolicy:
allOf:
- $ref: "#/components/schemas/Package"
- type: object
properties:
relative_path:
type: string
nullable: false
example: /general/allowedrepos
data:
type: object
nullable: false
properties:
policy:
type: string
nullable: false
example: >-
apiVersion: kyverno.io/v1
kind: ClusterPolicy
metadata:
name: add-certificates-volume
annotations:
policies.kyverno.io/title: Add Certificates as a Volume
policies.kyverno.io/category: Sample
policies.kyverno.io/subject: Pod,Volume
kyverno/subject:
type: string
example: "Pod, Volume"
kyverno/version:
type: string
example: "1.5.0"
kyverno/kubernetesVersion:
type: string
example: "1.21"
kyverno/category:
type: string
example: "OpenShift"
Link:
type: object
nullable: false
required:
- url
- name
properties:
url:
type: string
format: uri
nullable: false
example: "http://url"
name:
type: string
nullable: false
example: link
Maintainer:
type: object
nullable: false
required:
- name
- email
properties:
maintainer_id:
type: string
format: uuid
nullable: false
name:
type: string
nullable: false
example: maintainer1
email:
type: string
nullable: false
example: maintainer@email.com
Member:
type: object
required:
- alias
- confirmed
properties:
alias:
type: string
nullable: false
example: jdoe
first_name:
type: string
nullable: false
example: John
last_name:
type: string
nullable: false
example: Doe
confirmed:
type: boolean
nullable: false
example: true
OLMPackage:
allOf:
- $ref: "#/components/schemas/Package"
- type: object
properties:
crds:
type: array
nullable: false
items:
type: object
nullable: false
required:
- kind
- name
- version
- description
- displayName
properties:
kind:
type: string
nullable: false
name:
type: string
nullable: false
version:
type: string
nullable: false
description:
type: string
nullable: false
displayName:
type: string
nullable: false
crds_examples:
type: array
nullable: false
items:
type: object
additionalProperties: true
data:
type: object
required:
- isGlobalOperator
properties:
isGlobalOperator:
type: boolean
nullable: false
customResourcesDefinitions:
type: array
nullable: false
items:
type: object
required:
- kind
- name
- version
- description
- displayName
properties:
kind:
type: string
nullable: false
name:
type: string
nullable: false
version:
type: string
nullable: false
description:
type: string
nullable: false
displayName:
type: string
nullable: false
customResourcesDefinitionsExamples:
type: string
nullable: false
example: |-
[{"apiVersion": v1alpha
, "kind": CustomResource
, "spec": {
"replicas": 1
}
}}]
OPAPackage:
allOf:
- $ref: "#/components/schemas/Package"
- type: object
properties:
data:
type: object
properties:
policies:
type: object
additionalProperties:
type: string
example:
policy1: |
- macro: text
condition: (evt.num < 0)
TBActionPackage:
$ref: "#/components/schemas/Package"
TektonPipelinePackage:
allOf:
- $ref: "#/components/schemas/Package"
- type: object
properties:
data:
type: object
properties:
pipelines.minVersion:
type: string
example: 2.0.0
manifestRaw:
type: string
additionalProperties:
type: string
example: "apiVersion: tekton.dev/v1beta1"
tasks:
type: object
required:
- name
properties:
name:
type: string
nullable: false
example: task
run_after:
type: array
nullable: false
items:
type: string
example:
- task1
- task2
examples:
type: object
nullable: false
additionalProperties: true
platforms:
type: array
items:
type: string
nullable: false
example: darwin/amd64
TektonTaskPackage:
allOf:
- $ref: "#/components/schemas/Package"
- type: object
properties:
data:
type: object
properties:
pipelines.minVersion:
type: string
example: 2.0.0
manifestRaw:
type: string
additionalProperties:
type: string
example: "apiVersion: tekton.dev/v1beta1"
examples:
type: object
nullable: false
additionalProperties: true
platforms:
type: array
items:
type: string
nullable: false
example: darwin/amd64
Package:
allOf:
- $ref: "#/components/schemas/PackageBase"
- type: object
required:
- repository
- latest_version
- available_versions
- ts
- has_values_schema
- has_changelog
- contains_security_updates
- prerelease
properties:
repository:
$ref: "#/components/schemas/RepositorySummary"
is_operator:
type: boolean
nullable: false
example: false
latest_version:
type: string
nullable: false
example: 2.0.0
logo_url:
type: string
format: uri
nullable: false
example: "http://logo"
keywords:
type: array
nullable: false
items:
type: string
example:
- key1
- key2
home_url:
type: string
format: uri
nullable: false
example: "http://home"
readme:
type: string
nullable: false
example: "###Readme"
links:
type: array
nullable: false
items:
$ref: "#/components/schemas/Link"
available_versions:
type: array
nullable: false
items:
type: object
required:
- version
- contains_security_updates
- prerelease
- ts
properties:
version:
type: string
nullable: false
example: 1.0.0
contains_security_updates:
type: boolean
nullable: false
prerelease:
type: boolean
nullable: false
ts:
type: integer
nullable: false
example: 1618431211
maintainers:
type: array
nullable: false
items:
$ref: "#/components/schemas/Maintainer"
default_channel:
type: string
nullable: false
example: stable
channels:
type: array
nullable: false
items:
type: object
nullable: false
properties:
name:
type: string
nullable: false
example: stable
version:
type: string
nullable: false
example: 2.0.0
provider:
type: string
nullable: false
example: Provider 1
containers_images:
type: object
nullable: false
required:
- image
properties:
image:
type: string
nullable: false
example: "url.io/name/operator:v0.2.0"
name:
type: string
nullable: false
whitelisted:
type: boolean
nullable: false
example: false
ts:
type: integer
nullable: false
example: 1552082346
capabilities:
type: string
nullable: false
example: seamless upgrades
security_report_created_at:
type: integer
nullable: false
has_values_schema:
type: boolean
nullable: false
has_changelog:
type: boolean
nullable: false
content_url:
type: string
format: uri
nullable: false
contains_security_updates:
type: boolean
nullable: false
prerelease:
type: boolean
nullable: false
recommendations:
type: array
items:
type: object
properties:
url:
type: string
format: uri
example: https://artifacthub.io/packages/helm/artifact-hub/artifact-hub
nullable: false
nullable: false
stats:
type: object
nullable: false
required:
- subscriptions
- webhooks
properties:
subscriptions:
type: integer
nullable: false
webhooks:
type: integer
nullable: false
PackageBase:
type: object
required:
- package_id
- name
- normalized_name
- stars
- version
- ts
- repository
properties:
package_id:
type: string
format: uuid
nullable: false
name:
type: string
nullable: false
example: pkg1
normalized_name:
type: string
nullable: false
example: pkg1
logo_image_id:
type: string
nullable: false
example: 12345abcde
display_name:
type: string
nullable: false
example: Package 1
description:
type: string
nullable: false
example: This is a package sample
version:
type: string
nullable: false
example: 1.0.0
app_version:
type: string
nullable: false
example: 0.1.0
license:
type: string
nullable: false
example: MIT
deprecated:
type: boolean
nullable: false
example: false
signed:
type: boolean
nullable: false
example: false
signatures:
type: array
items:
type: string
enum:
- prov
- cosign
nullable: false
official:
type: boolean
nullable: false
ts:
type: integer
nullable: false
repository:
$ref: "#/components/schemas/RepositorySummary"
security_report_summary:
type: object
nullable: false
properties:
critical:
type: number
nullable: false
high:
type: number
nullable: false
medium:
type: number
nullable: false
low:
type: number
nullable: false
unknown:
type: number
nullable: false
all_containers_images_whitelisted:
type: boolean
nullable: false
example: false
production_organizations_count:
type: number
nullable: false
PackageSummary:
allOf:
- $ref: "#/components/schemas/PackageBase"
- type: object
properties:
stars:
type: integer
nullable: false
example: 3
Repository:
allOf:
- $ref: "#/components/schemas/RepositorySummary"
- type: object
required:
- digest
- last_tracking_ts
- last_scanning_ts
- disabled
properties:
digest:
type: string
nullable: false
last_tracking_ts:
type: integer
nullable: false
last_tracking_errors:
type: string
nullable: false
example: Error
last_scanning_ts:
type: integer
nullable: false
last_scanning_errors:
type: string
nullable: false
example: Error
disabled:
type: boolean
nullable: false
branch:
type: string
nullable: false
data:
type: object
nullable: false
properties:
tags:
type: array
items:
type: object
required:
- name
properties:
name:
type: string
nullable: false
example: stable
mutable:
type: boolean
nullable: false
RepositoryKind:
type: integer
enum:
- 0
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
description: |
Repository kind:
* `0` - Helm charts
* `1` - Falco rules
* `2` - OPA policies
* `3` - OLM operators
* `4` - Tinkerbell actions
* `5` - Krew kubectl plugins
* `6` - Helm plugins
* `7` - Tekton tasks
* `8` - KEDA scalers
* `9` - Core DNS plugins
* `10` - Keptn integrations
* `11` - Tekton pipelines
* `12` - Container images
* `13` - Kubewarden policies
* `14` - Gatekeeper policies
* `15` - Kyverno policies
* `16` - Knative client plugins
* `17` - Backstage plugins
RepositoryKindParam:
type: string
enum:
- helm
- opa
- falco
- olm
- tbaction
- krew
- helm-plugin
- tekton-task
- keda-scaler
- coredns
- keptn
- tekton-pipeline
- container
- kubewarden
- gatekeeper
- kyverno
- knative-client-plugin
- backstage
description: |
Repository kind name:
* `helm` - Helm charts
* `falco` - Falco rules
* `opa` - OPA policies
* `olm` - OLM operators
* `tbaction` - Tinkerbell actions
* `krew` - Krew kubectl plugins
* `helm-plugin` - Helm plugins
* `tekton` - Tekton tasks
* `keda-scaler` - KEDA scalers
* `coredns` - Core DNS plugins
* `keptn` - Keptn integrations
* `tekton-pipeline` - Tekton pipelines
* `container` - Container images
* `kubewarden` - Kubewarden policies
* `gatekeeper` - Gatekeeper policies
* `kyverno` - Kyverno policies
* `knative-client-plugin` - Knative client plugins
* `backstage` - Backstage plugins
RepositorySummary:
type: object
required:
- repository_id
- kind
- name
- url
- verified_publisher
- official
- scanner_disabled
properties:
repository_id:
type: string
format: uuid
kind:
$ref: "#/components/schemas/RepositoryKind"
name:
type: string
nullable: false
example: repo1
display_name:
type: string
nullable: false
example: Repository 1
url:
type: string
format: uri
nullable: false
example: "http://repourl"
verified_publisher:
type: boolean
nullable: false
official:
type: boolean
nullable: false
private:
type: boolean
nullable: false
scanner_disabled:
type: boolean
nullable: false
example: false
user_alias:
type: string
nullable: false
example: jdoe
organization_name:
type: string
nullable: false
example: org1
organization_display_name:
type: string
nullable: false
example: Organization 1
nullable: false
Organization:
allOf:
- $ref: "#/components/schemas/OrganizationSummary"
- type: object
required:
- members_count
- confirmed
properties:
members_count:
type: integer
nullable: false
confirmed:
type: boolean
nullable: false
OrganizationSummary:
type: object
required:
- name
properties:
name:
type: string
nullable: false
example: org1
display_name:
type: string
nullable: false
example: Organization 1
description:
type: string
nullable: false
example: description
home_url:
type: string
format: uri
nullable: false
example: "http://url"
logo_image_id:
type: string
nullable: false
example: 12345abcde
ProductionUsageOrganization:
type: object
required:
- name
properties:
name:
type: string
nullable: false
example: org1
display_name:
type: string
nullable: false
example: Organization 1
home_url:
type: string
format: uri
nullable: false
example: "http://url"
logo_image_id:
type: string
nullable: false
example: 12345abcde
used_in_production:
type: boolean
nullable: false
ResourceKindName:
type: string
enum:
- repositoryName
- repositoryURL
- organizationName
- userAlias
description: |
Resource kind name:
* `repositoryName` - Repository name
* `repositoryURL` - Repository URL
* `organizationName` - Organization name
* `userAlias` - User alias
User:
type: object
required:
- alias
- email
- password_set
properties:
alias:
type: string
nullable: false
example: jdoe
first_name:
type: string
nullable: false
example: John
last_name:
type: string
nullable: false
example: Doe
email:
type: string
format: email
nullable: false
example: jdoe@email.com
profile_image_id:
type: string
nullable: false
example: 12345abcde
password_set:
type: boolean
nullable: false
tfa_enabled:
type: boolean
nullable: false
Webhook:
allOf:
- $ref: "#/components/schemas/WebhookSummary"
- type: object
required:
- webhook_id
- packages
- last_notifications
properties:
webhook_id:
type: string
format: uuid
nullable: false
packages:
type: array
items:
$ref: "#/components/schemas/PackageSummary"
nullable: false
last_notifications:
type: array
items:
$ref: "#/components/schemas/WebhookNotification"
nullable: false
WebhookNotification:
type: object
required:
- notification_id
- created_at
- processed
- processed_at
properties:
notification_id:
type: string
format: uuid
nullable: false
created_at:
type: integer
nullable: false
processed:
type: boolean
nullable: false
processed_at:
type: integer
nullable: false
error:
type: string
nullable: false
example: error
WebhookSummary:
type: object
required:
- name
- url
- active
properties:
name:
type: string
nullable: false
example: webhook1
description:
type: string
nullable: false
example: description
url:
type: string
format: uri
nullable: false
example: "http://url"
secret:
type: string
nullable: false
example: 123abc
content_type:
type: string
nullable: false
example: application/json
template:
type: string
nullable: false
example: >-
{"text": "Package {{ .Package.Name }} version {{ .Package.Version }}
released! {{ .Package.URL }}"}
active:
type: boolean
nullable: false
event_kinds:
type: array
items:
$ref: "#/components/schemas/EventKindId"
nullable: false
WebhookSummaryWithPackages:
allOf:
- $ref: "#/components/schemas/WebhookSummary"
- type: object
required:
- name
- url
- active
- event_kinds
- packages
properties:
packages:
type: array
items:
type: object
required:
- package_id
properties:
package_id:
type: string
format: uuid
nullable: false
nullable: false
WebhookTest:
type: object
required:
- url
- event_kinds
properties:
url:
type: string
format: uri
nullable: false
example: "http://url"
content_type:
type: string
nullable: false
example: application/json
template:
type: string
nullable: false
example: >-
{"text": "Package {{ .Package.Name }} version {{ .Package.Version }}
released! {{ .Package.URL }}"}
event_kinds:
type: array
items:
$ref: "#/components/schemas/EventKindId"
nullable: false
example:
- 0
parameters:
RepositoriesListParam:
in: query
name: repo
schema:
type: array
items:
type: string
example:
- repo1
- repo2
required: false
description: List of repository names
LicensesListParam:
in: query
name: license
schema:
type: array
items:
type: string
# https://spdx.org/licenses/
example:
- MIT
- Apache-2.0
required: false
description: List of SPDX identifiers
CapabilitiesListParam:
in: query
name: capabilities
schema:
type: array
items:
type: string
example:
- basic install
- seamless upgrades
- full lifecycle
- deep insights
- auto pilot
required: false
description: List of operator capability levels
DeprecatedParam:
in: query
name: deprecated
schema:
type: boolean
default: false
required: false
description: Whether to include deprecated packages or not
OperatorsParam:
in: query
name: operators
schema:
type: boolean
required: false
description: Whether to get only operators
VerifiedPublisherParam:
in: query
name: verified_publisher
schema:
type: boolean
required: false
description: Whether to get only verified publisher
OfficialParam:
in: query
name: official
schema:
type: boolean
required: false
description: Whether to get only official repositories
SortParam:
in: query
name: sort
schema:
type: string
enum: ["relevance", "stars"]
example: relevance
required: false
description: Sort criteria
EventKindParam:
in: query
name: event_kind
required: true
schema:
$ref: "#/components/schemas/EventKindId"
description: Event kind
FacetsParam:
in: query
name: facets
schema:
type: boolean
default: false
required: true
description: Whether we should get facets or not
LimitParam:
in: query
name: limit
schema:
type: integer
default: 20
maximum: 60
required: false
description: The number of items to return
OffsetParam:
in: query
name: offset
schema:
type: integer
minimum: 0
default: 0
required: false
description: The number of items to skip before starting to collect the result set
OrgNameParam:
in: path
name: orgName
schema:
type: string
example: org1
required: true
description: Organization name
OrgNameToParam:
in: query
name: org
required: false
schema:
type: string
example: org1
description: The org to transfer or from claiming the repository
OrgsListParam:
in: query
name: org
schema:
type: array
items:
type: string
example:
- org1
- org2
required: false
description: List of organization names
PackageIDParam:
in: path
name: packageID
schema:
type: string
format: uuid
required: true
description: Package ID
PackageIDQueryParam:
in: query
name: packageID
schema:
type: string
format: uuid
required: true
description: Package ID
OptOutIDParam:
in: path
name: optOutID
schema:
type: string
format: uuid
required: true
description: Opt-out entry ID
RepositoryKindsListParam:
in: query
name: kind
schema:
type: array
items:
$ref: "#/components/schemas/RepositoryKind"
required: false
description: |
Repository kind:
* `0` - Helm charts
* `1` - Falco rules
* `2` - OPA policies
* `3` - OLM operators
* `4` - Tinkerbell actions
* `5` - Krew kubectl plugins
* `6` - Helm plugins
* `7` - Tekton tasks
* `8` - KEDA scalers
* `9` - Core DNS plugins
* `10` - Keptn integrations
* `11` - Tekton pipelines
* `12` - Container images
* `13` - Kubewarden policies
* `14` - Gatekeeper policies
* `15` - Kyverno policies
* `16` - Knative client plugins
* `17` - Backstage plugins
PackageNameParam:
in: path
name: packageName
schema:
type: string
example: pkg1
required: true
description: Package name
RepoKindParam:
in: path
name: repoKindParam
schema:
$ref: "#/components/schemas/RepositoryKindParam"
required: true
description: Package kind name
RepoNameQueryParam:
in: query
name: name
schema:
type: string
example: repo-name
required: false
description: Repository name
RepoNameParam:
in: path
name: repoName
schema:
type: string
example: repoName
required: true
description: Repository name
ResourceKindNameParam:
in: path
name: resourceKind
schema:
$ref: "#/components/schemas/ResourceKindName"
required: true
description: Resource kind name
TSQueryWebParam:
in: query
name: ts_query_web
schema:
type: string
example: database
required: false
description: Text search query (websearch format)
TSQueryParam:
in: query
name: ts_query
schema:
type: string
example: (automation | configuration)
required: false
description: >-
Text search query. Search terms can be combined using the syntax allowed
by the PostgreSQL websearch_to_tsquery function. See
https://www.postgresql.org/docs/current/textsearch-controls.html
(12.3.2. Parsing Queries) for more details.
UrlQueryParam:
in: query
name: url
schema:
type: string
example: https://repo2.com
required: false
description: Repository url
UsersListParam:
in: query
name: user
schema:
type: array
items:
type: string
example:
- user1
- user2
required: false
description: List of aliases
UserAliasParam:
in: path
name: userAlias
schema:
type: string
example: alias
required: true
description: User alias
VersionParam:
in: path
name: version
schema:
type: string
example: 1.0.0
required: true
description: Package version
WebhookIDParam:
in: path
name: webhookID
schema:
type: string
format: uuid
required: true
description: Webhook ID
responses:
BadRequest:
description: The request sent was not valid
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
Created:
description: The request has succeeded and has led to the creation of a resource
GoneError:
description: The code provided has expired
Forbidden:
description: The user does not have permission to perform the requested operation
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
InternalServerError:
description: >-
The server encountered an unexpected condition that prevented it from
fulfilling the request
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
NoContent:
description: "The request has succeeded, no content returned"
NotFoundResponse:
description: The requested resource was not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
TooManyRequests:
description: The user has sent too many requests in a given amount of time
UnauthorizedError:
description: Valid authentication credentials not provided
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
requestBodies:
SubscriptionBody:
description: Subscription request body
required: true
content:
application/json:
schema:
type: object
properties:
package_id:
type: string
format: uuid
event_kind:
$ref: "#/components/schemas/EventKindId"
required:
- package_id
- event_kind
OptOutBody:
description: Opt-out entry request body
required: true
content:
application/json:
schema:
type: object
properties:
repository_id:
type: string
format: uuid
event_kind:
$ref: "#/components/schemas/EventKindId"
required:
- repository_id
- event_kind
RepositoryBody:
description: Repository request body
required: true
content:
application/json:
schema:
type: object
properties:
kind:
$ref: "#/components/schemas/RepositoryKind"
name:
type: string
example: repo1
display_name:
type: string
example: Repo 1
url:
type: string
example: http://repo-url.com
WebhookBody:
description: Webhook body
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/WebhookSummaryWithPackages"