Java Client for the OpenShift REST API
Latest commit eed6e20 Oct 21, 2016 @coreydaley coreydaley committed on GitHub Merge pull request #230 from coreydaley/fixing_some_issues
[OSJC-201] fixing multiple issues

OpenShift Java Client Build Status Maven Central

Java client for the OpenShift REST API. It pretty much offers all features that are currently available in the rhc-* command line tools (create/rename a domain, create/destroy applications, list applications, list available cartridges, add cartridges, etc.).

Only for Version 2

This client is used by JBoss Tools for OpenShift 2.x.

For later OpenShift versions see


An exemplary usage of the client may look like the following:

    IOpenShiftConnection connection = 
            new OpenShiftConnectionFactory().getConnection("myApplicationId", "user", "password");
    IUser user = connection.getUser();
    IDomain domain = user.createDomain("myDomain");
    IApplication as7Application = domain.createApplication("myApplication", LatestVersionOf.jbossAs().get(user));
    IEmbeddedCartridge mySqlCartridge = as7Application.addEmbeddableCartridge(LatestVersionOf.mySQL().get(user));
    String unstructuredCredentials = mySqlCartridge.getCreationLog();
    String mySqlConnectionUrl = mySqlCartridge.getUrl();

There are also 2 blog posts on which discuss the API in more details:

Most insightful are the integration tests within the library which pretty much use the API in all details:

  • ApplicationResourceIntegrationTest
  • DomainResourceIntegrationTest
  • EmbeddedCartridgeResourceIntegrationTest
  • etc.


You may either build from source using maven (mvn clean package) or get the prebuilt artifact from the maven central.