/projects

get

List all projects for your account.

Projects are a similar concept to v2 domains. A project is a grouping of services with shared access control and resource limits. Applications can be assembled from services in a project by linking them together via service endpoints.

post

Create a new project

/project/{projectID}

get

Get a specific project

put

Update a project

delete

Delete a project

post

Instantiate a template in the given project

/imageRepositories

get

Lists all image repositories.

An image repository is a collection of images that share the same metadata. It may reference a Docker image repository on a Docker registry, but this is optional. An image repository also contains a mapping of tags to images.

post

Create a new image repository

/imageRepositories/{repositoryID}

get

Get information about an image repository

put

Update an image repository

delete

Delete an image repository

/images

get

Lists all images.

An image is a reference to an image in a Docker image repository on a Docker registry, plus a set of metadata. The metadata that Openshift stores for an image will augment the metadata that has already been specified in the image through its Dockerfile.

post

Create a new image definition

/images/{imageID}

get

Get image definition

delete

Delete an image

/imageRepositoryMappings

post

Creates an image and updates an image repository.

This is designed as a webhook that a Docker registry can invoke when a new tag is created. The image repository mapping contains a reference to the repository, the image's metadata, and the name of the new tag. Upon execution, a new image is created if it doesn't already exist, and the image repository is updated with the new tag.

/services

get

Lists all services that your account has access to

Services can be public or owned by a project. They contain a template of a pod and reference image repositories that supply the images for those templates. A service may be configured to react to an image being pushed to an image repository by initiating a deployment. Deployments are associated with a service and make use of Kubernetes replication controllers to manage pods in a cluster. For deployments, a service contains a policy that constrains how deployments can occur. For example, it may require that there exist at least 2 operational pods at all times. A deployment needs to operate under those constraints when making changes.

post

Create a new service

/service/{serviceID}

get

Get a specific service definition

put

Update a service

delete

Delete a service

get

Environment variables associated with this service

post

Create/update environment variables

get

Get environment variable

put

Update an environment variable's value

delete

Delete an environment variable

/deployments

get

Lists active deployments in the current project

Deployments effect change in a service such as scaling up, down, updating the current image, etc. Deployments may use different policies for carrying out the change. For example, a rolling update with a single pod change at a time, or a batch update, etc. Deployments make use of Kubernetes replicationControllers to bring about the changes.

post

Create a new deployment

/deployment/{deploymentID}

get

Get deployment details

/aliases

get

List all aliases visible to you

Aliases in v3 perform the same function as aliases in v2. The main difference is that in v3 an alias is associated with a service, not an application.

post

Create an alias for this service

/alias/{aliasID}

get

Get alias

put

Update an alias

delete

Delete an alias

/builds

get

Retrieves a list of builds visible to you

A build is associated with an image repository and can be triggered by a webhook on Github. It can either be a Docker build or a source build based on a specified image. When a build completes, it posts a new image to the image repository that it's associated with.

post

Create a new build

/build/{buildId}

get

Retrieve a single build definition

put

Update a build definition

delete

Delete a build definition

post

Launch a build

get

Retrieves list of build results

/buildConfigHooks/{buildId}/{secret}/{plugin}

post

Webhook on push event from external repository

buildId specifies which build to trigger, whereas plugin defines source of the request, this might be github, bitbucket or others.

/templates

get

Lists all templates that your account has access to

A template defines 0..n services and 0..m links. When it is applied to an existing project, those services and links are instantiated for that project.

post

Create a new template

/template/{templateID}

get

Get a specific template

put

Update a template

delete

Delete a template

/pods

get

List all pods on this cluster

post

Create a new pod. currentState is ignored if present.

get

Get a specific pod

put

Update a pod

delete

Delete a specific pod

/replicationControllers

get

List all replicationControllers on this cluster

post

Create a new controller. currentState is ignored if present.

get

Get a specific controller

put

Update a controller

delete

Delete a specific controller

/lbservices

get

List all services on this cluster

post

Create a new service

get

Get a specific service

put

Update a service

delete

Delete a specific service