This documentation relates to an earlier version of FishEye.
View this page in the current documentation or visit the current documentation home.
Skip to end of metadata
Go to start of metadata

For developers who are interested in accessing the FishEye functionality remotely, this page describes the methods, data types and structures for accessing the FishEye Remote API.

This documentation is available offline as part of your FishEye installation, under

On the local HTML page, you will be able to see whether API Access is currently enabled or disabled on your FishEye instance. You will also be able to link to local code examples for REST and XML-RPC from the FishEye folders.

API mechanisms are REST-ful and XML-RPC.

XML-RPC API

The XML-RPC API can be accessed from

REST API

The REST API can be accessed from

REST return values are always enclosed in a <response> root element.

Dates are IS0-8601, in the general form

The timezone is optional (GMT is used if omitted). The time component is also optional. The seconds component can contain a fractional part.

For XMLRPC, FishEye returns all dates in GMT using

Note that no timezone is used.

Authentication

FishEye may be configured to require authentication before accessing a repository. Most methods accept an authentication token parameter. To call a method anonymously, use the empty-string for this parameter.

An authentication token can be acquired (and released) using the login() and logout() methods.

Examples

The following code example files can be found in the API folder under your FishEye instance:

Browse to that folder and you will be able to access the files below:

  • Python XML-RPC example: xmlrpc_example.py
  • Python REST example: rest_example.py
  • Java REST example: RestClient.java

Methods

Log in

Description
Log in and create an authentication token. Returns the token if log in was successful, or returns an error otherwise.

REST

XML-RPC



Log out

Description
Disables the given auth token. Returns true in all cases.

REST

XML-RPC



FishEye Version

Description
Returns the version number of this FishEye instance.

REST

XML-RPC

Example Return Values
"1.3.8", "1.4"

Since
FishEye 1.4 / Crucible 1.2


Crucible Version

Description
Returns the Crucible version number if Crucible is installed. This API method will return an empty String if this isn't a Crucible instance.

REST

XML-RPC

Example Return Values
"1.2", "1.2.1", "" (if not a Crucible instance)

Since
FishEye 1.4 / Crucible 1.2


List Repositories

Description
Returns a list of repository names in this FishEye instance.

REST

XML-RPC



List Paths

Description
Returns a list of paths immediately under the given path. A path represents either a file or a directory.

REST

XML-RPC



Get Revision

Description
Returns the details of a particular revision.

REST

XML-RPC



List Tags for Revision

Description
Returns the tags associated with particular revision as an array of strings.

REST

XML-RPC



Path History

Description
Returns history of a particular path.

REST

XML-RPC



Get Changeset

Description
Gets the details of a particular changeset.

REST

XML-RPC



List Changesets

Description
Lists changes under a given path, optionally between two dates. Returned structure contains a list of changeset ids, from most-recent to least-recent.

REST

XML-RPC

To get changes for the whole repository, use a path of "/"
If the start date is not specified, there is no lower bound.
If the end date is not specified, "now" is used.

FishEye has an internal limit of how many changesets it will return from this method (a few thousand). If this limit is exceeded, the return value will be truncated so that it contains the most-recent changesets. This value of this limit is contained in the return value.


EyeQL Query

Description
Execute an EyeQL query. For a "normal" query, returns a list of revision keys that matched to query. If the query contains a "return" clause, then returns a custom Row for each match. The contents of the Row will depend upon the "return" clause.

REST

XML-RPC

or



Changeset Bounds

Description
NOT IMPLEMENTED YET. Gets the details of a particular changeset.

REST

XML-RPC



Data Types and Structures

Data types used are the same as defined in XML-RPC.

Some methods return data structures. These map into XML-RPC as expected.

For REST calls, structs are encoded as XML elements of the same name (but all lowercase). Members are encoded as sub-elements, or as attributes as indicated below.

RevisionKey
PathInfo
Revision
Changeset
Changesets

Description

A list of Changeset ids, most-recent changeset first. maxReturn indicates the maximum number of changesets FishEye is configured to return from this method.

ChangesetBounds
Row

Description
A custom structure, depending on the given EyeQL statement. Each member of Row is typed.

Labels: