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.

NameDescriptionSchema

name
required

Organization username

string

email
optional

Organization contact email

string

recaptcha_response
optional

The (may be disabled) recaptcha response code for verification

string

Responses

HTTP CodeDescriptionSchema

201

Successful creation

 

400

Bad Request

ApiError

401

Session required

ApiError

403

Unauthorized access

ApiError

404

Not found

ApiError

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

TypeNameDescriptionSchema

path

orgname
required

 

string

Request body schema (application/json)

Proxy cache configuration for an organization

NameDescriptionSchema

upstream_registry
required

Name of the upstream registry that is to be cached

string

Responses

HTTP CodeDescriptionSchema

202

Successful creation

 

400

Bad Request

ApiError

401

Session required

ApiError

403

Unauthorized access

ApiError

404

Not found

ApiError

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

TypeNameDescriptionSchema

path

orgname
required

The name of the organization

string

Responses

HTTP CodeDescriptionSchema

200

Successful invocation

 

400

Bad Request

ApiError

401

Session required

ApiError

403

Unauthorized access

ApiError

404

Not found

ApiError

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

TypeNameDescriptionSchema

path

client_id
required

The OAuth client ID

string

path

orgname
required

The name of the organization

string

Responses

HTTP CodeDescriptionSchema

200

Successful invocation

 

400

Bad Request

ApiError

401

Session required

ApiError

403

Unauthorized access

ApiError

404

Not found

ApiError

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

TypeNameDescriptionSchema

path

client_id
required

The OAuth client ID

string

path

orgname
required

The name of the organization

string

Request body schema (application/json)

Description of an updated application.

NameDescriptionSchema

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

Responses

HTTP CodeDescriptionSchema

200

Successful invocation

 

400

Bad Request

ApiError

401

Session required

ApiError

403

Unauthorized access

ApiError

404

Not found

ApiError

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

TypeNameDescriptionSchema

path

client_id
required

The OAuth client ID

string

path

orgname
required

The name of the organization

string

Responses

HTTP CodeDescriptionSchema

204

Deleted

 

400

Bad Request

ApiError

401

Session required

ApiError

403

Unauthorized access

ApiError

404

Not found

ApiError

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

TypeNameDescriptionSchema

path

orgname
required

The name of the organization

string

Request body schema (application/json)

Description of a new organization application.

NameDescriptionSchema

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

Responses

HTTP CodeDescriptionSchema

201

Successful creation

 

400

Bad Request

ApiError

401

Session required

ApiError

403

Unauthorized access

ApiError

404

Not found

ApiError

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

TypeNameDescriptionSchema

path

orgname
required

The name of the organization

string

Responses

HTTP CodeDescriptionSchema

200

Successful invocation

 

400

Bad Request

ApiError

401

Session required

ApiError

403

Unauthorized access

ApiError

404

Not found

ApiError

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

TypeNameDescriptionSchema

path

orgname
required

The name of the organization

string

Responses

HTTP CodeDescriptionSchema

200

Successful invocation

 

400

Bad Request

ApiError

401

Session required

ApiError

403

Unauthorized access

ApiError

404

Not found

ApiError

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

TypeNameDescriptionSchema

path

orgname
required

The name of the organization

string

Responses

HTTP CodeDescriptionSchema

204

Deleted

 

400

Bad Request

ApiError

401

Session required

ApiError

403

Unauthorized access

ApiError

404

Not found

ApiError

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

TypeNameDescriptionSchema

path

orgname
required

The name of the organization

string

Request body schema (application/json)

Proxy cache configuration for an organization

NameDescriptionSchema

upstream_registry
required

Name of the upstream registry that is to be cached

string

Responses

HTTP CodeDescriptionSchema

201

Successful creation

 

400

Bad Request

ApiError

401

Session required

ApiError

403

Unauthorized access

ApiError

404

Not found

ApiError

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

TypeNameDescriptionSchema

path

membername
required

The username of the organization member

string

path

orgname
required

The name of the organization

string

Responses

HTTP CodeDescriptionSchema

200

Successful invocation

 

400

Bad Request

ApiError

401

Session required

ApiError

403

Unauthorized access

ApiError

404

Not found

ApiError

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

TypeNameDescriptionSchema

path

membername
required

The username of the organization member

string

path

orgname
required

The name of the organization

string

Responses

HTTP CodeDescriptionSchema

204

Deleted

 

400

Bad Request

ApiError

401

Session required

ApiError

403

Unauthorized access

ApiError

404

Not found

ApiError

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

TypeNameDescriptionSchema

path

orgname
required

The name of the organization

string

Responses

HTTP CodeDescriptionSchema

200

Successful invocation

 

400

Bad Request

ApiError

401

Session required

ApiError

403

Unauthorized access

ApiError

404

Not found

ApiError

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

TypeNameDescriptionSchema

path

orgname
required

The name of the organization

string

Responses

HTTP CodeDescriptionSchema

200

Successful invocation

 

400

Bad Request

ApiError

401

Session required

ApiError

403

Unauthorized access

ApiError

404

Not found

ApiError

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

TypeNameDescriptionSchema

path

orgname
required

The name of the organization

string

Request body schema (application/json)

Description of updates for an existing organization

NameDescriptionSchema

email
optional

Organization contact email

string

invoice_email
optional

Whether the organization desires to receive emails for invoices

boolean

invoice_email_address
optional

The email address at which to receive invoices

 

tag_expiration_s
optional

The number of seconds for tag expiration

integer

Responses

HTTP CodeDescriptionSchema

200

Successful invocation

 

400

Bad Request

ApiError

401

Session required

ApiError

403

Unauthorized access

ApiError

404

Not found

ApiError

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

TypeNameDescriptionSchema

path

orgname
required

The name of the organization

string

Responses

HTTP CodeDescriptionSchema

204

Deleted

 

400

Bad Request

ApiError

401

Session required

ApiError

403

Unauthorized access

ApiError

404

Not found

ApiError

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

TypeNameDescriptionSchema

path

client_id
required

The OAuth client ID

string

Responses

HTTP CodeDescriptionSchema

200

Successful invocation

 

400

Bad Request

ApiError

401

Session required

ApiError

403

Unauthorized access

ApiError

404

Not found

ApiError

Example command

$ curl -X GET "https://<quay-server.example.com>/api/v1/app/<client_id>" \
  -H "Authorization: Bearer <access_token>"
Red Hat logoGithubRedditYoutubeTwitter

Learn

Try, buy, & sell

Communities

About Red Hat Documentation

We help Red Hat users innovate and achieve their goals with our products and services with content they can trust. Explore our recent updates.

Making open source more inclusive

Red Hat is committed to replacing problematic language in our code, documentation, and web properties. For more details, see the Red Hat Blog.

About Red Hat

We deliver hardened solutions that make it easier for enterprises to work across platforms and environments, from the core datacenter to the network edge.

© 2024 Red Hat, Inc.