Chapter 11. organization
Manage organizations, members and OAuth applications.
11.1. createOrganization
Create a new organization.
POST /api/v1/organization/
Authorizations: oauth2_implicit (user:admin)
Request body schema (application/json)
Description of a new organization.
Name | Description | Schema |
---|---|---|
name | Organization username | string |
email | Organization contact email | string |
recaptcha_response | The (may be disabled) recaptcha response code for verification | string |
Responses
HTTP Code | Description | Schema |
---|---|---|
201 | Successful creation | |
400 | Bad Request | |
401 | Session required | |
403 | Unauthorized access | |
404 | Not found |
Example command
$ 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/"
11.2. validateProxyCacheConfig
POST /api/v1/organization/{orgname}/validateproxycache
Authorizations:
Path parameters
Type | Name | Description | Schema |
---|---|---|---|
path |
orgname | string |
Request body schema (application/json)
Proxy cache configuration for an organization
Name | Description | Schema |
---|---|---|
upstream_registry | Name of the upstream registry that is to be cached | string |
Responses
HTTP Code | Description | Schema |
---|---|---|
202 | Successful creation | |
400 | Bad Request | |
401 | Session required | |
403 | Unauthorized access | |
404 | Not found |
Example command
$ 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>" }'
11.3. getOrganizationCollaborators
List outside collaborators of the specified organization.
GET /api/v1/organization/{orgname}/collaborators
Authorizations: oauth2_implicit (org:admin)
Path parameters
Type | Name | Description | Schema |
---|---|---|---|
path |
orgname | The name of the organization | string |
Responses
HTTP Code | Description | Schema |
---|---|---|
200 | Successful invocation | |
400 | Bad Request | |
401 | Session required | |
403 | Unauthorized access | |
404 | Not found |
Example command
$ curl -X GET "https://<quay-server.example.com>/api/v1/organization/{orgname}/collaborators" \ -H "Authorization: Bearer <access_token>"
11.4. getOrganizationApplication
Retrieves the application with the specified client_id under the specified organization.
GET /api/v1/organization/{orgname}/applications/{client_id}
Authorizations: oauth2_implicit (org:admin)
Path parameters
Type | Name | Description | Schema |
---|---|---|---|
path |
client_id | The OAuth client ID | string |
path |
orgname | The name of the organization | string |
Responses
HTTP Code | Description | Schema |
---|---|---|
200 | Successful invocation | |
400 | Bad Request | |
401 | Session required | |
403 | Unauthorized access | |
404 | Not found |
Example command
$ curl -X GET "https://<quay-server.example.com>/api/v1/organization/<orgname>/applications/<client_id>" \ -H "Authorization: Bearer <access_token>"
11.5. updateOrganizationApplication
Updates an application under this organization.
PUT /api/v1/organization/{orgname}/applications/{client_id}
Authorizations: oauth2_implicit (org:admin)
Path parameters
Type | Name | Description | Schema |
---|---|---|---|
path |
client_id | The OAuth client ID | string |
path |
orgname | The name of the organization | string |
Request body schema (application/json)
Description of an updated application.
Name | Description | Schema |
---|---|---|
name | The name of the application | string |
redirect_uri | The URI for the application’s OAuth redirect | string |
application_uri | The URI for the application’s homepage | string |
description | The human-readable description for the application | string |
avatar_email | The e-mail address of the avatar to use for the application | string |
Responses
HTTP Code | Description | Schema |
---|---|---|
200 | Successful invocation | |
400 | Bad Request | |
401 | Session required | |
403 | Unauthorized access | |
404 | Not found |
Example command
$ 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" }'
11.6. deleteOrganizationApplication
Deletes the application under this organization.
DELETE /api/v1/organization/{orgname}/applications/{client_id}
Authorizations: oauth2_implicit (org:admin)
Path parameters
Type | Name | Description | Schema |
---|---|---|---|
path |
client_id | The OAuth client ID | string |
path |
orgname | The name of the organization | string |
Responses
HTTP Code | Description | Schema |
---|---|---|
204 | Deleted | |
400 | Bad Request | |
401 | Session required | |
403 | Unauthorized access | |
404 | Not found |
Example command
$ curl -X DELETE "https://<quay-server.example.com>/api/v1/organization/{orgname}/applications/{client_id}" \ -H "Authorization: Bearer <access_token>"
11.7. createOrganizationApplication
Creates a new application under this organization.
POST /api/v1/organization/{orgname}/applications
Authorizations: oauth2_implicit (org:admin)
Path parameters
Type | Name | Description | Schema |
---|---|---|---|
path |
orgname | The name of the organization | string |
Request body schema (application/json)
Description of a new organization application.
Name | Description | Schema |
---|---|---|
name | The name of the application | string |
redirect_uri | The URI for the application’s OAuth redirect | string |
application_uri | The URI for the application’s homepage | string |
description | The human-readable description for the application | string |
avatar_email | The e-mail address of the avatar to use for the application | string |
Responses
HTTP Code | Description | Schema |
---|---|---|
201 | Successful creation | |
400 | Bad Request | |
401 | Session required | |
403 | Unauthorized access | |
404 | Not found |
Example command
$ 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>" }'
11.8. getOrganizationApplications
List the applications for the specified organization.
GET /api/v1/organization/{orgname}/applications
Authorizations: oauth2_implicit (org:admin)
Path parameters
Type | Name | Description | Schema |
---|---|---|---|
path |
orgname | The name of the organization | string |
Responses
HTTP Code | Description | Schema |
---|---|---|
200 | Successful invocation | |
400 | Bad Request | |
401 | Session required | |
403 | Unauthorized access | |
404 | Not found |
Example command
$ curl -X GET "https://<quay-server.example.com>/api/v1/organization/<orgname>/applications" \ -H "Authorization: Bearer <access_token>"
11.9. getProxyCacheConfig
Retrieves the proxy cache configuration of the organization.
GET /api/v1/organization/{orgname}/proxycache
Authorizations:
Path parameters
Type | Name | Description | Schema |
---|---|---|---|
path |
orgname | The name of the organization | string |
Responses
HTTP Code | Description | Schema |
---|---|---|
200 | Successful invocation | |
400 | Bad Request | |
401 | Session required | |
403 | Unauthorized access | |
404 | Not found |
Example command
$ curl -X GET "https://<quay-server.example.com>/api/v1/organization/{orgname}/proxycache" \ -H "Authorization: Bearer <access_token>"
11.10. deleteProxyCacheConfig
Delete proxy cache configuration for the organization.
DELETE /api/v1/organization/{orgname}/proxycache
Authorizations:
Path parameters
Type | Name | Description | Schema |
---|---|---|---|
path |
orgname | The name of the organization | string |
Responses
HTTP Code | Description | Schema |
---|---|---|
204 | Deleted | |
400 | Bad Request | |
401 | Session required | |
403 | Unauthorized access | |
404 | Not found |
Example command
$ curl -X DELETE "https://<quay-server.example.com>/api/v1/organization/{orgname}/proxycache" \ -H "Authorization: Bearer <access_token>"
11.11. createProxyCacheConfig
Creates proxy cache configuration for the organization.
POST /api/v1/organization/{orgname}/proxycache
Authorizations:
Path parameters
Type | Name | Description | Schema |
---|---|---|---|
path |
orgname | The name of the organization | string |
Request body schema (application/json)
Proxy cache configuration for an organization
Name | Description | Schema |
---|---|---|
upstream_registry | Name of the upstream registry that is to be cached | string |
Responses
HTTP Code | Description | Schema |
---|---|---|
201 | Successful creation | |
400 | Bad Request | |
401 | Session required | |
403 | Unauthorized access | |
404 | Not found |
Example command
$ 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>" }'
11.12. getOrganizationMember
Retrieves the details of a member of the organization.
GET /api/v1/organization/{orgname}/members/{membername}
Authorizations: oauth2_implicit (org:admin)
Path parameters
Type | Name | Description | Schema |
---|---|---|---|
path |
membername | The username of the organization member | string |
path |
orgname | The name of the organization | string |
Responses
HTTP Code | Description | Schema |
---|---|---|
200 | Successful invocation | |
400 | Bad Request | |
401 | Session required | |
403 | Unauthorized access | |
404 | Not found |
Example command
$ curl -X GET "https://<quay-server.example.com>/api/v1/organization/<orgname>/members/<membername>" \ -H "Authorization: Bearer <access_token>"
11.13. removeOrganizationMember
Removes a member from an organization, revoking all its repository priviledges and removing it from all teams in the organization.
DELETE /api/v1/organization/{orgname}/members/{membername}
Authorizations: oauth2_implicit (org:admin)
Path parameters
Type | Name | Description | Schema |
---|---|---|---|
path |
membername | The username of the organization member | string |
path |
orgname | The name of the organization | string |
Responses
HTTP Code | Description | Schema |
---|---|---|
204 | Deleted | |
400 | Bad Request | |
401 | Session required | |
403 | Unauthorized access | |
404 | Not found |
Example command
$ curl -X DELETE "https://<quay-server.example.com>/api/v1/organization/<orgname>/members/<membername>" \ -H "Authorization: Bearer <access_token>"
11.14. getOrganizationMembers
List the human members of the specified organization.
GET /api/v1/organization/{orgname}/members
Authorizations: oauth2_implicit (org:admin)
Path parameters
Type | Name | Description | Schema |
---|---|---|---|
path |
orgname | The name of the organization | string |
Responses
HTTP Code | Description | Schema |
---|---|---|
200 | Successful invocation | |
400 | Bad Request | |
401 | Session required | |
403 | Unauthorized access | |
404 | Not found |
Example command
$ curl -X GET "https://<quay-server.example.com>/api/v1/organization/<orgname>/members" \ -H "Authorization: Bearer <access_token>"
11.15. getOrganization
Get the details for the specified organization.
GET /api/v1/organization/{orgname}
Authorizations:
Path parameters
Type | Name | Description | Schema |
---|---|---|---|
path |
orgname | The name of the organization | string |
Responses
HTTP Code | Description | Schema |
---|---|---|
200 | Successful invocation | |
400 | Bad Request | |
401 | Session required | |
403 | Unauthorized access | |
404 | Not found |
Example command
$ curl -X GET \ -H "Authorization: Bearer <bearer_token>" \ "<quay-server.example.com>/api/v1/organization/<organization_name>"
11.16. changeOrganizationDetails
Change the details for the specified organization.
PUT /api/v1/organization/{orgname}
Authorizations: oauth2_implicit (org:admin)
Path parameters
Type | Name | Description | Schema |
---|---|---|---|
path |
orgname | The name of the organization | string |
Request body schema (application/json)
Description of updates for an existing organization
Name | Description | Schema |
---|---|---|
email | Organization contact email | string |
invoice_email | Whether the organization desires to receive emails for invoices | boolean |
invoice_email_address | The email address at which to receive invoices | |
tag_expiration_s | The number of seconds for tag expiration | integer |
Responses
HTTP Code | Description | Schema |
---|---|---|
200 | Successful invocation | |
400 | Bad Request | |
401 | Session required | |
403 | Unauthorized access | |
404 | Not found |
Example command
$ curl -X PUT \ -H "Authorization: Bearer <bearer_token>" \ "<quay-server.example.com>/api/v1/organization/<organization_name>"
11.17. deleteAdminedOrganization
Deletes the specified organization.
DELETE /api/v1/organization/{orgname}
Authorizations: oauth2_implicit (org:admin)
Path parameters
Type | Name | Description | Schema |
---|---|---|---|
path |
orgname | The name of the organization | string |
Responses
HTTP Code | Description | Schema |
---|---|---|
204 | Deleted | |
400 | Bad Request | |
401 | Session required | |
403 | Unauthorized access | |
404 | Not found |
Example command
$ curl -X GET \ -H "Authorization: Bearer <bearer_token>" \ "<quay-server.example.com>/api/v1/organization/<organization_name>"
11.18. getApplicationInformation
Get information on the specified application.
GET /api/v1/app/{client_id}
Authorizations:
Path parameters
Type | Name | Description | Schema |
---|---|---|---|
path |
client_id | The OAuth client ID | string |
Responses
HTTP Code | Description | Schema |
---|---|---|
200 | Successful invocation | |
400 | Bad Request | |
401 | Session required | |
403 | Unauthorized access | |
404 | Not found |
Example command
$ curl -X GET "https://<quay-server.example.com>/api/v1/app/<client_id>" \ -H "Authorization: Bearer <access_token>"