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.
- Install ClearCase®.
Ensure that one of the following ClearCase® clients is installed on your local system:
- Full ClearCase® client
- ClearCase® Remote Client (CCRC)
- Locate the API executable.
- On Windows: CC_install\bin\ideintegration.exe
- On Linux: CC_install/bin/ideintegration
- Configure Idle Timeout (optional).
By default, the operational proxy used by the API exits after 15 minutes of inactivity. To change this setting:
- 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). - Add the following line to the configuration
file:
idle_timeout=15Note: The timeout is specified in minutes. If the operational proxy stops, the DevInt API automatically restarts it upon the next request.
- Create a configuration file in the user directory if it does not exist:
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.
ideintegration.exe on Windows
or ideintegration on Linux must be invoked for each operation):- It waits for a JSON command via
stdin. The JSON command should be formatted as a single line string. - It processes the request and returns the result as a JSON response to
stdout.
- In all API requests, the
resourcePathcan 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 theerrorCodespecifies the failure code returned by CMAPI for each individual resource.
Available APIs
- Add to the source (request and response)
- Aggregate status (request and response)
- Authentication (request and response)
- Check-in (request and response)
- Check-out (request and response)
- Create activity (request and response)
- Get activities (request and response)
- Get current activity (request and response)
- Get resources properties (request and response)
- Get view stream (request and response)
- Hijack (request and response)
- Logout (request and response)
- Move (request and response)
- Refresh (request and response)
- Remove activity (request and response)
- Remove resource (request and response)
- Rename (request and response)
- Set activity (request and response)
- Undo checkout (request and response)
- Undo hijack (request and response)
- Unset activity (request and response)
- Update view (request and response)
For a detailed example of standard operations, see Use case flow for WAN and LAN-based view operations.