Oracle Beehive
  Oracle® Beehive RESTful Web Services API Reference
  Release 2 (2.0.1.7)
  E16658-04

Contents

Version

Apply Label

Applies a label to an entity. Note that the returned LabelApplication uses an EMPTY projection

URI: /comb/v1/d/aver/label/apply/{id}

HTTP Method: POST

Request Parameters: (expand)

Name Style Required Description

labelid

Query

LabelHandle of the Label to be applied

type

Query

Restricted to:

  • PRIVATE
  • PUBLIC

Label application type

accept

Header

Restricted to:

  • application/json
  • application/xml

Directive to the server, indicating the format of the returned payload (or error class)

runas

Query

Identity under-which to execute this operation. Callers require permission to run as a different identity.

suppress_20x_code

Query

Restricted to:

  • false
  • true

Indicates if HTTP status codes in the 200-299 range are suppressed and always returned as 200. Required when client technology assumes that any return code other than 200 is a fault.

anticsrf

Query

Specifies the anti-CSRF token

Request Payload: No Request Payload

Response Payload: labelApplication

Fault: restFault

Details: (expand)

HTTP Status Description
400
Error processing "runas" value
400
Format of ID specified is incorrect
400
Id type is incorrect
400
Invalid value specified for query parameter
400
Required header not specified
400
Required query parameter not specified
406
Unsupported value in Accept header
500
Internal error occurred

Sample: (expand)

    // *
    // * This function demonstates applying a label on a single Version item.
    // *
    // * @param "bhUtils" - Helper object
    // * @param "myBeeId1" - beeId of an item to be labelled
    // * @param "labelId" - beeId of the label to be applied
    // *
    // * @return The item "LabelApplication" object
    // *
    label: function(
        bhUtils,
        myBeeId1,
        labelId) {
        // The URI for this resource
        var resourceURI = "/comb/v1/d/aver/label/apply/" + myBeeId1.id;

        // Build-out query parameters. Note that this is a simple example
        // meant to highlight Beehive code, not javascript best practices.
        // ====
        // Parameter name: labelid
        // Description: null
        // Mandatory: true
        // ====
        // ====
        // Parameter name: type
        // Description: null
        // Mandatory: true
        // Values: PRIVATE, PUBLIC
        // ====
        resourceURI += "?labelid=" + labelId.id
            + "&type=PUBLIC";


        // Create the XMLHttpRequest object. For simplicity, the code within
        // "bhUtils" abstracts the cross-platform differences in creating the
        // XMLHttpRequest object
        var xmlHttpRequest = bhUtils.getXMLHttpRequest();

        // Setup the XMLHttpRequest object for the action required
        // Note that you must use the HTTP POST method for this request
        xmlHttpRequest.open("POST",
            resourceURI,
            false);

        // Tell the server we want the returned object to be in JSON format
        // via the HTTP "Accept" header
        xmlHttpRequest.setRequestHeader("Accept", "application/json");

        // Send the request to the server
        xmlHttpRequest.send(null);

        // Check return code. Anything other than 200 is considered an error
        if (xmlHttpRequest.status != 200) {
            // An error occurred and an object of type "Failure" will be
            // returned. The object will be in JSON format. Deserialize the
            // JSON. Since this is a simple example, the deserialization code
            // has been moved into "bhUtils"
            var failure = bhUtils.deserializeJSON(xmlHttpRequest.responseText);

            // In this simple example, we just throw the failure object
            throw failure;
        }

        // Deserialize the JSON return. Since this is a simple example, the
        // deserialization code has been moved into "bhUtils"
        var result = bhUtils.deserializeJSON(xmlHttpRequest.responseText);

        return result;
    }

Apply Label Batch

Applies label to a collection of entities

URI: /comb/v1/d/aver/label/apply

HTTP Method: POST

Request Parameters: (expand)

Name Style Required Description

labelid

Query

LabelHandle of the Label to be applied

type

Query

Restricted to:

  • PRIVATE
  • PUBLIC

Label application type

accept

Header

Restricted to:

  • application/json
  • application/xml

Directive to the server, indicating the format of the returned payload (or error class)

runas

Query

Identity under-which to execute this operation. Callers require permission to run as a different identity.

suppress_20x_code

Query

Restricted to:

  • false
  • true

Indicates if HTTP status codes in the 200-299 range are suppressed and always returned as 200. Required when client technology assumes that any return code other than 200 is a fault.

anticsrf

Query

Specifies the anti-CSRF token

content-type

Header

Restricted to:

  • application/json
  • application/xml

The standard HTTP Content-Type Header, indicating the MIME type of the payload

Request Payload: beeIdList<entity>

Response Payload: listResult<labelApplication>

Fault: restFault

Details: (expand)

HTTP Status Description
400
Batch size exceeded
400
Error processing "runas" value
400
Format of ID specified is incorrect
400
Id type is incorrect
400
Invalid header specified
400
Invalid payload specified
400
Invalid value specified for query parameter
400
JSON payload received with a wrong data member type
400
No payload specified
400
Required header not specified
400
Required query parameter not specified
400
Type of payload specified does not match what is expected
406
Unsupported value in Accept header
500
Internal error occurred

Sample: (expand)

    // *
    // * This function demonstates application of a label on several Version
    // * items.
    // *
    // * @param "bhUtils" - Helper object
    // * @param "myBeeId1" - beeId of an item to label
    // * @param "myBeeId2" - beeId of an item to label
    // * @param "myBeeId3" - beeId of an item to label
    // * @param "labelId" - beeId of the label to be applied
    // *
    // * @return An array containing "LabelApplication" objects
    // *
    labelBatch: function(
        bhUtils,
        myBeeId1,
        myBeeId2,
        myBeeId3,
        labelId) {
        // The URI for this resource
        var resourceURI = "/comb/v1/d/aver/label/apply";

        // Build-out query parameters. Note that this is a simple example
        // meant to highlight Beehive code, not javascript best practices.
        // ====
        // Parameter name: labelid
        // Description: null
        // Mandatory: true
        // ====
        // ====
        // Parameter name: type
        // Description: null
        // Mandatory: true
        // Values: PRIVATE, PUBLIC
        // ====
        resourceURI += "?labelid=" + labelId.id
            + "&type=PUBLIC";

        // Create list of IDs to label
        var myIDs = {
            beeType:"beeIdList",
            beeId: [
                {"beeType": "beeId", "id": myBeeId1.id},
                {"beeType": "beeId", "id": myBeeId2.id},
                {"beeType": "beeId", "id": myBeeId3.id}
            ]
        };


        // Create the XMLHttpRequest object. For simplicity, the code within
        // "bhUtils" abstracts the cross-platform differences in creating the
        // XMLHttpRequest object
        var xmlHttpRequest = bhUtils.getXMLHttpRequest();

        // Setup the XMLHttpRequest object for the action required
        // Note that you must use the HTTP POST method for this request
        xmlHttpRequest.open("POST",
            resourceURI,
            false);

        // Set the content type indicating to the server the payload is JSON
        // format
        xmlHttpRequest.setRequestHeader("Content-type", "application/json");

        // Tell the server we want the returned object to be in JSON format
        // via the HTTP "Accept" header
        xmlHttpRequest.setRequestHeader("Accept", "application/json");

        // Serialize payload as JSON. To simplify these examples, JSON
        // serialization is maintained in bhUtils
        var payload = bhUtils.serializeJSON(myIDs);

        // Send the request to the server
        xmlHttpRequest.send(payload);

        // Check return code. Anything other than 200 is considered an error
        if (xmlHttpRequest.status != 200) {
            // An error occurred and an object of type "Failure" will be
            // returned. The object will be in JSON format. Deserialize the
            // JSON. Since this is a simple example, the deserialization code
            // has been moved into "bhUtils"
            var failure = bhUtils.deserializeJSON(xmlHttpRequest.responseText);

            // In this simple example, we just throw the failure object
            throw failure;
        }

        // Deserialize the JSON return. Since this is a simple example, the
        // deserialization code has been moved into "bhUtils"
        var result = bhUtils.deserializeJSON(xmlHttpRequest.responseText);

        return result;
    }

Delete

Deletes the Version referenced by the supplied VersionHandle.

URI: /comb/v1/d/aver/{id}

HTTP Method: POST

Request Parameters: (expand)

Name Style Required Description

snapshotid

Query

determine if the entity should always be deleted or if optimistic locking should be used.

accept

Header

Restricted to:

  • application/json
  • application/xml

Directive to the server, indicating the format of the returned payload (or error class)

runas

Query

Identity under-which to execute this operation. Callers require permission to run as a different identity.

suppress_20x_code

Query

Restricted to:

  • false
  • true

Indicates if HTTP status codes in the 200-299 range are suppressed and always returned as 200. Required when client technology assumes that any return code other than 200 is a fault.

anticsrf

Query

Specifies the anti-CSRF token

Request Payload: No Request Payload

Response Payload: No Response Payload

Fault: restFault

Details: (expand)

HTTP Status Description
400
Error processing "runas" value
400
Format of ID specified is incorrect
400
Id type is incorrect
400
Invalid value specified for query parameter
400
Required header not specified
400
Required query parameter not specified
406
Unsupported value in Accept header
500
Internal error occurred

List

Returns the list of versions under given family. VersionListFilter will control which versions are returned and which projection to apply to load their attributes.

URI: /comb/v1/d/aver/list

HTTP Method: POST

Request Parameters: (expand)

Name Style Required Description

family

Query

Handle of the family of the versions

accept

Header

Restricted to:

  • application/json
  • application/xml

Directive to the server, indicating the format of the returned payload (or error class)

runas

Query

Identity under-which to execute this operation. Callers require permission to run as a different identity.

suppress_20x_code

Query

Restricted to:

  • false
  • true

Indicates if HTTP status codes in the 200-299 range are suppressed and always returned as 200. Required when client technology assumes that any return code other than 200 is a fault.

anticsrf

Query

Specifies the anti-CSRF token

content-type

Header

Restricted to:

  • application/json
  • application/xml

The standard HTTP Content-Type Header, indicating the MIME type of the payload

Request Payload: predicateAndSortListParameters

Predicates Supported: (expand)

Sort Criteria Supported: (expand)

Response Payload: listResult<version>

Fault: restFault

Details: (expand)

HTTP Status Description
400
Error processing "runas" value
400
Invalid header specified
400
Invalid payload specified
400
Invalid value specified for query parameter
400
JSON payload received with a wrong data member type
400
No payload specified
400
Required header not specified
400
Required query parameter not specified
400
Type of payload specified does not match what is expected
406
Unsupported value in Accept header
500
Internal error occurred

Read

Retreive a single Version.

URI: /comb/v1/d/aver/{id}

HTTP Method: GET

Request Parameters: (expand)

Name Style Required Description

projection

Query

Restricted to:

  • BASIC
  • EMPTY
  • EMPTY_WITH_VERSION_NUMBER
  • FULL
  • META

Projection specifying the attributes to load in the returned Document. See version for complete semantics of the attributes loaded with each projection.

accept

Header

Restricted to:

  • application/json
  • application/xml

Directive to the server, indicating the format of the returned payload (or error class)

runas

Query

Identity under-which to execute this operation. Callers require permission to run as a different identity.

suppress_20x_code

Query

Restricted to:

  • false
  • true

Indicates if HTTP status codes in the 200-299 range are suppressed and always returned as 200. Required when client technology assumes that any return code other than 200 is a fault.

Request Payload: No Request Payload

Response Payload: version

Fault: restFault

Details: (expand)

HTTP Status Description
400
Error processing "runas" value
400
Format of ID specified is incorrect
400
Id type is incorrect
400
Invalid value specified for query parameter
400
Required header not specified
406
Unsupported value in Accept header
500
Internal error occurred

Sample: (expand)

    // *
    // * This function demonstates reading a single Version item.
    // *
    // * @param "bhUtils" - Helper object
    // * @param "myBeeId" - beeId of an item to read
    // *
    // * @return The item read
    // *
    read: function(
        bhUtils,
        myBeeId) {
        // The URI for this resource
        var resourceURI = "/comb/v1/d/aver/" + myBeeId.id;


        // Create the XMLHttpRequest object. For simplicity, the code within
        // "bhUtils" abstracts the cross-platform differences in creating the
        // XMLHttpRequest object
        var xmlHttpRequest = bhUtils.getXMLHttpRequest();

        // Setup the XMLHttpRequest object for the action required
        // Note that you must use the HTTP GET method for this request
        xmlHttpRequest.open("GET",
            resourceURI,
            false);

        // Tell the server we want the returned object to be in JSON format
        // via the HTTP "Accept" header
        xmlHttpRequest.setRequestHeader("Accept", "application/json");

        // Send the request to the server
        xmlHttpRequest.send(null);

        // Check return code. Anything other than 200 is considered an error
        if (xmlHttpRequest.status != 200) {
            // An error occurred and an object of type "Failure" will be
            // returned. The object will be in JSON format. Deserialize the
            // JSON. Since this is a simple example, the deserialization code
            // has been moved into "bhUtils"
            var failure = bhUtils.deserializeJSON(xmlHttpRequest.responseText);

            // In this simple example, we just throw the failure object
            throw failure;
        }

        // Deserialize the JSON return. Since this is a simple example, the
        // deserialization code has been moved into "bhUtils"
        var result = bhUtils.deserializeJSON(xmlHttpRequest.responseText);

        return result;
    }

Read Batch

Retrieves one or more Version objects from the server

URI: /comb/v1/d/aver/read

HTTP Method: POST

Request Parameters: (expand)

Name Style Required Description

projection

Query

Restricted to:

  • BASIC
  • EMPTY
  • EMPTY_WITH_VERSION_NUMBER
  • FULL
  • META

Projection specifying the attributes to load in the returned Version. See version for complete semantics of the attributes loaded with each projection.

accept

Header

Restricted to:

  • application/json
  • application/xml

Directive to the server, indicating the format of the returned payload (or error class)

runas

Query

Identity under-which to execute this operation. Callers require permission to run as a different identity.

suppress_20x_code

Query

Restricted to:

  • false
  • true

Indicates if HTTP status codes in the 200-299 range are suppressed and always returned as 200. Required when client technology assumes that any return code other than 200 is a fault.

anticsrf

Query

Specifies the anti-CSRF token

content-type

Header

Restricted to:

  • application/json
  • application/xml

The standard HTTP Content-Type Header, indicating the MIME type of the payload

Request Payload: beeIdList<version>

Response Payload: list<version>

Fault: restFault

Details: (expand)

HTTP Status Description
400
Batch size exceeded
400
Error processing "runas" value
400
Format of ID specified is incorrect
400
Id type is incorrect
400
Invalid header specified
400
Invalid payload specified
400
Invalid value specified for query parameter
400
JSON payload received with a wrong data member type
400
No payload specified
400
Required header not specified
400
Required query parameter not specified
400
Type of payload specified does not match what is expected
406
Unsupported value in Accept header
500
Internal error occurred

Sample: (expand)

    // *
    // * This function demonstates reading several Version items.
    // *
    // * @param "bhUtils" - Helper object
    // * @param "myBeeId1" - beeId of an item to read
    // * @param "myBeeId2" - beeId of an item to read
    // * @param "myBeeId3" - beeId of an item to read
    // *
    // * @return An array containing the items read
    // *
    readBatch: function(
        bhUtils,
        myBeeId1,
        myBeeId2,
        myBeeId3) {
        // The URI for this resource
        var resourceURI = "/comb/v1/d/aver/read";

        // Create list of IDs to read
        var myIDs = {
            beeType:"beeIdList",
            beeId: [
                {"beeType": "beeId", "id": myBeeId1.id},
                {"beeType": "beeId", "id": myBeeId2.id},
                {"beeType": "beeId", "id": myBeeId3.id}
            ]
        };


        // Create the XMLHttpRequest object. For simplicity, the code within
        // "bhUtils" abstracts the cross-platform differences in creating the
        // XMLHttpRequest object
        var xmlHttpRequest = bhUtils.getXMLHttpRequest();

        // Setup the XMLHttpRequest object for the action required
        // Note that you must use the HTTP POST method for this request
        xmlHttpRequest.open("POST",
            resourceURI,
            false);

        // Set the content type indicating to the server the payload is JSON
        // format
        xmlHttpRequest.setRequestHeader("Content-type", "application/json");

        // Tell the server we want the returned object to be in JSON format
        // via the HTTP "Accept" header
        xmlHttpRequest.setRequestHeader("Accept", "application/json");

        // Serialize payload as JSON. To simplify these examples, JSON
        // serialization is maintained in bhUtils
        var payload = bhUtils.serializeJSON(myIDs);

        // Send the request to the server
        xmlHttpRequest.send(payload);

        // Check return code. Anything other than 200 is considered an error
        if (xmlHttpRequest.status != 200) {
            // An error occurred and an object of type "Failure" will be
            // returned. The object will be in JSON format. Deserialize the
            // JSON. Since this is a simple example, the deserialization code
            // has been moved into "bhUtils"
            var failure = bhUtils.deserializeJSON(xmlHttpRequest.responseText);

            // In this simple example, we just throw the failure object
            throw failure;
        }

        // Deserialize the JSON return. Since this is a simple example, the
        // deserialization code has been moved into "bhUtils"
        var result = bhUtils.deserializeJSON(xmlHttpRequest.responseText);

        return result;
    }

Remove Label

Remove the label applied from an entity

URI: /comb/v1/d/aver/label/remove/{id}

HTTP Method: POST

Request Parameters: (expand)

Name Style Required Description

labelid

Query

LabelHandle of the Label to be removed

accept

Header

Restricted to:

  • application/json
  • application/xml

Directive to the server, indicating the format of the returned payload (or error class)

runas

Query

Identity under-which to execute this operation. Callers require permission to run as a different identity.

suppress_20x_code

Query

Restricted to:

  • false
  • true

Indicates if HTTP status codes in the 200-299 range are suppressed and always returned as 200. Required when client technology assumes that any return code other than 200 is a fault.

anticsrf

Query

Specifies the anti-CSRF token

Request Payload: No Request Payload

Response Payload: No Response Payload

Fault: restFault

Details: (expand)

HTTP Status Description
400
Error processing "runas" value
400
Format of ID specified is incorrect
400
Id type is incorrect
400
Invalid value specified for query parameter
400
Required header not specified
400
Required query parameter not specified
406
Unsupported value in Accept header
500
Internal error occurred

Remove Label Batch

Removes the label applied from a collection of entities

URI: /comb/v1/d/aver/label/remove

HTTP Method: POST

Request Parameters: (expand)

Name Style Required Description

labelid

Query

LabelHandle of the Label to be removed

accept

Header

Restricted to:

  • application/json
  • application/xml

Directive to the server, indicating the format of the returned payload (or error class)

runas

Query

Identity under-which to execute this operation. Callers require permission to run as a different identity.

suppress_20x_code

Query

Restricted to:

  • false
  • true

Indicates if HTTP status codes in the 200-299 range are suppressed and always returned as 200. Required when client technology assumes that any return code other than 200 is a fault.

anticsrf

Query

Specifies the anti-CSRF token

content-type

Header

Restricted to:

  • application/json
  • application/xml

The standard HTTP Content-Type Header, indicating the MIME type of the payload

Request Payload: beeIdList<entity>

Response Payload: No Response Payload

Fault: restFault

Details: (expand)

HTTP Status Description
400
Batch size exceeded
400
Error processing "runas" value
400
Format of ID specified is incorrect
400
Id type is incorrect
400
Invalid header specified
400
Invalid payload specified
400
Invalid value specified for query parameter
400
JSON payload received with a wrong data member type
400
No payload specified
400
Required header not specified
400
Required query parameter not specified
400
Type of payload specified does not match what is expected
406
Unsupported value in Accept header
500
Internal error occurred

Update

Update a single Version.

URI: /comb/v1/d/aver/{id}

HTTP Method: PUT

Request Parameters: (expand)

Name Style Required Description

snapshotid

Query

determine if the entity should always be updated or if optimistic locking should be used.

projection

Query

Restricted to:

  • BASIC
  • EMPTY
  • EMPTY_WITH_VERSION_NUMBER
  • FULL
  • META

Projection to use to load the returned Version. See version for complete semantics of the attributes loaded with each projection type.

accept

Header

Restricted to:

  • application/json
  • application/xml

Directive to the server, indicating the format of the returned payload (or error class)

runas

Query

Identity under-which to execute this operation. Callers require permission to run as a different identity.

suppress_20x_code

Query

Restricted to:

  • false
  • true

Indicates if HTTP status codes in the 200-299 range are suppressed and always returned as 200. Required when client technology assumes that any return code other than 200 is a fault.

anticsrf

Query

Specifies the anti-CSRF token

content-type

Header

Restricted to:

  • application/json
  • application/xml

The standard HTTP Content-Type Header, indicating the MIME type of the payload

Request Payload: versionUpdater

Response Payload: version

Fault: restFault

Details: (expand)

HTTP Status Description
400
Error processing "runas" value
400
Format of ID specified is incorrect
400
Id type is incorrect
400
Invalid header specified
400
Invalid payload specified
400
Invalid value specified for query parameter
400
JSON payload received with a wrong data member type
400
No payload specified
400
Required header not specified
400
Required query parameter not specified
400
Type of payload specified does not match what is expected
400
Update of entity failed
406
Unsupported value in Accept header
409
Entity state has changed
500
Internal error occurred

Sample: (expand)

    // *
    // * This function demonstates updating the description of a single Version
    // * item.
    // *
    // * @param "bhUtils" - Helper object
    // * @param "myBeeId" - beeId of an item to update
    // * @param "description" - New description to be udpated
    // *
    // * @return The updated item
    // *
    update: function(
        bhUtils,
        myBeeId,
        description) {
        // The URI for this resource
        var resourceURI = "/comb/v1/d/aver/" + myBeeId.id;

        var updater = {
            "beeType": "versionUpdater",
            "description": description
        };

        // Create the XMLHttpRequest object. For simplicity, the code within
        // "bhUtils" abstracts the cross-platform differences in creating the
        // XMLHttpRequest object
        var xmlHttpRequest = bhUtils.getXMLHttpRequest();

        // Setup the XMLHttpRequest object for the action required
        // Note that you must use the HTTP PUT method for this request
        xmlHttpRequest.open("PUT",
            resourceURI,
            false);

        // Set the content type indicating to the server the payload is JSON
        // format
        xmlHttpRequest.setRequestHeader("Content-type", "application/json");

        // Tell the server we want the returned object to be in JSON format
        // via the HTTP "Accept" header
        xmlHttpRequest.setRequestHeader("Accept", "application/json");

        // Serialize payload as JSON. To simplify these examples, JSON
        // serialization is maintained in bhUtils
        var payload = bhUtils.serializeJSON(updater);

        // Send the request to the server
        xmlHttpRequest.send(payload);

        // Check return code. Anything other than 200 is considered an error
        if (xmlHttpRequest.status != 200) {
            // An error occurred and an object of type "Failure" will be
            // returned. The object will be in JSON format. Deserialize the
            // JSON. Since this is a simple example, the deserialization code
            // has been moved into "bhUtils"
            var failure = bhUtils.deserializeJSON(xmlHttpRequest.responseText);

            // In this simple example, we just throw the failure object
            throw failure;
        }

        // Deserialize the JSON return. Since this is a simple example, the
        // deserialization code has been moved into "bhUtils"
        var result = bhUtils.deserializeJSON(xmlHttpRequest.responseText);

        return result;
    }