# ArkCase Outlook Integration Plugin API documentation

### /api/v1/plugin/outlook

#### /api/v1/plugin/outlook/inbox get

Get a page of the user's e-mail items, from their Inbox.

get

#### get /api/v1/plugin/outlook/inbox

### Query Parameters

- s: (one of subject,dateTimeCreated,dateTimeReceived,dateTimeSent,hasAttachments,displayTo,size- default: dateTimeCreated )

  Sort field

- sortDirection: (one of ASC,DESC- default: ASC )

  Sort ascending or descending

- start: (integer )

  Index of the first item to appear in the results

- n: (integer- default: 50 - minimum: 1 )

  Maximum items to include in the results

## HTTP status code 200

Outlook inbox successfully located and the requested page of results was returned

### Body

Type: application/json

Schema:

    /**
     * Outlook Inbox
     */
    {
      "$schema": "http://json-schema.org/draft-04/schema#",
      "title": "Outlook Inbox Schema",
      "type": "object",
      "properties":
      {
        "totalItems": {
          "type": "integer",
          "description": "Number of items in the entire inbox",
          "minimum": 0
        },
        "moreItemsAvailable": {
          "type": "boolean",
          "description": "Whether more pages can be retrieved after this page"
        },
        "currentStartIndex": {
          "type": "integer",
          "description": "Start row of the items in this page",
          "minimum": 0
        },
        "currentMaxItems": {
          "type": "integer",
          "description": "Maximum number of items on this page"
        },
        "nextStartIndex": {
          "type": "integer",
          "description": "Value to use for the start index to retrieve the next page, if there is a next page.  -1 means there is no next page.",
          "minimum": -1
        },
        "currentSortField": {
          "type": "string",
          "description": "The field on which the current page is sorted"
        },
        "currentSortAscending": {
          "type": "boolean",
          "description": "Whether this page is sorted ascending (true) or descending (false)"
        },
        "items": {
          "description": "List of inbox items",
          "type": "array",
          "minItems": 0,
          "items": {
            "type": "object",
            "properties":
            {
              "id": {
                "type": "string",
                "description": "MS Exchange ID for this item"
              },
              "subject": {
                "type": "string"
              },
              "created": {
                "type": "string",
                "description": "Create date, in JSON date format"
              },
              "modified": {
                "type": "string",
                "description": "Modify date, in JSON date format"
              },
              "size": {
                "type": "integer",
                "minimum": 0,
                "description": "size of the message body"
              },
              "sent": {
                "type": "string",
                "description": "Send date, in JSON date format"
              },
              "from": {
                "type": "string",
                "description": "e-mail address of the message sender"
              },
              "read": {
                "type": "boolean",
                "description": "whether the user has read this message"
              },
              "body": {
                "type": "string",
                "description": "Message body, in HTML 4.01 format"
              }
            }
          }
        }
      }
    }

Example:

    {
      "totalItems" : 1221,
      "moreItemsAvailable" : true,
      "currentStartIndex" : 0,
      "currentMaxItems" : 50,
      "nextStartIndex" : 50,
      "currentSortField" : "dateTimeCreated",
      "currentSortAscending" : true,
      "items" : [{
        "id" : "AAMkAGVjMmMzN2QwLWU1ZTctNDY0My05OGFiLTJkNjE1OTc5OTlhMQBGAAAAAACOTzGM1OQ5Sae/JVKnBpIgBwDqBa92g2suSYnILcLYd6tdAASAtjPwAADqBa92g2suSYnILcLYd6tdAScuFPOVAAA=",
        "subject" : "Mule in Action, Second Edition - Mobile formats available now",
        "created" : "2014-03-10T21:07:35.000+0000",
        "modified" : "2014-03-10T21:07:35.000+0000",
        "size" : 11374,
        "sent" : "2014-03-10T21:15:09.000+0000",
        "from" : "support@manning.com",
        "read" : true,
        "body" : "<html>\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\">\n<meta name=\"Generator\" content=\"Microsoft Exchange Server\">\n<!-- converted from rtf -->\n<style><!-- .EmailQuote { margin-left: 1pt; padding-left: 4pt; border-left: #800000 2px solid; } --></style>\n</head>\n<body>\n<font face=\"Times New Roman\" size=\"3\"><a name=\"BM_BEGIN\"></a>\n<div><font face=\"Tahoma, sans-serif\" size=\"2\">The body</font></div>\n</font>\n</body>\n</html>\n",
        }
      ]
    }

## HTTP status code 400

Outlook password should be updated

### Body

Type: text/plain

Example:

    Bad key or data

#### /api/v1/plugin/outlook/calendar get post

Get a page of the user's calendar items, from their Calendar folder or shared caledendar folder.

get
post

Create new appointment

#### get /api/v1/plugin/outlook/calendar

### Query Parameters

- folderId: (string )

  shared calendar folderId

- s: (one of subject,dateTimeCreated,dateTimeReceived,dateTimeSent,hasAttachments,dateTimeStart- default: dateTimeStart )

  Sort field

- sortDirection: (one of ASC,DESC- default: ASC )

  Sort ascending or descending

- start: (integer )

  Index of the first item to appear in the results

- n: (integer- default: 50 - minimum: 1 )

  Maximum items to include in the results

- startSearchStartDate: (string )

  Start Date for searcing calendar for appointment start date, date pattern ("yyyy-MM-dd'T'HH:mm:ss'Z'") as string

- endSearchStartDate: (string )

  End Date for searcing calendar for appointment start date, date pattern ("yyyy-MM-dd'T'HH:mm:ss'Z'") as string

## HTTP status code 200

Outlook calendar folder successfully located and the requested page of results was returned

### Body

Type: application/json

Schema:

    /**
     * Outlook Calendar
     */
    {
      "$schema": "http://json-schema.org/draft-04/schema#",
      "title": "Outlook Calendar Schema",
      "type": "object",
      "properties":
      {
        "totalItems": {
          "type": "integer",
          "description": "Number of calendar items",
          "minimum": 0
        },
        "moreItemsAvailable": {
          "type": "boolean",
          "description": "Whether more pages can be retrieved after this page"
        },
        "currentStartIndex": {
          "type": "integer",
          "description": "Start row of the items in this page",
          "minimum": 0
        },
        "currentMaxItems": {
          "type": "integer",
          "description": "Maximum number of items on this page"
        },
        "nextStartIndex": {
          "type": "integer",
          "description": "Value to use for the start index to retrieve the next page, if there is a next page.  -1 means there is no next page.",
          "minimum": -1
        },
        "currentSortField": {
          "type": "string",
          "description": "The field on which the current page is sorted"
        },
        "currentSortAscending": {
          "type": "boolean",
          "description": "Whether this page is sorted ascending (true) or descending (false)"
        },
        "items": {
          "description": "List of calendar items",
          "type": "array",
          "minItems": 0,
          "items": {
            "type": "object",
            "properties":
            {
              "id": {
                "type": "string",
                "description": "MS Exchange ID for this item"
              },
              "subject": {
                "type": "string"
              },
              "created": {
                "type": "string",
                "description": "Create date, in JSON date format"
              },
              "modified": {
                "type": "string",
                "description": "Modify date, in JSON date format"
              },
              "size": {
                "type": "integer",
                "minimum": 0,
                "description": "size of the message body"
              },
              "sent": {
                "type": "string",
                "description": "Send date, in JSON date format"
              },
              "allDayEvent": {
                "type": "boolean"
              },
              "cancelled": {
                "type": "boolean"
              },
              "meeting": {
                "type": "boolean"
              },
              "recurring": {
                "type": "boolean"
              },
              "startDate": {
                "type": "string",
                "description": "Start date, in JSON date format"
              },
              "endDate": {
                "type": "string",
                "description": "End date, in JSON date format"
              },
              "body": {
                "type": "string",
                "description": "Message body, in HTML 4.01 format"
              },
              "folderId": {
                "type": "string",
                "description": "shared folder id"
              }
            }
          }
        }
      }
    }

Example:

    {
      "totalItems" : 1,
      "moreItemsAvailable" : false,
      "currentStartIndex" : 0,
      "currentMaxItems" : 50,
      "nextStartIndex" : -1,
      "currentSortField" : "dateTimeStart",
      "currentSortAscending" : true
      "items" : [{
        "id" : "AAMkAGViZGY3MDgxLTVlNzctNGYxOC05NmNmLTE3ODU4MTUzZjVmYQBGAAAAAABpUanqXKTXRLK9dLKLqaekBwDV4qlLqpBoRJcWhdjfOX8rASgFlOzCAADV4qlLqpBoRJcWhdjfOX8rASgFlPkhAAA=",
        "subject" : "test appointment",
        "created" : "2015-04-21T21:20:16.000+0000",
        "modified" : "2015-04-21T21:20:16.000+0000",
        "body" : "<html>\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\">\n<meta name=\"Generator\" content=\"Microsoft Exchange Server\">\n<!-- converted from rtf -->\n<style><!-- .EmailQuote { margin-left: 1pt; padding-left: 4pt; border-left: #800000 2px solid; } --></style>\n</head>\n<body>\n<font face=\"Times New Roman\" size=\"3\"><a name=\"BM_BEGIN\"></a>\n<div><font face=\"Tahoma, sans-serif\" size=\"2\">The body</font></div>\n</font>\n</body>\n</html>\n",
        "size" : 1029,
        "sent" : "2015-04-21T21:20:16.000+0000",
        "allDayEvent" : false,
        "cancelled" : false,
        "meeting" : false,
        "recurring" : false,
        "folderId" : "AAMkAGViZGY3MDgxLTVlNzctNGYxOC05NmNmLTE3ODU4MTUzZjVmYQBGAAAAAABpUanqXKTXRLK9dLKLqaekBwDV4qlLqpBoRJcWhdjfOX8rASgFlOzCAADV4qlLqpBoRJcWhdjfOX8rASgFlPkhAAA=",
        "startDate" : "2015-04-21T21:30:00.000+0000",
        "endDate" : "2015-04-21T22:30:00.000+0000"
        }
      ]
    }

## HTTP status code 400

Outlook password should be updated

### Body

Type: text/plain

Example:

    Bad key or data

#### post /api/v1/plugin/outlook/calendar

Create new appointment

### Body

Type: application/json

Schema:

    /**
     * Outlook Calendar Appointment Schema
     */
    {
      "$schema": "http://json-schema.org/draft-04/schema#",
      "title": "Outlook Calendar Appointment Schema",
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "description": "MS Exchange ID for this item"
        },
        "subject": {
          "type": "string"
        },
        "created": {
          "type": "string",
          "description": "Create date, in JSON date format"
        },
        "modified": {
          "type": "string",
          "description": "Modify date, in JSON date format"
        },
        "size": {
          "type": "integer",
          "minimum": 0,
          "description": "size of the message body"
        },
        "sent": {
          "type": "string",
          "description": "Send date, in JSON date format"
        },
        "allDayEvent": {
          "type": "boolean"
        },
        "cancelled": {
          "type": "boolean"
        },
        "meeting": {
          "type": "boolean"
        },
        "recurring": {
          "type": "boolean"
        },
        "startDate": {
          "type": "string",
          "description": "Start date, in JSON date format"
        },
        "endDate": {
          "type": "string",
          "description": "End date, in JSON date format"
        },
        "body": {
          "type": "string",
          "description": "Message body, in HTML 4.01 format"
        },
        "folderId": {
          "type": "string",
          "description": "shared folder id"
        }
      }
    }

Example:

    {
            "folderId" : "AAMkAGViZGY3MDgxLTVlNzctNGYxOC05NmNmLTE3ODU4MTUzZjVmYQBGAAAAAABpUanqXKTXRLK9dLKLqaekBwDV4qlLqpBoRJcWhdjfOX8rASgFlOzCAADV4qlLqpBoRJcWhdjfOX8rASgFlPkhAAA=",
            "subject" : "test appointment",
            "body" : "<html>\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\">\n<meta name=\"Generator\" content=\"Microsoft Exchange Server\">\n<!-- converted from rtf -->\n<style><!-- .EmailQuote { margin-left: 1pt; padding-left: 4pt; border-left: #800000 2px solid; } --></style>\n</head>\n<body>\n<font face=\"Times New Roman\" size=\"3\"><a name=\"BM_BEGIN\"></a>\n<div><font face=\"Tahoma, sans-serif\" size=\"2\">The body</font></div>\n</font>\n</body>\n</html>\n",
            "size" : 1029,
            "allDayEvent" : false,
            "cancelled" : false,
            "meeting" : false,
            "recurring" : false,
            "startDate" : "2015-04-21T21:30:00.000+0000",
            "endDate" : "2015-04-21T22:30:00.000+0000"
    }

## HTTP status code 200

Outlook appointment successfully inserted

### Body

Type: application/json

Schema:

    /**
     * Outlook Calendar Appointment Schema
     */
    {
      "$schema": "http://json-schema.org/draft-04/schema#",
      "title": "Outlook Calendar Appointment Schema",
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "description": "MS Exchange ID for this item"
        },
        "subject": {
          "type": "string"
        },
        "created": {
          "type": "string",
          "description": "Create date, in JSON date format"
        },
        "modified": {
          "type": "string",
          "description": "Modify date, in JSON date format"
        },
        "size": {
          "type": "integer",
          "minimum": 0,
          "description": "size of the message body"
        },
        "sent": {
          "type": "string",
          "description": "Send date, in JSON date format"
        },
        "allDayEvent": {
          "type": "boolean"
        },
        "cancelled": {
          "type": "boolean"
        },
        "meeting": {
          "type": "boolean"
        },
        "recurring": {
          "type": "boolean"
        },
        "startDate": {
          "type": "string",
          "description": "Start date, in JSON date format"
        },
        "endDate": {
          "type": "string",
          "description": "End date, in JSON date format"
        },
        "body": {
          "type": "string",
          "description": "Message body, in HTML 4.01 format"
        },
        "folderId": {
          "type": "string",
          "description": "shared folder id"
        }
      }
    }

Example:

    {
      "id" : "AAMkAGViZGY3MDgxLTVlNzctNGYxOC05NmNmLTE3ODU4MTUzZjVmYQBGAAAAAABpUanqXKTXRLK9dLKLqaekBwDV4qlLqpBoRJcWhdjfOX8rASgFlOzCAADV4qlLqpBoRJcWhdjfOX8rASgFlPkhAAA=",
      "subject" : "test appointment",
      "created" : "2015-04-21T21:20:16.000+0000",
      "modified" : "2015-04-21T21:20:16.000+0000",
      "body" : "<html>\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\">\n<meta name=\"Generator\" content=\"Microsoft Exchange Server\">\n<!-- converted from rtf -->\n<style><!-- .EmailQuote { margin-left: 1pt; padding-left: 4pt; border-left: #800000 2px solid; } --></style>\n</head>\n<body>\n<font face=\"Times New Roman\" size=\"3\"><a name=\"BM_BEGIN\"></a>\n<div><font face=\"Tahoma, sans-serif\" size=\"2\">The body</font></div>\n</font>\n</body>\n</html>\n",
      "size" : 1029,
      "sent" : "2015-04-21T21:20:16.000+0000",
      "allDayEvent" : false,
      "cancelled" : false,
      "meeting" : false,
      "recurring" : false,
      "folderId" : "AAMkAGViZGY3MDgxLTVlNzctNGYxOC05NmNmLTE3ODU4MTUzZjVmYQBGAAAAAABpUanqXKTXRLK9dLKLqaekBwDV4qlLqpBoRJcWhdjfOX8rASgFlOzCAADV4qlLqpBoRJcWhdjfOX8rASgFlPkhAAA=",
      "startDate" : "2015-04-21T21:30:00.000+0000",
      "endDate" : "2015-04-21T22:30:00.000+0000"
    }

## HTTP status code 400

Outlook password should be updated

### Body

Type: text/plain

Example:

    Bad key or data

#### /api/v1/plugin/outlook/tasks get post

Get a page of the user's tasks.

get
post

Create new task

#### get /api/v1/plugin/outlook/tasks

### Query Parameters

- s: (one of dueDate,startDate,completeDate,complete,percentComplete- default: dueDate )

  Sort field

- sortDirection: (one of ASC,DESC- default: ASC )

  Sort ascending or descending

- start: (integer )

  Index of the first item to appear in the results

- n: (integer- default: 50 - minimum: 1 )

  Maximum items to include in the results

## HTTP status code 200

Outlook tasks successfully located and the requested page of results was returned

### Body

Type: application/json

Schema:

    /**
     * Outlook Task
     */
    {
      "$schema": "http://json-schema.org/draft-04/schema#",
      "title": "Outlook Tasks Schema",
      "type": "object",
      "properties":
      {
        "totalItems": {
          "type": "integer",
          "description": "Number of task items",
          "minimum": 0
        },
        "moreItemsAvailable": {
          "type": "boolean",
          "description": "Whether more pages can be retrieved after this page"
        },
        "currentStartIndex": {
          "type": "integer",
          "description": "Start row of the items in this page",
          "minimum": 0
        },
        "currentMaxItems": {
          "type": "integer",
          "description": "Maximum number of items on this page"
        },
        "nextStartIndex": {
          "type": "integer",
          "description": "Value to use for the start index to retrieve the next page, if there is a next page.  -1 means there is no next page.",
          "minimum": -1
        },
        "currentSortField": {
          "type": "string",
          "description": "The field on which the current page is sorted"
        },
        "currentSortAscending": {
          "type": "boolean",
          "description": "Whether this page is sorted ascending (true) or descending (false)"
        },
        "items": {
          "description": "List of task items",
          "type": "array",
          "minItems": 0,
          "items": {
            "type": "object",
            "properties":
            {
              "id": {
                "type": "string",
                "description": "MS Exchange ID for this item"
              },
              "subject": {
                "type": "string"
              },
              "created": {
                "type": "string",
                "description": "Create date, in JSON date format"
              },
              "modified": {
                "type": "string",
                "description": "Modify date, in JSON date format"
              },
              "body": {
                "type": "string",
                "description": "Message body, in HTML 4.01 format"
              },
              "size": {
                "type": "integer",
                "minimum": 0,
                "description": "size of the message body"
              },
              "sentDate": {
                "type": "string",
                "description": "Sent date, in JSON date format"
              },
              "dueDate": {
                "type": "string",
                "description": "Due date, in JSON date format"
              },
              "startDate": {
                "type": "string",
                "description": "Start date, in JSON date format"
              },
              "completeDate": {
                "type": "string",
                "description": "Complete date, in JSON date format"
              },
              "complete": {
                "type": "boolean"
              },
              "percentComplete": {
                "type": "number",
                "minimum": 0,
                "maximum": 100
              },
              "endDate": {
                "type": "string",
                "description": "End date, in JSON date format"
              }
            }
          }
        }
      }
    }

Example:

    {
        "totalItems": 2,
        "moreItemsAvailable": false,
        "currentStartIndex": 0,
        "currentMaxItems": 50,
        "nextStartIndex": -1,
        "currentSortField": "due",
        "currentSortAscending": true
        "items": [{
            "id": "AAMkADdiNmVmZjJmLTE1YWItNGM3Zi1hMWY3LTY4ZThlMGFhOWUwZgBGAAAAAADr6AFdn4/3TLul/2Xu/kMaBwDBgmTjYgBBT7sxwYCnuAMrAF4f4+p4AADqU67EGpNCTIx6ZCDGbZmMAF4w2hYBAAA=",
            "subject": "Task 1",
            "created": "2015-04-30T00:38:42.000+0000",
            "modified": "2015-04-30T00:38:42.000+0000",
            "body": "",
            "size": 310,
            "sent": "2015-04-30T00:39:17.000+0000",
            "dueDate": "2015-04-30T22:00:00.000+0000",
            "startDate": null,
            "completeDate": null,
            "complete": false,
            "percentComplete": 0.0
        }, {
            "id": "AAMkADdiNmVmZjJmLTE1YWItNGM3Zi1hMWY3LTY4ZThlMGFhOWUwZgBGAAAAAADr6AFdn4/3TLul/2Xu/kMaBwDBgmTjYgBBT7sxwYCnuAMrAF4f4+p4AADqU67EGpNCTIx6ZCDGbZmMAF4w2hYCAAA=",
            "subject": "Task2",
            "created": "2015-04-30T00:39:20.000+0000",
            "modified": "2015-04-30T00:39:20.000+0000",
            "body": "",
            "size": 274,
            "sent": "2015-04-30T00:39:23.000+0000",
            "dueDate": null,
            "startDate": null,
            "completeDate": null,
            "complete": false,
            "percentComplete": 0.0
        }],
    }

## HTTP status code 400

Outlook password should be updated

### Body

Type: text/plain

Example:

    Bad key or data

#### post /api/v1/plugin/outlook/tasks

Create new task

### Body

Type: application/json

Schema:

    /**
     * Outlook Task Schema
     */
    {
      "$schema": "http://json-schema.org/draft-04/schema#",
      "title": "Outlook Task Schema",
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "description": "MS Exchange ID for this item"
        },
        "subject": {
          "type": "string"
        },
        "created": {
          "type": "string",
          "description": "Create date, in JSON date format"
        },
        "modified": {
          "type": "string",
          "description": "Modify date, in JSON date format"
        },
        "body": {
          "type": "string",
          "description": "Message body, in HTML 4.01 format"
        },
        "size": {
          "type": "integer",
          "minimum": 0,
          "description": "size of the message body"
        },
        "sentDate": {
          "type": "string",
          "description": "Sent date, in JSON date format"
        },
        "dueDate": {
          "type": "string",
          "description": "Due date, in JSON date format"
        },
        "startDate": {
          "type": "string",
          "description": "Start date, in JSON date format"
        },
        "completeDate": {
          "type": "string",
          "description": "Complete date, in JSON date format"
        },
        "complete": {
          "type": "boolean"
        },
        "percentComplete": {
          "type": "number",
          "minimum": 0,
          "maximum": 100
        },
        "endDate": {
          "type": "string",
          "description": "End date, in JSON date format"
        }
      }
    }

Example:

    {
      "subject": "Task 1",
      "body": "",
      "size": 310,
      "dueDate": "2015-04-30T22:00:00.000+0000",
      "startDate": null,
      "completeDate": null,
      "complete": false,
      "percentComplete": 0.0
    }

## HTTP status code 200

Outlook contact successfully inserted

### Body

Type: application/json

Schema:

    /**
     * Outlook Task Schema
     */
    {
      "$schema": "http://json-schema.org/draft-04/schema#",
      "title": "Outlook Task Schema",
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "description": "MS Exchange ID for this item"
        },
        "subject": {
          "type": "string"
        },
        "created": {
          "type": "string",
          "description": "Create date, in JSON date format"
        },
        "modified": {
          "type": "string",
          "description": "Modify date, in JSON date format"
        },
        "body": {
          "type": "string",
          "description": "Message body, in HTML 4.01 format"
        },
        "size": {
          "type": "integer",
          "minimum": 0,
          "description": "size of the message body"
        },
        "sentDate": {
          "type": "string",
          "description": "Sent date, in JSON date format"
        },
        "dueDate": {
          "type": "string",
          "description": "Due date, in JSON date format"
        },
        "startDate": {
          "type": "string",
          "description": "Start date, in JSON date format"
        },
        "completeDate": {
          "type": "string",
          "description": "Complete date, in JSON date format"
        },
        "complete": {
          "type": "boolean"
        },
        "percentComplete": {
          "type": "number",
          "minimum": 0,
          "maximum": 100
        },
        "endDate": {
          "type": "string",
          "description": "End date, in JSON date format"
        }
      }
    }

Example:

    {
      "id": "AAMkADdiNmVmZjJmLTE1YWItNGM3Zi1hMWY3LTY4ZThlMGFhOWUwZgBGAAAAAADr6AFdn4/3TLul/2Xu/kMaBwDBgmTjYgBBT7sxwYCnuAMrAF4f4+p4AADqU67EGpNCTIx6ZCDGbZmMAF4w2hYBAAA=",
      "subject": "Task 1",
      "created": "2015-04-30T00:38:42.000+0000",
      "modified": "2015-04-30T00:38:42.000+0000",
      "body": "",
      "size": 310,
      "sent": "2015-04-30T00:39:17.000+0000",
      "dueDate": "2015-04-30T22:00:00.000+0000",
      "startDate": null,
      "completeDate": null,
      "complete": false,
      "percentComplete": 0.0
    }

## HTTP status code 400

Outlook password should be updated

### Body

Type: text/plain

Example:

    Bad key or data

#### /api/v1/plugin/outlook/contacts get post

Get a contacts items.

get
post

Create new contact

#### get /api/v1/plugin/outlook/contacts

### Query Parameters

- s: (one of surname,displayName,companyName,emailAddress1,primaryTelephone,emailAddress2,completeName- default: completeName )

  Sort field

- sortDirection: (one of ASC,DESC- default: ASC )

  Sort ascending or descending

- start: (integer )

  Index of the first item to appear in the results

- n: (integer- default: 50 - minimum: 1 )

  Maximum items to include in the results

## HTTP status code 200

Outlook contacts successfully located and the requested page of results was returned

### Body

Type: application/json

Schema:

    {
        "$schema": "http://json-schema.org/draft-04/schema#",
        "title": "Outlook Contacts Schema",
        "type": "object",
        "properties": {
            "totalItems": {
                "type": "integer",
                "description": "Number of contacts items",
                "minimum": 0
            },
            "moreItemsAvailable": {
                "type": "boolean",
                "description": "Whether more pages can be retrieved after this page"
            },
            "currentStartIndex": {
                "type": "integer",
                "description": "Start row of the items in this page",
                "minimum": 0
            },
            "currentMaxItems": {
                "type": "integer",
                "description": "Maximum number of items on this page"
            },
            "nextStartIndex": {
                "type": "integer",
                "description": "Value to use for the start index to retrieve the next page, if there is a next page.  -1 means there is no next page.",
                "minimum": -1
            },
            "currentSortField": {
                "type": "string",
                "description": "The field on which the current page is sorted"
            },
            "currentSortAscending": {
                "type": "boolean",
                "description": "Whether this page is sorted ascending (true) or descending (false)"
            },
            "items": {
                "description": "List of contacts items",
                "type": "array",
                "minItems": 0,
                "items": {
                    "type": "object",
                    "properties": {
                        "id": {
                            "type": "string",
                            "description": "MS Exchange ID for this item"
                        },
                        "subject": {
                            "type": "string"
                        },
                        "created": {
                            "type": "string",
                            "description": "Create date, in JSON date format"
                        },
                        "modified": {
                            "type": "string",
                            "description": "Modify date, in JSON date format"
                        },
                        "body": {
                            "type": "string",
                            "description": "Message body, in HTML 4.01 format"
                        },
                        "size": {
                            "type": "integer",
                            "minimum": 0,
                            "description": "size of the message body"
                        },
                        "sent": {
                            "type": "string",
                            "description": "Send date, in JSON date format"
                        },
                        "surname": {
                            "type": "string"
                        },
                        "displayName": {
                            "type": "string"
                        },
                        "companyName": {
                            "type": "string"
                        },
                        "emailAddress1": {
                            "type": "string"
                        },
                        "primaryTelephone": {
                            "type": "string"
                        },
                        "emailAddress2": {
                            "type": "string"
                        },
                        "completeName": {
                            "type": "string"
                        }
                    }
                }
            }
        }
    }

Example:

    {
       "totalItems": 1,
       "moreItemsAvailable": false,
       "currentStartIndex": 0,
       "currentMaxItems": 50,
       "nextStartIndex": -1,
       "currentSortField": "completeName",
       "currentSortAscending": true,
       "items": [
         {
           "id": "EAMkADdiNmVmZjJmLTE2YWItNGM3Zi1hMWY3LTY4ZThlMGFhOWUwZgBGAAAAAADr6AFdn4/3TLul/2Xu/kMaBwDBgmTjYgBBT7sxwYCnuAMrAF4f4+p0AADqU67EGpNCTIx6ZCDGbZmMAF4w2ggDAAA=",
           "subject": "John Doe",
           "created": "2015-04-30T00:02:32.000+0000",
           "modified": "2015-04-30T00:02:42.000+0000",
           "body": "",
           "size": 1089,
           "sent": "2015-04-30T00:02:42.000+0000",
           "surname": "Doe",
           "displayName": "John Doe",
           "companyName": "company_com",
           "emailAddress1": "john.doe@armedia.com",
           "primaryTelephone": null,
           "emailAddress2": null,
           "completeName": "John Doe"
         }
       ]
     }

## HTTP status code 400

Outlook password should be updated

### Body

Type: text/plain

Example:

    Bad key or data

#### post /api/v1/plugin/outlook/contacts

Create new contact

### Body

Type: application/json

Schema:

    /**
     * Outlook Contact Schema
     */
    {
      "$schema": "http://json-schema.org/draft-04/schema#",
      "title": "Outlook Contact Schema",
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "description": "MS Exchange ID for this item"
        },
        "subject": {
          "type": "string"
        },
        "created": {
          "type": "string",
          "description": "Create date, in JSON date format"
        },
        "modified": {
          "type": "string",
          "description": "Modify date, in JSON date format"
        },
        "body": {
          "type": "string",
          "description": "Message body, in HTML 4.01 format"
        },
        "size": {
          "type": "integer",
          "minimum": 0,
          "description": "size of the message body"
        },
        "sent": {
          "type": "string",
          "description": "Send date, in JSON date format"
        },
        "surname": {
          "type": "string"
        },
        "displayName": {
          "type": "string"
        },
        "companyName": {
          "type": "string"
        },
        "emailAddress1": {
          "type": "string"
        },
        "primaryTelephone": {
          "type": "string"
        },
        "emailAddress2": {
          "type": "string"
        },
        "completeName": {
          "type": "string"
        }
      }
    }

Example:

    {
      "subject":"Subject",
      "body":"Body",
      "surname":"Doe",
      "displayName":"John Doe",
      "companyName":"Armedia",
      "emailAddress1":"john.doe@armedia.com",
      "primaryTelephone":"+55555656456",
      "completeName":"John Doe"
    }

## HTTP status code 200

Outlook contact successfully inserted

### Body

Type: application/json

Schema:

    /**
     * Outlook Contact Schema
     */
    {
      "$schema": "http://json-schema.org/draft-04/schema#",
      "title": "Outlook Contact Schema",
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "description": "MS Exchange ID for this item"
        },
        "subject": {
          "type": "string"
        },
        "created": {
          "type": "string",
          "description": "Create date, in JSON date format"
        },
        "modified": {
          "type": "string",
          "description": "Modify date, in JSON date format"
        },
        "body": {
          "type": "string",
          "description": "Message body, in HTML 4.01 format"
        },
        "size": {
          "type": "integer",
          "minimum": 0,
          "description": "size of the message body"
        },
        "sent": {
          "type": "string",
          "description": "Send date, in JSON date format"
        },
        "surname": {
          "type": "string"
        },
        "displayName": {
          "type": "string"
        },
        "companyName": {
          "type": "string"
        },
        "emailAddress1": {
          "type": "string"
        },
        "primaryTelephone": {
          "type": "string"
        },
        "emailAddress2": {
          "type": "string"
        },
        "completeName": {
          "type": "string"
        }
      }
    }

Example:

    {
      "id": "EAMkADdiNmVmZjJmLTE2YWItNGM3Zi1hMWY3LTY4ZThlMGFhOWUwZgBGAAAAAADr6AFdn4/3TLul/2Xu/kMaBwDBgmTjYgBBT7sxwYCnuAMrAF4f4+p0AADqU67EGpNCTIx6ZCDGbZmMAF4w2ggDAAA=",
      "subject": "John Doe",
      "created": "2015-04-30T00:02:32.000+0000",
      "modified": "2015-04-30T00:02:42.000+0000",
      "body": "",
      "size": 1089,
      "sent": "2015-04-30T00:02:42.000+0000",
      "surname":"Doe",
      "displayName":"John Doe",
      "companyName":"company_com",
      "emailAddress1":"john.doe@armedia.com",
      "primaryTelephone": null,
      "emailAddress2": null,
      "completeName": "John Doe"
    }