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

Contents

EmailMessage

Append

Upload a message directly to a folder. This method can be used by the client to move offline messages into a beehive folder.

URI: /comb/v1/d/emsg/append

HTTP Method: POST

Request Parameters: (expand)

Name Style Required Description

folder

Query

Folder to be appended

received_date

Query

The received date of the message being uploaded. The format is "yyyy-MM-dd'T'HH:mm:ss.SSSZ". For eg: 2009-08-29T10:30:00.203-0700

uploadscope

Query

The upload scope string used while uploading the associated content and/or attachment(s)

projection

Query

Restricted to:

  • BASIC
  • BASIC_WITH_VIRUS_SCAN_RESULTS
  • EMPTY
  • FULL
  • META
  • WITH_CONTENT_STRUCTURE
  • WITH_DELIVERY_STATUS

The projection to use for loading the entity

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: emailDraftUpdater

Response Payload: emailMessage

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

Apply Label

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

URI: /comb/v1/d/emsg/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 EmailMessage
    // * 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/emsg/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/emsg/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
    // * EmailMessage 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/emsg/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;
    }

Copy

Copy a single EmailMessage object into a different folder

URI: /comb/v1/d/emsg/copy/{id}

HTTP Method: POST

Request Parameters: (expand)

Name Style Required Description

destination

Query

To this folder

projection

Query

Restricted to:

  • BASIC
  • BASIC_WITH_VIRUS_SCAN_RESULTS
  • EMPTY
  • FULL
  • META
  • WITH_CONTENT_STRUCTURE
  • WITH_DELIVERY_STATUS

projection used to load the message in new folder

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: emailMessage

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 copying a single EmailMessage item.
    // *
    // * @param "bhUtils" - Helper object
    // * @param "myBeeId" - beeId of an item to copy
    // * @param "copyTarget" - Destination of the copy
    // *
    // * @return The item created by the copy
    // *
    copy: function(
        bhUtils,
        myBeeId,
        copyTarget) {
        // The URI for this resource
        var resourceURI = "/comb/v1/d/emsg/copy/" + myBeeId.id;

        // Build-out query parameters. Note that this is a simple example
        // meant to highlight Beehive code, not javascript best practices.
        // ====
        // Parameter name: conflictresolutionmode
        // Description: null
        // Mandatory: true
        // Values: OVERWRITE, ABORT, CREATE_UNIQUE, VERSION_OVERWRITE
        // ====
        // ====
        // Parameter name: target
        // Description: null
        // Mandatory: true
        // ====
        resourceURI += "?" +
            "target=" + copyTarget.id +
            "&conflictresolutionmode=ABORT";


        // 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;
    }

Copy Batch

Copy one or more EmailMessage objects into a different folder

URI: /comb/v1/d/emsg/copy

HTTP Method: POST

Request Parameters: (expand)

Name Style Required Description

destination

Query

To this folder

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<emailMessage>

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

Sample: (expand)

    // *
    // * This function demonstates copying several EmailMessage items.
    // *
    // * @param "bhUtils" - Helper object
    // * @param "myBeeId1" - beeId of an item to copy
    // * @param "myBeeId2" - beeId of an item to copy
    // * @param "myBeeId3" - beeId of an item to copy
    // * @param "copyTarget" - Destination of the copy
    // *
    // * @return An array containing the items created by the copy
    // *
    copyBatch: function(
        bhUtils,
        myBeeId1,
        myBeeId2,
        myBeeId3,
        copyTarget) {
        // The URI for this resource
        var resourceURI = "/comb/v1/d/emsg/copy";

        // Build-out query parameters. Note that this is a simple example
        // meant to highlight Beehive code, not javascript best practices.
        // ====
        // Parameter name: conflictresolutionmode
        // Description: null
        // Mandatory: true
        // Values: OVERWRITE, ABORT, CREATE_UNIQUE, VERSION_OVERWRITE
        // ====
        // ====
        // Parameter name: target
        // Description: null
        // Mandatory: true
        // ====
        resourceURI += "?" +
            "target=" + copyTarget.id +
            "&conflictresolutionmode=ABORT";

        // Create list of IDs to copy
        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

Permanently delete a single EmailMessage.

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

HTTP Method: DELETE

Request Parameters: (expand)

Name Style Required Description

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

Sample: (expand)

    // *
    // * This function demonstates purging a single EmailMessage item.
    // *
    // * @param "bhUtils" - Helper object
    // * @param "myBeeId" - beeId of an item to delete
    // *
    // * @return This function does not return anything
    // *
    deleteMethod: function(
        bhUtils,
        myBeeId) {
        // The URI for this resource
        var resourceURI = "/comb/v1/d/emsg/" + 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 DELETE method for this request
        xmlHttpRequest.open("DELETE",
            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 204 is considered an error
        if (xmlHttpRequest.status != 204) {
            // 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;
        }
        return;
    }

Delete Batch

Permanently delete one or more EmailMessage objects.

URI: /comb/v1/d/emsg/delete

HTTP Method: POST

Request Parameters: (expand)

Name Style Required Description

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<emailMessage>

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

Sample: (expand)

    // *
    // * This function demonstates purging several EmailMessage items.
    // *
    // * @param "bhUtils" - Helper object
    // * @param "myBeeId1" - beeId of an item to delete
    // * @param "myBeeId2" - beeId of an item to delete
    // * @param "myBeeId3" - beeId of an item to delete
    // *
    // * @return This function does not return anything
    // *
    deleteBatch: function(
        bhUtils,
        myBeeId1,
        myBeeId2,
        myBeeId3) {
        // The URI for this resource
        var resourceURI = "/comb/v1/d/emsg/delete";

        // Create list of IDs to delete
        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 204 is considered an error
        if (xmlHttpRequest.status != 204) {
            // 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;
        }
        return;
    }

Discuss

Discuss an Artifact

URI: /comb/v1/d/emsg/discuss/{id}

HTTP Method: POST

Request Parameters: (expand)

Name Style Required Description

subject

Query

The subject of the first message in the new Topic

projection

Query

Restricted to:

  • BASIC
  • BASIC_WITH_DISC_CHANGE_STATUS
  • EMPTY
  • FULL
  • FULL_WITH_LOCK_SNAPSHOTS
  • META
  • META_WITH_DISC_CHANGE_STATUS

The projection specifying the details that should be returned in the Topic snapshot. Projection.EMPTY is the base case.

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: topicUpdater

Response Payload: topic

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
406
Unsupported value in Accept header
500
Internal error occurred

List

List the EmailMessage objects in a HeterogeneousFolder

URI: /comb/v1/d/emsg/list

HTTP Method: POST

Request Parameters: (expand)

Name Style Required Description

parent

Query

Folder to fetch

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<emailMessage>

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

Move

Move a single EmailMessage into a different folder

URI: /comb/v1/d/emsg/move/{id}

HTTP Method: POST

Request Parameters: (expand)

Name Style Required Description

destination

Query

To this folder

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

Sample: (expand)

    // *
    // * This function demonstates moving a single EmailMessage item.
    // *
    // * @param "bhUtils" - Helper object
    // * @param "myBeeId" - beeId of an item to move
    // * @param "moveTarget" - Destination of the move
    // *
    // * @return This function does not return anything
    // *
    move: function(
        bhUtils,
        myBeeId,
        moveTarget) {
        // The URI for this resource
        var resourceURI = "/comb/v1/d/emsg/move/" + myBeeId.id;

        // Build-out query parameters. Note that this is a simple example
        // meant to highlight Beehive code, not javascript best practices.
        // ====
        // Parameter name: conflictresolutionmode
        // Description: null
        // Mandatory: true
        // Values: OVERWRITE, ABORT, CREATE_UNIQUE, VERSION_OVERWRITE
        // ====
        // ====
        // Parameter name: target
        // Description: null
        // Mandatory: true
        // ====
        resourceURI += "?" +
            "target=" + moveTarget.id +
            "&conflictresolutionmode=ABORT";


        // 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 204 is considered an error
        if (xmlHttpRequest.status != 204) {
            // 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;
        }
        return;
    }

Move Batch

Move one or more EmailMessage objects into a different folder

URI: /comb/v1/d/emsg/move

HTTP Method: POST

Request Parameters: (expand)

Name Style Required Description

destination

Query

To this folder

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<emailMessage>

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

Sample: (expand)

    // *
    // * This function demonstates moving several EmailMessage items.
    // *
    // * @param "bhUtils" - Helper object
    // * @param "myBeeId1" - beeId of an item to move
    // * @param "myBeeId2" - beeId of an item to move
    // * @param "myBeeId3" - beeId of an item to move
    // * @param "moveTarget" - Destination of the move
    // *
    // * @return This function does not return anything
    // *
    moveBatch: function(
        bhUtils,
        myBeeId1,
        myBeeId2,
        myBeeId3,
        moveTarget) {
        // The URI for this resource
        var resourceURI = "/comb/v1/d/emsg/move";

        // Build-out query parameters. Note that this is a simple example
        // meant to highlight Beehive code, not javascript best practices.
        // ====
        // Parameter name: conflictresolutionmode
        // Description: null
        // Mandatory: true
        // Values: OVERWRITE, ABORT, CREATE_UNIQUE, VERSION_OVERWRITE
        // ====
        // ====
        // Parameter name: target
        // Description: null
        // Mandatory: true
        // ====
        resourceURI += "?" +
            "target=" + moveTarget.id +
            "&conflictresolutionmode=ABORT";

        // Create list of IDs to move
        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 204 is considered an error
        if (xmlHttpRequest.status != 204) {
            // 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;
        }
        return;
    }

Move Batch to Trash

Move one or more EmailMessage objects into the Beehive Trash

URI: /comb/v1/d/emsg/trash

HTTP Method: POST

Request Parameters: (expand)

Name Style Required Description

projection

Query

Restricted to:

  • BASIC
  • EMPTY
  • EMPTY_WITH_DELETEDENTITY
  • FULL
  • META

projection used to load trash items

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<emailMessage>

Response Payload: list<trashItem>

Fault: restFault

Details: (expand)

HTTP Status Description
200
Partial failure of operation on a batch of entities
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
404
No entity exists with the specified ID
406
Unsupported value in Accept header
500
Internal error occurred

Sample: (expand)

    // *
    // * This function demonstates deleting several EmailMessage items.
    // *
    // * @param "bhUtils" - Helper object
    // * @param "myBeeId1" - beeId of an item to trash
    // * @param "myBeeId2" - beeId of an item to trash
    // * @param "myBeeId3" - beeId of an item to trash
    // *
    // *
    trashBatch: function(
        bhUtils,
        myBeeId1,
        myBeeId2,
        myBeeId3) {
        // The URI for this resource
        var resourceURI = "/comb/v1/d/emsg/trash";

        // Create list of IDs to trash
        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;
    }

Move to Trash

Move a single EmailMmessage into the Beehive Trash

URI: /comb/v1/d/emsg/trash/{id}

HTTP Method: POST

Request Parameters: (expand)

Name Style Required Description

snapshotid

Query

projection

Query

Restricted to:

  • BASIC
  • EMPTY
  • EMPTY_WITH_DELETEDENTITY
  • FULL
  • META

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: trashItem

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

Read

Retreive a single EmailMessage.

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

HTTP Method: GET

Request Parameters: (expand)

Name Style Required Description

projection

Query

Restricted to:

  • BASIC
  • BASIC_WITH_VIRUS_SCAN_RESULTS
  • EMPTY
  • FULL
  • META
  • WITH_CONTENT_STRUCTURE
  • WITH_DELIVERY_STATUS

the attribute projection on the message to load

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: emailMessage

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 EmailMessage 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/emsg/" + 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 EmailMessage objects from the server.

URI: /comb/v1/d/emsg/read

HTTP Method: POST

Request Parameters: (expand)

Name Style Required Description

projection

Query

Restricted to:

  • BASIC
  • BASIC_WITH_VIRUS_SCAN_RESULTS
  • EMPTY
  • FULL
  • META
  • WITH_CONTENT_STRUCTURE
  • WITH_DELIVERY_STATUS

projection to load the messages.

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<emailMessage>

Response Payload: list<emailMessage>

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 EmailMessage 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/emsg/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;
    }

Read Part Content

Read email message part. Unlike many other access points in the API, the return is not structured data in XML/JSON, etc format. The return is the streamed contents of a given MIME part from an email, unencoded.

URI: /comb/v1/d/emsg/content/{id}

HTTP Method: GET

Request Parameters: (expand)

Name Style Required Description

partid

Query

preferred_content_type

Query

Use this parameter to specify a Content-Type header in the response headers. If unspecified, the default Content-Type of "application/octet-stream" is used.

preferred_filename

Query

Use this parameter to specify a filename in the Content-Disposition header in the response headers. If unspecified, then no Content-Disposition header is included in the response.

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: Raw Data

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

Read RFC-822 Content

Read email message in RFC-822 format. Unlike many other access points in the API, the return is not structured data in XML/JSON, etc format. The return is the contents of a given email in RFC-822 format.

URI: /comb/v1/d/emsg/content/rfc822/{id}

HTTP Method: GET

Request Parameters: (expand)

Name Style Required Description

preferred_content_type

Query

Use this parameter to specify a Content-Type header in the response headers. If unspecified, the default Content-Type of "application/octet-stream" is used.

preferred_filename

Query

Use this parameter to specify a filename in the Content-Disposition header in the response headers. If unspecified, then no Content-Disposition header is included in the response.

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: Raw Data

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

Remove Label

Remove the label applied from an entity

URI: /comb/v1/d/emsg/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/emsg/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

Send

Send an email message Note there are two components to an email: its structure and its content. Structure (Subject, Recipients, attachment names) are represented by the argument payload. The content of the body and any attachments must have been previously uploaded to the server.

URI: /comb/v1/d/emsg/send

HTTP Method: POST

Request Parameters: (expand)

Name Style Required Description

sent_folder

Query

uploadscope

Query

The upload scope string used while uploading the associated content and/or attachment(s)

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: emailMessageContentUpdater

Response Payload: No Response Payload

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

Sample: (expand)

    callEmsgSendPOST: function() {
        // TODO Implement me
        // This is just here so I can se what the MauiDoc looks like with the
        // examples embedded within each Resource discussion
    },

Undelete

Restore a single EmailMessage object from the Beehive Trash.

URI: /comb/v1/d/emsg/undelete/{id}

HTTP Method: POST

Request Parameters: (expand)

Name Style Required Description

new_name

Query

Undelete mode

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

Sample: (expand)

    // *
    // * This function demonstates undeleting a single EmailMessage item.
    // *
    // * @param "bhUtils" - Helper object
    // * @param "myBeeId" - beeId of an item to undelete
    // * @param "newlocation" - Location where undeleted item is to be restored
    // *
    // * @return The undeleted item
    // *
    undelete: function(
        bhUtils,
        myBeeId,
        newlocation) {
        // The URI for this resource
        var resourceURI = "/comb/v1/d/emsg/undelete/" + myBeeId.id;

        // Build-out query parameters. Note that this is a simple example
        // meant to highlight Beehive code, not javascript best practices.
        // ====
        // Parameter name: newlocation
        // Description: null
        // Mandatory: false
        // ====
        // ====
        // Parameter name: newname
        // Description: null
        // Mandatory: false
        // ====
        resourceURI += "?newlocation=" +
            newlocation.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);

        // 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;
    }

Update

Update a single EmailMessage.

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

HTTP Method: PUT

Request Parameters: (expand)

Name Style Required Description

snapshotid

Query

update mode

projection

Query

Restricted to:

  • BASIC
  • BASIC_WITH_VIRUS_SCAN_RESULTS
  • EMPTY
  • FULL
  • META
  • WITH_CONTENT_STRUCTURE
  • WITH_DELIVERY_STATUS

projection for return selection

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: emailMessageUpdater

Response Payload: emailMessage

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
406
Unsupported value in Accept header
500
Internal error occurred

Sample: (expand)

    // *
    // * This function demonstates updating the description of a single
    // * EmailMessage 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/emsg/" + myBeeId.id;

        var updater = {
            "beeType": "emailMessageUpdater",
            "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;
    }