Login | Join Now
  • CollabNet Framework Web Services API

    Product:
    CollabNet Enterprise Edition 4.5+

    Component:
    CEE HELM API



     

    1. Introduction

    This document describes, at a high level, the first version of the Helm Web Services API that is used to manipulate data from a domain or project level of a CollabNet Enterprise Edition instance.

    Users with either domain or project roles can use this API to programmatically automate regular tasks such as verifying the state of a project, getting the list of requested roles to a project or granting roles to new members.

    The Helm Web Services API focuses on basic project and membership administration, which are daily activities in an open-source development environment. For this reason, most of the methods offered require administrative permissions from the client executing the methods.

    2. Platform

    Because this is a strongly-typed Web Services API, customers have the complete definition of the needed types included on the WSDL interfaces necessary to communicate with the service. Therefore, they can use their preferred programming language to write their client application, such as a plug-in for Eclipse in Java, a Web interface in Python or an automated shell script in Perl.

    To develop your client, download the Helm Web Services API interfaces for each of the services from these sources:

    • The complete and documented version of the APIs is available on openCollabNet. This package includes the WSDL interfaces and supporting XML Schema for each of the services described, as well as the complete documentation for SOAP developers.
    • The consolidated version of the services (the complete WSDL files) can be downloaded directly from a CEE 5.x site instance, using the following pattern:
      http://www.HOST/axis/services/ws-sec-min/helm/SERVICE?WSDL where HOST is the host address of the CEE site you are creating the clients for, and SERVICE is one of the service names described in the next section.

    3. Interfaces

    The interfaces that compose the Helm Web Services API are described as follows:

      Service Name       General Description / Responsibility  
      Domain       Provides operations that create, modify, delete, access information about the following entities:
    Project, Categories and Project Groups;
    Roles, Permissions (Actions and Resource Patterns), License and Broadcast Message.
     
     
      Project       Project-specific operations. Applies to: projects, categories, project groups, etc.  
     
      Membership       Provides operations for users and their membership within Projects:
    Users and User Groups;
    User Membership and Invitation operations;
     
     

    4. Operations

    4.1. Domain - List of Operations

      Operation       Description  
      getUserByUsername       Returns a user by the username.  
     
      getUserByName       Returns a user by the name.  
     
      getUserByEmail       Returns a user by the email.  
     
      isUserValid       Returns the status information about if a given username/password is valid on the system.  
     
      getProjectsForUser       Returns a list of projects for a given username.  
     
      getProjectsForAction       Returns the list of Projects for a given Action.  
     
      getResourcesForAction       Returns the list of Resources for a given Action on a given project.  
     

    4.2. Project - List of Operations

      Operation       Description  
      getProjectInfo       Returns the information about a project instance. This includes values of its state such as name, summary, tracker and versioning components, etc.  
     
      setParent       Sets the parent project for the project in context.  
     

    4.3. Membership - List of Operations

      Operation       Description  
      addMembers       Adds users as new members to a given project.  
     
      getMembers       Returns the list of members of a given project with information about their membership and roles.  
     
      getOwners       Returns the list of owners of a given project.  
     
      getPendingRequestedRoles       Returns the list of all the requested roles.  
     
      approvePendingRoles       Approves requested roles for a given set of users.  
     
      disapprovePendingRoles       Disapproves requested roles, using a reason message.  
     
      grantRolesToMembers       Adds a list of roles to a given list of users or user groups.  
     
      revokeRolesFromMembers       Removes a list of roles from a given list of members or user groups.  
     
      getMemberInfo       Returns the information about a given member on the context project.  
     

    5. Documentation

    JavaDocs generated through the implementation of JAVA clients developed by CollabNet. Includes the description of all supporting types automatically generated by the Apache AXIS framework.