Chapter 15. organization
Manage organizations, members and OAuth applications.
15.1. createOrganization Copy linkLink copied to clipboard!
Create a new organization.
15.1.1. POST /api/v1/organization/ Copy linkLink copied to clipboard!
Authorizations: oauth2_implicit (user:admin)
15.1.2. Request body schema (application/json) Copy linkLink copied to clipboard!
Description of a new organization.
| Name | Description | Schema |
|---|---|---|
| name required | Organization username | string |
| optional | Organization contact email | string |
| recaptcha_response optional | The (may be disabled) recaptcha response code for verification | string |
15.1.3. Responses Copy linkLink copied to clipboard!
15.1.4. Example command Copy linkLink copied to clipboard!
$ curl -X POST -H "Authorization: Bearer <bearer_token>" -H "Content-Type: application/json" -d '{
"name": "<new_organization_name>"
}' "https://<quay-server.example.com>/api/v1/organization/"
15.2. validateProxyCacheConfig Copy linkLink copied to clipboard!
Validate Proxy Cache Config.
15.2.1. POST /api/v1/organization/{orgname}/validateproxycache Copy linkLink copied to clipboard!
Authorizations:
15.2.2. Path parameters Copy linkLink copied to clipboard!
| Type | Name | Description | Schema |
|---|---|---|---|
| path | orgname required | string |
15.2.3. Request body schema (application/json) Copy linkLink copied to clipboard!
Proxy cache configuration for an organization
| Name | Description | Schema |
|---|---|---|
| upstream_registry required | Name of the upstream registry that is to be cached | string |
15.2.4. Responses Copy linkLink copied to clipboard!
15.2.5. Example command Copy linkLink copied to clipboard!
$ curl -X POST "https://<quay-server.example.com>/api/v1/organization/{orgname}/validateproxycache" \
-H "Authorization: Bearer <access_token>" \
-H "Content-Type: application/json" \
-d '{
"upstream_registry": "<upstream_registry>"
"upstream_registry_username": "your_robot_account_username"
"upstream_registry_password": "your_robot_account_password"
}'
15.3. getOrganizationCollaborators Copy linkLink copied to clipboard!
List outside collaborators of the specified organization.
15.3.1. GET /api/v1/organization/{orgname}/collaborators Copy linkLink copied to clipboard!
Authorizations: oauth2_implicit (org:admin)
15.3.2. Path parameters Copy linkLink copied to clipboard!
| Type | Name | Description | Schema |
|---|---|---|---|
| path | orgname required | The name of the organization | string |
15.3.3. Responses Copy linkLink copied to clipboard!
15.3.4. Example command Copy linkLink copied to clipboard!
$ curl -X GET "https://<quay-server.example.com>/api/v1/organization/{orgname}/collaborators" \
-H "Authorization: Bearer <access_token>"
15.4. getOrganizationApplication Copy linkLink copied to clipboard!
Retrieves the application with the specified client_id under the specified organization.
15.4.1. GET /api/v1/organization/{orgname}/applications/{client_id} Copy linkLink copied to clipboard!
Authorizations: oauth2_implicit (org:admin)
15.4.2. Path parameters Copy linkLink copied to clipboard!
| Type | Name | Description | Schema |
|---|---|---|---|
| path | client_id required | The OAuth client ID | string |
| path | orgname required | The name of the organization | string |
15.4.3. Responses Copy linkLink copied to clipboard!
15.4.4. Example command Copy linkLink copied to clipboard!
$ curl -X GET "https://<quay-server.example.com>/api/v1/organization/<orgname>/applications/<client_id>" \
-H "Authorization: Bearer <access_token>"
15.5. updateOrganizationApplication Copy linkLink copied to clipboard!
Updates an application under this organization.
15.5.1. PUT /api/v1/organization/{orgname}/applications/{client_id} Copy linkLink copied to clipboard!
Authorizations: oauth2_implicit (org:admin)
15.5.2. Path parameters Copy linkLink copied to clipboard!
| Type | Name | Description | Schema |
|---|---|---|---|
| path | client_id required | The OAuth client ID | string |
| path | orgname required | The name of the organization | string |
15.5.3. Request body schema (application/json) Copy linkLink copied to clipboard!
Description of an updated application.
| Name | Description | Schema |
|---|---|---|
| name required | The name of the application | string |
| redirect_uri required | The URI for the application’s OAuth redirect | string |
| application_uri required | The URI for the application’s homepage | string |
| description optional | The human-readable description for the application | string |
| avatar_email optional | The e-mail address of the avatar to use for the application | string |
15.5.4. Responses Copy linkLink copied to clipboard!
15.5.5. Example command Copy linkLink copied to clipboard!
$ curl -X PUT "https://quay-server.example.com/api/v1/organization/test/applications/12345" \
-H "Authorization: Bearer <access_token>" \
-H "Content-Type: application/json" \
-d '{
"name": "Updated Application Name",
"redirect_uri": "https://example.com/oauth/callback",
"application_uri": "https://example.com",
"description": "Updated description for the application",
"avatar_email": "avatar@example.com"
}'
15.6. deleteOrganizationApplication Copy linkLink copied to clipboard!
Deletes the application under this organization.
15.6.1. DELETE /api/v1/organization/{orgname}/applications/{client_id} Copy linkLink copied to clipboard!
Authorizations: oauth2_implicit (org:admin)
15.6.2. Path parameters Copy linkLink copied to clipboard!
| Type | Name | Description | Schema |
|---|---|---|---|
| path | client_id required | The OAuth client ID | string |
| path | orgname required | The name of the organization | string |
15.6.3. Responses Copy linkLink copied to clipboard!
15.6.4. Example command Copy linkLink copied to clipboard!
$ curl -X DELETE "https://<quay-server.example.com>/api/v1/organization/{orgname}/applications/{client_id}" \
-H "Authorization: Bearer <access_token>"
15.7. createOrganizationApplication Copy linkLink copied to clipboard!
Creates a new application under this organization.
15.7.1. POST /api/v1/organization/{orgname}/applications Copy linkLink copied to clipboard!
Authorizations: oauth2_implicit (org:admin)
15.7.2. Path parameters Copy linkLink copied to clipboard!
| Type | Name | Description | Schema |
|---|---|---|---|
| path | orgname required | The name of the organization | string |
15.7.3. Request body schema (application/json) Copy linkLink copied to clipboard!
Description of a new organization application.
| Name | Description | Schema |
|---|---|---|
| name required | The name of the application | string |
| redirect_uri optional | The URI for the application’s OAuth redirect | string |
| application_uri optional | The URI for the application’s homepage | string |
| description optional | The human-readable description for the application | string |
| avatar_email optional | The e-mail address of the avatar to use for the application | string |
15.7.4. Responses Copy linkLink copied to clipboard!
15.7.5. Example command Copy linkLink copied to clipboard!
$ curl -X POST "https://<quay-server.example.com>/api/v1/organization/<orgname>/applications" \
-H "Authorization: Bearer <access_token>" \
-H "Content-Type: application/json" \
-d '{
"name": "<app_name>",
"redirect_uri": "<redirect_uri>",
"application_uri": "<application_uri>",
"description": "<app_description>",
"avatar_email": "<avatar_email>"
}'
15.8. createOrganizationApplicationToken Copy linkLink copied to clipboard!
Create a new OAuth API token for the specified organization application.
15.8.1. POST /api/v1/organization/{orgname}/applications/{client_id}/tokens Copy linkLink copied to clipboard!
Create a scoped OAuth API token for automation workflows. The bearer token secret is returned only in this response.
Authorizations: oauth2_implicit (org:admin)
15.8.2. Path parameters Copy linkLink copied to clipboard!
| Type | Name | Description | Schema |
|---|---|---|---|
| path | orgname required | The name of the organization | string |
| path | client_id required | The OAuth client ID of the organization application | string |
15.8.3. Request body schema (application/json) Copy linkLink copied to clipboard!
| Name | Description | Schema |
|---|---|---|
| name required | User-facing token name. Leading and trailing whitespace is trimmed before storage. | string |
| scope required |
Space- or comma-separated OAuth scope string, for example | string |
| expiration optional | Token lifetime in seconds. Defaults to approximately 10 years when omitted. | integer |
Example request body
{
"name": "ci-job-token",
"scope": "repo:read,repo:write",
"expiration": 2592000
}
15.8.4. Responses Copy linkLink copied to clipboard!
15.8.5. Example command Copy linkLink copied to clipboard!
$ curl -X POST "https://<quay-server.example.com>/api/v1/organization/<orgname>/applications/<client_id>/tokens" \
-H "Authorization: Bearer <access_token>" \
-H "Content-Type: application/json" \
-d '{
"name": "ci-job-token",
"scope": "repo:read repo:write",
"expiration": 2592000
}'
Example response
{
"uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"name": "ci-job-token",
"scope": "repo:read repo:write",
"expires_at": "2026-08-14T10:00:00Z",
"created": "2026-07-15T10:00:00Z",
"created_by": "quayadmin",
"last_accessed": null,
"token": "string..."
}
15.9. listOrganizationApplicationTokens Copy linkLink copied to clipboard!
List OAuth API tokens for the specified organization application.
15.9.1. GET /api/v1/organization/{orgname}/applications/{client_id}/tokens Copy linkLink copied to clipboard!
Return token metadata for the specified application. The bearer token secret is not included in list responses.
Authorizations: oauth2_implicit (org:admin)
15.9.2. Path parameters Copy linkLink copied to clipboard!
| Type | Name | Description | Schema |
|---|---|---|---|
| path | orgname required | The name of the organization | string |
| path | client_id required | The OAuth client ID of the organization application | string |
15.9.3. Query parameters Copy linkLink copied to clipboard!
| Name | Description | Schema |
|---|---|---|
| next_page optional | Pagination token from a previous response | string |
15.9.4. Responses Copy linkLink copied to clipboard!
15.9.5. Example command Copy linkLink copied to clipboard!
$ curl -X GET "https://<quay-server.example.com>/api/v1/organization/<orgname>/applications/<client_id>/tokens" \
-H "Authorization: Bearer <access_token>"
Example response
{
"tokens": [
{
"uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"name": "ci-job-token",
"scope": "repo:read repo:write",
"expires_at": "2026-08-14T10:00:00Z",
"created": "2026-07-15T10:00:00Z",
"created_by": "quayadmin",
"last_accessed": null
}
],
"next_page": null
}
15.10. deleteOrganizationApplicationToken Copy linkLink copied to clipboard!
Revoke a specific OAuth API token for the specified organization application.
15.10.1. DELETE /api/v1/organization/{orgname}/applications/{client_id}/tokens/{token_uuid} Copy linkLink copied to clipboard!
Authorizations: oauth2_implicit (org:admin)
15.10.2. Path parameters Copy linkLink copied to clipboard!
| Type | Name | Description | Schema |
|---|---|---|---|
| path | orgname required | The name of the organization | string |
| path | client_id required | The OAuth client ID of the organization application | string |
| path | token_uuid required | The UUID of the OAuth API token | string |
15.10.3. Responses Copy linkLink copied to clipboard!
15.10.4. Example command Copy linkLink copied to clipboard!
$ curl -X DELETE "https://<quay-server.example.com>/api/v1/organization/<orgname>/applications/<client_id>/tokens/<token_uuid>" \
-H "Authorization: Bearer <access_token>"
15.11. getOrganizationApplications Copy linkLink copied to clipboard!
List the applications for the specified organization.
15.11.1. GET /api/v1/organization/{orgname}/applications Copy linkLink copied to clipboard!
Authorizations: oauth2_implicit (org:admin)
15.11.2. Path parameters Copy linkLink copied to clipboard!
| Type | Name | Description | Schema |
|---|---|---|---|
| path | orgname required | The name of the organization | string |
15.11.3. Responses Copy linkLink copied to clipboard!
15.11.4. Example command Copy linkLink copied to clipboard!
$ curl -X GET "https://<quay-server.example.com>/api/v1/organization/<orgname>/applications" \
-H "Authorization: Bearer <access_token>"
15.12. getProxyCacheConfig Copy linkLink copied to clipboard!
Retrieves the proxy cache configuration of the organization.
15.12.1. GET /api/v1/organization/{orgname}/proxycache Copy linkLink copied to clipboard!
Authorizations:
15.12.2. Path parameters Copy linkLink copied to clipboard!
| Type | Name | Description | Schema |
|---|---|---|---|
| path | orgname required | The name of the organization | string |
15.12.3. Responses Copy linkLink copied to clipboard!
15.12.4. Example command Copy linkLink copied to clipboard!
$ curl -X GET "https://<quay-server.example.com>/api/v1/organization/{orgname}/proxycache" \
-H "Authorization: Bearer <access_token>"
15.13. deleteProxyCacheConfig Copy linkLink copied to clipboard!
Delete proxy cache configuration for the organization.
15.13.1. DELETE /api/v1/organization/{orgname}/proxycache Copy linkLink copied to clipboard!
Authorizations:
15.13.2. Path parameters Copy linkLink copied to clipboard!
| Type | Name | Description | Schema |
|---|---|---|---|
| path | orgname required | The name of the organization | string |
15.13.3. Responses Copy linkLink copied to clipboard!
15.13.4. Example command Copy linkLink copied to clipboard!
$ curl -X DELETE "https://<quay-server.example.com>/api/v1/organization/{orgname}/proxycache" \
-H "Authorization: Bearer <access_token>"
15.14. createProxyCacheConfig Copy linkLink copied to clipboard!
Creates proxy cache configuration for the organization.
15.14.1. POST /api/v1/organization/{orgname}/proxycache Copy linkLink copied to clipboard!
Authorizations:
15.14.2. Path parameters Copy linkLink copied to clipboard!
| Type | Name | Description | Schema |
|---|---|---|---|
| path | orgname required | The name of the organization | string |
15.14.3. Request body schema (application/json) Copy linkLink copied to clipboard!
Proxy cache configuration for an organization
| Name | Description | Schema |
|---|---|---|
| upstream_registry required | Name of the upstream registry that is to be cached | string |
15.14.4. Responses Copy linkLink copied to clipboard!
15.14.5. Example command Copy linkLink copied to clipboard!
$ curl -X POST "https://<quay-server.example.com>/api/v1/organization/<orgname>/proxycache" \
-H "Authorization: Bearer <access_token>" \
-H "Content-Type: application/json" \
-d '{
"upstream_registry": "<upstream_registry>"
"upstream_registry_username": "your_robot_account_username"
"upstream_registry_password": "your_robot_account_password"
}'
15.15. getOrganizationMember Copy linkLink copied to clipboard!
Retrieves the details of a member of the organization.
15.15.1. GET /api/v1/organization/{orgname}/members/{membername} Copy linkLink copied to clipboard!
Authorizations: oauth2_implicit (org:admin)
15.15.2. Path parameters Copy linkLink copied to clipboard!
| Type | Name | Description | Schema |
|---|---|---|---|
| path | membername required | The username of the organization member | string |
| path | orgname required | The name of the organization | string |
15.15.3. Responses Copy linkLink copied to clipboard!
15.15.4. Example command Copy linkLink copied to clipboard!
$ curl -X GET "https://<quay-server.example.com>/api/v1/organization/<orgname>/members/<membername>" \
-H "Authorization: Bearer <access_token>"
15.16. removeOrganizationMember Copy linkLink copied to clipboard!
Removes a member from an organization, revoking all its repository priviledges and removing it from all teams in the organization.
15.16.1. DELETE /api/v1/organization/{orgname}/members/{membername} Copy linkLink copied to clipboard!
Authorizations: oauth2_implicit (org:admin)
15.16.2. Path parameters Copy linkLink copied to clipboard!
| Type | Name | Description | Schema |
|---|---|---|---|
| path | membername required | The username of the organization member | string |
| path | orgname required | The name of the organization | string |
15.16.3. Responses Copy linkLink copied to clipboard!
15.16.4. Example command Copy linkLink copied to clipboard!
$ curl -X DELETE "https://<quay-server.example.com>/api/v1/organization/<orgname>/members/<membername>" \
-H "Authorization: Bearer <access_token>"
15.17. getOrganizationMembers Copy linkLink copied to clipboard!
List the human members of the specified organization.
15.17.1. GET /api/v1/organization/{orgname}/members Copy linkLink copied to clipboard!
Authorizations: oauth2_implicit (org:admin)
15.17.2. Path parameters Copy linkLink copied to clipboard!
| Type | Name | Description | Schema |
|---|---|---|---|
| path | orgname required | The name of the organization | string |
15.17.3. Responses Copy linkLink copied to clipboard!
15.17.4. Example command Copy linkLink copied to clipboard!
$ curl -X GET "https://<quay-server.example.com>/api/v1/organization/<orgname>/members" \
-H "Authorization: Bearer <access_token>"
15.18. getOrganization Copy linkLink copied to clipboard!
Get the details for the specified organization.
15.18.1. GET /api/v1/organization/{orgname} Copy linkLink copied to clipboard!
Authorizations:
15.18.2. Path parameters Copy linkLink copied to clipboard!
| Type | Name | Description | Schema |
|---|---|---|---|
| path | orgname required | The name of the organization | string |
15.18.3. Responses Copy linkLink copied to clipboard!
15.18.4. Example command Copy linkLink copied to clipboard!
$ curl -X GET \
-H "Authorization: Bearer <bearer_token>" \
"<quay-server.example.com>/api/v1/organization/<organization_name>"
15.19. changeOrganizationDetails Copy linkLink copied to clipboard!
Change the details for the specified organization.
15.19.1. PUT /api/v1/organization/{orgname} Copy linkLink copied to clipboard!
Authorizations: oauth2_implicit (org:admin)
15.19.2. Path parameters Copy linkLink copied to clipboard!
| Type | Name | Description | Schema |
|---|---|---|---|
| path | orgname required | The name of the organization | string |
15.19.3. Request body schema (application/json) Copy linkLink copied to clipboard!
Description of updates for an existing organization
| Name | Description | Schema |
|---|---|---|
| name optional | The new name for the organization | string |
15.19.4. Responses Copy linkLink copied to clipboard!
15.19.5. Example command Copy linkLink copied to clipboard!
$ curl -X PUT \
-H "Authorization: Bearer <bearer_token>" \
"<quay-server.example.com>/api/v1/organization/<organization_name>"
15.20. deleteAdminedOrganization Copy linkLink copied to clipboard!
Deletes the specified organization.
15.20.1. DELETE /api/v1/organization/{orgname} Copy linkLink copied to clipboard!
Authorizations: oauth2_implicit (org:admin)
15.20.2. Path parameters Copy linkLink copied to clipboard!
| Type | Name | Description | Schema |
|---|---|---|---|
| path | orgname required | The name of the organization | string |
15.20.3. Responses Copy linkLink copied to clipboard!
15.20.4. Example command Copy linkLink copied to clipboard!
$ curl -X GET \
-H "Authorization: Bearer <bearer_token>" \
"<quay-server.example.com>/api/v1/organization/<organization_name>"
15.21. getApplicationInformation Copy linkLink copied to clipboard!
Get information on the specified application.
15.21.1. GET /api/v1/app/{client_id} Copy linkLink copied to clipboard!
Authorizations:
15.21.2. Path parameters Copy linkLink copied to clipboard!
| Type | Name | Description | Schema |
|---|---|---|---|
| path | client_id required | The OAuth client ID | string |
15.21.3. Responses Copy linkLink copied to clipboard!
15.21.4. Example command Copy linkLink copied to clipboard!
$ curl -X GET "https://<quay-server.example.com>/api/v1/app/<client_id>" \
-H "Authorization: Bearer <access_token>"