wiki:GAPI_CH_API

Version 2 (modified by Aaron Helsinger, 9 years ago) (diff)

--

GENI Clearinghouse API

WORK IN PROGRESS: This API has not been standardized across control frameworks.

The GENI Clearinghouse API will define the operations that are available to an Aggregate Manager at a Clearinghouse.

This interface does not describe the API that a Researcher Client would use to communicate with a GENI Clearinghouse. For GENI Spiral 2, the API between Researcher Clients and Clearinghouses is specific to the Clearinghouse and not standardized.

See Also:


GetVersion

Return the version of the GENI Clearinghouse API supported by this clearinghouse.

struct GetVersion()

The result is a struct with at least the following members:

{
  int geni_api;
}
geni_api
An integer indicating the revision of the Aggregate Manager API that an aggregate supports. The current version of the API is 1 (one).

Implementations can add additional members to the struct as desired. The prefix geni_ is reserved for members that are part of this API specification. Implementation should choose an appropriate prefix to avoid conflicts.

This operation is similar to ProtoGENI's Clearinghouse GetVersion operation. The SFA specification does not include this operation.


Resolve

Lookup a URN and return information about the corresponding object.

struct Resolve(string urn)
urn
The URN to be resolved.

Returns a struct with fields appropriate to the type of the object being resolved.

If the object being resolved is a slice, the returned struct should contain at least the following:

{
  geni_urn: <slice URN>;
  geni_creator: <user URN>;
}
geni_urn
The URN of the slice being resolved as a string.
geni_creator
The URN of the creator of the slice as a string.

If the object being resolved is a user, the returned struct should contain at least the following:

{
  geni_urn: <user URN>;
  geni_certificate: <X.509 certificate of user>;
}
geni_urn
The URN of the slice being resolved as a string.
geni_certificate
The certificate of the user as a base 64 encoded string.

This operation is similar to ProtoGENI's Clearinghouse Resolve operation and to the SFA's Resolve operation (sec. 6.1).