Integrating ClearCase® with developer tools using DevInt API

The Developer Integration API (DevInt API) is an easy-to-use abstract API designed to support various integration use cases. It facilitates seamless integration between ClearCase® and integrated development environments (IDE) for operations such as check-in, check-out of files, and so on. The DevInt API supports essential ClearCase® operations for both Unified Change Management (UCM) and base ClearCase® across all supported view types, including dynamic, snapshot, automatic, and web views.

Additionally, the API allows you to perform operations silently by providing all the required inputs with both Windows and Linux platforms.

Getting started with DevInt API

Before using the DevInt API, perform these steps.

  1. Install ClearCase®.

    Ensure that one of the following ClearCase® clients is installed on your local system:

    • Full ClearCase® client
    • ClearCase® Remote Client (CCRC)
  2. Locate the API executable.
    • On Windows: CC_install\bin\ideintegration.exe
    • On Linux: CC_install/bin/ideintegration
  3. Configure Idle Timeout (optional).

    By default, the operational proxy used by the API exits after 15 minutes of inactivity. To change this setting:

    1. Create a configuration file in the user directory if it does not exist:

      user_home\.Rational\ide_integration\host_name\.config

      Note: The host name uses short names instead of fully qualified domain names (FQDNs).
    2. Add the following line to the configuration file:

      idle_timeout=15

      Note: The timeout is specified in minutes. If the operational proxy stops, the DevInt API automatically restarts it upon the next request.

Usage

The DevInt API accepts commands in the JSON format (as a single line string) via standard input (stdin) and returns results via standard output (stdout). This design makes the API ideal for integration with IDEs, scripts, and automation tools.

When you launch the DevInt API executable (ideintegration.exe on Windows or ideintegration on Linux must be invoked for each operation):
  1. It waits for a JSON command via stdin. The JSON command should be formatted as a single line string.
  2. It processes the request and returns the result as a JSON response to stdout.
Notes:
  • In all API requests, the resourcePath can be either an absolute or a relative path from the current working directory.
  • In all API responses, the responseCode (HTTP status code) indicates the overall result of the API operation, whereas the errorCode specifies the failure code returned by CMAPI for each individual resource.

Available APIs

For a detailed example of standard operations, see Use case flow for WAN and LAN-based view operations.